Merge f-t to m-c, a=merge
authorPhil Ringnalda <philringnalda@gmail.com>
Sat, 20 Feb 2016 17:25:14 -0800
changeset 321307 889096db9c1b362f654d0610b866e5be5d02912e
parent 321270 7bfe45ec123a47d227147967748ef72a36a378ac (current diff)
parent 321306 eff6731606da854ee031a06a64191484c09e72e4 (diff)
child 321308 af6356a3e8c56036b74ba097395356d9c6e6c5a3
child 321315 2f311e1ee528df7736ed5e04657a98c98745e959
push id5913
push userjlund@mozilla.com
push dateMon, 25 Apr 2016 16:57:49 +0000
treeherdermozilla-beta@dcaf0a6fa115 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmerge
milestone47.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Merge f-t to m-c, a=merge
browser/components/customizableui/content/aboutCustomizing.xul
browser/components/customizableui/test/browser_889120_customize_tab_merging.js
browser/modules/CustomizationTabPreloader.jsm
devtools/client/projecteditor/test/browser_projecteditor_rename_file.js
mobile/android/chrome/content/browser.js
toolkit/components/telemetry/Histograms.json
--- a/b2g/chrome/content/desktop.js
+++ b/b2g/chrome/content/desktop.js
@@ -136,26 +136,16 @@ function initResponsiveDesign() {
     responsive.rotatebutton.addEventListener('command', function (evt) {
       GlobalSimulatorScreen.flipScreen();
       evt.stopImmediatePropagation();
       evt.preventDefault();
     }, true);
 
     // Enable touch events
     responsive.enableTouch();
-
-    // Automatically toggle responsive design mode
-    let width = 320, height = 480;
-    // We have to take into account padding and border introduced with the
-    // device look'n feel:
-    width += 15*2; // Horizontal padding
-    width += 1*2; // Vertical border
-    height += 60; // Top Padding
-    height += 1; // Top border
-    responsive.setSize(width, height);
   });
 
 
   let mgr = browserWindow.ResponsiveUI.ResponsiveUIManager;
   mgr.toggle(browserWindow, browserWindow.gBrowser.selectedTab);
 
 }
 
--- a/browser/base/content/browser-places.js
+++ b/browser/base/content/browser-places.js
@@ -1354,17 +1354,17 @@ var BookmarkingUI = {
     while (aHeaderItem.nextSibling &&
            aHeaderItem.nextSibling.localName == "menuitem") {
       aHeaderItem.nextSibling.remove();
     }
 
     PlacesUtils.history.QueryInterface(Ci.nsPIPlacesDatabase)
                        .asyncExecuteLegacyQueries([query], 1, options, {
       handleResult: function (aResultSet) {
-        let onItemClick = function (aEvent) {
+        let onItemCommand = function (aEvent) {
           let item = aEvent.target;
           openUILink(item.getAttribute("targetURI"), aEvent);
           CustomizableUI.hidePanelForNode(item);
         };
 
         let fragment = document.createDocumentFragment();
         let row;
         while ((row = aResultSet.getNextRow())) {
@@ -1374,17 +1374,17 @@ var BookmarkingUI = {
 
           let item =
             document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul",
                                      "menuitem");
           item.setAttribute("label", title || uri);
           item.setAttribute("targetURI", uri);
           item.setAttribute("class", "menuitem-iconic menuitem-with-favicon bookmark-item " +
                                      extraCSSClass);
-          item.addEventListener("click", onItemClick);
+          item.addEventListener("command", onItemCommand);
           if (icon) {
             let iconURL = "moz-anno:favicon:" + icon;
             item.setAttribute("image", iconURL);
           }
           fragment.appendChild(item);
         }
         aHeaderItem.parentNode.insertBefore(fragment, aHeaderItem.nextSibling);
       },
--- a/browser/base/content/browser-social.js
+++ b/browser/base/content/browser-social.js
@@ -254,18 +254,16 @@ SocialUI = {
         node.setAttribute("disabled", "true")
       }
     }
   },
 
   // called on tab/urlbar/location changes and after customization. Update
   // anything that is tab specific.
   updateState: function() {
-    if (location == "about:customizing")
-      return;
     goSetCommandEnabled("Social:PageShareOrMark", this.canShareOrMarkPage(gBrowser.currentURI));
     if (!SocialUI.enabled)
       return;
     // larger update that may change button icons
     SocialMarks.update();
   }
 }
 
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -178,19 +178,16 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 XPCOMUtils.defineLazyModuleGetter(this, "ProcessHangMonitor",
   "resource:///modules/ProcessHangMonitor.jsm");
 
 if (AppConstants.MOZ_SAFE_BROWSING) {
   XPCOMUtils.defineLazyModuleGetter(this, "SafeBrowsing",
     "resource://gre/modules/SafeBrowsing.jsm");
 }
 
-XPCOMUtils.defineLazyModuleGetter(this, "gCustomizationTabPreloader",
-  "resource:///modules/CustomizationTabPreloader.jsm", "CustomizationTabPreloader");
-
 XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils",
   "resource://gre/modules/PrivateBrowsingUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Translation",
   "resource:///modules/translation/Translation.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "SitePermissions",
   "resource:///modules/SitePermissions.jsm");
@@ -2339,20 +2336,22 @@ function URLBarSetURI(aURI) {
       uri = Services.uriFixup.createExposableURI(uri);
     } catch (e) {}
 
     // Replace initial page URIs with an empty string
     // 1. only if there's no opener (bug 370555).
     // 2. if remote newtab is enabled and it's the default remote newtab page
     let defaultRemoteURL = gAboutNewTabService.remoteEnabled &&
                            uri.spec === gAboutNewTabService.newTabURL;
-    if (gInitialPages.includes(uri.spec) || defaultRemoteURL)
-      value = gBrowser.selectedBrowser.hasContentOpener ? uri.spec : "";
-    else
+    if ((gInitialPages.includes(uri.spec) || defaultRemoteURL) &&
+        checkEmptyPageOrigin(gBrowser.selectedBrowser, uri)) {
+      value = "";
+    } else {
       value = losslessDecodeURI(uri);
+    }
 
     valid = !isBlankPageURL(uri.spec);
   }
 
   gURLBar.value = value;
   gURLBar.valueIsTyped = !valid;
   SetPageProxyState(valid ? "valid" : "invalid");
 }
@@ -4322,29 +4321,29 @@ var XULBrowserWindow = {
     this.hideOverLinkImmediately = false;
 
     // We should probably not do this if the value has changed since the user
     // searched
     // Update urlbar only if a new page was loaded on the primary content area
     // Do not update urlbar if there was a subframe navigation
 
     if (aWebProgress.isTopLevel) {
-      if ((location == "about:blank" && !gBrowser.selectedBrowser.hasContentOpener) ||
+      if ((location == "about:blank" && checkEmptyPageOrigin()) ||
           location == "") {  // Second condition is for new tabs, otherwise
                              // reload function is enabled until tab is refreshed.
         this.reloadCommand.setAttribute("disabled", "true");
       } else {
         this.reloadCommand.removeAttribute("disabled");
       }
 
       if (gURLBar) {
         URLBarSetURI(aLocationURI);
 
         BookmarkingUI.onLocationChange();
-        SocialUI.updateState(location);
+        SocialUI.updateState();
         UITour.onLocationChange(location);
         gTabletModePageCounter.inc();
       }
 
       // Utility functions for disabling find
       var shouldDisableFind = function shouldDisableFind(aDocument) {
         let docElt = aDocument.documentElement;
         return docElt && docElt.getAttribute("disablefastfind") == "true";
@@ -4382,22 +4381,21 @@ var XULBrowserWindow = {
             content.document.addEventListener("readystatechange", onContentRSChange);
           }
         }
       } else
         disableFindCommands(false);
 
       // Try not to instantiate gCustomizeMode as much as possible,
       // so don't use CustomizeMode.jsm to check for URI or customizing.
-      let customizingURI = "about:customizing";
-      if (location == customizingURI) {
+      if (location == "about:blank" &&
+          gBrowser.selectedTab.hasAttribute("customizemode")) {
         gCustomizeMode.enter();
-      } else if (location != customizingURI &&
-                 (CustomizationHandler.isEnteringCustomizeMode ||
-                  CustomizationHandler.isCustomizing())) {
+      } else if (CustomizationHandler.isEnteringCustomizeMode ||
+                 CustomizationHandler.isCustomizing()) {
         gCustomizeMode.exit();
       }
     }
     UpdateBackForwardCommands(gBrowser.webNavigation);
     ReaderParent.updateReaderButton(gBrowser.selectedBrowser);
 
     gGestureSupport.restoreRotationState();
 
@@ -6385,29 +6383,82 @@ function undoCloseWindow(aIndex) {
 /*
  * Determines if a tab is "empty", usually used in the context of determining
  * if it's ok to close the tab.
  */
 function isTabEmpty(aTab) {
   if (aTab.hasAttribute("busy"))
     return false;
 
+  if (aTab.hasAttribute("customizemode"))
+    return false;
+
   let browser = aTab.linkedBrowser;
   if (!isBlankPageURL(browser.currentURI.spec))
     return false;
 
-  if (browser.hasContentOpener)
+  if (!checkEmptyPageOrigin(browser))
     return false;
 
   if (browser.canGoForward || browser.canGoBack)
     return false;
 
   return true;
 }
 
+/**
+ * Check whether a page can be considered as 'empty', that its URI
+ * reflects its origin, and that if it's loaded in a tab, that tab
+ * could be considered 'empty' (e.g. like the result of opening
+ * a 'blank' new tab).
+ *
+ * We have to do more than just check the URI, because especially
+ * for things like about:blank, it is possible that the opener or
+ * some other page has control over the contents of the page.
+ *
+ * @param browser {Browser}
+ *        The browser whose page we're checking (the selected browser
+ *        in this window if omitted).
+ * @param uri {nsIURI}
+ *        The URI against which we're checking (the browser's currentURI
+ *        if omitted).
+ *
+ * @return false if the page was opened by or is controlled by arbitrary web
+ *         content, unless that content corresponds with the URI.
+ *         true if the page is blank and controlled by a principal matching
+ *         that URI (or the system principal if the principal has no URI)
+ */
+function checkEmptyPageOrigin(browser = gBrowser.selectedBrowser,
+                              uri = browser.currentURI) {
+  // If another page opened this page with e.g. window.open, this page might
+  // be controlled by its opener - return false.
+  if (browser.hasContentOpener) {
+    return false;
+  }
+  let contentPrincipal = browser.contentPrincipal;
+  if (gMultiProcessBrowser && browser.isRemoteBrowser &&
+      !contentPrincipal && uri.spec == "about:blank") {
+    // Need to specialcase this because of how stopping an about:blank
+    // load from chrome on e10s causes a permanently null contentPrincipal,
+    // see bug 1249362.
+    return true;
+  }
+  // Not all principals have URIs...
+  if (contentPrincipal.URI) {
+    if (uri.spec == "about:blank" && contentPrincipal.isNullPrincipal) {
+      return true;
+    }
+    return contentPrincipal.URI.equals(uri);
+  }
+  // ... so for those that don't have them, enforce that the page has the
+  // system principal (this matches e.g. on about:home).
+  let ssm = Services.scriptSecurityManager;
+  return ssm.isSystemPrincipal(contentPrincipal);
+}
+
 function BrowserOpenSyncTabs() {
   if (Services.prefs.getBoolPref("services.sync.syncedTabsUIRefresh")) {
     gSyncUI.openSyncedTabsPanel();
   } else {
     switchToTabHavingURI("about:sync-tabs", true);
   }
 }
 
@@ -7287,17 +7338,16 @@ var gRemoteTabsUI = {
  *        the one from the new URI.
  * @return True if an existing tab was found, false otherwise
  */
 function switchToTabHavingURI(aURI, aOpenNew, aOpenParams={}) {
   // Certain URLs can be switched to irrespective of the source or destination
   // window being in private browsing mode:
   const kPrivateBrowsingWhitelist = new Set([
     "about:addons",
-    "about:customizing",
   ]);
 
   let ignoreFragment = aOpenParams.ignoreFragment;
   let ignoreQueryString = aOpenParams.ignoreQueryString;
   let replaceQueryString = aOpenParams.replaceQueryString;
 
   // These properties are only used by switchToTabHavingURI and should
   // not be used as a parameter for the new load.
--- a/browser/base/content/tabbrowser.xml
+++ b/browser/base/content/tabbrowser.xml
@@ -1393,16 +1393,21 @@
                   var characterSet = browser.characterSet;
                   const textToSubURI = Components.classes["@mozilla.org/intl/texttosuburi;1"]
                                                  .getService(Components.interfaces.nsITextToSubURI);
                   title = textToSubURI.unEscapeNonAsciiURI(characterSet, title);
                 } catch(ex) { /* Do nothing. */ }
 
                 crop = "center";
 
+              } else if (aTab.hasAttribute("customizemode")) {
+                let brandBundle = document.getElementById("bundle_brand");
+                let brandShortName = brandBundle.getString("brandShortName");
+                title = gNavigatorBundle.getFormattedString("customizeMode.tabTitle",
+                                                            [ brandShortName ]);
               } else // Still no title?  Fall back to our untitled string.
                 title = this.mStringBundle.getString("tabs.emptyTabTitle");
             }
 
             if (aTab.label == title &&
                 aTab.crop == crop)
               return false;
 
@@ -1921,21 +1926,16 @@
                                      .createInstance(Components.interfaces.nsIWebProgress);
             filter.addProgressListener(tabListener, Components.interfaces.nsIWebProgress.NOTIFY_ALL);
             b.webProgress.addProgressListener(filter, Components.interfaces.nsIWebProgress.NOTIFY_ALL);
             this._tabListeners.set(t, tabListener);
             this._tabFilters.set(t, filter);
 
             b.droppedLinkHandler = handleDroppedLink;
 
-            // Swap in a preloaded customize tab, if available.
-            if (aURI == "about:customizing") {
-              usingPreloadedContent = gCustomizationTabPreloader.newTab(t);
-            }
-
             // Dispatch a new tab notification.  We do this once we're
             // entirely done, so that things are in a consistent state
             // even if the event listener opens or closes tabs.
             var detail = aEventDetail || {};
             var evt = new CustomEvent("TabOpen", { bubbles: true, detail });
             t.dispatchEvent(evt);
 
             // If we didn't swap docShells with a preloaded browser
@@ -2469,43 +2469,16 @@
               } while (tab && remainingTabs.indexOf(tab) == -1);
             }
 
             this.selectedTab = tab;
           ]]>
         </body>
       </method>
 
-      <method name="swapNewTabWithBrowser">
-        <parameter name="aNewTab"/>
-        <parameter name="aBrowser"/>
-        <body>
-          <![CDATA[
-            // The browser must be standalone.
-            if (aBrowser.getTabBrowser())
-              throw Cr.NS_ERROR_INVALID_ARG;
-
-            // The tab is definitely not loading.
-            aNewTab.removeAttribute("busy");
-            if (aNewTab.selected) {
-              this.mIsBusy = false;
-            }
-
-            this._swapBrowserDocShells(aNewTab, aBrowser);
-
-            // Update the new tab's title.
-            this.setTabTitle(aNewTab);
-
-            if (aNewTab.selected) {
-              this.updateCurrentBrowser(true);
-            }
-          ]]>
-        </body>
-      </method>
-
       <method name="swapBrowsersAndCloseOther">
         <parameter name="aOurTab"/>
         <parameter name="aOtherTab"/>
         <body>
           <![CDATA[
             // Do not allow transfering a private tab to a non-private window
             // and vice versa.
             if (PrivateBrowsingUtils.isWindowPrivate(window) !=
new file mode 100644
--- /dev/null
+++ b/browser/base/content/test/urlbar/browser.ini
@@ -0,0 +1,3 @@
+[browser_urlbar_blanking.js]
+support-files =
+  file_blank_but_not_blank.html
new file mode 100644
--- /dev/null
+++ b/browser/base/content/test/urlbar/browser_urlbar_blanking.js
@@ -0,0 +1,35 @@
+"use strict";
+
+add_task(function*() {
+  for (let page of gInitialPages) {
+    if (page == "about:newtab") {
+      // New tab preloading makes this a pain to test, so skip
+      continue;
+    }
+    let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, page);
+    ok(!gURLBar.value, "The URL bar should be empty if we load a plain " + page + " page.");
+    yield BrowserTestUtils.removeTab(tab);
+  }
+});
+
+add_task(function*() {
+  const URI = "http://www.example.com/browser/browser/base/content/test/urlbar/file_blank_but_not_blank.html";
+  let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, URI);
+  is(gURLBar.value, URI, "The URL bar should match the URI");
+  let browserLoaded = BrowserTestUtils.browserLoaded(tab.linkedBrowser);
+  ContentTask.spawn(tab.linkedBrowser, null, function() {
+    content.document.querySelector('a').click();
+  });
+  yield browserLoaded;
+  ok(gURLBar.value.startsWith("javascript"), "The URL bar should have the JS URI");
+  // When reloading, the javascript: uri we're using will throw an exception.
+  // That's deliberate, so we need to tell mochitest to ignore it:
+  SimpleTest.expectUncaughtException(true);
+  yield ContentTask.spawn(tab.linkedBrowser, null, function*() {
+    // This is sync, so by the time we return we should have changed the URL bar.
+    content.location.reload();
+  });
+  ok(!!gURLBar.value, "URL bar should not be blank.");
+  yield BrowserTestUtils.removeTab(tab);
+  SimpleTest.expectUncaughtException(false);
+});
new file mode 100644
--- /dev/null
+++ b/browser/base/content/test/urlbar/file_blank_but_not_blank.html
@@ -0,0 +1,2 @@
+<script>var q = 1;</script>
+<a href="javascript:q">Click me</a>
--- a/browser/base/moz.build
+++ b/browser/base/moz.build
@@ -18,16 +18,17 @@ BROWSER_CHROME_MANIFESTS += [
     'content/test/alerts/browser.ini',
     'content/test/chat/browser.ini',
     'content/test/general/browser.ini',
     'content/test/newtab/browser.ini',
     'content/test/plugins/browser.ini',
     'content/test/popupNotifications/browser.ini',
     'content/test/referrer/browser.ini',
     'content/test/social/browser.ini',
+    'content/test/urlbar/browser.ini',
 ]
 
 DEFINES['MOZ_APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
 DEFINES['MOZ_APP_VERSION_DISPLAY'] = CONFIG['MOZ_APP_VERSION_DISPLAY']
 
 DEFINES['APP_LICENSE_BLOCK'] = '%s/content/overrides/app-license.html' % SRCDIR
 
 if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk2', 'gtk3', 'cocoa'):
--- a/browser/components/about/AboutRedirector.cpp
+++ b/browser/components/about/AboutRedirector.cpp
@@ -94,18 +94,16 @@ static RedirEntry kRedirMap[] = {
   { "downloads", "chrome://browser/content/downloads/contentAreaDownloadsView.xul",
     nsIAboutModule::ALLOW_SCRIPT },
 #ifdef MOZ_SERVICES_HEALTHREPORT
   { "healthreport", "chrome://browser/content/abouthealthreport/abouthealth.xhtml",
     nsIAboutModule::ALLOW_SCRIPT },
 #endif
   { "accounts", "chrome://browser/content/aboutaccounts/aboutaccounts.xhtml",
     nsIAboutModule::ALLOW_SCRIPT },
-  { "customizing", "chrome://browser/content/customizableui/aboutCustomizing.xul",
-    nsIAboutModule::ALLOW_SCRIPT },
   { "loopconversation", "chrome://loop/content/panels/conversation.html",
     nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
     nsIAboutModule::ALLOW_SCRIPT |
     nsIAboutModule::HIDE_FROM_ABOUTABOUT |
     nsIAboutModule::ENABLE_INDEXED_DB },
   { "looppanel", "chrome://loop/content/panels/panel.html",
     nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
     nsIAboutModule::ALLOW_SCRIPT |
--- a/browser/components/build/nsModule.cpp
+++ b/browser/components/build/nsModule.cpp
@@ -102,17 +102,16 @@ static const mozilla::Module::ContractID
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "home", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "newtab", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "preferences", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "downloads", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "accounts", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
 #ifdef MOZ_SERVICES_HEALTHREPORT
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "healthreport", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
 #endif
-    { NS_ABOUT_MODULE_CONTRACTID_PREFIX "customizing", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "looppanel", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "loopconversation", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
     { NS_ABOUT_MODULE_CONTRACTID_PREFIX "reader", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
 #if defined(XP_WIN)
     { NS_IEHISTORYENUMERATOR_CONTRACTID, &kNS_WINIEHISTORYENUMERATOR_CID },
 #elif defined(XP_MACOSX)
     { NS_SHELLSERVICE_CONTRACTID, &kNS_SHELLSERVICE_CID },
 #endif
--- a/browser/components/customizableui/CustomizableWidgets.jsm
+++ b/browser/components/customizableui/CustomizableWidgets.jsm
@@ -198,33 +198,33 @@ const CustomizableWidgets = [
       // Get all statically placed buttons to supply them with keyboard shortcuts.
       let staticButtons = items.parentNode.getElementsByTagNameNS(kNSXUL, "toolbarbutton");
       for (let i = 0, l = staticButtons.length; i < l; ++i)
         CustomizableUI.addShortcut(staticButtons[i]);
 
       PlacesUtils.history.QueryInterface(Ci.nsPIPlacesDatabase)
                          .asyncExecuteLegacyQueries([query], 1, options, {
         handleResult: function (aResultSet) {
-          let onItemClick = function (aEvent) {
+          let onItemCommand = function (aEvent) {
             let item = aEvent.target;
             win.openUILink(item.getAttribute("targetURI"), aEvent);
             CustomizableUI.hidePanelForNode(item);
           };
           let fragment = doc.createDocumentFragment();
           let row;
           while ((row = aResultSet.getNextRow())) {
             let uri = row.getResultByIndex(1);
             let title = row.getResultByIndex(2);
             let icon = row.getResultByIndex(6);
 
             let item = doc.createElementNS(kNSXUL, "toolbarbutton");
             item.setAttribute("label", title || uri);
             item.setAttribute("targetURI", uri);
             item.setAttribute("class", "subviewbutton");
-            item.addEventListener("click", onItemClick);
+            item.addEventListener("command", onItemCommand);
             if (icon) {
               let iconURL = "moz-anno:favicon:" + icon;
               item.setAttribute("image", iconURL);
             }
             fragment.appendChild(item);
           }
           items.appendChild(fragment);
         },
--- a/browser/components/customizableui/CustomizeMode.jsm
+++ b/browser/components/customizableui/CustomizeMode.jsm
@@ -6,17 +6,16 @@
 
 this.EXPORTED_SYMBOLS = ["CustomizeMode"];
 
 const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
 
 const kPrefCustomizationDebug = "browser.uiCustomization.debug";
 const kPrefCustomizationAnimation = "browser.uiCustomization.disableAnimation";
 const kPaletteId = "customization-palette";
-const kAboutURI = "about:customizing";
 const kDragDataTypePrefix = "text/toolbarwrapper-id/";
 const kPlaceholderClass = "panel-customization-placeholder";
 const kSkipSourceNodePref = "browser.uiCustomization.skipSourceNodeCheck";
 const kToolbarVisibilityBtn = "customization-toolbar-visibility-button";
 const kDrawInTitlebarPref = "browser.tabs.drawInTitlebar";
 const kMaxTransitionDurationMs = 2000;
 
 const kPanelItemContextMenu = "customizationPanelItemContextMenu";
@@ -31,16 +30,18 @@ Cu.import("resource://gre/modules/AddonM
 Cu.import("resource://gre/modules/AppConstants.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "DragPositionManager",
                                   "resource:///modules/DragPositionManager.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "BrowserUITelemetry",
                                   "resource:///modules/BrowserUITelemetry.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "LightweightThemeManager",
                                   "resource://gre/modules/LightweightThemeManager.jsm");
+XPCOMUtils.defineLazyModuleGetter(this, "SessionStore",
+                                  "resource:///modules/sessionstore/SessionStore.jsm");
 
 let gDebug;
 XPCOMUtils.defineLazyGetter(this, "log", () => {
   let scope = {};
   Cu.import("resource://gre/modules/Console.jsm", scope);
   let ConsoleAPI = scope.ConsoleAPI;
   try {
     gDebug = Services.prefs.getBoolPref(kPrefCustomizationDebug);
@@ -51,16 +52,33 @@ XPCOMUtils.defineLazyGetter(this, "log",
   };
   return new scope.ConsoleAPI(consoleOptions);
 });
 
 var gDisableAnimation = null;
 
 var gDraggingInToolbars;
 
+var gTab;
+
+function closeGlobalTab() {
+  let win = gTab.ownerGlobal;
+  if (win.gBrowser.browsers.length == 1) {
+    win.BrowserOpenTab();
+  }
+  win.gBrowser.removeTab(gTab);
+}
+
+function unregisterGlobalTab() {
+  gTab.removeEventListener("TabClose", unregisterGlobalTab);
+  gTab.ownerGlobal.removeEventListener("unload", unregisterGlobalTab);
+  gTab.removeAttribute("customizemode");
+  gTab = null;
+}
+
 function CustomizeMode(aWindow) {
   if (gDisableAnimation === null) {
     gDisableAnimation = Services.prefs.getPrefType(kPrefCustomizationAnimation) == Ci.nsIPrefBranch.PREF_BOOL &&
                         Services.prefs.getBoolPref(kPrefCustomizationAnimation);
   }
   this.window = aWindow;
   this.document = aWindow.document;
   this.browser = aWindow.gBrowser;
@@ -135,37 +153,72 @@ CustomizeMode.prototype = {
    let lwthemeIcon = aDocument.getAnonymousElementByAttribute(lwthemeButton,
           "class", "button-icon");
    let imageURL = LightweightThemeManager.currentTheme === null ?
           "chrome://browser/skin/theme-switcher-icon.png" :
           LightweightThemeManager.currentTheme.iconURL;
     lwthemeIcon.style.backgroundImage = "url(" + imageURL + ")";
   },
 
+  setTab: function(aTab) {
+    if (gTab == aTab) {
+      return;
+    }
+
+    if (gTab) {
+      closeGlobalTab();
+    }
+
+    gTab = aTab;
+
+    gTab.setAttribute("customizemode", "true");
+    SessionStore.persistTabAttribute("customizemode");
+
+    gTab.linkedBrowser.stop();
+
+    let win = gTab.ownerGlobal;
+
+    win.gBrowser.setTabTitle(gTab);
+    win.gBrowser.setIcon(gTab,
+                         "chrome://browser/skin/customizableui/customizeFavicon.ico");
+
+    gTab.addEventListener("TabClose", unregisterGlobalTab);
+    win.addEventListener("unload", unregisterGlobalTab);
+
+    if (gTab.selected) {
+      win.gCustomizeMode.enter();
+    }
+  },
+
   enter: function() {
     this._wantToBeInCustomizeMode = true;
 
     if (this._customizing || this._handler.isEnteringCustomizeMode) {
       return;
     }
 
     // Exiting; want to re-enter once we've done that.
     if (this._handler.isExitingCustomizeMode) {
       log.debug("Attempted to enter while we're in the middle of exiting. " +
                 "We'll exit after we've entered");
       return;
     }
 
-
-    // We don't need to switch to kAboutURI, or open a new tab at
-    // kAboutURI if we're already on it.
-    if (this.browser.selectedBrowser.currentURI.spec != kAboutURI) {
-      this.window.switchToTabHavingURI(kAboutURI, true, {
-        skipTabAnimation: true,
-      });
+    if (!gTab) {
+      this.setTab(this.browser.loadOneTab("about:blank",
+                                          { inBackground: false,
+                                            forceNotRemote: true,
+                                            skipAnimation: true }));
+      return;
+    }
+    if (!gTab.selected) {
+      gTab.ownerGlobal.gBrowser.selectedTab = gTab;
+    }
+    gTab.ownerGlobal.focus();
+    if (gTab.ownerDocument != this.document) {
       return;
     }
 
     let window = this.window;
     let document = this.document;
 
     this._handler.isEnteringCustomizeMode = true;
 
@@ -308,20 +361,16 @@ CustomizeMode.prototype = {
 
       CustomizableUI.dispatchToolboxEvent("customizationready", {}, window);
       this._enableOutlinesTimeout = window.setTimeout(() => {
         this.document.getElementById("nav-bar").setAttribute("showoutline", "true");
         this.panelUIContents.setAttribute("showoutline", "true");
         delete this._enableOutlinesTimeout;
       }, 0);
 
-      // It's possible that we didn't enter customize mode via the menu panel,
-      // meaning we didn't kick off about:customizing preloading. If that's
-      // the case, let's kick it off for the next time we load this mode.
-      window.gCustomizationTabPreloader.ensurePreloading();
       if (!this._wantToBeInCustomizeMode) {
         this.exit();
       }
     }.bind(this)).then(null, function(e) {
       log.error("Error entering customize mode", e);
       // We should ensure this has been called, and calling it again doesn't hurt:
       window.PanelUI.endBatchUpdate();
       this._handler.isEnteringCustomizeMode = false;
@@ -397,41 +446,24 @@ CustomizeMode.prototype = {
     Task.spawn(function*() {
       yield this.depopulatePalette();
 
       yield this._doTransition(false);
       this.removeLWTStyling();
 
       Services.obs.removeObserver(this, "lightweight-theme-window-updated", false);
 
-      let browser = document.getElementById("browser");
-      if (this.browser.selectedBrowser.currentURI.spec == kAboutURI) {
-        let custBrowser = this.browser.selectedBrowser;
-        if (custBrowser.canGoBack) {
-          // If there's history to this tab, just go back.
-          // Note that this throws an exception if the previous document has a
-          // problematic URL (e.g. about:idontexist)
-          try {
-            custBrowser.goBack();
-          } catch (ex) {
-            log.error(ex);
-          }
+      if (this.browser.selectedTab == gTab) {
+        if (gTab.linkedBrowser.currentURI.spec == "about:blank") {
+          closeGlobalTab();
         } else {
-          // If we can't go back, we're removing the about:customization tab.
-          // We only do this if we're the top window for this window (so not
-          // a dialog window, for example).
-          if (window.getTopWin(true) == window) {
-            let customizationTab = this.browser.selectedTab;
-            if (this.browser.browsers.length == 1) {
-              window.BrowserOpenTab();
-            }
-            this.browser.removeTab(customizationTab);
-          }
+          unregisterGlobalTab();
         }
       }
+      let browser = document.getElementById("browser");
       browser.parentNode.selectedPanel = browser;
       let customizer = document.getElementById("customization-container");
       customizer.hidden = true;
 
       window.gNavToolbox.removeEventListener("toolbarvisibilitychange", this);
 
       DragPositionManager.stop();
       this._removeDragHandlers(this.visiblePalette);
deleted file mode 100644
--- a/browser/components/customizableui/content/aboutCustomizing.xul
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This Source Code Form is subject to the terms of the Mozilla Public
-   - License, v. 2.0. If a copy of the MPL was not distributed with this
-   - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-
-<!DOCTYPE window [
-  <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
-  %brandDTD;
-  <!ENTITY % browserDTD SYSTEM "chrome://browser/locale/browser.dtd">
-  %browserDTD;
-]>
-
-<window id="aboutCustomizingWindow"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
-        xmlns:html="http://www.w3.org/1999/xhtml"
-        title="&customizeMode.tabTitle;">
-  <html:head>
-    <html:link rel="icon" type="image/x-icon"
-               href="chrome://browser/skin/customizableui/customizeFavicon.ico"/>
-  </html:head>
-</window>
--- a/browser/components/customizableui/content/jar.mn
+++ b/browser/components/customizableui/content/jar.mn
@@ -1,11 +1,10 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 browser.jar:
-  content/browser/customizableui/aboutCustomizing.xul
   content/browser/customizableui/panelUI.css
   content/browser/customizableui/panelUI.js
   content/browser/customizableui/panelUI.xml
   content/browser/customizableui/toolbar.xml
 
--- a/browser/components/customizableui/content/panelUI.js
+++ b/browser/components/customizableui/content/panelUI.js
@@ -152,20 +152,16 @@ const PanelUI = {
           aEvent.type == "command") {
         anchor = this.menuButton;
       } else {
         anchor = aEvent.target;
       }
 
       this.panel.addEventListener("popupshown", function onPopupShown() {
         this.removeEventListener("popupshown", onPopupShown);
-        // As an optimization for the customize mode transition, we preload
-        // about:customizing in the background once the menu panel is first
-        // shown.
-        gCustomizationTabPreloader.ensurePreloading();
         deferred.resolve();
       });
 
       let iconAnchor =
         document.getAnonymousElementByAttribute(anchor, "class",
                                                 "toolbarbutton-icon");
       this.panel.openPopup(iconAnchor || anchor);
     }, (reason) => {
--- a/browser/components/customizableui/test/browser.ini
+++ b/browser/components/customizableui/test/browser.ini
@@ -20,17 +20,16 @@ skip-if = os == "linux"
 [browser_885052_customize_mode_observers_disabed.js]
 # Bug 951403 - Disabled on OSX for frequent failures
 skip-if = os == "mac"
 
 [browser_885530_showInPrivateBrowsing.js]
 [browser_886323_buildArea_removable_nodes.js]
 [browser_887438_currentset_shim.js]
 [browser_888817_currentset_updating.js]
-[browser_889120_customize_tab_merging.js]
 [browser_890140_orphaned_placeholders.js]
 [browser_890262_destroyWidget_after_add_to_panel.js]
 [browser_892955_isWidgetRemovable_for_removed_widgets.js]
 [browser_892956_destroyWidget_defaultPlacements.js]
 [browser_909779_overflow_toolbars_new_window.js]
 skip-if = os == "linux"
 
 [browser_901207_searchbar_in_panel.js]
deleted file mode 100644
--- a/browser/components/customizableui/test/browser_889120_customize_tab_merging.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-"use strict";
-
-const kTestToolbarId = "test-empty-drag";
-
-// Attempting to switch quickly from one tab to another to see whether the state changes
-// correctly.
-add_task(function* CheckBasicCustomizeMode() {
-  yield startCustomizing();
-  ok(CustomizationHandler.isCustomizing(), "We should be in customize mode");
-  yield endCustomizing();
-  ok(!CustomizationHandler.isCustomizing(), "We should not be in customize mode");
-});
-add_task(function* CheckQuickCustomizeModeSwitch() {
-  let tab1 = gBrowser.addTab("about:newtab");
-  gBrowser.selectedTab = tab1;
-  let tab2 = gBrowser.addTab("about:customizing");
-  let tab3 = gBrowser.addTab("about:newtab");
-  gBrowser.selectedTab = tab2;
-  try {
-    yield waitForCondition(() => CustomizationHandler.isEnteringCustomizeMode);
-  } catch (ex) {
-    Cu.reportError(ex);
-  }
-  ok(CustomizationHandler.isEnteringCustomizeMode, "Should be entering customize mode");
-  gBrowser.selectedTab = tab3;
-  try {
-    yield waitForCondition(() => !CustomizationHandler.isEnteringCustomizeMode && !CustomizationHandler.isCustomizing());
-  } catch (ex) {
-    Cu.reportError(ex);
-  }
-  ok(!CustomizationHandler.isCustomizing(), "Should not be entering customize mode");
-  gBrowser.removeTab(tab1);
-  gBrowser.removeTab(tab2);
-  gBrowser.removeTab(tab3);
-});
-
-add_task(function* asyncCleanup() {
-  yield endCustomizing();
-});
-
--- a/browser/components/customizableui/test/head.js
+++ b/browser/components/customizableui/test/head.js
@@ -194,27 +194,27 @@ function endCustomizing(aWindow=window) 
   return deferredEndCustomizing.promise.then(function() {
     let deferredLoadNewTab = Promise.defer();
 
     //XXXgijs so some tests depend on this tab being about:blank. Make it so.
     let newTabBrowser = aWindow.gBrowser.selectedBrowser;
     newTabBrowser.stop();
 
     // If we stop early enough, this might actually be about:blank.
-    if (newTabBrowser.contentDocument.location.href == "about:blank") {
+    if (newTabBrowser.currentURI.spec == "about:blank") {
       return null;
     }
 
     // Otherwise, make it be about:blank, and wait for that to be done.
     function onNewTabLoaded(e) {
       newTabBrowser.removeEventListener("load", onNewTabLoaded, true);
       deferredLoadNewTab.resolve();
     }
     newTabBrowser.addEventListener("load", onNewTabLoaded, true);
-    newTabBrowser.contentDocument.location.replace("about:blank");
+    newTabBrowser.loadURI("about:blank");
     return deferredLoadNewTab.promise;
   });
 }
 
 function startCustomizing(aWindow=window) {
   if (aWindow.document.documentElement.getAttribute("customizing") == "true") {
     return null;
   }
--- a/browser/components/distribution.js
+++ b/browser/components/distribution.js
@@ -65,16 +65,22 @@ DistributionCustomizer.prototype = {
     }
     catch (e) {
       locale = "en-US";
     }
     this.__defineGetter__("_locale", () => locale);
     return this._locale;
   },
 
+  get _language() {
+    let language = this._locale.split("-")[0];
+    this.__defineGetter__("_language", () => language);
+    return this._language;
+  },
+
   get _prefSvc() {
     let svc = Cc["@mozilla.org/preferences-service;1"].
               getService(Ci.nsIPrefService);
     this.__defineGetter__("_prefSvc", () => svc);
     return this._prefSvc;
   },
 
   get _prefs() {
@@ -107,16 +113,18 @@ DistributionCustomizer.prototype = {
         let [foo, itemIndex, iprop, ilocale] = m;
         itemIndex = parseInt(itemIndex);
 
         if (ilocale)
           continue;
 
         if (keys.indexOf(key + "." + this._locale) >= 0) {
           key += "." + this._locale;
+        } else if (keys.indexOf(key + "." + this._language) >= 0) {
+          key += "." + this._language;
         }
 
         if (!items[itemIndex])
           items[itemIndex] = {};
         items[itemIndex][iprop] = this._ini.getString(section, key);
 
         if (iprop == "type" && items[itemIndex]["type"] == "default")
           defaultIndex = itemIndex;
@@ -318,16 +326,18 @@ DistributionCustomizer.prototype = {
     defaults.setCharPref("distribution.version",
                          this._ini.getString("Global", "version"));
 
     let partnerAbout = Cc["@mozilla.org/supports-string;1"].
       createInstance(Ci.nsISupportsString);
     try {
       if (globalPrefs["about." + this._locale]) {
         partnerAbout.data = this._ini.getString("Global", "about." + this._locale);
+      } else if (globalPrefs["about." + this._language]) {
+        partnerAbout.data = this._ini.getString("Global", "about." + this._language);
       } else {
         partnerAbout.data = this._ini.getString("Global", "about");
       }
       defaults.setComplexValue("distribution.about",
                                Ci.nsISupportsString, partnerAbout);
     } catch (e) {
       /* ignore bad prefs due to bug 895473 and move on */
       Cu.reportError(e);
@@ -362,16 +372,27 @@ DistributionCustomizer.prototype = {
     let localizedStr = Cc["@mozilla.org/pref-localizedstring;1"].
       createInstance(Ci.nsIPrefLocalizedString);
 
     if (sections["LocalizablePreferences"]) {
       for (let key of enumerate(this._ini.getKeys("LocalizablePreferences"))) {
         try {
           let value = eval(this._ini.getString("LocalizablePreferences", key));
           value = value.replace(/%LOCALE%/g, this._locale);
+          value = value.replace(/%LANGUAGE%/g, this._language);
+          localizedStr.data = "data:text/plain," + key + "=" + value;
+          defaults.setComplexValue(key, Ci.nsIPrefLocalizedString, localizedStr);
+        } catch (e) { /* ignore bad prefs and move on */ }
+      }
+    }
+
+    if (sections["LocalizablePreferences-" + this._language]) {
+      for (let key of enumerate(this._ini.getKeys("LocalizablePreferences-" + this._language))) {
+        try {
+          let value = eval(this._ini.getString("LocalizablePreferences-" + this._language, key));
           localizedStr.data = "data:text/plain," + key + "=" + value;
           defaults.setComplexValue(key, Ci.nsIPrefLocalizedString, localizedStr);
         } catch (e) { /* ignore bad prefs and move on */ }
       }
     }
 
     if (sections["LocalizablePreferences-" + this._locale]) {
       for (let key of enumerate(this._ini.getKeys("LocalizablePreferences-" + this._locale))) {
--- a/browser/components/extensions/ext-utils.js
+++ b/browser/components/extensions/ext-utils.js
@@ -627,17 +627,17 @@ global.WindowManager = {
       }
     }
     return null;
   },
 
   convert(extension, window, getInfo) {
     let result = {
       id: this.getId(window),
-      focused: window == WindowManager.topWindow,
+      focused: window.document.hasFocus(),
       top: window.screenY,
       left: window.screenX,
       width: window.outerWidth,
       height: window.outerHeight,
       incognito: PrivateBrowsingUtils.isWindowPrivate(window),
 
       // We fudge on these next two.
       type: this.windowType(window),
--- a/browser/components/nsBrowserGlue.js
+++ b/browser/components/nsBrowserGlue.js
@@ -53,19 +53,16 @@ XPCOMUtils.defineLazyModuleGetter(this, 
                                   "resource://gre/modules/BookmarkJSONUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "WebappManager",
                                   "resource:///modules/WebappManager.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PageThumbs",
                                   "resource://gre/modules/PageThumbs.jsm");
 
-XPCOMUtils.defineLazyModuleGetter(this, "CustomizationTabPreloader",
-                                  "resource:///modules/CustomizationTabPreloader.jsm");
-
 XPCOMUtils.defineLazyModuleGetter(this, "PdfJs",
                                   "resource://pdf.js/PdfJs.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "ProcessHangMonitor",
                                   "resource:///modules/ProcessHangMonitor.jsm");
 
 if (AppConstants.NIGHTLY_BUILD) {
   XPCOMUtils.defineLazyModuleGetter(this, "ShumwayUtils",
@@ -1067,17 +1064,16 @@ BrowserGlue.prototype = {
                          .getService(Ci.nsIAppStartup);
       appStartup.trackStartupCrashEnd();
     } catch (e) {
       Cu.reportError("Could not end startup crash tracking in quit-application-granted: " + e);
     }
 
     SelfSupportBackend.uninit();
 
-    CustomizationTabPreloader.uninit();
     WebappManager.uninit();
 
     NewTabPrefsProvider.prefs.uninit();
     AboutNewTab.uninit();
     webrtcUI.uninit();
     FormValidationHandler.uninit();
     if (AppConstants.NIGHTLY_BUILD) {
       AddonWatcher.uninit();
@@ -1807,20 +1803,26 @@ BrowserGlue.prototype = {
                                                     notifyBox.PRIORITY_CRITICAL_MEDIUM,
                                                     buttons);
     notification.persistence = -1; // Until user closes it
   },
 
   _migrateUI: function BG__migrateUI() {
     const UI_VERSION = 36;
     const BROWSER_DOCURL = "chrome://browser/content/browser.xul";
-    let currentUIVersion = 0;
-    try {
+
+    let currentUIVersion;
+    if (Services.prefs.prefHasUserValue("browser.migration.version")) {
       currentUIVersion = Services.prefs.getIntPref("browser.migration.version");
-    } catch(ex) {}
+    } else {
+      // This is a new profile, nothing to migrate.
+      Services.prefs.setIntPref("browser.migration.version", UI_VERSION);
+      return;
+    }
+
     if (currentUIVersion >= UI_VERSION)
       return;
 
     let xulStore = Cc["@mozilla.org/xul/xulstore;1"].getService(Ci.nsIXULStore);
 
     if (currentUIVersion < 2) {
       // This code adds the customizable bookmarks button.
       let currentset = xulStore.getValue(BROWSER_DOCURL, "nav-bar", "currentset");
--- a/browser/components/preferences/in-content/main.js
+++ b/browser/components/preferences/in-content/main.js
@@ -2,16 +2,20 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 Components.utils.import("resource://gre/modules/Downloads.jsm");
 Components.utils.import("resource://gre/modules/FileUtils.jsm");
 Components.utils.import("resource://gre/modules/Task.jsm");
 Components.utils.import("resource:///modules/ShellService.jsm");
 Components.utils.import("resource:///modules/TransientPrefs.jsm");
+
+XPCOMUtils.defineLazyModuleGetter(this, "OS",
+                                  "resource://gre/modules/osfile.jsm");
+
 #ifdef E10S_TESTING_ONLY
 XPCOMUtils.defineLazyModuleGetter(this, "UpdateUtils",
                                   "resource://gre/modules/UpdateUtils.jsm");
 #endif
 
 var gMainPane = {
   /**
    * Initialization of this.
@@ -96,17 +100,16 @@ var gMainPane = {
 
       // but if it's force disabled, then the checkbox is disabled.
       e10sCheckbox.disabled = !Services.appinfo.browserTabsRemoteAutostart;
     }
 
 #endif
 
 #ifdef MOZ_DEV_EDITION
-    Cu.import("resource://gre/modules/osfile.jsm");
     let uAppData = OS.Constants.Path.userApplicationDataDir;
     let ignoreSeparateProfile = OS.Path.join(uAppData, "ignore-dev-edition-profile");
 
     setEventListener("separateProfileMode", "command", gMainPane.separateProfileModeChange);
     let separateProfileModeCheckbox = document.getElementById("separateProfileMode");
     setEventListener("getStarted", "click", gMainPane.onGetStarted);
 
     OS.File.stat(ignoreSeparateProfile).then(() => separateProfileModeCheckbox.checked = false,
@@ -180,49 +183,72 @@ var gMainPane = {
       Services.startup.quit(Ci.nsIAppStartup.eAttemptQuit |  Ci.nsIAppStartup.eRestartNotSameProfile);
     }
     function revertCheckbox(error) {
       separateProfileModeCheckbox.checked = !separateProfileModeCheckbox.checked;
       if (error) {
         Cu.reportError("Failed to toggle separate profile mode: " + error);
       }
     }
+    function createOrRemoveSpecialDevEditionFile(onSuccess) {
+      let uAppData = OS.Constants.Path.userApplicationDataDir;
+      let ignoreSeparateProfile = OS.Path.join(uAppData, "ignore-dev-edition-profile");
+
+      if (separateProfileModeCheckbox.checked) {
+        OS.File.remove(ignoreSeparateProfile).then(onSuccess, revertCheckbox);
+      } else {
+        OS.File.writeAtomic(ignoreSeparateProfile, new Uint8Array()).then(onSuccess, revertCheckbox);
+      }
+    }
 
     const Cc = Components.classes, Ci = Components.interfaces;
     let separateProfileModeCheckbox = document.getElementById("separateProfileMode");
     let brandName = document.getElementById("bundleBrand").getString("brandShortName");
     let bundle = document.getElementById("bundlePreferences");
     let msg = bundle.getFormattedString(separateProfileModeCheckbox.checked ?
                                         "featureEnableRequiresRestart" : "featureDisableRequiresRestart",
                                         [brandName]);
     let title = bundle.getFormattedString("shouldRestartTitle", [brandName]);
-    let shouldProceed = Services.prompt.confirm(window, title, msg)
-    if (shouldProceed) {
-      let cancelQuit = Cc["@mozilla.org/supports-PRBool;1"]
-                         .createInstance(Ci.nsISupportsPRBool);
-      Services.obs.notifyObservers(cancelQuit, "quit-application-requested",
-                                   "restart");
-      shouldProceed = !cancelQuit.data;
+    let check = {value: false};
+    let prompts = Services.prompt;
+    let flags = prompts.BUTTON_POS_0 * prompts.BUTTON_TITLE_IS_STRING +
+                  prompts.BUTTON_POS_1 * prompts.BUTTON_TITLE_CANCEL  +
+                  prompts.BUTTON_POS_2 * prompts.BUTTON_TITLE_IS_STRING;
+    let button0Title = bundle.getString("restartNowButton");
+    let button2Title = bundle.getString("restartLaterButton");
+    let button_index = prompts.confirmEx(window, title, msg, flags,
+                         button0Title, null, button2Title, null, check)
+    let RESTART_NOW_BUTTON_INDEX = 0;
+    let CANCEL_BUTTON_INDEX = 1;
+    let RESTART_LATER_BUTTON_INDEX = 2;
 
-      if (shouldProceed) {
-        Cu.import("resource://gre/modules/osfile.jsm");
-        let uAppData = OS.Constants.Path.userApplicationDataDir;
-        let ignoreSeparateProfile = OS.Path.join(uAppData, "ignore-dev-edition-profile");
+    switch (button_index) {
+      case CANCEL_BUTTON_INDEX:
+        revertCheckbox();
+        return;
+      case RESTART_NOW_BUTTON_INDEX:
+        let shouldProceed = false;
+        let cancelQuit = Cc["@mozilla.org/supports-PRBool;1"]
+                           .createInstance(Ci.nsISupportsPRBool);
+        Services.obs.notifyObservers(cancelQuit, "quit-application-requested",
+                                      "restart");
+        shouldProceed = !cancelQuit.data;
 
-        if (separateProfileModeCheckbox.checked) {
-          OS.File.remove(ignoreSeparateProfile).then(quitApp, revertCheckbox);
-        } else {
-          OS.File.writeAtomic(ignoreSeparateProfile, new Uint8Array()).then(quitApp, revertCheckbox);
+        if (shouldProceed) {
+          createOrRemoveSpecialDevEditionFile(quitApp);
+          return;
         }
+
+        // Revert the checkbox in case we didn't quit
+        revertCheckbox();
         return;
-      }
+      case RESTART_LATER_BUTTON_INDEX:
+        createOrRemoveSpecialDevEditionFile();
+        return;
     }
-
-    // Revert the checkbox in case we didn't quit
-    revertCheckbox();
   },
 
   onGetStarted: function (aEvent) {
     const Cc = Components.classes, Ci = Components.interfaces;
     let wm = Cc["@mozilla.org/appshell/window-mediator;1"]
                 .getService(Ci.nsIWindowMediator);
     let win = wm.getMostRecentWindow("navigator:browser");
 
--- a/browser/components/preferences/in-content/sync.js
+++ b/browser/components/preferences/in-content/sync.js
@@ -420,29 +420,16 @@ var gSyncPane = {
     } else {
       this.page = PAGE_HAS_ACCOUNT;
       document.getElementById("accountName").textContent = Weave.Service.identity.account;
       document.getElementById("syncComputerName").value = Weave.Service.clientsEngine.localName;
       document.getElementById("tosPP-normal").hidden = this._usingCustomServer;
     }
   },
 
-  // Called whenever one of the sync engine preferences is changed.
-  onPreferenceChanged: function() {
-    let prefElts = document.querySelectorAll("#syncEnginePrefs > preference");
-    let syncEnabled = false;
-    for (let elt of prefElts) {
-      if (elt.name.startsWith("services.sync.") && elt.value) {
-        syncEnabled = true;
-        break;
-      }
-    }
-    Services.prefs.setBoolPref("services.sync.enabled", syncEnabled);
-  },
-
   startOver: function (showDialog) {
     if (showDialog) {
       let flags = Services.prompt.BUTTON_POS_0 * Services.prompt.BUTTON_TITLE_IS_STRING +
                   Services.prompt.BUTTON_POS_1 * Services.prompt.BUTTON_TITLE_CANCEL + 
                   Services.prompt.BUTTON_POS_1_DEFAULT;
       let buttonChoice =
         Services.prompt.confirmEx(window,
                                   this._stringBundle.GetStringFromName("syncUnlink.title"),
--- a/browser/components/preferences/in-content/sync.xul
+++ b/browser/components/preferences/in-content/sync.xul
@@ -1,16 +1,15 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 <!-- Sync panel -->
 
-<preferences id="syncEnginePrefs" hidden="true" data-category="paneSync"
-             onchange="gSyncPane.onPreferenceChanged();">
+<preferences id="syncEnginePrefs" hidden="true" data-category="paneSync">
   <preference id="engine.addons"
               name="services.sync.engine.addons"
               type="bool"/>
   <preference id="engine.bookmarks"
               name="services.sync.engine.bookmarks"
               type="bool"/>
   <preference id="engine.history"
               name="services.sync.engine.history"
--- a/browser/components/sessionstore/SessionStore.jsm
+++ b/browser/components/sessionstore/SessionStore.jsm
@@ -796,16 +796,18 @@ var SessionStoreInternal = {
         if (activePageData) {
           if (activePageData.title) {
             tab.label = activePageData.title;
             tab.crop = "end";
           } else if (activePageData.url != "about:blank") {
             tab.label = activePageData.url;
             tab.crop = "center";
           }
+        } else if (tab.hasAttribute("customizemode")) {
+          win.gCustomizeMode.setTab(tab);
         }
 
         // Restore the tab icon.
         if ("image" in tabData) {
           // Using null as the loadingPrincipal because serializing
           // the principal would be overkill. Within SetIcon we
           // default to the systemPrincipal if aLoadingPrincipal is
           // null which will allow the favicon to load.
@@ -3294,16 +3296,20 @@ var SessionStoreInternal = {
    * Kicks off restoring the given tab.
    *
    * @param aTab
    *        the tab to restore
    * @param aLoadArguments
    *        optional load arguments used for loadURI()
    */
   restoreTabContent: function (aTab, aLoadArguments = null) {
+    if (aTab.hasAttribute("customizemode")) {
+      return;
+    }
+
     let browser = aTab.linkedBrowser;
     let window = aTab.ownerDocument.defaultView;
     let tabbrowser = window.gBrowser;
     let tabData = TabState.clone(aTab);
     let activeIndex = tabData.index - 1;
     let activePageData = tabData.entries[activeIndex] || null;
     let uri = activePageData ? activePageData.url || null : null;
     if (aLoadArguments) {
--- a/browser/components/translation/LanguageDetector.jsm
+++ b/browser/components/translation/LanguageDetector.jsm
@@ -1,55 +1,143 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 "use strict";
 
 this.EXPORTED_SYMBOLS = ["LanguageDetector"];
 
+Components.utils.import("resource://gre/modules/Timer.jsm");
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 
-XPCOMUtils.defineLazyModuleGetter(this, "Promise",
-                                  "resource://gre/modules/Promise.jsm");
+// Since Emscripten can handle heap growth, but not heap shrinkage, we
+// need to refresh the worker after we've processed a particularly large
+// string in order to prevent unnecessary resident memory growth.
+//
+// These values define the cut-off string length and the idle timeout
+// (in milliseconds) before destroying a worker. Once a string of the
+// maximum size has been processed, the worker is marked for
+// destruction, and is terminated as soon as it has been idle for the
+// given timeout.
+//
+// 1.5MB. This is the approximate string length that forces heap growth
+// for a 2MB heap.
+var LARGE_STRING = 1.5 * 1024 * 1024;
+var IDLE_TIMEOUT = 10 * 1000;
 
 const WORKER_URL = "resource:///modules/translation/cld-worker.js";
 
-var detectionQueue = [];
+var workerManager = {
+  detectionQueue: [],
 
-var workerReady = false;
-var pendingStrings = [];
+  detectLanguage(aParams) {
+    return this.workerReady.then(worker => {
+      return new Promise(resolve => {
+        this.detectionQueue.push({resolve});
+        worker.postMessage(aParams);
+      });
+    }).then(result => {
+      // We have our asynchronous result from the worker.
+      //
+      // Determine if our input was large enough to trigger heap growth,
+      // or if we're already waiting to destroy the worker when it's
+      // idle. If so, schedule termination after the idle timeout.
+      if (aParams.text.length >= LARGE_STRING || this._idleTimeout != null)
+        this.flushWorker();
+
+      return result;
+    })
+  },
+
+  _worker: null,
+  _workerReadyPromise: null,
 
-XPCOMUtils.defineLazyGetter(this, "worker", () => {
-  let worker = new Worker(WORKER_URL);
-  worker.onmessage = function(aMsg) {
-    if (aMsg.data == "ready") {
-      workerReady = true;
-      for (let string of pendingStrings)
-        worker.postMessage(string);
-      pendingStrings = [];
+  get workerReady() {
+    if (!this._workerReadyPromise)
+      this._workerReadyPromise = new Promise(resolve => {
+        let worker = new Worker(WORKER_URL);
+        worker.onmessage = (aMsg) => {
+          if (aMsg.data == "ready")
+            resolve(worker);
+          else
+            this.detectionQueue.shift().resolve(aMsg.data);
+        };
+        this._worker = worker;
+      });
+
+    return this._workerReadyPromise;
+  },
+
+  // Holds the ID of the current pending idle cleanup setTimeout.
+  _idleTimeout: null,
+
+  // Schedule the current worker to be terminated after the idle timeout.
+  flushWorker() {
+    if (this._idleTimeout != null)
+      clearTimeout(this._idleTimeout);
+
+    this._idleTimeout = setTimeout(this._flushWorker.bind(this), IDLE_TIMEOUT);
+  },
+
+  // Immediately terminate the worker, as long as there no pending
+  // results. Otherwise, reschedule termination until after the next
+  // idle timeout.
+  _flushWorker() {
+    if (this.detectionQueue.length)
+      this.flushWorker();
+    else {
+      if (this._worker)
+        this._worker.terminate();
+
+      this._worker = null;
+      this._workerReadyPromise = null;
+      this._idleTimeout = null;
     }
-    else
-      detectionQueue.shift().resolve(aMsg.data);
-  }
-  return worker;
-});
+  },
+};
 
 this.LanguageDetector = {
   /**
-   * Detect the language of a given string
+   * Detect the language of a given string.
+   *
+   * The argument may be either a string containing the text to analyze,
+   * or an object with the following properties:
+   *
+   *  - 'text' The text to analyze.
+   *
+   *  - 'isHTML' (optional) A boolean, indicating whether the text
+   *      should be analyzed as HTML rather than plain text.
    *
-   * @returns {Promise}
+   *  - 'language' (optional) A string indicating the expected language.
+   *      For text extracted from HTTP documents, this is expected to
+   *      come from the Content-Language header.
+   *
+   *  - 'tld' (optional) A string indicating the top-level domain of the
+   *      document the text was extracted from.
+   *
+   *  - 'encoding' (optional) A string describing the encoding of the
+   *      document the string was extracted from. Note that, regardless
+   *      of the value of this property, the 'text' property must be a
+   *      UTF-16 JavaScript string.
+   *
+   * @returns {Promise<Object>}
    * @resolves When detection is finished, with a object containing
    * these fields:
    *  - 'language' (string with a language code)
-   *  - 'confident' (boolean).
+   *  - 'confident' (boolean) Whether the detector is confident of the
+   *      result.
+   *  - 'languages' (array) An array of up to three elements, containing
+   *      the most prevalent languages detected. It contains a
+   *      'languageCode' property, containing the ISO language code of
+   *      the language, and a 'percent' property, describing the
+   *      approximate percentage of the input which is in that language.
+   *      For text of an unknown language, the result may contain an
+   *      entry with the languge code 'un', indicating the percent of
+   *      the text which is unknown.
    */
-  detectLanguage: function(aString) {
-    let deferred = Promise.defer();
-    detectionQueue.push(deferred);
-    if (worker && workerReady)
-      worker.postMessage(aString);
-    else
-      pendingStrings.push(aString);
-    return deferred.promise;
-  }
+  detectLanguage: function(aParams) {
+    if (typeof aParams == "string")
+      aParams = { text: aParams };
+
+    return workerManager.detectLanguage(aParams);
+  },
 };
--- a/browser/components/translation/cld2/Makefile
+++ b/browser/components/translation/cld2/Makefile
@@ -1,13 +1,34 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this file,
-# You can obtain one at http://mozilla.org/MPL/2.0/. */
+# You can obtain one at http://mozilla.org/MPL/2.0/.
+
+PYTHON2 ?= python2
+
+EMSCRIPTEN_ROOT := $(shell if which emcc >/dev/null 2>&1; \
+                           then dirname `which emcc`; \
+                           else echo /usr/lib/emscripten; \
+                           fi)
+
+EMCC ?= $(EMSCRIPTEN_ROOT)/emcc
 
-CC=emcc
+WEBIDL ?= $(PYTHON2) $(EMSCRIPTEN_ROOT)/tools/webidl_binder.py
+
+# A 2MB heap is to analyze most web pages. For the outliers, we need to either
+# allow for heap growth, or allocate an unreasonable amount of memory at the
+# outset.
+# Unfortunately, once the heap has been enlarged, there is no shrinking, so
+# analyzing one 20MB web page gives us a 30-40MB heap for the life of the
+# worker.
+FLAGS=-s -O3 -s INLINING_LIMIT=1 -s NO_FILESYSTEM=1 -s NO_EXIT_RUNTIME=1 -s INVOKE_RUN=0 \
+      -s TOTAL_STACK=8192 -s TOTAL_MEMORY=2097152 -s ALLOW_MEMORY_GROWTH=1 \
+      --llvm-lto 1 --memory-init-file 1 --closure 1
+
+export EMCC_CLOSURE_ARGS = --language_in ECMASCRIPT6 --language_out ES5_STRICT
 
 SOURCES= \
 	internal/cldutil.cc \
 	internal/cldutil_shared.cc \
 	internal/compact_lang_det.cc \
 	internal/compact_lang_det_hint_code.cc \
 	internal/compact_lang_det_impl.cc \
 	internal/debug_empty.cc \
@@ -27,18 +48,27 @@ SOURCES= \
 	internal/generated_distinct_bi_0.cc \
 	internal/cld2_generated_quadchrome0122_16.cc \
 	internal/cld2_generated_deltaoctachrome0122.cc \
 	internal/cld2_generated_distinctoctachrome0122.cc \
 	internal/cld_generated_score_quad_octa_0122_2.cc \
 	cldapp.cc \
 	$(NULL)
 
-%.o: %.cc
-	$(CC) -Os -I. -o $@ $<
+OBJECTS=$(SOURCES:.cc=.o)
+
+default: all
+
+%.o: %.cc Makefile
+	$(EMCC) -Os -I. -o $@ $<
 
-FLAGS=-s USE_TYPED_ARRAYS=2 -O3 -s INLINING_LIMIT=1 --llvm-lto 1 --memory-init-file 1 --closure 1
+cldapp.o: cld.cpp
+
+%.cpp %.js: %.idl
+	$(WEBIDL) $< $*
 
-all: $(SOURCES:.cc=.o)
-	$(CC) $(FLAGS) -I. -o cld-worker.js $^ --post-js post.js -s EXPORTED_FUNCTIONS="['_detectLangCode', '_lastResultReliable']"
+all: cld-worker.js
+
+cld-worker.js: $(OBJECTS) post.js cld.js
+	$(EMCC) $(FLAGS) -I. -o cld-worker.js $(OBJECTS) --post-js cld.js --post-js post.js
 
 clean:
-	rm -rf $(SOURCES:.cc=.o)
+	rm -f $(OBJECTS) cld.cpp cld.js before.js
--- a/browser/components/translation/cld2/cld-worker.js
+++ b/browser/components/translation/cld2/cld-worker.js
@@ -1,219 +1,114 @@
-function g(a){throw a;}var k=void 0,n=!0,p=null,q=!1;function r(){return function(){}}function t(a){return function(){return a}}var u,v;v||(v=eval("(function() { try { return Module || {} } catch(e) { return {} } })()"));var aa={},ba;for(ba in v)v.hasOwnProperty(ba)&&(aa[ba]=v[ba]);var ca="object"===typeof process&&"function"===typeof require,da="object"===typeof window,ea="function"===typeof importScripts,fa=!da&&!ca&&!ea;
-if(ca){v.print||(v.print=function(a){process.stdout.write(a+"\n")});v.printErr||(v.printErr=function(a){process.stderr.write(a+"\n")});var ga=require("fs"),ha=require("path");v.read=function(a,b){var a=ha.normalize(a),c=ga.readFileSync(a);!c&&a!=ha.resolve(a)&&(a=path.join(__dirname,"..","src",a),c=ga.readFileSync(a));c&&!b&&(c=c.toString());return c};v.readBinary=function(a){return v.read(a,n)};v.load=function(a){ia(read(a))};v.arguments=process.argv.slice(2);module.exports=v}else fa?(v.print||(v.print=
-print),"undefined"!=typeof printErr&&(v.printErr=printErr),v.read="undefined"!=typeof read?read:function(){g("no read() available (jsc?)")},v.readBinary=function(a){return read(a,"binary")},"undefined"!=typeof scriptArgs?v.arguments=scriptArgs:"undefined"!=typeof arguments&&(v.arguments=arguments),this.Module=v,eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined")):da||ea?(v.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,q);b.send(p);return b.responseText},
-"undefined"!=typeof arguments&&(v.arguments=arguments),"undefined"!==typeof console?(v.print||(v.print=function(a){console.log(a)}),v.printErr||(v.printErr=function(a){console.log(a)})):v.print||(v.print=r()),da?this.Module=v:v.load=importScripts):g("Unknown runtime environment. Where are we?");function ia(a){eval.call(p,a)}"undefined"==!v.load&&v.read&&(v.load=function(a){ia(v.read(a))});v.print||(v.print=r());v.printErr||(v.printErr=v.print);v.arguments||(v.arguments=[]);v.print=v.print;v.pa=v.printErr;
-v.preRun=[];v.postRun=[];for(ba in aa)aa.hasOwnProperty(ba)&&(v[ba]=aa[ba]);
-var z={Gb:function(){return w},Fb:function(a){w=a},Yf:function(a,b){b=b||4;return 1==b?a:isNumber(a)&&isNumber(b)?Math.ceil(a/b)*b:isNumber(b)&&isPowerOfTwo(b)?"((("+a+")+"+(b-1)+")&"+-b+")":"Math.ceil(("+a+")/"+b+")*"+b},qd:function(a){return a in z.Sc||a in z.Qc},rd:function(a){return"*"==a[a.length-1]},sd:function(a){return isPointerType(a)?q:isArrayType(a)||/<?\{ ?[^}]* ?\}>?/.test(a)?n:"%"==a[0]},Sc:{i1:0,i8:0,i16:0,i32:0,i64:0},Qc:{"float":0,"double":0},pg:function(a,b){return(a|0|b|0)+4294967296*
-(Math.round(a/4294967296)|Math.round(b/4294967296))},Qf:function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))},yg:function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))},ub:function(a){switch(a){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:return"*"===a[a.length-1]?z.ka:"i"===a[0]?(a=parseInt(a.substr(1)),A(0===a%8),a/
-8):0}},kc:function(a){return Math.max(z.ub(a),z.ka)},bd:function(a,b){var c={};return b?a.filter(function(a){return c[a[b]]?q:c[a[b]]=n}):a.filter(function(a){return c[a]?q:c[a]=n})},set:function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;c<a.length;c++)b[a[c]]=0;return b},Df:8,fa:function(a,b,c){return c||!c&&("i64"==a||"double"==a)?8:!a?Math.min(b,8):Math.min(b||(a?z.kc(a):0),z.ka)},Zc:function(a){a.Q=0;a.ra=0;var b=[],c=-1,d=0;a.ic=a.rb.map(function(e){d++;var f,
-h;z.qd(e)||z.rd(e)?(f=z.ub(e),h=z.fa(e,f)):z.sd(e)?"0"===e[1]?(f=0,h=Types.types[e]?z.fa(p,Types.types[e].ra):a.ra||QUANTUM_SIZE):(f=Types.types[e].Q,h=z.fa(p,Types.types[e].ra)):"b"==e[0]?(f=e.substr(1)|0,h=1):"<"===e[0]?f=h=Types.types[e].Q:"i"===e[0]?(f=h=parseInt(e.substr(1))/8,A(0===f%1,"cannot handle non-byte-size field "+e)):A(q,"invalid type for calculateStructAlignment");a.qg&&(h=1);a.ra=Math.max(a.ra,h);e=z.Ba(a.Q,h);a.Q=e+f;0<=c&&b.push(e-c);return c=e});a.vc&&"["===a.vc[0]&&(a.Q=parseInt(a.vc.substr(1))*
-a.Q/2);a.Q=z.Ba(a.Q,a.ra);0==b.length?a.hc=a.Q:1==z.bd(b).length&&(a.hc=b[0]);a.lg=1!=a.hc;return a.ic},gd:function(a,b,c){var d,e;if(b){c=c||0;d=("undefined"===typeof Types?z.xg:Types.types)[b];if(!d)return p;if(d.rb.length!=a.length)return printErr("Number of named fields must match the type for "+b+": possibly duplicate struct names. Cannot return structInfo"),p;e=d.ic}else d={rb:a.map(function(a){return a[0]})},e=z.Zc(d);var f={If:d.Q};b?a.forEach(function(a,b){if("string"===typeof a)f[a]=e[b]+
-c;else{var m,l;for(l in a)m=l;f[m]=z.gd(a[m],d.rb[b],e[b])}}):a.forEach(function(a,b){f[a[1]]=e[b]});return f},Sa:function(a,b,c){return c&&c.length?(c.splice||(c=Array.prototype.slice.call(c)),c.splice(0,0,b),v["dynCall_"+a].apply(p,c)):v["dynCall_"+a].call(p,b)},Ua:[],Jf:function(a){for(var b=0;b<z.Ua.length;b++)if(!z.Ua[b])return z.Ua[b]=a,2*(1+b);g("Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.")},sg:function(a){z.Ua[(a-2)/2]=p},Zf:function(a,b){z.nb||
-(z.nb={});var c=z.nb[a];if(c)return c;for(var c=[],d=0;d<b;d++)c.push(String.fromCharCode(36)+d);a=ja(a);'"'===a[0]&&(a.indexOf('"',1)===a.length-1?a=a.substr(1,a.length-2):ka("invalid EM_ASM input |"+a+"|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)"));return z.nb[a]=eval("(function("+c.join(",")+"){ "+a+" })")},Fa:function(a){z.Fa.Cb||(z.Fa.Cb={});z.Fa.Cb[a]||(z.Fa.Cb[a]=1,v.pa(a))},tb:{},ag:function(a,b){A(b);z.tb[a]||(z.tb[a]=function(){return z.Sa(b,
-a,arguments)});return z.tb[a]},kb:function(){var a=[],b=0;this.yb=function(c){c&=255;if(0==a.length){if(0==(c&128))return String.fromCharCode(c);a.push(c);b=192==(c&224)?1:224==(c&240)?2:3;return""}if(b&&(a.push(c),b--,0<b))return"";var c=a[0],d=a[1],e=a[2],f=a[3];2==a.length?c=String.fromCharCode((c&31)<<6|d&63):3==a.length?c=String.fromCharCode((c&15)<<12|(d&63)<<6|e&63):(c=(c&7)<<18|(d&63)<<12|(e&63)<<6|f&63,c=String.fromCharCode(Math.floor((c-65536)/1024)+55296,(c-65536)%1024+56320));a.length=
-0;return c};this.Ad=function(a){for(var a=unescape(encodeURIComponent(a)),b=[],e=0;e<a.length;e++)b.push(a.charCodeAt(e));return b}},$f:function(){g("You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work")},Eb:function(a){var b=w;w=w+a|0;w=w+7&-8;return b},Cc:function(a){var b=ma;ma=ma+a|0;ma=ma+7&-8;return b},Ta:function(a){var b=B;B=B+a|0;B=B+7&-8;B>=na&&ka("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+
-na+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b},Ba:function(a,b){return Math.ceil(a/(b?b:8))*(b?b:8)},ud:function(a,b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},Cf:8,ka:4,Hf:0};v.Runtime=z;var oa=q,D,pa;function A(a,b){a||ka("Assertion failed: "+b)}v.ccall=function(a,b,c,d){return qa(ra(a),b,c,d)};
-function ra(a){try{var b=v["_"+a];b||(b=eval("_"+a))}catch(c){}A(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}function qa(a,b,c,d){function e(a,b){if("string"==b){if(a===p||a===k||0===a)return 0;a=H(a);b="array"}if("array"==b){f||(f=z.Gb());var c=z.Eb(a.length);sa(a,c);return c}return a}var f=0,h=0,d=d?d.map(function(a){return e(a,c[h++])}):[];a=a.apply(p,d);"string"==b?b=ja(a):(A("array"!=b),b=a);f&&z.Fb(f);return b}
-v.cwrap=function(a,b,c){var d=ra(a);return function(){return qa(d,b,c,Array.prototype.slice.call(arguments))}};
-function ta(a,b,c){c=c||"i8";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":I[a]=b;break;case "i8":I[a]=b;break;case "i16":ua[a>>1]=b;break;case "i32":J[a>>2]=b;break;case "i64":pa=[b>>>0,(D=b,1<=+va(D)?0<D?(wa(+xa(D/4294967296),4294967295)|0)>>>0:~~+ya((D-+(~~D>>>0))/4294967296)>>>0:0)];J[a>>2]=pa[0];J[a+4>>2]=pa[1];break;case "float":za[a>>2]=b;break;case "double":Aa[a>>3]=b;break;default:ka("invalid type for setValue: "+c)}}v.setValue=ta;
-v.getValue=function(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return I[a];case "i8":return I[a];case "i16":return ua[a>>1];case "i32":return J[a>>2];case "i64":return J[a>>2];case "float":return za[a>>2];case "double":return Aa[a>>3];default:ka("invalid type for setValue: "+b)}return p};var Ba=0,K=2,Ca=4;v.ALLOC_NORMAL=Ba;v.ALLOC_STACK=1;v.ALLOC_STATIC=K;v.ALLOC_DYNAMIC=3;v.ALLOC_NONE=Ca;
-function L(a,b,c,d){var e,f;"number"===typeof a?(e=n,f=a):(e=q,f=a.length);var h="string"===typeof b?b:p,c=c==Ca?d:[Da,z.Eb,z.Cc,z.Ta][c===k?K:c](Math.max(f,h?1:b.length));if(e){d=c;A(0==(c&3));for(a=c+(f&-4);d<a;d+=4)J[d>>2]=0;for(a=c+f;d<a;)I[d++|0]=0;return c}if("i8"===h)return a.subarray||a.slice?M.set(a,c):M.set(new Uint8Array(a),c),c;for(var d=0,i,m;d<f;){var l=a[d];"function"===typeof l&&(l=z.bg(l));e=h||b[d];0===e?d++:("i64"==e&&(e="i32"),ta(c+d,l,e),m!==e&&(i=z.ub(e),m=e),d+=i)}return c}
-v.allocate=L;function ja(a,b){for(var c=q,d,e=0;;){d=M[a+e|0];if(128<=d)c=n;else if(0==d&&!b)break;e++;if(b&&e==b)break}b||(b=e);var f="";if(!c){for(;0<b;)d=String.fromCharCode.apply(String,M.subarray(a,a+Math.min(b,1024))),f=f?f+d:d,a+=1024,b-=1024;return f}c=new z.kb;for(e=0;e<b;e++)d=M[a+e|0],f+=c.yb(d);return f}v.Pointer_stringify=ja;v.UTF16ToString=function(a){for(var b=0,c="";;){var d=ua[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}};
-v.stringToUTF16=function(a,b){for(var c=0;c<a.length;++c)ua[b+2*c>>1]=a.charCodeAt(c);ua[b+2*a.length>>1]=0};v.UTF32ToString=function(a){for(var b=0,c="";;){var d=J[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}};v.stringToUTF32=function(a,b){for(var c=0,d=0;d<a.length;++d){var e=a.charCodeAt(d);if(55296<=e&&57343>=e)var f=a.charCodeAt(++d),e=65536+((e&1023)<<10)|f&1023;J[b+4*c>>2]=e;++c}J[b+4*c>>2]=0};
-function Ea(a){function b(h,m,l){var m=m||Infinity,j="",s=[],x;if("N"===a[c]){c++;"K"===a[c]&&c++;for(x=[];"E"!==a[c];)if("S"===a[c]){c++;var C=a.indexOf("_",c);x.push(e[a.substring(c,C)||0]||"?");c=C+1}else if("C"===a[c])x.push(x[x.length-1]),c+=2;else{var C=parseInt(a.substr(c)),F=C.toString().length;if(!C||!F){c--;break}var N=a.substr(c+F,C);x.push(N);e.push(N);c+=F+C}c++;x=x.join("::");m--;if(0===m)return h?[x]:x}else if(("K"===a[c]||f&&"L"===a[c])&&c++,C=parseInt(a.substr(c)))F=C.toString().length,
-x=a.substr(c+F,C),c+=F+C;f=q;"I"===a[c]?(c++,C=b(n),F=b(n,1,n),j+=F[0]+" "+x+"<"+C.join(", ")+">"):j=x;a:for(;c<a.length&&0<m--;)if(x=a[c++],x in d)s.push(d[x]);else switch(x){case "P":s.push(b(n,1,n)[0]+"*");break;case "R":s.push(b(n,1,n)[0]+"&");break;case "L":c++;C=a.indexOf("E",c)-c;s.push(a.substr(c,C));c+=C+2;break;case "A":C=parseInt(a.substr(c));c+=C.toString().length;"_"!==a[c]&&g("?");c++;s.push(b(n,1,n)[0]+" ["+C+"]");break;case "E":break a;default:j+="?"+x;break a}!l&&(1===s.length&&"void"===
-s[0])&&(s=[]);return h?s:j+("("+s.join(", ")+")")}var c=3,d={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},e=[],f=n;try{if("Object._main"==a||"_main"==a)return"main()";"number"===typeof a&&(a=ja(a));if("_"!==a[0]||"_"!==a[1]||"Z"!==a[2])return a;switch(a[3]){case "n":return"operator new()";case "d":return"operator delete()"}return b()}catch(h){return a}}
-function Fa(){var a=Error().stack;return a?a.replace(/__Z[\w\d_]+/g,function(a){var c=Ea(a);return a===c?a:a+" ["+c+"]"}):"(no stack trace available)"}for(var I,M,ua,Ga,J,Ha,za,Aa,Ia=0,ma=0,Ja=0,w=0,Ka=0,La=0,B=0,Ma=v.TOTAL_STACK||5242880,na=v.TOTAL_MEMORY||16777216,Na=4096;Na<na||Na<2*Ma;)Na=16777216>Na?2*Na:Na+16777216;Na!==na&&(v.pa("increasing TOTAL_MEMORY to "+Na+" to be more reasonable"),na=Na);
-A("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"JS engine does not provide full typed array support");var Oa=new ArrayBuffer(na);I=new Int8Array(Oa);ua=new Int16Array(Oa);J=new Int32Array(Oa);M=new Uint8Array(Oa);Ga=new Uint16Array(Oa);Ha=new Uint32Array(Oa);za=new Float32Array(Oa);Aa=new Float64Array(Oa);J[0]=255;A(255===M[0]&&0===M[3],"Typed arrays 2 must be run on a little-endian system");v.HEAP=k;v.HEAP8=I;
-v.HEAP16=ua;v.HEAP32=J;v.HEAPU8=M;v.HEAPU16=Ga;v.HEAPU32=Ha;v.HEAPF32=za;v.HEAPF64=Aa;function Pa(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ba;"number"===typeof c?b.La===k?z.Sa("v",c):z.Sa("vi",c,[b.La]):c(b.La===k?p:b.La)}}}var Qa=[],Ra=[],Sa=[],Ta=[],Ua=[],Va=q;function Wa(a){Qa.unshift(a)}v.addOnPreRun=v.Of=Wa;v.addOnInit=v.Lf=function(a){Ra.unshift(a)};function Xa(a){Sa.unshift(a)}v.addOnPreMain=v.Nf=Xa;v.addOnExit=v.Kf=function(a){Ta.unshift(a)};
-function Ya(a){Ua.unshift(a)}v.addOnPostRun=v.Mf=Ya;function H(a,b,c){a=(new z.kb).Ad(a);c&&(a.length=c);b||a.push(0);return a}v.intArrayFromString=H;v.intArrayToString=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];255<d&&(d&=255);b.push(String.fromCharCode(d))}return b.join("")};v.writeStringToMemory=function(a,b,c){a=H(a,c);for(c=0;c<a.length;)I[b+c|0]=a[c],c+=1};function sa(a,b){for(var c=0;c<a.length;c++)I[b+c|0]=a[c]}v.writeArrayToMemory=sa;
-function Za(a,b,c){for(var d=0;d<a.length;d++)I[b+d|0]=a.charCodeAt(d);c||(I[b+a.length|0]=0)}v.writeAsciiToMemory=Za;function $a(a,b){return 0<=a?a:32>=b?2*Math.abs(1<<b-1)+a:Math.pow(2,b)+a}function ab(a,b){if(0>=a)return a;var c=32>=b?Math.abs(1<<b-1):Math.pow(2,b-1);if(a>=c&&(32>=b||a>c))a=-2*c+a;return a}if(!Math.imul||-5!==Math.imul(4294967295,5))Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0};Math.eg=Math.imul;
-var va=Math.abs,ya=Math.ceil,xa=Math.floor,wa=Math.min,bb=0,cb=p,db=p;function eb(){bb++;v.monitorRunDependencies&&v.monitorRunDependencies(bb)}v.addRunDependency=eb;function fb(){bb--;v.monitorRunDependencies&&v.monitorRunDependencies(bb);if(0==bb&&(cb!==p&&(clearInterval(cb),cb=p),db)){var a=db;db=p;a()}}v.removeRunDependency=fb;v.preloadedImages={};v.preloadedAudios={};var gb=p,Ia=8,ma=Ia+1113184,hb;hb=hb=L(1,"i32*",K);var ib;ib=ib=L(1,"i32*",K);var jb;jb=jb=L(1,"i32*",K);
-Ra.push({ba:function(){kb()}},{ba:function(){lb()}});var mb;mb=mb=L(1,"i32*",K);var nb;nb=L([0,0,0,0,192,107,0,0,228,0,0,0,120,0,0,0,58,0,0,0,138,0,0,0,8,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],"i8",K);var ob;ob=L([0,0,0,0,208,107,0,0,228,0,0,0,222,0,0,0,58,0,0,0,138,0,0,0,8,0,0,0,26,0,0,0,4,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0],"i8",K);var gb="cld-worker.js.mem",pb=z.Ba(L(12,"i8",K),8);A(0==pb%8);v._memset=qb;function rb(){return!!rb.Ib}
-function sb(a){var b=q;try{a==__ZTIi&&(b=n)}catch(c){}try{a==__ZTIj&&(b=n)}catch(d){}try{a==__ZTIl&&(b=n)}catch(e){}try{a==__ZTIm&&(b=n)}catch(f){}try{a==__ZTIx&&(b=n)}catch(h){}try{a==__ZTIy&&(b=n)}catch(i){}try{a==__ZTIf&&(b=n)}catch(m){}try{a==__ZTId&&(b=n)}catch(l){}try{a==__ZTIe&&(b=n)}catch(j){}try{a==__ZTIc&&(b=n)}catch(s){}try{a==__ZTIa&&(b=n)}catch(x){}try{a==__ZTIh&&(b=n)}catch(C){}try{a==__ZTIs&&(b=n)}catch(F){}try{a==__ZTIt&&(b=n)}catch(N){}return b}
-function tb(a,b,c){if(0==c)return q;if(0==b||b==a)return n;switch(sb(b)?b:J[J[b>>2]-8>>2]){case 0:return 0==J[J[a>>2]-8>>2]?tb(J[a+8>>2],J[b+8>>2],c):q;case 1:return q;case 2:return tb(a,J[b+8>>2],c);default:return q}}var ub=0,vb=8;v._memcpy=wb;v._strlen=xb;v._strncpy=yb;function zb(a){return 0>a||0===a&&-Infinity===1/a}
-function Ab(a,b){function c(a){var c;"double"===a?c=Aa[b+e>>3]:"i64"==a?(c=[J[b+e>>2],J[b+(e+8)>>2]],e+=8):(a="i32",c=J[b+e>>2]);e+=Math.max(z.kc(a),z.fa(a,p,n));return c}for(var d=a,e=0,f=[],h,i;;){var m=d;h=I[d];if(0===h)break;i=I[d+1|0];if(37==h){var l=q,j=q,s=q,x=q,C=q;a:for(;;){switch(i){case 43:l=n;break;case 45:j=n;break;case 35:s=n;break;case 48:if(x)break a;else{x=n;break}case 32:C=n;break;default:break a}d++;i=I[d+1|0]}var F=0;if(42==i)F=c("i32"),d++,i=I[d+1|0];else for(;48<=i&&57>=i;)F=
-10*F+(i-48),d++,i=I[d+1|0];var N=q,G=-1;if(46==i){G=0;N=n;d++;i=I[d+1|0];if(42==i)G=c("i32"),d++;else for(;;){i=I[d+1|0];if(48>i||57<i)break;G=10*G+(i-48);d++}i=I[d+1|0]}0>G&&(G=6,N=q);var E;switch(String.fromCharCode(i)){case "h":i=I[d+2|0];104==i?(d++,E=1):E=2;break;case "l":i=I[d+2|0];108==i?(d++,E=8):E=4;break;case "L":case "q":case "j":E=8;break;case "z":case "t":case "I":E=4;break;default:E=p}E&&d++;i=I[d+1|0];switch(String.fromCharCode(i)){case "d":case "i":case "u":case "o":case "x":case "X":case "p":m=
-100==i||105==i;E=E||4;var P=h=c("i"+8*E),y;8==E&&(h=z.ud(h[0],h[1],117==i));4>=E&&(h=(m?ab:$a)(h&Math.pow(256,E)-1,8*E));var la=Math.abs(h),m="";if(100==i||105==i)y=8==E&&Bb?Bb.stringify(P[0],P[1],p):ab(h,8*E).toString(10);else if(117==i)y=8==E&&Bb?Bb.stringify(P[0],P[1],n):$a(h,8*E).toString(10),h=Math.abs(h);else if(111==i)y=(s?"0":"")+la.toString(8);else if(120==i||88==i){m=s&&0!=h?"0x":"";if(8==E&&Bb)if(P[1]){y=(P[1]>>>0).toString(16);for(s=(P[0]>>>0).toString(16);8>s.length;)s="0"+s;y+=s}else y=
-(P[0]>>>0).toString(16);else if(0>h){h=-h;y=(la-1).toString(16);P=[];for(s=0;s<y.length;s++)P.push((15-parseInt(y[s],16)).toString(16));for(y=P.join("");y.length<2*E;)y="f"+y}else y=la.toString(16);88==i&&(m=m.toUpperCase(),y=y.toUpperCase())}else 112==i&&(0===la?y="(nil)":(m="0x",y=la.toString(16)));if(N)for(;y.length<G;)y="0"+y;0<=h&&(l?m="+"+m:C&&(m=" "+m));"-"==y.charAt(0)&&(m="-"+m,y=y.substr(1));for(;m.length+y.length<F;)j?y+=" ":x?y="0"+y:m=" "+m;y=m+y;y.split("").forEach(function(a){f.push(a.charCodeAt(0))});
-break;case "f":case "F":case "e":case "E":case "g":case "G":h=c("double");if(isNaN(h))y="nan",x=q;else if(isFinite(h)){N=q;E=Math.min(G,20);if(103==i||71==i)N=n,G=G||1,E=parseInt(h.toExponential(E).split("e")[1],10),G>E&&-4<=E?(i=(103==i?"f":"F").charCodeAt(0),G-=E+1):(i=(103==i?"e":"E").charCodeAt(0),G--),E=Math.min(G,20);if(101==i||69==i)y=h.toExponential(E),/[eE][-+]\d$/.test(y)&&(y=y.slice(0,-1)+"0"+y.slice(-1));else if(102==i||70==i)y=h.toFixed(E),0===h&&zb(h)&&(y="-"+y);m=y.split("e");if(N&&
-!s)for(;1<m[0].length&&-1!=m[0].indexOf(".")&&("0"==m[0].slice(-1)||"."==m[0].slice(-1));)m[0]=m[0].slice(0,-1);else for(s&&-1==y.indexOf(".")&&(m[0]+=".");G>E++;)m[0]+="0";y=m[0]+(1<m.length?"e"+m[1]:"");69==i&&(y=y.toUpperCase());0<=h&&(l?y="+"+y:C&&(y=" "+y))}else y=(0>h?"-":"")+"inf",x=q;for(;y.length<F;)y=j?y+" ":x&&("-"==y[0]||"+"==y[0])?y[0]+"0"+y.slice(1):(x?"0":" ")+y;97>i&&(y=y.toUpperCase());y.split("").forEach(function(a){f.push(a.charCodeAt(0))});break;case "s":x=(l=c("i8*"))?xb(l):6;
-N&&(x=Math.min(x,G));if(!j)for(;x<F--;)f.push(32);if(l)for(s=0;s<x;s++)f.push(M[l++|0]);else f=f.concat(H("(null)".substr(0,x),n));if(j)for(;x<F--;)f.push(32);break;case "c":for(j&&f.push(c("i8"));0<--F;)f.push(32);j||f.push(c("i8"));break;case "n":j=c("i32*");J[j>>2]=f.length;break;case "%":f.push(h);break;default:for(s=m;s<d+2;s++)f.push(I[s])}d+=2}else f.push(h),d+=1}return f}
-function Cb(a,b,c,d){c=Ab(c,d);d=b===k?c.length:Math.min(c.length,Math.max(b-1,0));if(0>a)var a=-a,e=Da(d+1),a=J[a>>2]=e;for(e=0;e<d;e++)I[a+e|0]=c[e];if(d<b||b===k)I[a+e|0]=0;return c.length}function Db(a,b,c){return Cb(a,k,b,c)}v._memmove=Eb;function Fb(a){try{return Gb(a-vb)}catch(b){}}
-function Hb(a,b,c){if(!Hb.nd){try{J[__ZTVN10__cxxabiv119__pointer_type_infoE>>2]=0}catch(d){}try{J[ob>>2]=1}catch(e){}try{J[nb>>2]=2}catch(f){}Hb.nd=n}var h=a-vb;J[h>>2]=b;J[h+4>>2]=c;ub=a;"uncaught_exception"in rb?rb.Ib++:rb.Ib=1;g(a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")}
-var O={Aa:1,Ia:2,pf:3,oe:4,ja:5,Ob:6,Md:7,Le:8,W:9,Zd:10,za:11,zf:11,Oc:12,Hc:13,je:14,Xe:15,Kb:16,Lb:17,Af:18,Mb:19,Pc:20,Ha:21,D:22,Ge:23,Nc:24,af:25,wf:26,ke:27,Te:28,Ka:29,mf:30,ze:31,ff:32,ge:33,Pb:34,Pe:42,me:43,$d:44,qe:45,re:46,se:47,ye:48,xf:49,Je:50,pe:51,ee:35,Me:37,Rd:52,Ud:53,Bf:54,He:55,Vd:56,Wd:57,fe:35,Xd:59,Ve:60,Ke:61,tf:62,Ue:63,Qe:64,Re:65,lf:66,Ne:67,Pd:68,qf:69,ae:70,gf:71,Be:72,he:73,Td:74,bf:76,Sd:77,kf:78,te:79,ue:80,xe:81,we:82,ve:83,We:38,Nb:39,Ce:36,hb:40,ib:95,ef:96,de:104,
-Ie:105,Qd:97,jf:91,Ze:88,Se:92,nf:108,ce:111,Nd:98,be:103,Fe:101,De:100,uf:110,le:112,Kc:113,Lc:115,Ic:114,Jc:89,Ae:90,hf:93,of:94,Od:99,Ee:102,Mc:106,Ja:107,vf:109,yf:87,ie:122,rf:116,$e:95,Oe:123,ne:84,cf:75,Yd:125,Ye:131,df:130,sf:86},Ib={"0":"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",
-12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",
-34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",
-53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",
-74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can   access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",
-90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",
-107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},Jb=0;function Q(a){return J[Jb>>2]=a}
-function Kb(a,b){for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function Lb(a){var b="/"===a.charAt(0),c="/"===a.substr(-1),a=Kb(a.split("/").filter(function(a){return!!a}),!b).join("/");!a&&!b&&(a=".");a&&c&&(a+="/");return(b?"/":"")+a}function Mb(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)}
-function Nb(){for(var a="",b=q,c=arguments.length-1;-1<=c&&!b;c--){var d=0<=c?arguments[c]:"/";"string"!==typeof d&&g(new TypeError("Arguments to path.resolve must be strings"));d&&(a=d+"/"+a,b="/"===d.charAt(0))}a=Kb(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var Ob=[];function Pb(a,b){Ob[a]={input:[],oa:[],Ca:b};Qb[a]={o:Rb}}
-var Rb={open:function(a){var b=Ob[a.g.$a];b||g(new R(O.Mb));a.P=b;a.seekable=q},close:function(a){a.P.oa.length&&a.P.Ca.Za(a.P,10)},S:function(a,b,c,d){(!a.P||!a.P.Ca.nc)&&g(new R(O.Ob));for(var e=0,f=0;f<d;f++){var h;try{h=a.P.Ca.nc(a.P)}catch(i){g(new R(O.ja))}h===k&&0===e&&g(new R(O.za));if(h===p||h===k)break;e++;b[c+f]=h}e&&(a.g.timestamp=Date.now());return e},write:function(a,b,c,d){(!a.P||!a.P.Ca.Za)&&g(new R(O.Ob));for(var e=0;e<d;e++)try{a.P.Ca.Za(a.P,b[c+e])}catch(f){g(new R(O.ja))}d&&(a.g.timestamp=
-Date.now());return e}},S={R:p,Gc:1,gb:2,Jb:3,ha:function(){return S.createNode(p,"/",16895,0)},createNode:function(a,b,c,d){(24576===(c&61440)||4096===(c&61440))&&g(new R(O.Aa));S.R||(S.R={dir:{g:{ga:S.p.ga,L:S.p.L,wb:S.p.wb,Wa:S.p.Wa,rename:S.p.rename,Fc:S.p.Fc,Bc:S.p.Bc,yc:S.p.yc,bb:S.p.bb},T:{na:S.o.na}},file:{g:{ga:S.p.ga,L:S.p.L},T:{na:S.o.na,S:S.o.S,write:S.o.write,Wb:S.o.Wb,uc:S.o.uc}},link:{g:{ga:S.p.ga,L:S.p.L,ab:S.p.ab},T:{}},Zb:{g:{ga:S.p.ga,L:S.p.L},T:Sb}});c=Tb(a,b,c,d);16384===(c.mode&
-61440)?(c.p=S.R.dir.g,c.o=S.R.dir.T,c.u={}):32768===(c.mode&61440)?(c.p=S.R.file.g,c.o=S.R.file.T,c.u=[],c.Pa=S.gb):40960===(c.mode&61440)?(c.p=S.R.link.g,c.o=S.R.link.T):8192===(c.mode&61440)&&(c.p=S.R.Zb.g,c.o=S.R.Zb.T);c.timestamp=Date.now();a&&(a.u[b]=c);return c},qb:function(a){a.Pa!==S.gb&&(a.u=Array.prototype.slice.call(a.u),a.Pa=S.gb)},p:{ga:function(a){var b={};b.Wf=8192===(a.mode&61440)?a.id:1;b.fg=a.id;b.mode=a.mode;b.mg=1;b.uid=0;b.dg=0;b.$a=a.$a;b.size=16384===(a.mode&61440)?4096:32768===
-(a.mode&61440)?a.u.length:40960===(a.mode&61440)?a.link.length:0;b.Rf=new Date(a.timestamp);b.kg=new Date(a.timestamp);b.Vf=new Date(a.timestamp);b.Yc=4096;b.Sf=Math.ceil(b.size/b.Yc);return b},L:function(a,b){b.mode!==k&&(a.mode=b.mode);b.timestamp!==k&&(a.timestamp=b.timestamp);if(b.size!==k){S.qb(a);var c=a.u;if(b.size<c.length)c.length=b.size;else for(;b.size>c.length;)c.push(0)}},wb:function(){g(Ub[O.Ia])},Wa:function(a,b,c,d){return S.createNode(a,b,c,d)},rename:function(a,b,c){if(16384===(a.mode&
-61440)){var d;try{d=Vb(b,c)}catch(e){}if(d)for(var f in d.u)g(new R(O.Nb))}delete a.parent.u[a.name];a.name=c;b.u[c]=a;a.parent=b},Fc:function(a,b){delete a.u[b]},Bc:function(a,b){var c=Vb(a,b),d;for(d in c.u)g(new R(O.Nb));delete a.u[b]},yc:function(a){var b=[".",".."],c;for(c in a.u)a.u.hasOwnProperty(c)&&b.push(c);return b},bb:function(a,b,c){a=S.createNode(a,b,41471,0);a.link=c;return a},ab:function(a){40960!==(a.mode&61440)&&g(new R(O.D));return a.link}},o:{S:function(a,b,c,d,e){a=a.g.u;if(e>=
-a.length)return 0;d=Math.min(a.length-e,d);A(0<=d);if(8<d&&a.subarray)b.set(a.subarray(e,e+d),c);else for(var f=0;f<d;f++)b[c+f]=a[e+f];return d},write:function(a,b,c,d,e,f){var h=a.g;h.timestamp=Date.now();a=h.u;if(d&&0===a.length&&0===e&&b.subarray)return f&&0===c?(h.u=b,h.Pa=b.buffer===I.buffer?S.Gc:S.Jb):(h.u=new Uint8Array(b.subarray(c,c+d)),h.Pa=S.Jb),d;S.qb(h);for(a=h.u;a.length<e;)a.push(0);for(f=0;f<d;f++)a[e+f]=b[c+f];return d},na:function(a,b,c){1===c?b+=a.position:2===c&&32768===(a.g.mode&
-61440)&&(b+=a.g.u.length);0>b&&g(new R(O.D));a.fb=[];return a.position=b},Wb:function(a,b,c){S.qb(a.g);a=a.g.u;for(b+=c;b>a.length;)a.push(0)},uc:function(a,b,c,d,e,f,h){32768!==(a.g.mode&61440)&&g(new R(O.Mb));a=a.g.u;if(!(h&2)&&(a.buffer===b||a.buffer===b.buffer))e=q,d=a.byteOffset;else{if(0<e||e+d<a.length)a=a.subarray?a.subarray(e,e+d):Array.prototype.slice.call(a,e,e+d);e=n;(d=Da(d))||g(new R(O.Oc));b.set(a,d)}return{rg:d,Pf:e}}}};ib=L(1,"i32*",K);hb=L(1,"i32*",K);jb=L(1,"i32*",K);
-var Wb=p,Qb=[p],T=[],Xb=1,Yb=p,Zb=n,R=p,Ub={};function $b(a){a instanceof R||g(a+" : "+Fa());Q(a.fc)}
-function ac(a,b){var a=Nb("/",a),b=b||{},c={jc:n,zb:0},d;for(d in c)b[d]===k&&(b[d]=c[d]);8<b.zb&&g(new R(O.hb));var c=Kb(a.split("/").filter(function(a){return!!a}),q),e=Wb,f="/";for(d=0;d<c.length;d++){var h=d===c.length-1;if(h&&b.parent)break;e=Vb(e,c[d]);f=Lb(f+"/"+c[d]);if(e.Xa&&(!h||h&&b.jc))e=e.Xa.root;if(!h||b.sb)for(h=0;40960===(e.mode&61440);){e=ac(f).g;e.p.ab||g(new R(O.D));var e=e.p.ab(e),i=Nb;var m=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(f).slice(1),f=m[0],
-m=m[1];!f&&!m?f=".":(m&&(m=m.substr(0,m.length-1)),f+=m);f=i(f,e);e=ac(f,{zb:b.zb}).g;40<h++&&g(new R(O.hb))}}return{path:f,g:e}}function bc(a){for(var b;;){if(a===a.parent)return a=a.ha.vd,!b?a:"/"!==a[a.length-1]?a+"/"+b:a+b;b=b?a.name+"/"+b:a.name;a=a.parent}}function cc(a,b){for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%Yb.length}
-function Vb(a,b){var c=dc(a,"x");c&&g(new R(c));for(c=Yb[cc(a.id,b)];c;c=c.yd){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.p.wb(a,b)}
-function Tb(a,b,c,d){ec||(ec=function(a,b,c,d){a||(a=this);this.parent=a;this.ha=a.ha;this.Xa=p;this.id=Xb++;this.name=b;this.mode=c;this.p={};this.o={};this.$a=d},ec.prototype={},Object.defineProperties(ec.prototype,{S:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},pd:{get:function(){return 16384===(this.mode&61440)}},od:{get:function(){return 8192===
-(this.mode&61440)}}}));a=new ec(a,b,c,d);b=cc(a.parent.id,a.name);a.yd=Yb[b];return Yb[b]=a}var fc={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function gc(a){var b=fc[a];"undefined"===typeof b&&g(Error("Unknown file open mode: "+a));return b}function dc(a,b){return Zb?0:-1!==b.indexOf("r")&&!(a.mode&292)||-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73)?O.Hc:0}
-function hc(a,b){try{return Vb(a,b),O.Lb}catch(c){}return dc(a,"wx")}
-function ic(a,b,c){jc||(jc=r(),jc.prototype={},Object.defineProperties(jc.prototype,{object:{get:function(){return this.g},set:function(a){this.g=a}},hg:{get:function(){return 1!==(this.$&2097155)}},ig:{get:function(){return 0!==(this.$&2097155)}},gg:{get:function(){return this.$&1024}}}));if(a.__proto__)a.__proto__=jc.prototype;else{var d=new jc,e;for(e in a)d[e]=a[e];a=d}var f;a:{b=b||0;for(c=c||4096;b<=c;b++)if(!T[b]){f=b;break a}g(new R(O.Nc))}a.K=f;return T[f]=a}
-var Sb={open:function(a){a.o=Qb[a.g.$a].o;a.o.open&&a.o.open(a)},na:function(){g(new R(O.Ka))}};function kc(a,b){var c="/"===b,d=!b,e;c&&Wb&&g(new R(O.Kb));!c&&!d&&(e=ac(b,{jc:q}),b=e.path,e=e.g,e.Xa&&g(new R(O.Kb)),16384!==(e.mode&61440)&&g(new R(O.Pc)));var d={type:a,og:{},vd:b,wd:[]},f=a.ha(d);f.ha=d;d.root=f;c?Wb=f:e&&(e.Xa=d,e.ha&&e.ha.wd.push(d));return f}function lc(a,b,c){var d=ac(a,{parent:n}).g,a=Mb(a),e=hc(d,a);e&&g(new R(e));d.p.Wa||g(new R(O.Aa));return d.p.Wa(d,a,b,c)}
-function nc(a,b){b=(b!==k?b:438)&4095;b|=32768;return lc(a,b,0)}function oc(a,b){b=(b!==k?b:511)&1023;b|=16384;return lc(a,b,0)}function pc(a,b,c){"undefined"===typeof c&&(c=b,b=438);return lc(a,b|8192,c)}function qc(a,b){var c=ac(b,{parent:n}).g,d=Mb(b),e=hc(c,d);e&&g(new R(e));c.p.bb||g(new R(O.Aa));return c.p.bb(c,d,a)}function rc(a,b){var c;c="string"===typeof a?ac(a,{sb:n}).g:a;c.p.L||g(new R(O.Aa));c.p.L(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}
-function sc(a,b){var c,b="string"===typeof b?gc(b):b;c=b&64?("undefined"===typeof c?438:c)&4095|32768:0;var d;if("object"===typeof a)d=a;else{a=Lb(a);try{d=ac(a,{sb:!(b&131072)}).g}catch(e){}}b&64&&(d?b&128&&g(new R(O.Lb)):d=lc(a,c,0));d||g(new R(O.Ia));8192===(d.mode&61440)&&(b&=-513);d?40960===(d.mode&61440)?c=O.hb:16384===(d.mode&61440)&&(0!==(b&2097155)||b&512)?c=O.Ha:(c=["r","w","rw"][b&2097155],b&512&&(c+="w"),c=dc(d,c)):c=O.Ia;c&&g(new R(c));if(b&512){c=d;c="string"===typeof c?ac(c,{sb:n}).g:
-c;c.p.L||g(new R(O.Aa));16384===(c.mode&61440)&&g(new R(O.Ha));32768!==(c.mode&61440)&&g(new R(O.D));var f=dc(c,"w");f&&g(new R(f));c.p.L(c,{size:0,timestamp:Date.now()})}b&=-641;d=ic({g:d,path:bc(d),$:b,seekable:n,position:0,o:d.o,fb:[],error:q},k,k);d.o.open&&d.o.open(d);v.logReadFiles&&!(b&1)&&(tc||(tc={}),a in tc||(tc[a]=1,v.printErr("read file: "+a)));return d}function uc(a){try{a.o.close&&a.o.close(a)}catch(b){g(b)}finally{T[a.K]=p}}
-function vc(a,b,c,d){var e=I;(0>c||0>d)&&g(new R(O.D));1===(a.$&2097155)&&g(new R(O.W));16384===(a.g.mode&61440)&&g(new R(O.Ha));a.o.S||g(new R(O.D));var f=n;"undefined"===typeof d?(d=a.position,f=q):a.seekable||g(new R(O.Ka));b=a.o.S(a,e,b,c,d);f||(a.position+=b);return b}
-function wc(a,b,c,d,e,f){(0>d||0>e)&&g(new R(O.D));0===(a.$&2097155)&&g(new R(O.W));16384===(a.g.mode&61440)&&g(new R(O.Ha));a.o.write||g(new R(O.D));var h=n;"undefined"===typeof e?(e=a.position,h=q):a.seekable||g(new R(O.Ka));a.$&1024&&((!a.seekable||!a.o.na)&&g(new R(O.Ka)),a.o.na(a,0,2));b=a.o.write(a,b,c,d,e,f);h||(a.position+=b);return b}
-function xc(){R||(R=function(a){this.fc=a;for(var b in O)if(O[b]===a){this.code=b;break}this.message=Ib[a]},R.prototype=Error(),[O.Ia].forEach(function(a){Ub[a]=new R(a);Ub[a].stack="<generic error, no stack>"}))}var yc;function zc(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c}
-function Ac(a,b,c,d,e,f){a=b?Lb(("string"===typeof a?a:bc(a))+"/"+b):a;d=zc(d,e);e=nc(a,d);if(c){if("string"===typeof c){for(var a=Array(c.length),b=0,h=c.length;b<h;++b)a[b]=c.charCodeAt(b);c=a}rc(e,d|146);a=sc(e,"w");wc(a,c,0,c.length,0,f);uc(a);rc(e,d)}return e}
-function Bc(a,b,c,d){a=Lb(("string"===typeof a?a:bc(a))+"/"+b);b=zc(!!c,!!d);Bc.tc||(Bc.tc=64);var e;e=Bc.tc++<<8|0;Qb[e]={o:{open:function(a){a.seekable=q},close:function(){d&&(d.buffer&&d.buffer.length)&&d(10)},S:function(a,b,d,e){for(var l=0,j=0;j<e;j++){var s;try{s=c()}catch(x){g(new R(O.ja))}s===k&&0===l&&g(new R(O.za));if(s===p||s===k)break;l++;b[d+j]=s}l&&(a.g.timestamp=Date.now());return l},write:function(a,b,c,e){for(var l=0;l<e;l++)try{d(b[c+l])}catch(j){g(new R(O.ja))}e&&(a.g.timestamp=
-Date.now());return l}}};return pc(a,b,e)}function Cc(a){if(a.od||a.pd||a.link||a.u)return n;var b=n;"undefined"!==typeof XMLHttpRequest&&g(Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."));if(v.read)try{a.u=H(v.read(a.url),n)}catch(c){b=q}else g(Error("Cannot load without read() or XMLHttpRequest."));b||Q(O.ja);return b}var ec,jc,tc;
-function Dc(){g("TODO")}
-var U={ha:function(){return Tb(p,"/",16895,0)},ad:function(a,b,c){c&&A(1==b==(6==c));a={ed:a,type:b,protocol:c,F:p,Da:{},xb:[],sa:[],ua:U.I};b=U.Ya();c=Tb(U.root,b,49152,0);c.ta=a;b=ic({path:b,g:c,$:gc("r+"),seekable:q,o:U.o});a.T=b;return a},lc:function(a){a=T[a];return!a||49152!==(a.g.mode&49152)?p:a.g.ta},o:{xc:function(a){a=a.g.ta;return a.ua.xc(a)},pc:function(a,b,c){a=a.g.ta;return a.ua.pc(a,b,c)},S:function(a,b,c,d){a=a.g.ta;d=a.ua.Cd(a,d);if(!d)return 0;b.set(d.buffer,c);return d.buffer.length},
-write:function(a,b,c,d){a=a.g.ta;return a.ua.Ed(a,b,c,d)},close:function(a){a=a.g.ta;a.ua.close(a)}},Ya:function(){U.Ya.$b||(U.Ya.$b=0);return"socket["+U.Ya.$b++ +"]"},I:{Qa:function(a,b,c){var d;"object"===typeof b&&(d=b,c=b=p);if(d)d._socket?(b=d._socket.remoteAddress,c=d._socket.remotePort):((c=/ws[s]?:\/\/([^:]+):(\d+)/.exec(d.url))||g(Error("WebSocket URL must be in the format ws(s)://address:port")),b=c[1],c=parseInt(c[2],10));else try{var e=ca?{headers:{"websocket-protocol":["binary"]}}:["binary"];
-d=new (ca?require("ws"):window.WebSocket)("ws://"+b+":"+c,e);d.binaryType="arraybuffer"}catch(f){g(new R(O.Kc))}b={X:b,port:c,n:d,Ra:[]};U.I.Vb(a,b);U.I.md(a,b);2===a.type&&"undefined"!==typeof a.va&&b.Ra.push(new Uint8Array([255,255,255,255,112,111,114,116,(a.va&65280)>>8,a.va&255]));return b},Va:function(a,b,c){return a.Da[b+":"+c]},Vb:function(a,b){a.Da[b.X+":"+b.port]=b},zc:function(a,b){delete a.Da[b.X+":"+b.port]},md:function(a,b){function c(){try{for(var a=b.Ra.shift();a;)b.n.send(a),a=b.Ra.shift()}catch(c){b.n.close()}}
-function d(c){A("string"!==typeof c&&c.byteLength!==k);var c=new Uint8Array(c),d=e;e=q;d&&10===c.length&&255===c[0]&&255===c[1]&&255===c[2]&&255===c[3]&&112===c[4]&&111===c[5]&&114===c[6]&&116===c[7]?(c=c[8]<<8|c[9],U.I.zc(a,b),b.port=c,U.I.Vb(a,b)):a.sa.push({X:b.X,port:b.port,data:c})}var e=n;ca?(b.n.on("open",c),b.n.on("message",function(a,b){b.binary&&d((new Uint8Array(a)).buffer)}),b.n.on("error",r())):(b.n.onopen=c,b.n.onmessage=function(a){d(a.data)})},xc:function(a){if(1===a.type&&a.F)return a.xb.length?
-65:0;var b=0,c=1===a.type?U.I.Va(a,a.Y,a.Z):p;if(a.sa.length||!c||c&&c.n.readyState===c.n.Ga||c&&c.n.readyState===c.n.CLOSED)b|=65;if(!c||c&&c.n.readyState===c.n.OPEN)b|=4;if(c&&c.n.readyState===c.n.Ga||c&&c.n.readyState===c.n.CLOSED)b|=16;return b},pc:function(a,b,c){switch(b){case 21531:return b=0,a.sa.length&&(b=a.sa[0].data.length),J[c>>2]=b,0;default:return O.D}},close:function(a){if(a.F){try{a.F.close()}catch(b){}a.F=p}for(var c=Object.keys(a.Da),d=0;d<c.length;d++){var e=a.Da[c[d]];try{e.n.close()}catch(f){}U.I.zc(a,
-e)}return 0},bind:function(a,b,c){("undefined"!==typeof a.Bb||"undefined"!==typeof a.va)&&g(new R(O.D));a.Bb=b;a.va=c||Dc();if(2===a.type){a.F&&(a.F.close(),a.F=p);try{a.ua.td(a,0)}catch(d){d instanceof R||g(d),d.fc!==O.ib&&g(d)}}},Uf:function(a,b,c){a.F&&g(new R(ERRNO_CODS.ib));if("undefined"!==typeof a.Y&&"undefined"!==typeof a.Z){var d=U.I.Va(a,a.Y,a.Z);d&&(d.n.readyState===d.n.CONNECTING&&g(new R(O.Ic)),g(new R(O.Mc)))}b=U.I.Qa(a,b,c);a.Y=b.X;a.Z=b.port;g(new R(O.Lc))},td:function(a){ca||g(new R(O.ib));
-a.F&&g(new R(O.D));var b=require("ws").Server;a.F=new b({host:a.Bb,port:a.va});a.F.on("connection",function(b){if(1===a.type){var d=U.ad(a.ed,a.type,a.protocol),b=U.I.Qa(d,b);d.Y=b.X;d.Z=b.port;a.xb.push(d)}else U.I.Qa(a,b)});a.F.on("closed",function(){a.F=p});a.F.on("error",r())},accept:function(a){a.F||g(new R(O.D));var b=a.xb.shift();b.T.$=a.T.$;return b},cg:function(a,b){var c,d;b?((a.Y===k||a.Z===k)&&g(new R(O.Ja)),c=a.Y,d=a.Z):(c=a.Bb||0,d=a.va||0);return{X:c,port:d}},Ed:function(a,b,c,d,e,
-f){if(2===a.type){if(e===k||f===k)e=a.Y,f=a.Z;(e===k||f===k)&&g(new R(O.Jc))}else e=a.Y,f=a.Z;var h=U.I.Va(a,e,f);1===a.type&&((!h||h.n.readyState===h.n.Ga||h.n.readyState===h.n.CLOSED)&&g(new R(O.Ja)),h.n.readyState===h.n.CONNECTING&&g(new R(O.za)));b=b instanceof Array||b instanceof ArrayBuffer?b.slice(c,c+d):b.buffer.slice(b.byteOffset+c,b.byteOffset+c+d);if(2===a.type&&(!h||h.n.readyState!==h.n.OPEN)){if(!h||h.n.readyState===h.n.Ga||h.n.readyState===h.n.CLOSED)h=U.I.Qa(a,e,f);h.Ra.push(b);return d}try{return h.n.send(b),
-d}catch(i){g(new R(O.D))}},Cd:function(a,b){1===a.type&&a.F&&g(new R(O.Ja));var c=a.sa.shift();if(!c){if(1===a.type){var d=U.I.Va(a,a.Y,a.Z);if(d){if(d.n.readyState===d.n.Ga||d.n.readyState===d.n.CLOSED)return p;g(new R(O.za))}g(new R(O.Ja))}g(new R(O.za))}var d=c.data.byteLength||c.data.length,e=c.data.byteOffset||0,f=c.data.buffer||c.data,h=Math.min(b,d),i={buffer:new Uint8Array(f,e,h),X:c.X,port:c.port};1===a.type&&h<d&&(c.data=new Uint8Array(f,e+h,d-h),a.sa.unshift(c));return i}}};
-function Ec(a,b,c){a=T[a];if(!a)return Q(O.W),-1;try{return wc(a,I,b,c)}catch(d){return $b(d),-1}}function Fc(a){return T[a-1].K}function Gc(a,b,c,d){c*=b;if(0==c)return 0;a=Ec(Fc(d),a,c);if(-1==a){if(b=T[d-1])b.error=n;return 0}return Math.floor(a/b)}function Hc(a){v.exit(a)}var Ic=[];function Jc(){if(Jc.Ac)Jc.Ac=q;else{V.setThrew(0);var a=Ic.pop();if(a){header=a-vb;var b=J[header+4>>2];b&&(z.Sa("vi",b,[a]),J[header+4>>2]=0);Fb(a);ub=0}}}
-function Kc(a,b,c){a=T[a];if(!a)return Q(O.W),-1;try{return vc(a,b,c)}catch(d){return $b(d),-1}}function Lc(a,b,c,d){c*=b;if(0==c)return 0;var e=0,d=T[d-1];if(!d)return Q(O.W),0;for(;d.fb.length&&0<c;)I[a++|0]=d.fb.pop(),c--,e++;a=Kc(d.K,a,c);if(-1==a)return d&&(d.error=n),0;e+=a;e<c&&(d.ec=n);return Math.floor(e/b)}function Mc(a){var b=T[a-1];if(!b||b.ec||b.error)return-1;a=Lc(Mc.O,1,1,a);return 0==a?-1:-1==a?(b.error=n,-1):M[Mc.O|0]}
-function Nc(a,b,c){if(a in Ib){if(Ib[a].length>c-1)return Q(O.Pb);Za(Ib[a],b);return 0}return Q(O.D)}function Oc(a){Oc.buffer||(Oc.buffer=Da(256));Nc(a,Oc.buffer,256);return Oc.buffer}function Pc(a){return 48<=a&&57>=a||97<=a&&102>=a||65<=a&&70>=a}function Qc(a){return 48<=a&&57>=a}function Rc(a){return/^[+-]?[0-9]*\.?[0-9]+([eE][+-]?[0-9]+)?/.exec(a)}
-function W(a,b,c,d){W.whiteSpace||(W.whiteSpace={},W.whiteSpace[32]=1,W.whiteSpace[9]=1,W.whiteSpace[10]=1,W.whiteSpace[11]=1,W.whiteSpace[12]=1,W.whiteSpace[13]=1);var a=ja(a),e=0;if(0<=a.indexOf("%n"))var f=b,b=function(){e++;return f()},h=c,c=function(){e--;return h()};var i=0,m=0,l=0,j,i=0;a:for(;i<a.length;)if("%"===a[i]&&"n"==a[i+1]){var s=J[d+l>>2],l=l+z.fa("void*",p,n);J[s>>2]=e;i+=2}else{if("%"===a[i]){var x=a.indexOf("c",i+1);if(0<x){var C=1;x>i+1&&(j=a.substring(i+1,x),C=parseInt(j),C!=
-j&&(C=0));if(C){s=J[d+l>>2];l+=z.fa("void*",p,n);m++;for(var F=0;F<C;F++)if(j=b(),I[s++|0]=j,0===j)return 0<F?m:m-1;i+=x-i+1;continue}}}if("%"===a[i]&&0<a.indexOf("[",i+1)&&(x=/\%([0-9]*)\[(\^)?(\]?[^\]]*)\]/.exec(a.substring(i)))){for(var C=parseInt(x[1])||Infinity,N="^"===x[2],G=x[3];j=/([^\-])\-([^\-])/.exec(G);){for(var s=j[1].charCodeAt(0),F=j[2].charCodeAt(0),E="";s<=F;E+=String.fromCharCode(s++));G=G.replace(j[1]+"-"+j[2],E)}s=J[d+l>>2];l+=z.fa("void*",p,n);m++;for(F=0;F<C;F++)if(j=b(),N)if(0>
-G.indexOf(String.fromCharCode(j)))I[s++|0]=j;else{c();break}else if(0<=G.indexOf(String.fromCharCode(j)))I[s++|0]=j;else{c();break}I[s++|0]=0;i+=x[0].length;continue}for(;;){j=b();if(0==j)return m;if(!(j in W.whiteSpace))break}c();if("%"===a[i]){i++;s=q;"*"==a[i]&&(s=n,i++);for(j=i;48<=a[i].charCodeAt(0)&&57>=a[i].charCodeAt(0);)i++;var P;i!=j&&(P=parseInt(a.slice(j,i),10));N=C=x=q;"l"==a[i]?(x=n,i++,"l"==a[i]&&(N=n,i++)):"h"==a[i]&&(C=n,i++);G=a[i];i++;F=0;E=[];if("f"==G||"e"==G||"g"==G||"F"==G||
-"E"==G||"G"==G){for(j=b();0<j&&!(j in W.whiteSpace);)E.push(String.fromCharCode(j)),j=b();j=(j=Rc(E.join("")))?j[0].length:0;for(F=0;F<E.length-j+1;F++)c();E.length=j}else{j=b();var y=n;if(("x"==G||"X"==G)&&48==j){var la=b();120==la||88==la?j=b():c()}for(;(F<P||isNaN(P))&&0<j;)if(!(j in W.whiteSpace)&&("s"==G||("d"===G||"u"==G||"i"==G)&&(48<=j&&57>=j||y&&45==j)||("x"===G||"X"===G)&&(48<=j&&57>=j||97<=j&&102>=j||65<=j&&70>=j))&&(i>=a.length||j!==a[i].charCodeAt(0)))E.push(String.fromCharCode(j)),j=
-b(),F++,y=q;else break;c()}if(0===E.length)return 0;if(!s){j=E.join("");s=J[d+l>>2];l+=z.fa("void*",p,n);switch(G){case "d":case "u":case "i":C?ua[s>>1]=parseInt(j,10):N?(pa=[parseInt(j,10)>>>0,(D=parseInt(j,10),1<=+va(D)?0<D?(wa(+xa(D/4294967296),4294967295)|0)>>>0:~~+ya((D-+(~~D>>>0))/4294967296)>>>0:0)],J[s>>2]=pa[0],J[s+4>>2]=pa[1]):J[s>>2]=parseInt(j,10);break;case "X":case "x":J[s>>2]=parseInt(j,16);break;case "F":case "f":case "E":case "e":case "G":case "g":case "E":x?Aa[s>>3]=parseFloat(j):
-za[s>>2]=parseFloat(j);break;case "s":j=H(j);for(F=0;F<j.length;F++)I[s+F|0]=j[F]}m++}}else{if(a[i].charCodeAt(0)in W.whiteSpace){for(j=b();j in W.whiteSpace;){if(0>=j)break a;j=b()}c(j)}else if(j=b(),a[i].charCodeAt(0)!==j){c(j);break a}i++}}return m}function Sc(a,b,c){var d=0;return W(b,function(){return I[a+d++|0]},function(){d--},c)}
-function Tc(){if(!Tc.O){for(var a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,8195,8194,8194,8194,8194,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,24577,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,55304,55304,55304,55304,55304,55304,
-55304,55304,55304,55304,49156,49156,49156,49156,49156,49156,49156,54536,54536,54536,54536,54536,54536,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,49156,49156,49156,49156,49156,49156,54792,54792,54792,54792,54792,54792,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,49156,49156,49156,49156,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],b=Da(2*a.length),c=0;c<a.length;c++)ua[b+2*c>>1]=a[c];Tc.O=L([b+256],"i16*",Ba)}return Tc.O}
-function Uc(){if(!Uc.O){for(var a=[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,
-245,246,247,248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,
-137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],b=Da(4*a.length),c=0;c<a.length;c++)J[b+
-4*c>>2]=a[c];Uc.O=L([b+512],"i32*",Ba)}return Uc.O}
-function Vc(){if(!Vc.O){for(var a=[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,
-245,246,247,248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,
-148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],b=Da(4*a.length),c=0;c<a.length;c++)J[b+4*c>>2]=a[c];Vc.O=L([b+512],
-"i32*",Ba)}return Vc.O}function Wc(a){return 0===a%4&&(0!==a%100||0===a%400)}function Xc(a,b){for(var c=0,d=0;d<=b;c+=a[d++]);return c}var Yc=[31,29,31,30,31,30,31,31,30,31,30,31],Zc=[31,28,31,30,31,30,31,31,30,31,30,31];function $c(a,b){for(var c=new Date(a.getTime());0<b;){var d=c.getMonth(),e=(Wc(c.getFullYear())?Yc:Zc)[d];if(b>e-c.getDate())b-=e-c.getDate()+1,c.setDate(1),11>d?c.setMonth(d+1):(c.setMonth(0),c.setFullYear(c.getFullYear()+1));else{c.setDate(c.getDate()+b);break}}return c}
-function ad(a,b,c,d){function e(a,b,c){for(a="number"===typeof a?a.toString():a||"";a.length<b;)a=c[0]+a;return a}function f(a,b){return e(a,b,"0")}function h(a,b){var c;if(0===(c=0>a.getFullYear()-b.getFullYear()?-1:0<a.getFullYear()-b.getFullYear()?1:0))if(0===(c=0>a.getMonth()-b.getMonth()?-1:0<a.getMonth()-b.getMonth()?1:0))c=0>a.getDate()-b.getDate()?-1:0<a.getDate()-b.getDate()?1:0;return c}function i(a){switch(a.getDay()){case 0:return new Date(a.getFullYear()-1,11,29);case 1:return a;case 2:return new Date(a.getFullYear(),
-0,3);case 3:return new Date(a.getFullYear(),0,2);case 4:return new Date(a.getFullYear(),0,1);case 5:return new Date(a.getFullYear()-1,11,31);case 6:return new Date(a.getFullYear()-1,11,30)}}function m(a){var a=$c(new Date(a.H+1900,0,1),a.cb),b=i(new Date(a.getFullYear()+1,0,4));return 0>=h(i(new Date(a.getFullYear(),0,4)),a)?0>=h(b,a)?a.getFullYear()+1:a.getFullYear():a.getFullYear()-1}var d={Id:J[d>>2],Hd:J[d+4>>2],wa:J[d+8>>2],qa:J[d+12>>2],ia:J[d+16>>2],H:J[d+20>>2],Dc:J[d+24>>2],cb:J[d+28>>2],
-wg:J[d+32>>2]},c=ja(c),l={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"},j;for(j in l)c=c.replace(RegExp(j,"g"),l[j]);var s="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),x="January February March April May June July August September October November December".split(" "),l={"%a":function(a){return s[a.Dc].substring(0,3)},"%A":function(a){return s[a.Dc]},"%b":function(a){return x[a.ia].substring(0,
-3)},"%B":function(a){return x[a.ia]},"%C":function(a){return f(Math.floor((a.H+1900)/100),2)},"%d":function(a){return f(a.qa,2)},"%e":function(a){return e(a.qa,2," ")},"%g":function(a){return m(a).toString().substring(2)},"%G":function(a){return m(a)},"%H":function(a){return f(a.wa,2)},"%I":function(a){return f(13>a.wa?a.wa:a.wa-12,2)},"%j":function(a){return f(a.qa+Xc(Wc(a.H+1900)?Yc:Zc,a.ia-1),3)},"%m":function(a){return f(a.ia+1,2)},"%M":function(a){return f(a.Hd,2)},"%n":t("\n"),"%p":function(a){return 0<
-a.wa&&13>a.wa?"AM":"PM"},"%S":function(a){return f(a.Id,2)},"%t":t("\t"),"%u":function(a){return(new Date(a.H+1900,a.ia+1,a.qa,0,0,0,0)).getDay()||7},"%U":function(a){var b=new Date(a.H+1900,0,1),c=0===b.getDay()?b:$c(b,7-b.getDay()),a=new Date(a.H+1900,a.ia,a.qa);return 0>h(c,a)?f(Math.ceil((31-c.getDate()+(Xc(Wc(a.getFullYear())?Yc:Zc,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},"%V":function(a){var b=i(new Date(a.H+1900,0,4)),c=i(new Date(a.H+1901,0,4)),d=$c(new Date(a.H+1900,0,
-1),a.cb);return 0>h(d,b)?"53":0>=h(c,d)?"01":f(Math.ceil((b.getFullYear()<a.H+1900?a.cb+32-b.getDate():a.cb+1-b.getDate())/7),2)},"%w":function(a){return(new Date(a.H+1900,a.ia+1,a.qa,0,0,0,0)).getDay()},"%W":function(a){var b=new Date(a.H,0,1),c=1===b.getDay()?b:$c(b,0===b.getDay()?1:7-b.getDay()+1),a=new Date(a.H+1900,a.ia,a.qa);return 0>h(c,a)?f(Math.ceil((31-c.getDate()+(Xc(Wc(a.getFullYear())?Yc:Zc,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},"%y":function(a){return(a.H+1900).toString().substring(2)},
-"%Y":function(a){return a.H+1900},"%z":t(""),"%Z":t(""),"%%":t("%")};for(j in l)0<=c.indexOf(j)&&(c=c.replace(RegExp(j,"g"),l[j](d)));j=H(c,q);if(j.length>b)return 0;sa(j,a);return j.length-1}function bd(a){return 32==a||9<=a&&13>=a}
-function cd(a,b,c,d,e,f){for(var h=q;bd(I[a]);)a++;45==I[a]?(a++,h=n):43==I[a]&&a++;var i=q;if(c){if(16==c&&48==I[a]&&(120==I[a+1|0]||88==I[a+1|0]))a+=2}else 48==I[a]&&(120==I[a+1|0]||88==I[a+1|0]?(c=16,a+=2):(c=8,i=n));c||(c=10);for(var m=a,l;0!=(l=I[a])&&!isNaN(parseInt(String.fromCharCode(l),c));)a++,i=n;if(!i)return Q(O.D),(V.setTempRet0(0),0)|0;b&&(J[b>>2]=a);try{var j=h?"-"+ja(m,a-m):ja(m,a-m);Bb.G(j,c,d,e,f)}catch(s){Q(O.Pb)}return(V.setTempRet0(J[pb+4>>2]|0),J[pb>>2]|0)|0}
-function dd(a,b,c){return cd(a,b,c,0,"18446744073709551615",n)}function ed(a,b,c){return cd(a,b,c,"-9223372036854775808","9223372036854775807")}function fd(a,b,c){return Db(-a,b,c)}var gd=va;function hd(a){hd.$c||(B=B+4095&-4096,hd.$c=n,A(z.Ta),hd.Xc=z.Ta,z.Ta=function(){ka("cannot dynamically allocate, sbrk now has control")});var b=B;0!=a&&hd.Xc(a);return b}var id=q,jd=q,kd=q,ld=q,md=k,nd=k;
-function od(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}
-function pd(a,b,c){function d(){c?c():g('Loading data file "'+a+'" failed.')}var e=new XMLHttpRequest;e.open("GET",a,n);e.responseType="arraybuffer";e.onload=function(){if(200==e.status||0==e.status&&e.response){var c=e.response;A(c,'Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(c));fb()}else d()};e.onerror=d;e.send(p);eb()}var qd=[];function rd(){var a=v.canvas;qd.forEach(function(b){b(a.width,a.height)})}
-function sd(){var a=v.canvas;this.Ld=a.width;this.Kd=a.height;a.width=screen.width;a.height=screen.height;"undefined"!=typeof SDL&&(a=Ha[SDL.screen+0*z.ka>>2],J[SDL.screen+0*z.ka>>2]=a|8388608);rd()}function td(){var a=v.canvas;a.width=this.Ld;a.height=this.Kd;"undefined"!=typeof SDL&&(a=Ha[SDL.screen+0*z.ka>>2],J[SDL.screen+0*z.ka>>2]=a&-8388609);rd()}var ud,vd,wd,xd;xc();Yb=Array(4096);kc(S,"/");oc("/tmp");oc("/dev");Qb[259]={o:{S:t(0),write:t(0)}};pc("/dev/null",259);
-Pb(1280,{nc:function(a){if(!a.input.length){var b=p;if(ca){if(b=process.stdin.read(),!b){if(process.stdin._readableState&&process.stdin._readableState.ended)return p;return}}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b!==p&&(b+="\n")):"function"==typeof readline&&(b=readline(),b!==p&&(b+="\n"));if(!b)return p;a.input=H(b,n)}return a.input.shift()},Za:function(a,b){b===p||10===b?(v.print(a.oa.join("")),a.oa=[]):a.oa.push(yd.yb(b))}});
-Pb(1536,{Za:function(a,b){b===p||10===b?(v.printErr(a.oa.join("")),a.oa=[]):a.oa.push(yd.yb(b))}});pc("/dev/tty",1280);pc("/dev/tty1",1536);oc("/dev/shm");oc("/dev/shm/tmp");
-Ra.unshift({ba:function(){if(!v.noFSInit&&!yc){A(!yc,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");yc=n;xc();v.stdin=v.stdin;v.stdout=v.stdout;v.stderr=v.stderr;v.stdin?Bc("/dev","stdin",v.stdin):qc("/dev/tty","/dev/stdin");v.stdout?Bc("/dev","stdout",p,v.stdout):qc("/dev/tty","/dev/stdout");v.stderr?Bc("/dev","stderr",p,v.stderr):qc("/dev/tty1","/dev/stderr");var a=sc("/dev/stdin",
-"r");J[ib>>2]=a?a.K+1:0;A(0===a.K,"invalid handle for stdin ("+a.K+")");a=sc("/dev/stdout","w");J[hb>>2]=a?a.K+1:0;A(1===a.K,"invalid handle for stdout ("+a.K+")");a=sc("/dev/stderr","w");J[jb>>2]=a?a.K+1:0;A(2===a.K,"invalid handle for stderr ("+a.K+")")}}});Sa.push({ba:function(){Zb=q}});Ta.push({ba:function(){yc=q;for(var a=0;a<T.length;a++){var b=T[a];b&&uc(b)}}});v.FS_createFolder=function(a,b,c,d){a=Lb(("string"===typeof a?a:bc(a))+"/"+b);return oc(a,zc(c,d))};
-v.FS_createPath=function(a,b){for(var a="string"===typeof a?a:bc(a),c=b.split("/").reverse();c.length;){var d=c.pop();if(d){var e=Lb(a+"/"+d);try{oc(e)}catch(f){}a=e}}return e};v.FS_createDataFile=Ac;
-v.FS_createPreloadedFile=function(a,b,c,d,e,f,h,i,m){function l(){kd=document.pointerLockElement===x||document.mozPointerLockElement===x||document.webkitPointerLockElement===x}function j(c){function j(c){i||Ac(a,b,c,d,e,m);f&&f();fb()}var l=q;v.preloadPlugins.forEach(function(a){!l&&a.canHandle(C)&&(a.handle(c,C,j,function(){h&&h();fb()}),l=n)});l||j(c)}v.preloadPlugins||(v.preloadPlugins=[]);if(!ud&&!ea){ud=n;try{new Blob,vd=n}catch(s){vd=q,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}wd=
-"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:!vd?console.log("warning: no BlobBuilder"):p;xd="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:k;!v.wc&&"undefined"===typeof xd&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),v.wc=n);v.preloadPlugins.push({canHandle:function(a){return!v.wc&&/\.(jpg|jpeg|png|bmp)$/i.test(a)},handle:function(a,b,
-c,d){var e=p;if(vd)try{e=new Blob([a],{type:od(b)}),e.size!==a.length&&(e=new Blob([(new Uint8Array(a)).buffer],{type:od(b)}))}catch(f){z.Fa("Blob constructor present but fails: "+f+"; falling back to blob builder")}e||(e=new wd,e.append((new Uint8Array(a)).buffer),e=e.getBlob());var h=xd.createObjectURL(e),i=new Image;i.onload=function(){A(i.complete,"Image "+b+" could not be decoded");var d=document.createElement("canvas");d.width=i.width;d.height=i.height;d.getContext("2d").drawImage(i,0,0);v.preloadedImages[b]=
-d;xd.revokeObjectURL(h);c&&c(a)};i.onerror=function(){console.log("Image "+h+" could not be decoded");d&&d()};i.src=h}});v.preloadPlugins.push({canHandle:function(a){return!v.ng&&a.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(a,b,c,d){function e(d){h||(h=n,v.preloadedAudios[b]=d,c&&c(a))}function f(){h||(h=n,v.preloadedAudios[b]=new Audio,d&&d())}var h=q;if(vd){try{var i=new Blob([a],{type:od(b)})}catch(j){return f()}var i=xd.createObjectURL(i),l=new Audio;l.addEventListener("canplaythrough",
-function(){e(l)},q);l.onerror=function(){if(!h){console.log("warning: browser could not fully decode audio "+b+", trying slower base64 approach");for(var c="",d=0,f=0,i=0;i<a.length;i++){d=d<<8|a[i];for(f+=8;6<=f;)var j=d>>f-6&63,f=f-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[j]}2==f?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],c+="=="):4==f&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],c+="=");
-l.src="data:audio/x-"+b.substr(-3)+";base64,"+c;e(l)}};l.src=i;setTimeout(function(){oa||e(l)},1E4)}else return f()}});var x=v.canvas;x.Ab=x.requestPointerLock||x.mozRequestPointerLock||x.webkitRequestPointerLock;x.gc=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||r();x.gc=x.gc.bind(document);document.addEventListener("pointerlockchange",l,q);document.addEventListener("mozpointerlockchange",l,q);document.addEventListener("webkitpointerlockchange",l,q);v.elementPointerLock&&
-x.addEventListener("click",function(a){!kd&&x.Ab&&(x.Ab(),a.preventDefault())},q)}var C=b?Nb(Lb(a+"/"+b)):a;eb();"string"==typeof c?pd(c,function(a){j(a)},h):j(c)};
-v.FS_createLazyFile=function(a,b,c,d,e){var f,h;"undefined"!==typeof XMLHttpRequest?(ea||g("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"),f=function(){this.vb=q;this.Na=[]},f.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.Ma;return this.jd(Math.floor(a/this.Ma))[b]}},f.prototype.Fd=function(a){this.jd=a},f.prototype.Xb=function(){var a=new XMLHttpRequest;a.open("HEAD",c,q);a.send(p);200<=a.status&&300>a.status||
-304===a.status||g(Error("Couldn't load "+c+". Status: "+a.status));var b=Number(a.getResponseHeader("Content-length")),d,e=1048576;if(!((d=a.getResponseHeader("Accept-Ranges"))&&"bytes"===d))e=b;var f=this;f.Fd(function(a){var d=a*e,h=(a+1)*e-1,h=Math.min(h,b-1);if("undefined"===typeof f.Na[a]){var i=f.Na;d>h&&g(Error("invalid range ("+d+", "+h+") or no bytes requested!"));h>b-1&&g(Error("only "+b+" bytes available! programmer error!"));var l=new XMLHttpRequest;l.open("GET",c,q);b!==e&&l.setRequestHeader("Range",
-"bytes="+d+"-"+h);"undefined"!=typeof Uint8Array&&(l.responseType="arraybuffer");l.overrideMimeType&&l.overrideMimeType("text/plain; charset=x-user-defined");l.send(p);200<=l.status&&300>l.status||304===l.status||g(Error("Couldn't load "+c+". Status: "+l.status));d=l.response!==k?new Uint8Array(l.response||[]):H(l.responseText||"",n);i[a]=d}"undefined"===typeof f.Na[a]&&g(Error("doXHR failed!"));return f.Na[a]});this.Wc=b;this.Vc=e;this.vb=n},f=new f,Object.defineProperty(f,"length",{get:function(){this.vb||
-this.Xb();return this.Wc}}),Object.defineProperty(f,"chunkSize",{get:function(){this.vb||this.Xb();return this.Vc}}),h=k):(h=c,f=k);var i,a=Lb(("string"===typeof a?a:bc(a))+"/"+b);i=nc(a,zc(d,e));f?i.u=f:h&&(i.u=p,i.url=h);var m={};Object.keys(i.o).forEach(function(a){var b=i.o[a];m[a]=function(){Cc(i)||g(new R(O.ja));return b.apply(p,arguments)}});m.S=function(a,b,c,d,e){Cc(i)||g(new R(O.ja));a=a.g.u;if(e>=a.length)return 0;d=Math.min(a.length-e,d);A(0<=d);if(a.slice)for(var f=0;f<d;f++)b[c+f]=a[e+
-f];else for(f=0;f<d;f++)b[c+f]=a.get(e+f);return d};i.o=m;return i};v.FS_createLink=function(a,b,c){a=Lb(("string"===typeof a?a:bc(a))+"/"+b);return qc(c,a)};v.FS_createDevice=Bc;Jb=z.Cc(4);J[Jb>>2]=0;Ra.unshift({ba:r()});Ta.push({ba:r()});var yd=new z.kb;ca&&(require("fs"),process.platform.match(/^win/));Ra.push({ba:function(){U.root=kc(U,p)}});Mc.O=L([0],"i8",K);
-v.requestFullScreen=function(a,b){function c(){jd=q;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement)===d?(d.Yb=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen,d.Yb=d.Yb.bind(document),md&&d.Ab(),jd=n,nd&&sd()):nd&&td();if(v.onFullScreen)v.onFullScreen(jd)}md=a;nd=b;"undefined"===typeof md&&(md=n);"undefined"===typeof nd&&
-(nd=q);var d=v.canvas;ld||(ld=n,document.addEventListener("fullscreenchange",c,q),document.addEventListener("mozfullscreenchange",c,q),document.addEventListener("webkitfullscreenchange",c,q));d.Dd=d.requestFullScreen||d.mozRequestFullScreen||(d.webkitRequestFullScreen?function(){d.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:p);d.Dd()};
-v.requestAnimationFrame=function(a){"undefined"===typeof window?setTimeout(a,1E3/60):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||window.setTimeout),window.requestAnimationFrame(a))};v.setCanvasSize=function(a,b,c){var d=v.canvas;d.width=a;d.height=b;c||rd()};v.pauseMainLoop=r();v.resumeMainLoop=function(){id&&(id=q,p())};
-v.getUserMedia=function(){window.mc||(window.mc=navigator.getUserMedia||navigator.mozGetUserMedia);window.mc(k)};Ja=w=z.Ba(ma);Ka=Ja+5242880;La=B=z.Ba(Ka);A(La<na,"TOTAL_MEMORY not big enough for stack");
-var zd=L([8,7,6,6,5,5,5,5,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0],"i8",3),Ad=L([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",3),wa=Math.min;
-var V=(function(global,env,buffer) {
-// EMSCRIPTEN_START_ASM
-"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT|0;var m=env.cttz_i8|0;var n=env.ctlz_i8|0;var o=env._stdout|0;var p=env.___dso_handle|0;var q=env.__ZTVN10__cxxabiv117__class_type_infoE|0;var r=env._stdin|0;var s=env.__ZTVN10__cxxabiv120__si_class_type_infoE|0;var t=env._stderr|0;var u=+env.NaN;var v=+env.Infinity;var w=0;var x=0;var y=0;var z=0;var A=0,B=0,C=0,D=0,E=0.0,F=0,G=0,H=0,I=0.0;var J=0;var K=0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=global.Math.floor;var U=global.Math.abs;var V=global.Math.sqrt;var W=global.Math.pow;var X=global.Math.cos;var Y=global.Math.sin;var Z=global.Math.tan;var _=global.Math.acos;var $=global.Math.asin;var aa=global.Math.atan;var ba=global.Math.atan2;var ca=global.Math.exp;var da=global.Math.log;var ea=global.Math.ceil;var fa=global.Math.imul;var ga=env.abort;var ha=env.assert;var ia=env.asmPrintInt;var ja=env.asmPrintFloat;var ka=env.min;var la=env.invoke_viiiii;var ma=env.invoke_viiiiiii;var na=env.invoke_vi;var oa=env.invoke_vii;var pa=env.invoke_iii;var qa=env.invoke_iiiiii;var ra=env.invoke_viiiiiid;var sa=env.invoke_ii;var ta=env.invoke_iiii;var ua=env.invoke_viii;var va=env.invoke_viiiiid;var wa=env.invoke_v;var xa=env.invoke_iiiiiiiii;var ya=env.invoke_viiiiiiiii;var za=env.invoke_viiiiii;var Aa=env.invoke_iiiii;var Ba=env.invoke_viiiiiiii;var Ca=env.invoke_viiii;var Da=env._llvm_lifetime_end;var Ea=env.__scanString;var Fa=env._pthread_mutex_lock;var Ga=env.___cxa_end_catch;var Ha=env._strtoull;var Ia=env._fflush;var Ja=env.__isLeapYear;var Ka=env._fwrite;var La=env._send;var Ma=env._isspace;var Na=env._read;var Oa=env._isxdigit_l;var Pa=env._fileno;var Qa=env.___cxa_guard_abort;var Ra=env._newlocale;var Sa=env.___gxx_personality_v0;var Ta=env._pthread_cond_wait;var Ua=env.___cxa_rethrow;var Va=env._fmod;var Wa=env.___resumeException;var Xa=env._memchr;var Ya=env._llvm_va_end;var Za=env._vsscanf;var _a=env._snprintf;var $a=env._fgetc;var ab=env.__getFloat;var bb=env._atexit;var cb=env.___cxa_free_exception;var db=env._strchr;var eb=env._isdigit_l;var fb=env.___setErrNo;var gb=env._isxdigit;var hb=env._exit;var ib=env._sprintf;var jb=env.___ctype_b_loc;var kb=env._freelocale;var lb=env._catgets;var mb=env._asprintf;var nb=env.___cxa_is_number_type;var ob=env.___cxa_does_inherit;var pb=env.___cxa_guard_acquire;var qb=env.___cxa_begin_catch;var rb=env._emscripten_memcpy_big;var sb=env._recv;var tb=env.__parseInt64;var ub=env.__ZSt18uncaught_exceptionv;var vb=env.__ZNSt9exceptionD2Ev;var wb=env._mkport;var xb=env._copysign;var yb=env.__exit;var zb=env._strftime;var Ab=env.___cxa_throw;var Bb=env._pread;var Cb=env._strtoull_l;var Db=env.__arraySum;var Eb=env._strtoll_l;var Fb=env.___cxa_find_matching_catch;var Gb=env.__formatString;var Hb=env._pthread_cond_broadcast;var Ib=env.__ZSt9terminatev;var Jb=env._pthread_mutex_unlock;var Kb=env.___cxa_call_unexpected;var Lb=env._sbrk;var Mb=env.___errno_location;var Nb=env._strerror;var Ob=env._catclose;var Pb=env._llvm_lifetime_start;var Qb=env.___cxa_guard_release;var Rb=env._ungetc;var Sb=env._uselocale;var Tb=env._vsnprintf;var Ub=env._sscanf;var Vb=env._sysconf;var Wb=env._fread;var Xb=env._strftime_l;var Yb=env._abort;var Zb=env._fprintf;var _b=env._isdigit;var $b=env._strtoll;var ac=env.__reallyNegative;var bc=env.__addDays;var cc=env._fabs;var dc=env._write;var ec=env.___cxa_allocate_exception;var fc=env._vasprintf;var gc=env._catopen;var hc=env.___ctype_toupper_loc;var ic=env.___ctype_tolower_loc;var jc=env._pwrite;var kc=env._strerror_r;var lc=env._time;var mc=0.0;
+'use strict';var d;d||(d=eval("(function() { try { return Module || {} } catch(e) { return {} } })()"));var aa={},m;for(m in d)d.hasOwnProperty(m)&&(aa[m]=d[m]);var ba="object"===typeof window,ca="function"===typeof importScripts,ea="object"===typeof process&&"function"===typeof require&&!ba&&!ca,fa=!ba&&!ea&&!ca;
+if(ea){d.print||(d.print=function(a){process.stdout.write(a+"\n")});d.printErr||(d.printErr=function(a){process.stderr.write(a+"\n")});var ga=require("fs"),ha=require("path");d.read=function(a,b){a=ha.normalize(a);var c=ga.readFileSync(a);c||a==ha.resolve(a)||(a=path.join(__dirname,"..","src",a),c=ga.readFileSync(a));c&&!b&&(c=c.toString());return c};d.readBinary=function(a){a=d.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};d.load=function(a){ia(read(a))};d.thisProgram||(d.thisProgram=
+1<process.argv.length?process.argv[1].replace(/\\/g,"/"):"unknown-program");d.arguments=process.argv.slice(2);"undefined"!==typeof module&&(module.exports=d);process.on("uncaughtException",function(a){if(!(a instanceof n))throw a;});d.inspect=function(){return"[Emscripten Module object]"}}else if(fa)d.print||(d.print=print),"undefined"!=typeof printErr&&(d.printErr=printErr),d.read="undefined"!=typeof read?read:function(){throw"no read() available (jsc?)";},d.readBinary=function(a){if("function"===
+typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");assert("object"===typeof a);return a},"undefined"!=typeof scriptArgs?d.arguments=scriptArgs:"undefined"!=typeof arguments&&(d.arguments=arguments),eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined");else if(ba||ca)d.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},"undefined"!=typeof arguments&&(d.arguments=arguments),"undefined"!==
+typeof console?(d.print||(d.print=function(a){console.log(a)}),d.printErr||(d.printErr=function(a){console.log(a)})):d.print||(d.print=function(){}),ca&&(d.load=importScripts),"undefined"===typeof d.setWindowTitle&&(d.setWindowTitle=function(a){document.title=a});else throw"Unknown runtime environment. Where are we?";function ia(a){eval.call(null,a)}!d.load&&d.read&&(d.load=function(a){ia(d.read(a))});d.print||(d.print=function(){});d.printErr||(d.printErr=d.print);d.arguments||(d.arguments=[]);
+d.thisProgram||(d.thisProgram="./this.program");d.print=d.print;d.C=d.printErr;d.preRun=[];d.postRun=[];for(m in aa)aa.hasOwnProperty(m)&&(d[m]=aa[m]);
+var u={ra:function(a){ja=a},la:function(){return ja},Q:function(){return t},I:function(a){t=a},Z:function(a){switch(a){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:return"*"===a[a.length-1]?u.k:"i"===a[0]?(a=parseInt(a.substr(1)),assert(0===a%8),a/8):0}},ia:function(a){return Math.max(u.Z(a),u.k)},ua:16,Ma:function(a,b){"double"===b||"i64"===b?a&7&&(assert(4===(a&7)),a+=4):assert(0===(a&3));return a},
+Da:function(a,b,c){return c||"i64"!=a&&"double"!=a?a?Math.min(b||(a?u.ia(a):0),u.k):Math.min(b,8):8},n:function(a,b,c){return c&&c.length?(c.splice||(c=Array.prototype.slice.call(c)),c.splice(0,0,b),d["dynCall_"+a].apply(null,c)):d["dynCall_"+a].call(null,b)},F:[],da:function(a){for(var b=0;b<u.F.length;b++)if(!u.F[b])return u.F[b]=a,2*(1+b);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";},qa:function(a){u.F[(a-2)/2]=null},q:function(a){u.q.P||
+(u.q.P={});u.q.P[a]||(u.q.P[a]=1,d.C(a))},M:{},Fa:function(a,b){assert(b);u.M[b]||(u.M[b]={});var c=u.M[b];c[a]||(c[a]=function(){return u.n(b,a,arguments)});return c[a]},Ea:function(){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work";},H:function(a){var b=t;t=t+a|0;t=t+15&-16;return b},R:function(a){var b=w;w=w+a|0;w=w+15&-16;return b},p:function(a){var b=A;A=A+a|0;A=A+15&-16;return A>=B&&!ka()?(A=b,0):b},K:function(a,
+b){return Math.ceil(a/(b?b:16))*(b?b:16)},Ja:function(a,b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},T:8,k:4,va:0};d.Runtime=u;u.addFunction=u.da;u.removeFunction=u.qa;var C=!1,la,na,ja;function assert(a,b){a||D("Assertion failed: "+b)}function oa(a){var b=d["_"+a];if(!b)try{b=eval("_"+a)}catch(c){}assert(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}var pa,qa;
+(function(){function a(a){a=a.toString().match(e).slice(1);return{arguments:a[0],body:a[1],returnValue:a[2]}}var b={stackSave:function(){u.Q()},stackRestore:function(){u.I()},arrayToC:function(a){var b=u.H(a.length);ra(a,b);return b},stringToC:function(a){var b=0;null!==a&&void 0!==a&&0!==a&&(b=u.H((a.length<<2)+1),sa(a,b));return b}},c={string:b.stringToC,array:b.arrayToC};qa=function(a,b,e,f,h){a=oa(a);var r=[],z=0;if(f)for(var E=0;E<f.length;E++){var ma=c[e[E]];ma?(0===z&&(z=u.Q()),r[E]=ma(f[E])):
+r[E]=f[E]}e=a.apply(null,r);"string"===b&&(e=F(e));if(0!==z){if(h&&h.async){EmterpreterAsync.wa.push(function(){u.I(z)});return}u.I(z)}return e};var e=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/,f={},h;for(h in b)b.hasOwnProperty(h)&&(f[h]=a(b[h]));pa=function(b,c,e){e=e||[];var h=oa(b);b=e.every(function(a){return"number"===a});var v="string"!==c;if(v&&b)return h;var r=e.map(function(a,b){return"$"+b});c="(function("+r.join(",")+") {";var z=e.length;if(!b){c+="var stack = "+
+f.stackSave.body+";";for(var E=0;E<z;E++){var ma=r[E],da=e[E];"number"!==da&&(da=f[da+"ToC"],c+="var "+da.arguments+" = "+ma+";",c+=da.body+";",c+=ma+"=("+da.returnValue+");")}}e=a(function(){return h}).returnValue;c+="var ret = "+e+"("+r.join(",")+");";v||(e=a(function(){return F}).returnValue,c+="ret = "+e+"(ret);");b||(c+=f.stackRestore.body.replace("()","(stack)")+";");return eval(c+"return ret})")}})();d.ccall=qa;d.cwrap=pa;
+function ta(a,b,c){c=c||"i8";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":G[a>>0]=b;break;case "i8":G[a>>0]=b;break;case "i16":H[a>>1]=b;break;case "i32":I[a>>2]=b;break;case "i64":na=[b>>>0,(la=b,1<=+ua(la)?0<la?(va(+wa(la/4294967296),4294967295)|0)>>>0:~~+xa((la-+(~~la>>>0))/4294967296)>>>0:0)];I[a>>2]=na[0];I[a+4>>2]=na[1];break;case "float":ya[a>>2]=b;break;case "double":za[a>>3]=b;break;default:D("invalid type for setValue: "+c)}}d.setValue=ta;
+function Aa(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return G[a>>0];case "i8":return G[a>>0];case "i16":return H[a>>1];case "i32":return I[a>>2];case "i64":return I[a>>2];case "float":return ya[a>>2];case "double":return za[a>>3];default:D("invalid type for setValue: "+b)}return null}d.getValue=Aa;d.ALLOC_NORMAL=0;d.ALLOC_STACK=1;d.ALLOC_STATIC=2;d.ALLOC_DYNAMIC=3;d.ALLOC_NONE=4;
+function Ba(a,b,c,e){var f,h;"number"===typeof a?(f=!0,h=a):(f=!1,h=a.length);var k="string"===typeof b?b:null;c=4==c?e:["function"===typeof J?J:u.R,u.H,u.R,u.p][void 0===c?2:c](Math.max(h,k?1:b.length));if(f){e=c;assert(0==(c&3));for(a=c+(h&-4);e<a;e+=4)I[e>>2]=0;for(a=c+h;e<a;)G[e++>>0]=0;return c}if("i8"===k)return a.subarray||a.slice?K.set(a,c):K.set(new Uint8Array(a),c),c;e=0;for(var l,p;e<h;){var q=a[e];"function"===typeof q&&(q=u.Ga(q));f=k||b[e];0===f?e++:("i64"==f&&(f="i32"),ta(c+e,q,f),
+p!==f&&(l=u.Z(f),p=f),e+=l)}return c}d.allocate=Ba;d.getMemory=function(a){return Ca?"undefined"!==typeof L&&!L.g||!Da?u.p(a):J(a):u.R(a)};function F(a,b){if(0===b||!a)return"";for(var c=0,e,f=0;;){e=K[a+f>>0];c|=e;if(0==e&&!b)break;f++;if(b&&f==b)break}b||(b=f);e="";if(128>c){for(;0<b;)c=String.fromCharCode.apply(String,K.subarray(a,a+Math.min(b,1024))),e=e?e+c:c,a+=1024,b-=1024;return e}return d.UTF8ToString(a)}d.Pointer_stringify=F;
+d.AsciiToString=function(a){for(var b="";;){var c=G[a++>>0];if(!c)return b;b+=String.fromCharCode(c)}};d.stringToAscii=function(a,b){return Ea(a,b,!1)};
+function Fa(a,b){for(var c,e,f,h,k,l,p="";;){c=a[b++];if(!c)return p;c&128?(e=a[b++]&63,192==(c&224)?p+=String.fromCharCode((c&31)<<6|e):(f=a[b++]&63,224==(c&240)?c=(c&15)<<12|e<<6|f:(h=a[b++]&63,240==(c&248)?c=(c&7)<<18|e<<12|f<<6|h:(k=a[b++]&63,248==(c&252)?c=(c&3)<<24|e<<18|f<<12|h<<6|k:(l=a[b++]&63,c=(c&1)<<30|e<<24|f<<18|h<<12|k<<6|l))),65536>c?p+=String.fromCharCode(c):(c-=65536,p+=String.fromCharCode(55296|c>>10,56320|c&1023)))):p+=String.fromCharCode(c)}}d.UTF8ArrayToString=Fa;
+d.UTF8ToString=function(a){return Fa(K,a)};
+function Ga(a,b,c,e){if(!(0<e))return 0;var f=c;e=c+e-1;for(var h=0;h<a.length;++h){var k=a.charCodeAt(h);55296<=k&&57343>=k&&(k=65536+((k&1023)<<10)|a.charCodeAt(++h)&1023);if(127>=k){if(c>=e)break;b[c++]=k}else{if(2047>=k){if(c+1>=e)break;b[c++]=192|k>>6}else{if(65535>=k){if(c+2>=e)break;b[c++]=224|k>>12}else{if(2097151>=k){if(c+3>=e)break;b[c++]=240|k>>18}else{if(67108863>=k){if(c+4>=e)break;b[c++]=248|k>>24}else{if(c+5>=e)break;b[c++]=252|k>>30;b[c++]=128|k>>24&63}b[c++]=128|k>>18&63}b[c++]=128|
+k>>12&63}b[c++]=128|k>>6&63}b[c++]=128|k&63}}b[c]=0;return c-f}d.stringToUTF8Array=Ga;d.stringToUTF8=function(a,b,c){return Ga(a,K,b,c)};function Ha(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}return b}d.lengthBytesUTF8=Ha;d.UTF16ToString=function(a){for(var b=0,c="";;){var e=H[a+2*b>>1];if(0==e)return c;++b;c+=String.fromCharCode(e)}};
+d.stringToUTF16=function(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f<c;++f)H[b>>1]=a.charCodeAt(f),b+=2;H[b>>1]=0;return b-e};d.lengthBytesUTF16=function(a){return 2*a.length};d.UTF32ToString=function(a){for(var b=0,c="";;){var e=I[a+4*b>>2];if(0==e)return c;++b;65536<=e?(e=e-65536,c+=String.fromCharCode(55296|e>>10,56320|e&1023)):c+=String.fromCharCode(e)}};
+d.stringToUTF32=function(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f<a.length;++f){var h=a.charCodeAt(f);if(55296<=h&&57343>=h)var k=a.charCodeAt(++f),h=65536+((h&1023)<<10)|k&1023;I[b>>2]=h;b+=4;if(b+4>c)break}I[b>>2]=0;return b-e};d.lengthBytesUTF32=function(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&++c;b+=4}return b};
+function Ia(a){function b(c,e,f){e=e||Infinity;var h="",k=[],y;if("N"===a[l]){l++;"K"===a[l]&&l++;for(y=[];"E"!==a[l];)if("S"===a[l]){l++;var x=a.indexOf("_",l);y.push(q[a.substring(l,x)||0]||"?");l=x+1}else if("C"===a[l])y.push(y[y.length-1]),l+=2;else{var x=parseInt(a.substr(l)),r=x.toString().length;if(!x||!r){l--;break}var Ab=a.substr(l+r,x);y.push(Ab);q.push(Ab);l+=r+x}l++;y=y.join("::");e--;if(0===e)return c?[y]:y}else if(("K"===a[l]||v&&"L"===a[l])&&l++,x=parseInt(a.substr(l)))r=x.toString().length,
+y=a.substr(l+r,x),l+=r+x;v=!1;"I"===a[l]?(l++,x=b(!0),r=b(!0,1,!0),h+=r[0]+" "+y+"<"+x.join(", ")+">"):h=y;a:for(;l<a.length&&0<e--;)if(y=a[l++],y in p)k.push(p[y]);else switch(y){case "P":k.push(b(!0,1,!0)[0]+"*");break;case "R":k.push(b(!0,1,!0)[0]+"&");break;case "L":l++;x=a.indexOf("E",l)-l;k.push(a.substr(l,x));l+=x+2;break;case "A":x=parseInt(a.substr(l));l+=x.toString().length;if("_"!==a[l])throw"?";l++;k.push(b(!0,1,!0)[0]+" ["+x+"]");break;case "E":break a;default:h+="?"+y;break a}f||1!==
+k.length||"void"!==k[0]||(k=[]);return c?(h&&k.push(h+"?"),k):h+("("+k.join(", ")+")")}var c=!!d.___cxa_demangle;if(c)try{var e=J(a.length);sa(a.substr(1),e);var f=J(4),h=d.___cxa_demangle(e,0,0,f);if(0===Aa(f,"i32")&&h)return F(h)}catch(k){}finally{e&&Ja(e),f&&Ja(f),h&&Ja(h)}var l=3,p={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},
+q=[],v=!0,e=a;try{if("Object._main"==a||"_main"==a)return"main()";"number"===typeof a&&(a=F(a));if("_"!==a[0]||"_"!==a[1]||"Z"!==a[2])return a;switch(a[3]){case "n":return"operator new()";case "d":return"operator delete()"}e=b()}catch(r){e+="?"}0<=e.indexOf("?")&&!c&&u.q("warning: a problem occurred in builtin C++ name demangling; build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi demangling");return e}
+function Ka(){return La().replace(/__Z[\w\d_]+/g,function(a){var b=Ia(a);return a===b?a:a+" ["+b+"]"})}function La(){var a=Error();if(!a.stack){try{throw Error(0);}catch(b){a=b}if(!a.stack)return"(no stack trace available)"}return a.stack.toString()}d.stackTrace=function(){return Ka()};function Ma(a){0<a%4096&&(a+=4096-a%4096);return a}var buffer,G,K,H,Na,I,Oa,ya,za;
+function Pa(){d.HEAP8=G=new Int8Array(buffer);d.HEAP16=H=new Int16Array(buffer);d.HEAP32=I=new Int32Array(buffer);d.HEAPU8=K=new Uint8Array(buffer);d.HEAPU16=Na=new Uint16Array(buffer);d.HEAPU32=Oa=new Uint32Array(buffer);d.HEAPF32=ya=new Float32Array(buffer);d.HEAPF64=za=new Float64Array(buffer)}var Qa=0,w=0,Ca=!1,Ra=0,t=0,Sa=0,Ta=0,A=0;
+d.reallocBuffer||(d.reallocBuffer=function(a){var b;try{if(ArrayBuffer.g)b=ArrayBuffer.g(buffer,a);else{var c=G;b=new ArrayBuffer(a);(new Int8Array(b)).set(c)}}catch(e){return!1}return Ua(b)?b:!1});function ka(){var a=Math.pow(2,31);if(A>=a)return!1;for(;B<=A;)if(B<a/2)B=Ma(2*B);else{var b=B;B=Ma((3*B+a)/4);if(B<=b)return!1}B=Math.max(B,16777216);if(B>=a)return!1;a=d.reallocBuffer(B);if(!a)return!1;d.buffer=buffer=a;Pa();return!0}var Va;
+try{Va=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),Va(new ArrayBuffer(4))}catch(Wa){Va=function(a){return a.byteLength}}for(var Xa=d.TOTAL_STACK||8192,B=d.TOTAL_MEMORY||2097152,M=65536;M<B||M<2*Xa;)M=16777216>M?2*M:M+16777216;M=Math.max(M,16777216);M!==B&&(B=M);assert("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"JS engine does not provide full typed array support");
+d.buffer?(buffer=d.buffer,assert(buffer.byteLength===B,"provided buffer should be "+B+" bytes, but it is "+buffer.byteLength)):buffer=new ArrayBuffer(B);Pa();I[0]=255;assert(255===K[0]&&0===K[3],"Typed arrays 2 must be run on a little-endian system");d.HEAP=void 0;d.buffer=buffer;d.HEAP8=G;d.HEAP16=H;d.HEAP32=I;d.HEAPU8=K;d.HEAPU16=Na;d.HEAPU32=Oa;d.HEAPF32=ya;d.HEAPF64=za;
+function Ya(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ga;"number"===typeof c?void 0===b.D?u.n("v",c):u.n("vi",c,[b.D]):c(void 0===b.D?null:b.D)}}}var Za=[],$a=[],ab=[],N=[],bb=[],Da=!1;function cb(a){Za.unshift(a)}d.addOnPreRun=cb;d.addOnInit=function(a){$a.unshift(a)};function db(a){ab.unshift(a)}d.addOnPreMain=db;d.addOnExit=function(a){N.unshift(a)};function eb(a){bb.unshift(a)}d.addOnPostRun=eb;
+function fb(a,b,c){c=Array(0<c?c:Ha(a)+1);a=Ga(a,c,0,c.length);b&&(c.length=a);return c}d.intArrayFromString=fb;d.intArrayToString=function(a){for(var b=[],c=0;c<a.length;c++){var e=a[c];255<e&&(e&=255);b.push(String.fromCharCode(e))}return b.join("")};function sa(a,b,c){a=fb(a,c);for(c=0;c<a.length;)G[b+c>>0]=a[c],c+=1}d.writeStringToMemory=sa;function ra(a,b){for(var c=0;c<a.length;c++)G[b++>>0]=a[c]}d.writeArrayToMemory=ra;
+function Ea(a,b,c){for(var e=0;e<a.length;++e)G[b++>>0]=a.charCodeAt(e);c||(G[b>>0]=0)}d.writeAsciiToMemory=Ea;Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(a,b){var c=a&65535,e=b&65535;return c*e+((a>>>16)*e+c*(b>>>16)<<16)|0});Math.Ha=Math.imul;Math.clz32||(Math.clz32=function(a){a=a>>>0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.ya=Math.clz32;var ua=Math.abs,xa=Math.ceil,wa=Math.floor,va=Math.min,O=0,gb=null,hb=null;
+function ib(){O++;d.monitorRunDependencies&&d.monitorRunDependencies(O)}d.addRunDependency=ib;function jb(){O--;d.monitorRunDependencies&&d.monitorRunDependencies(O);if(0==O&&(null!==gb&&(clearInterval(gb),gb=null),hb)){var a=hb;hb=null;a()}}d.removeRunDependency=jb;d.preloadedImages={};d.preloadedAudios={};var P=null,kb=[function(a,b){throw"Array index "+a+" out of bounds: [0,"+b+")";}],Qa=8,w=Qa+1097840;$a.push();var P="cld-worker.js.mem",lb=u.K(Ba(12,"i8",2),8);assert(0==lb%8);d._i64Subtract=mb;
+function nb(){return!!nb.g}var ob=0,pb=[],Q={};function qb(a){if(!a||Q[a])return a;for(var b in Q)if(Q[b].U===a)return b;return a}
+function rb(){var a=ob;if(!a)return(R.setTempRet0(0),0)|0;var b=Q[a],c=b.type;if(!c)return(R.setTempRet0(0),a)|0;var e=Array.prototype.slice.call(arguments);d.___cxa_is_pointer_type(c);rb.buffer||(rb.buffer=J(4));I[rb.buffer>>2]=a;for(var a=rb.buffer,f=0;f<e.length;f++)if(e[f]&&d.___cxa_can_catch(e[f],c,a))return a=I[a>>2],b.U=a,(R.setTempRet0(e[f]),a)|0;a=I[a>>2];return(R.setTempRet0(c),a)|0}d._memset=sb;d._bitshift64Shl=tb;function ub(a,b){ub.g||(ub.g={});a in ub.g||(u.n("v",b),ub.g[a]=1)}
+var vb={};function wb(a){d.___errno_location&&(I[d.___errno_location()>>2]=a);return a}var xb=1;
+function yb(a,b){zb=a;Bb=b;if(!Cb)return 1;if(0==a)S=function(){setTimeout(Db,b)},Eb="timeout";else if(1==a)S=function(){Fb(Db)},Eb="rAF";else if(2==a){if(!window.setImmediate){var c=[];window.addEventListener("message",function(a){a.source===window&&"__emcc"===a.data&&(a.stopPropagation(),c.shift()())},!0);window.setImmediate=function(a){c.push(a);window.postMessage("__emcc","*")}}S=function(){window.setImmediate(Db)};Eb="immediate"}return 0}
+function Gb(a,b,c,e,f){d.noExitRuntime=!0;assert(!Cb,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Cb=a;Hb=e;var h=Ib;Db=function(){if(!C)if(0<Jb.length){var b=Date.now(),c=Jb.shift();c.ga(c.D);if(Kb){var f=Kb,q=0==f%1?f-1:Math.floor(f);Kb=c.za?q:(8*f+(q+.5))/9}console.log('main loop blocker "'+c.name+'" took '+(Date.now()-b)+" ms");Lb();h<Ib||setTimeout(Db,
+0)}else h<Ib||(Mb=Mb+1|0,1==zb&&1<Bb&&0!=Mb%Bb?S():("timeout"===Eb&&d.L&&(d.C("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Eb=""),Nb(function(){"undefined"!==typeof e?u.n("vi",a,[e]):u.n("v",a)}),h<Ib||("object"===typeof SDL&&SDL.audio&&SDL.audio.pa&&SDL.audio.pa(),S())))};f||(b&&0<b?yb(0,1E3/b):yb(1,1),S());
+if(c)throw"SimulateInfiniteLoop";}var S=null,Eb="",Ib=0,Cb=null,Hb=0,zb=0,Bb=0,Mb=0,Jb=[];function Lb(){if(d.setStatus){var a=d.statusMessage||"Please wait...",b=Kb,c=Ob.Ca;b?b<c?d.setStatus(a+" ("+(c-b)+"/"+c+")"):d.setStatus(a):d.setStatus("")}}function Nb(a){if(!(C||d.preMainLoop&&!1===d.preMainLoop())){try{a()}catch(b){if(b instanceof n)return;b&&"object"===typeof b&&b.stack&&d.C("exception thrown: "+[b,b.stack]);throw b;}d.postMainLoop&&d.postMainLoop()}}var Ob={},Db,Kb,Pb=!1,Qb=!1,Rb=[];
+function Sb(){function a(){Qb=document.pointerLockElement===c||document.mozPointerLockElement===c||document.webkitPointerLockElement===c||document.msPointerLockElement===c}d.preloadPlugins||(d.preloadPlugins=[]);if(!Tb){Tb=!0;try{Ub=!0}catch(b){Ub=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Vb="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Ub?null:console.log("warning: no BlobBuilder");Wb="undefined"!=
+typeof window?window.URL?window.URL:window.webkitURL:void 0;d.$||"undefined"!==typeof Wb||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),d.$=!0);d.preloadPlugins.push({canHandle:function(a){return!d.$&&/\.(jpg|jpeg|png|bmp)$/i.test(a)},handle:function(a,b,c,k){var l=null;if(Ub)try{l=new Blob([a],{type:Xb(b)}),l.size!==a.length&&(l=new Blob([(new Uint8Array(a)).buffer],{type:Xb(b)}))}catch(p){u.q("Blob constructor present but fails: "+
+p+"; falling back to blob builder")}l||(l=new Vb,l.append((new Uint8Array(a)).buffer),l=l.getBlob());var q=Wb.createObjectURL(l),v=new Image;v.onload=function(){assert(v.complete,"Image "+b+" could not be decoded");var k=document.createElement("canvas");k.width=v.width;k.height=v.height;k.getContext("2d").drawImage(v,0,0);d.preloadedImages[b]=k;Wb.revokeObjectURL(q);c&&c(a)};v.onerror=function(){console.log("Image "+q+" could not be decoded");k&&k()};v.src=q}});d.preloadPlugins.push({canHandle:function(a){return!d.La&&
+a.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(a,b,c,k){function l(k){q||(q=!0,d.preloadedAudios[b]=k,c&&c(a))}function p(){q||(q=!0,d.preloadedAudios[b]=new Audio,k&&k())}var q=!1;if(Ub){try{var v=new Blob([a],{type:Xb(b)})}catch(r){return p()}var v=Wb.createObjectURL(v),z=new Audio;z.addEventListener("canplaythrough",function(){l(z)},!1);z.onerror=function(){if(!q){console.log("warning: browser could not fully decode audio "+b+", trying slower base64 approach");for(var c="",h=0,k=0,
+p=0;p<a.length;p++)for(h=h<<8|a[p],k+=8;6<=k;)var r=h>>k-6&63,k=k-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[r];2==k?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(h&3)<<4],c+="=="):4==k&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(h&15)<<2],c+="=");z.src="data:audio/x-"+b.substr(-3)+";base64,"+c;l(z)}};z.src=v;Yb(function(){l(z)})}else return p()}});var c=d.canvas;c&&(c.O=c.requestPointerLock||c.mozRequestPointerLock||
+c.webkitRequestPointerLock||c.msRequestPointerLock||function(){},c.X=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},c.X=c.X.bind(document),document.addEventListener("pointerlockchange",a,!1),document.addEventListener("mozpointerlockchange",a,!1),document.addEventListener("webkitpointerlockchange",a,!1),document.addEventListener("mspointerlockchange",a,!1),d.elementPointerLock&&c.addEventListener("click",function(a){!Qb&&
+c.O&&(c.O(),a.preventDefault())},!1))}}function Zb(a,b,c,e){if(b&&d.L&&a==d.canvas)return d.L;var f,h;if(b){h={antialias:!1,alpha:!1};if(e)for(var k in e)h[k]=e[k];if(h=GL.createContext(a,h))f=GL.getContext(h).ta;a.style.backgroundColor="black"}else f=a.getContext("2d");if(!f)return null;c&&(b||assert("undefined"===typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),d.L=f,b&&GL.Ka(h),d.Na=b,Rb.forEach(function(a){a()}),Sb());return f}
+var $b=!1,ac=void 0,bc=void 0;
+function cc(a,b,c){function e(){Pb=!1;var a=f.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===a?(f.V=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},
+f.V=f.V.bind(document),ac&&f.O(),Pb=!0,bc&&dc()):(a.parentNode.insertBefore(f,a),a.parentNode.removeChild(a),bc&&ec());if(d.onFullScreen)d.onFullScreen(Pb);fc(f)}ac=a;bc=b;gc=c;"undefined"===typeof ac&&(ac=!0);"undefined"===typeof bc&&(bc=!1);"undefined"===typeof gc&&(gc=null);var f=d.canvas;$b||($b=!0,document.addEventListener("fullscreenchange",e,!1),document.addEventListener("mozfullscreenchange",e,!1),document.addEventListener("webkitfullscreenchange",e,!1),document.addEventListener("MSFullscreenChange",
+e,!1));var h=document.createElement("div");f.parentNode.insertBefore(h,f);h.appendChild(f);h.g=h.requestFullScreen||h.mozRequestFullScreen||h.msRequestFullscreen||(h.webkitRequestFullScreen?function(){h.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null);c?h.g({Oa:c}):h.g()}var hc=0;function ic(a){var b=Date.now();if(0===hc)hc=b+1E3/60;else for(;b+2>=hc;)hc+=1E3/60;b=Math.max(hc-b,0);setTimeout(a,b)}
+function Fb(a){"undefined"===typeof window?ic(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||ic),window.requestAnimationFrame(a))}function Yb(a){d.noExitRuntime=!0;setTimeout(function(){C||a()},1E4)}
+function Xb(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}function jc(a,b,c){var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=function(){200==e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)}
+function kc(a){var b=P,c=lc;jc(b,function(a){assert(a,'Loading data file "'+b+'" failed (no arrayBuffer).');c(new Uint8Array(a));jb()},function(){if(a)a();else throw'Loading data file "'+b+'" failed.';});ib()}var mc=[];function nc(){var a=d.canvas;mc.forEach(function(b){b(a.width,a.height)})}function dc(){if("undefined"!=typeof SDL){var a=Oa[SDL.screen+0*u.k>>2];I[SDL.screen+0*u.k>>2]=a|8388608}nc()}
+function ec(){if("undefined"!=typeof SDL){var a=Oa[SDL.screen+0*u.k>>2];I[SDL.screen+0*u.k>>2]=a&-8388609}nc()}
+function fc(a,b,c){b&&c?(a.sa=b,a.oa=c):(b=a.sa,c=a.oa);var e=b,f=c;d.forcedAspectRatio&&0<d.forcedAspectRatio&&(e/f<d.forcedAspectRatio?e=Math.round(f*d.forcedAspectRatio):f=Math.round(e/d.forcedAspectRatio));if((document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===
+a.parentNode&&"undefined"!=typeof screen)var h=Math.min(screen.width/e,screen.height/f),e=Math.round(e*h),f=Math.round(f*h);bc?(a.width!=e&&(a.width=e),a.height!=f&&(a.height=f),"undefined"!=typeof a.style&&(a.style.removeProperty("width"),a.style.removeProperty("height"))):(a.width!=b&&(a.width=b),a.height!=c&&(a.height=c),"undefined"!=typeof a.style&&(e!=b||f!=c?(a.style.setProperty("width",e+"px","important"),a.style.setProperty("height",f+"px","important")):(a.style.removeProperty("width"),a.style.removeProperty("height"))))}
+var Tb,Ub,Vb,Wb,gc;function J(a){return u.p(a+8)+8&4294967288}d._malloc=J;d._i64Add=oc;d._bitshift64Lshr=pc;function qc(a,b){N.push(function(){u.n("vi",a,[b])});qc.level=N.length}d._memcpy=rc;var sc=0;function tc(){sc+=4;return I[sc-4>>2]}var uc={};function L(a){L.g||(A=Ma(A),L.g=!0,assert(u.p),L.u=u.p,u.p=function(){D("cannot dynamically allocate, sbrk now has control")});var b=A;return 0==a||L.u(a)?b:4294967295}d._memmove=vc;
+function wc(a,b){sc=b;try{tc();var c=tc(),e=tc(),f=0;wc.buffer||(wc.buffer=[]);for(var h=wc.buffer,k=0;k<e;k++){for(var l=I[c+8*k>>2],p=I[c+(8*k+4)>>2],q=0;q<p;q++){var v=K[l+q];0===v||10===v?(d.print(Fa(h,0)),h.length=0):h.push(v)}f+=p}return f}catch(r){return"undefined"!==typeof FS&&r instanceof FS.S||D(r),-r.W}}d.requestFullScreen=function(a,b,c){cc(a,b,c)};d.requestAnimationFrame=function(a){Fb(a)};d.setCanvasSize=function(a,b,c){fc(d.canvas,a,b);c||nc()};d.pauseMainLoop=function(){S=null;Ib++};
+d.resumeMainLoop=function(){Ib++;var a=zb,b=Bb,c=Cb;Cb=null;Gb(c,0,!1,Hb,!0);yb(a,b);S()};d.getUserMedia=function(){window.g||(window.g=navigator.getUserMedia||navigator.mozGetUserMedia);window.g(void 0)};d.createContext=function(a,b,c,e){return Zb(a,b,c,e)};Ra=t=u.K(w);Ca=!0;Sa=Ra+Xa;Ta=A=u.K(Sa);assert(Ta<B,"TOTAL_MEMORY not big enough for stack");
+var xc=Ba([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",3);d.ea={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity,byteLength:Va};
+d.fa={abort:D,assert:assert,invoke_iiii:function(a,b,c,e){try{return d.dynCall_iiii(a,b,c,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;R.setThrew(1,0)}},invoke_viiiii:function(a,b,c,e,f,h){try{d.dynCall_viiiii(a,b,c,e,f,h)}catch(k){if("number"!==typeof k&&"longjmp"!==k)throw k;R.setThrew(1,0)}},invoke_vi:function(a,b){try{d.dynCall_vi(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;R.setThrew(1,0)}},invoke_ii:function(a,b){try{return d.dynCall_ii(a,b)}catch(c){if("number"!==
+typeof c&&"longjmp"!==c)throw c;R.setThrew(1,0)}},invoke_v:function(a){try{d.dynCall_v(a)}catch(b){if("number"!==typeof b&&"longjmp"!==b)throw b;R.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,e,f,h,k){try{d.dynCall_viiiiii(a,b,c,e,f,h,k)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;R.setThrew(1,0)}},invoke_viiii:function(a,b,c,e,f){try{d.dynCall_viiii(a,b,c,e,f)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;R.setThrew(1,0)}},_pthread_cleanup_pop:function(){assert(qc.level==N.length,
+"cannot pop if something else added meanwhile!");N.pop();qc.level=N.length},_abort:function(){d.abort()},___setErrNo:wb,___gxx_personality_v0:function(){},___assert_fail:function(a,b,c,e){C=!0;throw"Assertion failed: "+F(a)+", at: "+[b?F(b):"unknown filename",c,e?F(e):"unknown function"]+" at "+Ka();},___cxa_allocate_exception:function(a){return J(a)},__ZSt18uncaught_exceptionv:nb,_emscripten_set_main_loop_timing:yb,_sbrk:L,___cxa_begin_catch:function(a){nb.g--;pb.push(a);var b=qb(a);b&&Q[b].aa++;
+return a},_emscripten_memcpy_big:function(a,b,c){K.set(K.subarray(b,b+c),a);return a},___resumeException:function(a){ob||(ob=a);var b=qb(a);b&&(Q[b].aa=0);throw a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.";},___cxa_find_matching_catch:rb,_sysconf:function(a){switch(a){case 30:return 4096;case 85:return M/4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;
+case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;
+case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"===typeof navigator?navigator.hardwareConcurrency||1:1}wb(22);return-1},
+_pthread_getspecific:function(a){return vb[a]||0},_pthread_self:function(){return 0},_pthread_once:ub,_pthread_key_create:function(a){if(0==a)return 22;I[a>>2]=xb;vb[xb]=0;xb++;return 0},_emscripten_set_main_loop:Gb,_emscripten_asm_const_iii:function(a,b,c){return kb[a](b,c)},_pthread_setspecific:function(a,b){if(!(a in vb))return 22;vb[a]=b;return 0},___cxa_throw:function(a,b,c){Q[a]={e:a,U:a,type:b,Aa:c,aa:0};ob=a;"uncaught_exception"in nb?nb.g++:nb.g=1;throw a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.";
+},___syscall6:function(a,b){sc=b;try{var c=uc.ka();FS.close(c);return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.S||D(e),-e.W}},_pthread_cleanup_push:qc,_time:function(a){var b=Date.now()/1E3|0;a&&(I[a>>2]=b);return b},___syscall140:function(a,b){sc=b;try{var c=uc.ka(),e=tc(),f=tc(),h=tc(),k=tc();assert(0===e);FS.Ia(c,f,k);I[h>>2]=c.position;c.na&&0===f&&0===k&&(c.na=null);return 0}catch(l){return"undefined"!==typeof FS&&l instanceof FS.S||D(l),-l.W}},___syscall146:wc,STACKTOP:t,STACK_MAX:Sa,
+tempDoublePtr:lb,ABORT:C,cttz_i8:xc};// EMSCRIPTEN_START_ASM
+var R=(function(global,env,buffer) {
+"almost asm";var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0.0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_iiii;var na=env.invoke_viiiii;var oa=env.invoke_vi;var pa=env.invoke_ii;var qa=env.invoke_v;var ra=env.invoke_viiiiii;var sa=env.invoke_viiii;var ta=env._pthread_cleanup_pop;var ua=env._abort;var va=env.___setErrNo;var wa=env.___gxx_personality_v0;var xa=env.___assert_fail;var ya=env.___cxa_allocate_exception;var za=env.__ZSt18uncaught_exceptionv;var Aa=env._emscripten_set_main_loop_timing;var Ba=env._sbrk;var Ca=env.___cxa_begin_catch;var Da=env._emscripten_memcpy_big;var Ea=env.___resumeException;var Fa=env.___cxa_find_matching_catch;var Ga=env._sysconf;var Ha=env._pthread_getspecific;var Ia=env._pthread_self;var Ja=env._pthread_once;var Ka=env._pthread_key_create;var La=env._emscripten_set_main_loop;var Ma=env._emscripten_asm_const_iii;var Na=env._pthread_setspecific;var Oa=env.___cxa_throw;var Pa=env.___syscall6;var Qa=env._pthread_cleanup_push;var Ra=env._time;var Sa=env.___syscall140;var Ta=env.___syscall146;var Ua=0.0;function Va(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
 // EMSCRIPTEN_START_FUNCS
-function Fc(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+7&-8;return b|0}function Gc(){return i|0}function Hc(a){a=a|0;i=a}function Ic(a,b){a=a|0;b=b|0;if((w|0)==0){w=a;x=b}}function Jc(b){b=b|0;a[k]=a[b];a[k+1|0]=a[b+1|0];a[k+2|0]=a[b+2|0];a[k+3|0]=a[b+3|0]}function Kc(b){b=b|0;a[k]=a[b];a[k+1|0]=a[b+1|0];a[k+2|0]=a[b+2|0];a[k+3|0]=a[b+3|0];a[k+4|0]=a[b+4|0];a[k+5|0]=a[b+5|0];a[k+6|0]=a[b+6|0];a[k+7|0]=a[b+7|0]}function Lc(a){a=a|0;J=a}function Mc(a){a=a|0;K=a}function Nc(a){a=a|0;L=a}function Oc(a){a=a|0;M=a}function Pc(a){a=a|0;N=a}function Qc(a){a=a|0;O=a}function Rc(a){a=a|0;P=a}function Sc(a){a=a|0;Q=a}function Tc(a){a=a|0;R=a}function Uc(a){a=a|0;S=a}function Vc(){c[6514]=q+8;c[6516]=q+8;c[6518]=s+8;c[6522]=s+8;c[6526]=s+8;c[6530]=s+8;c[6534]=s+8;c[6538]=q+8;c[6572]=s+8;c[6576]=s+8;c[6640]=s+8;c[6644]=s+8;c[6664]=q+8;c[6666]=s+8;c[6702]=s+8;c[6706]=s+8;c[6742]=s+8;c[6746]=s+8;c[6766]=q+8;c[6768]=q+8;c[6770]=s+8;c[6774]=s+8;c[6778]=s+8;c[6782]=q+8;c[6784]=q+8;c[6786]=q+8;c[6788]=q+8;c[6790]=q+8;c[6792]=q+8;c[6794]=q+8;c[6820]=s+8;c[6824]=q+8;c[6826]=s+8;c[6830]=s+8;c[6834]=s+8;c[6838]=q+8;c[6840]=q+8;c[6842]=q+8;c[6844]=q+8;c[6878]=q+8;c[6880]=q+8;c[6882]=q+8;c[6884]=s+8;c[6888]=s+8;c[6892]=s+8;c[6896]=s+8;c[6900]=s+8;c[6904]=s+8}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0;c=Xc(a&255)|0;d=a>>>8;if((d&255|0)!=0){Hg(b,d&255,(Yc(c,0)|0)&255)}d=a>>>16;if((d&255|0)!=0){Hg(b,d&255,(Yc(c,1)|0)&255)}a=a>>>24;if((a|0)==0){return}Hg(b,a&255,(Yc(c,2)|0)&255);return}function Xc(a){a=a|0;return 1075136+(a<<3)|0}function Yc(b,c){b=b|0;c=c|0;return a[b+(c+5)|0]|0}function Zc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f|0;g=f+8|0;jd(e,d,b,h,g);e=c[h>>2]|0;b=c[g>>2]|0;g=c[a+(e<<4)>>2]|0;if(((g^b)&d|0)==0){h=g;i=f;return h|0}g=c[a+(e<<4)+4>>2]|0;if(((g^b)&d|0)==0){h=g;i=f;return h|0}g=c[a+(e<<4)+8>>2]|0;if(((g^b)&d|0)==0){h=g;i=f;return h|0}a=c[a+(e<<4)+12>>2]|0;h=((a^b)&d|0)==0?a:0;i=f;return h|0}function _c(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+16|0;k=j|0;l=j+8|0;o=b+e|0;n=b+f|0;f=h+8|0;m=c[h+4>>2]|0;if((a[o]|0)==32){o=b+(e+1)|0}e=c[f>>2]|0;do{if(!(o>>>0<n>>>0)){break}c[k>>2]=o;p=d[1077056+(d[o]|0)|0]|0;c[l>>2]=p;o=o+p|0;p=Og(g,k,l)|0;if(!(p<<24>>24==0)){c[h+32+(e<<3)>>2]=o-b;c[h+32+(e<<3)+4>>2]=p&255;e=e+1|0}}while((e|0)<(m|0));c[f>>2]=e;p=o-b|0;c[h+32+(e<<3)>>2]=p;c[h+32+(c[f>>2]<<3)+4>>2]=0;i=j;return p|0}function $c(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=a+e|0;i=h+12|0;m=c[h+4>>2]|0;j=h+16|0;l=m-1|0;n=g+16|0;e=a;o=f+16|0;p=f|0;q=f+12|0;f=g|0;g=g+12|0;b=a+b|0;s=c[i>>2]|0;a=c[j>>2]|0;while(1){if(!(b>>>0<k>>>0)){k=9;break}t=d[1077056+(d[b]|0)|0]|0;r=b+t|0;t=(d[1077056+(d[r]|0)|0]|0)+t|0;do{if((t|0)>5){t=kd(b,t)|0;u=Zc(c[p>>2]|0,c[q>>2]|0,c[o>>2]|0,t)|0;if((u|0)!=0){u=u&~c[o>>2];c[h+8040+(s<<3)>>2]=b-e;c[h+8040+(s<<3)+4>>2]=u;s=s+1|0}t=Zc(c[f>>2]|0,c[g>>2]|0,c[n>>2]|0,t)|0;if((t|0)==0){break}u=t&~c[n>>2];c[h+16048+(a<<3)>>2]=b-e;c[h+16048+(a<<3)+4>>2]=u;a=a+1|0}}while(0);if((s|0)<(m|0)&(a|0)<(l|0)){b=r}else{b=r;k=9;break}}if((k|0)==9){c[i>>2]=s;c[j>>2]=a;u=b-e|0;c[h+8040+(s<<3)>>2]=u;c[h+8040+(s<<3)+4>>2]=0;c[h+16048+(c[j>>2]<<3)>>2]=u;c[h+16048+(c[j>>2]<<3)+4>>2]=0;return}}function ad(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+8|0;o=k|0;l=o;A=b+e|0;n=b+f|0;f=j+8|0;w=c[f>>2]|0;m=c[j+4>>2]|0;c[o>>2]=0;c[o+4>>2]=0;if((a[A]|0)==32){A=b+(e+1)|0}p=l+4|0;e=h+12|0;q=g|0;t=g+12|0;r=g+16|0;u=h|0;s=h+16|0;y=0;while(1){if(!(A>>>0<n>>>0)){l=14;break}D=d[152632+(d[A]|0)|0]|0;D=(d[152632+(d[A+D|0]|0)|0]|0)+D|0;x=A+D|0;D=(d[152632+(d[x]|0)|0]|0)+D|0;D=(d[152632+(d[A+D|0]|0)|0]|0)+D|0;v=A+D|0;z=A;A=nd(A,D)|0;do{if((A|0)!=(c[o>>2]|0)){if((A|0)==(c[p>>2]|0)){break}D=Zc(c[q>>2]|0,c[t>>2]|0,c[r>>2]|0,A)|0;if((D|0)==0){B=c[e>>2]|0;if((B|0)==0){break}D=Zc(c[u>>2]|0,B,c[s>>2]|0,A)|0;if((D|0)==0){break}else{C=-2147483648;B=h}}else{C=0;B=g}c[l+(y<<2)>>2]=A;D=D&~c[B+16>>2];c[j+32+(w<<3)>>2]=z-b;c[j+32+(w<<3)+4>>2]=D|C;w=w+1|0;y=y&1^1}}while(0);v=(a[v]|0)==32?v:x;if(v>>>0<n>>>0){A=v+(d[76248+(d[v]|0)|0]|0)|0}else{A=n}if((w|0)>=(m|0)){l=14;break}}if((l|0)==14){c[f>>2]=w;D=A-b|0;c[j+32+(w<<3)>>2]=D;c[j+32+(c[f>>2]<<3)+4>>2]=0;i=k;return D|0}return 0}function bd(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;j=i;i=i+16|0;l=j|0;A=b+d|0;o=b+(e+1)|0;e=h+12|0;w=c[e>>2]|0;m=c[h+4>>2]|0;k=h+16|0;x=c[k>>2]|0;n=m-1|0;Xq(l|0,0,16)|0;if((a[A]|0)==32){A=b+(d+1)|0}d=l|0;p=l+8|0;q=f+16|0;s=g+16|0;r=g|0;g=g+12|0;t=f|0;f=f+12|0;u=A;z=0;B=0;y=A;v=A;C=A;while(1){if(!(u>>>0<o>>>0)){l=18;break}D=a[u]|0;if(D<<24>>24==32){A=v;C=pd(v,C-A|0)|0;B=J;do{if(!((C|0)==(c[d>>2]|0)&(B|0)==(c[d+4>>2]|0))){if((C|0)==(c[p>>2]|0)&(B|0)==(c[p+4>>2]|0)){break}E=l+(z<<3)|0;c[E>>2]=C;c[E+4>>2]=B;z=1-z|0;E=l+(z<<3)|0;D=c[E>>2]|0;E=c[E+4>>2]|0;do{if(!((D|0)==0&(E|0)==0|(D|0)==(C|0)&(E|0)==(B|0))){D=qd(D,E,C,B)|0;D=cd(c[r>>2]|0,c[g>>2]|0,c[s>>2]|0,D,J)|0;if((D|0)==0){break}E=D&~c[s>>2];c[h+16048+(x<<3)>>2]=y-b;c[h+16048+(x<<3)+4>>2]=E;x=x+1|0}}while(0);y=cd(c[r>>2]|0,c[g>>2]|0,c[s>>2]|0,C,B)|0;if((y|0)!=0){E=y&~c[s>>2];c[h+16048+(x<<3)>>2]=A-b;c[h+16048+(x<<3)+4>>2]=E;x=x+1|0}y=cd(c[t>>2]|0,c[f>>2]|0,c[q>>2]|0,C,B)|0;if((y|0)==0){break}E=y&~c[q>>2];c[h+8040+(w<<3)>>2]=A-b;c[h+8040+(w<<3)+4>>2]=E;w=w+1|0}}while(0);C=u+1|0;A=0;y=v;v=C;D=a[u]|0}else{A=B+1|0}D=u+(dd(D)|0)|0;if((w|0)<(m|0)&(x|0)<(n|0)){u=D;B=A;C=(A|0)<9?D:C}else{u=D;l=18;break}}if((l|0)==18){c[e>>2]=w;c[k>>2]=x;E=u-b|0;c[h+8040+(w<<3)>>2]=E;c[h+8040+(w<<3)+4>>2]=0;c[h+16048+(c[k>>2]<<3)>>2]=E;c[h+16048+(c[k>>2]<<3)+4>>2]=0;i=j;return}}function cd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;g=i;i=i+16|0;j=g|0;h=g+8|0;id(e,f,d,b,j,h);f=c[j>>2]|0;b=c[h>>2]|0;e=c[a+(f<<4)>>2]|0;if(((e^b)&d|0)==0){j=e;i=g;return j|0}e=c[a+(f<<4)+4>>2]|0;if(((e^b)&d|0)==0){j=e;i=g;return j|0}e=c[a+(f<<4)+8>>2]|0;if(((e^b)&d|0)==0){j=e;i=g;return j|0}a=c[a+(f<<4)+12>>2]|0;j=((a^b)&d|0)==0?a:0;i=g;return j|0}function dd(a){a=a|0;return d[1077056+(a&255)|0]|0|0}function ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)<8){d=c*12|0}else{d=100}c=(c*5|0)>>3;if((c|0)<3){c=3}else{c=(c|0)>16?16:c}a=a-b|0;if((a|0)>=(c|0)){c=d;return c|0}if((a|0)<1){c=0;return c|0}c=fd(d,(a*100|0|0)/(c|0)|0)|0;return c|0}function fd(a,b){a=a|0;b=b|0;return((a|0)<(b|0)?a:b)|0}function gd(a,b){a=a|0;b=b|0;var c=0.0;if((b|0)==0){a=100;return a|0}if((a|0)==0){a=0;return a|0}if((b|0)>(a|0)){c=+(b|0)/+(a|0)}else{c=+(a|0)/+(b|0)}if(!(c>1.5)){a=100;return a|0}if(c>4.0){a=0;return a|0}a=~~((4.0-c)*100.0/2.5);return a|0}function hd(a,b){a=a|0;b=b|0;a=((Kf(a)|0)&255)<<8;return a|(d[545064+b|0]|0)|0}function id(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;h=ar(a>>>12|b<<20,b>>>12|0<<20,a,b)|0;c[f>>2]=e-1&h;c[g>>2]=(a>>>4|b<<28)&d;return}function jd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[e>>2]=d-1&(a>>>12)+a;c[f>>2]=b&a;return}function kd(a,b){a=a|0;b=b|0;var d=0;if((b|0)==0){d=0;return d|0}d=ld(a)|0;if((b|0)<5){d=c[1093696+((b&3)<<2)>>2]&d;d=d>>>3^d;return d|0}else{a=ld(a+4|0)|0;b=c[1093696+((b&3)<<2)>>2]&a;d=(b<<18^b)+(d>>>3^d)|0;return d|0}return 0}function ld(a){a=a|0;return d[a]|d[a+1|0]<<8|d[a+2|0]<<16|d[a+3|0]<<24|0}function md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((b|0)<5){f=ld(a)|0;f=c[1093696+((b&3)<<2)>>2]&f;f=f^d^f>>>3;return f|0}e=ld(a)|0;e=e>>>3^e;f=ld(a+4|0)|0;if((b|0)<9){f=c[1093696+((b&3)<<2)>>2]&f;f=(f<<4^f)+(e^d)|0;return f|0}else{a=ld(a+8|0)|0;a=c[1093696+((b&3)<<2)>>2]&a;f=(e^d)+(f<<4^f)+(a<<2^a)|0;return f|0}return 0}function nd(b,c){b=b|0;c=c|0;var d=0;if((c|0)==0){d=0;return d|0}d=(a[b-1|0]|0)==32?17476:0;d=md(b,c,(a[b+c|0]|0)==32?d|1145307136:d)|0;return d|0}function od(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;g=(a[b-1|0]|0)==32;e=g?e|17476:e;f=g?f|0:f;g=(a[b+d|0]|0)==32;switch(d-1>>2|0){case 1:{i=ld(b)|0;h=0;k=(ld(b+4|0)|0)&c[1093696+((d&3)<<2)>>2];j=0;b=ar(k,j,i,h)|0;d=J;h=ar((k<<4|0>>>28)^k,(j<<4|k>>>28)^j,(i>>>3|h<<29)^i,(h>>>3|0<<29)^h)|0;i=J;break};case 3:{i=ld(b)|0;h=0;j=ld(b+4|0)|0;k=0;l=ar(j,k,i,h)|0;m=J;h=ar((j<<4|0>>>28)^j,(k<<4|j>>>28)^k,(i>>>3|h<<29)^i,(h>>>3|0<<29)^h)|0;i=J;k=ld(b+8|0)|0;j=0;m=ar(l,m,k,j)|0;l=J;j=ar(h,i,(k<<2|0>>>30)^k,(j<<2|k>>>30)^j)|0;k=J;i=(ld(b+12|0)|0)&c[1093696+((d&3)<<2)>>2];h=0;b=ar(m,l,i,h)|0;d=J;h=ar(j,k,(i>>>8|h<<24)^i,(h>>>8|0<<24)^h)|0;i=J;break};case 0:{h=(ld(b)|0)&c[1093696+((d&3)<<2)>>2];m=0;d=m;b=h;i=(m>>>3|0<<29)^m;h=(h>>>3|m<<29)^h;break};case 4:{m=ld(b)|0;l=0;h=ld(b+4|0)|0;i=0;j=ar(h,i,m,l)|0;k=J;l=ar((h<<4|0>>>28)^h,(i<<4|h>>>28)^i,(m>>>3|l<<29)^m,(l>>>3|0<<29)^l)|0;m=J;i=ld(b+8|0)|0;h=0;k=ar(j,k,i,h)|0;j=J;h=ar(l,m,(i<<2|0>>>30)^i,(h<<2|i>>>30)^h)|0;i=J;m=ld(b+12|0)|0;l=0;j=ar(k,j,m,l)|0;k=J;l=ar(h,i,(m>>>8|l<<24)^m,(l>>>8|0<<24)^l)|0;m=J;i=(ld(b+16|0)|0)&c[1093696+((d&3)<<2)>>2];h=0;b=ar(j,k,i,h)|0;d=J;h=ar(l,m,(i>>>4|h<<28)^i,(h>>>4|0<<28)^h)|0;i=J;break};case 2:{m=ld(b)|0;l=0;h=ld(b+4|0)|0;i=0;j=ar(h,i,m,l)|0;k=J;l=ar((h<<4|0>>>28)^h,(i<<4|h>>>28)^i,(m>>>3|l<<29)^m,(l>>>3|0<<29)^l)|0;m=J;i=(ld(b+8|0)|0)&c[1093696+((d&3)<<2)>>2];h=0;b=ar(j,k,i,h)|0;d=J;h=ar(l,m,(i<<2|0>>>30)^i,(h<<2|i>>>30)^h)|0;i=J;break};default:{i=ld(b)|0;h=0;l=ld(b+4|0)|0;m=0;k=ar(l,m,i,h)|0;j=J;h=ar((l<<4|0>>>28)^l,(m<<4|l>>>28)^m,(i>>>3|h<<29)^i,(h>>>3|0<<29)^h)|0;i=J;m=ld(b+8|0)|0;l=0;j=ar(k,j,m,l)|0;k=J;l=ar(h,i,(m<<2|0>>>30)^m,(l<<2|m>>>30)^l)|0;m=J;i=ld(b+12|0)|0;h=0;k=ar(j,k,i,h)|0;j=J;h=ar(l,m,(i>>>8|h<<24)^i,(h>>>8|0<<24)^h)|0;i=J;m=ld(b+16|0)|0;l=0;j=ar(k,j,m,l)|0;k=J;l=ar(h,i,(m>>>4|l<<28)^m,(l>>>4|0<<28)^l)|0;m=J;i=(ld(b+20|0)|0)&c[1093696+((d&3)<<2)>>2];h=0;b=ar(j,k,i,h)|0;d=J;h=ar(l,m,(i>>>6|h<<26)^i,(h>>>6|0<<26)^h)|0;i=J}}l=ar(b>>>17|d<<15,d>>>17|0<<15,b,d)|0;m=J;m=ar(l>>>9|m<<23,m>>>9|0<<23,l,m)|0;m=ar(0,m&255,h^(g?e|1145307136:e),i^(g?f|0:f))|0;return(J=J,m)|0}function pd(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((c|0)==0){e=0;f=0;return(J=e,f)|0}e=(a[b-1|0]|0)==32;d=e?17476:0;e=e?0:0;f=(a[b+c|0]|0)==32;f=od(b,c,f?d|1145307136:d,f?e|0:e)|0;e=J;return(J=e,f)|0}function qd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=ar(a>>>13|b<<19|(0<<19|0>>>13),b>>>13|0<<19|(a<<19|0>>>13),c,d)|0;return(J=J,b)|0}function rd(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+80|0;e=d+64|0;c[e>>2]=0;c[e+4>>2]=1108992;c[e+8>>2]=23;c[e+12>>2]=26;b=we(a,b,e,0,d|0,d+16|0,d+32|0,d+56|0)|0;i=d;return((b|0)==26?0:b)|0}function sd(a,b){a=a|0;b=b|0;return(b<<10)+a&65535|0}function td(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(a<<16>>16==0){return}h=ud(a)|0;g=d|0;f=c[g>>2]|0;i=0;while(1){if((i|0)>=(f|0)){break}j=d+4+(i<<1)|0;k=b[j>>1]|0;if((ud(k)|0)==(h|0)){e=5;break}else{i=i+1|0}}if((e|0)==5){k=wd(k)|0;xd(vd(k,wd(a)|0)|0,j);return}if((f|0)>13){return}c[g>>2]=f+1;b[d+4+(f<<1)>>1]=a;return}function ud(a){a=a|0;return a&1023|0}function vd(a,b){a=a|0;b=b|0;return((a|0)>=(b|0)?a:b)|0}function wd(a){a=a|0;return a<<16>>16>>10|0}function xd(a,c){a=a|0;c=c|0;b[c>>1]=b[c>>1]&1023|a<<10;return}function yd(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(a<<16>>16==0){return}h=ud(a)|0;g=d|0;f=c[g>>2]|0;i=0;while(1){if((i|0)>=(f|0)){break}j=d+4+(i<<1)|0;k=b[j>>1]|0;if((ud(k)|0)==(h|0)){e=5;break}else{i=i+1|0}}if((e|0)==5){xd((wd(k)|0)+2|0,j);return}if((f|0)>13){return}c[g>>2]=f+1;b[d+4+(f<<1)>>1]=a;return}function zd(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=a|0;if((c[f>>2]|0)>4){d=0}else{return}do{e=b[a+4+(d<<1)>>1]|0;g=wd(e)|0;k=(g|0)>-1?g:-g|0;a:do{if((d|0)>0){j=d;while(1){i=j-1|0;g=b[a+4+(i<<1)>>1]|0;h=wd(g)|0;if((((h|0)>-1?h:-h|0)|0)>=(k|0)){i=j;break a}b[a+4+(j<<1)>>1]=g;if((i|0)>0){j=i}else{break}}}else{i=d}}while(0);b[a+4+(i<<1)>>1]=e;d=d+1|0;}while((d|0)<(c[f>>2]|0));c[f>>2]=4;return}function Ad(b){b=b|0;var c=0,d=0,e=0;c=ci(b)|0;if((c|0)>0){e=0;d=0}else{e=0;return e|0}do{e=((a[ki(b,d)|0]|0)==44)+e|0;d=d+1|0;}while((d|0)<(c|0));return e|0}function Bd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=0;a:while(1){while(1){if((h|0)>=(d|0)){f=0;b=6;break a}e=h+d>>1;f=b+(e*12|0)|0;g=Wq(c[f>>2]|0,a)|0;if((g|0)<0){h=e+1|0}else{break}}if((g|0)>0){d=e}else{b=6;break}}if((b|0)==6){return f|0}return 0}function Cd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=0;b=181;a:while(1){while(1){if((e|0)>=(b|0)){f=0;a=6;break a}d=e+b>>1;f=1070032+(d<<3)|0;g=Wq(c[f>>2]|0,a)|0;if((g|0)<0){e=d+1|0}else{break}}if((g|0)>0){b=d}else{a=6;break}}if((a|0)==6){return f|0}return 0}function Dd(a){a=a|0;return db(a|0,45)|0}function Ed(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0;Yh(b);if((e|0)>0){f=0;g=1}else{return}do{h=d[c+f|0]|0;i=(d[1071480+h|0]|0)>>>((g*3|0)>>>0);g=i&3;do{if((i&4|0)!=0){if((g|0)==0){gi(b,1,a[1074744+h|0]|0);break}else{gi(b,1,44);break}}}while(0);f=f+1|0;}while((f|0)<(e|0));if((g|0)!=0){return}gi(b,1,44);return}function Fd(c,d){c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+24|0;e=g|0;if(ji(c)|0){i=g;return}if((Ad(c)|0)>4){i=g;return}j=ci(c)|0;if((j|0)<=0){i=g;return}f=e|0;h=0;do{k=si(c,h)|0;j=(k|0)==-1?j:k;k=j-h|0;do{if((k|0)<17){Yq(f|0,ki(c,h)|0,k)|0;a[e+k|0]=0;h=Bd(f,155976,213)|0;if((h|0)!=0){td(b[h+8>>1]|0,d);td(b[h+10>>1]|0,d);break}h=Dd(f)|0;if((h|0)!=0){a[h]=0}if((Zq(f|0)|0)>=4){break}h=Bd(f,152888,257)|0;if((h|0)==0){break}td(b[h+8>>1]|0,d);td(b[h+10>>1]|0,d)}}while(0);h=j+1|0;j=ci(c)|0;}while((h|0)<(j|0));i=g;return}function Gd(a,b){a=a|0;b=b|0;var c=0,d=0;c=i;i=i+16|0;d=c|0;Ed(d,a,Zq(a|0)|0);Fd(d,b);di(d);i=c;return}function Hd(c,d){c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+8|0;f=e|0;g=Zq(c|0)|0;if((g|0)>3){i=e;return}h=f|0;_q(h|0,c|0,4)|0;a[f+3|0]=0;if((g|0)>0){c=0;do{j=f+c|0;a[j]=a[j]|32;c=c+1|0;}while((c|0)<(g|0))}f=Cd(h)|0;if((f|0)==0){i=e;return}yd(b[f+4>>1]|0,d);yd(b[f+6>>1]|0,d);i=e;return}function Id(a,b){a=a|0;b=b|0;switch(a|0){case 14:case 45:case 46:case 48:case 62:{yd(sd(16,4)|0,b);return};case 13:case 20:case 47:{yd(sd(69,4)|0,b);return};case 16:case 44:{yd(sd(9,4)|0,b);return};case 10:case 11:case 21:case 12:{yd(sd(8,4)|0,b);return};default:{return}}}function Jd(a,b){a=a|0;b=b|0;yd(sd(a,8)|0,b);return}function Kd(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+64|0;Yh(a);f=d|0;if((c[f>>2]|0)<=0){i=e;return}g=e|0;h=0;do{k=b[d+4+(h<<1)>>1]|0;l=Hf(ud(k)|0)|0;k=wd(k)|0;ib(g|0,19712,(j=i,i=i+16|0,c[j>>2]=l,c[j+8>>2]=k,j)|0)|0;i=j;mi(a,g);h=h+1|0;}while((h|0)<(c[f>>2]|0));i=e;return}function Ld(a,b){a=a|0;b=b|0;return Md(a,b)|0}function Md(a,b){a=a|0;b=b|0;var d=0;d=Nd(c[b>>2]|0,c[a>>2]|0)|0;return(d?b:a)|0}function Nd(a,b){a=a|0;b=b|0;return a>>>0<b>>>0|0}function Od(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;c=Pd(c,32)|0;g=0;while(1){if((g|0)>=(c|0)){f=0;break}if((a[b+~g|0]|0)==32){d=g;e=6;break}else{g=g+1|0}}if((e|0)==6){return d|0}while(1){if((f|0)>=(c|0)){d=0;e=6;break}if((a[b+(-f|0)|0]&-64)<<24>>24==-128){f=f+1|0}else{d=f;e=6;break}}if((e|0)==6){return d|0}return 0}function Pd(a,b){a=a|0;b=b|0;return((a|0)<(b|0)?a:b)|0}function Qd(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;c=Pd(c,32)|0;g=0;while(1){if((g|0)>=(c|0)){f=0;break}h=g+1|0;if((a[b+g|0]|0)==32){d=h;e=6;break}else{g=h}}if((e|0)==6){return d|0}while(1){if((f|0)>=(c|0)){d=0;e=6;break}if((a[b+f|0]&-64)<<24>>24==-128){f=f+1|0}else{d=f;e=6;break}}if((e|0)==6){return d|0}return 0}function Rd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=b+e|0;i=c[f>>2]|0;if((e|0)>0){e=0}else{j=i;k=0;c[f>>2]=j;return k|0}do{k=a[b]|0;j=k&255;do{if((k&255)>>>0<192>>>0){k=1}else{if((j&224|0)==192){k=2;j=d[b+1|0]|0|j<<8;break}if((j&240|0)==224){k=3;j=(d[b+1|0]|0)<<8|j<<16|(d[b+2|0]|0);break}else{k=4;j=(d[b+1|0]|0)<<16|j<<24|(d[b+2|0]|0)<<8|(d[b+3|0]|0);break}}}while(0);b=b+k|0;m=g+(i<<2)|0;l=c[m>>2]|0;c[m>>2]=j;e=((j|0)==(l|0)?k:0)+e|0;i=(j^i<<4)&4095;}while(b>>>0<h>>>0);c[f>>2]=i;return e|0}function Sd(b,c){b=b|0;c=c|0;var d=0,e=0;c=c&-4;if((c|0)>0){e=0;d=0}else{e=0;return e|0}do{e=((a[b+d|0]|0)==32)+e+((a[b+(d|1)|0]|0)==32)+((a[b+(d|2)|0]|0)==32)+((a[b+(d|3)|0]|0)==32)|0;d=d+4|0;}while((d|0)<(c|0));return e|0}function Td(b,e,f,g){b=b|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,r=0,s=0,t=0;h=b+e|0;j=c[f>>2]|0;if((e|0)>0){i=b;l=b;o=0;m=0;n=b;while(1){k=a[n]|0;p=k&255;r=i+1|0;a[i]=k;do{if(k<<24>>24==32){l=(o<<1|0)>(m|0)?l:r;k=1;i=l;o=0;m=0}else{if((k&255)>>>0<192>>>0){k=1;i=r;break}if((p&224|0)==192){s=n+1|0;a[r]=a[s]|0;k=2;p=d[s]|0|p<<8;i=i+2|0;break}q=n+1|0;a[r]=a[q]|0;s=n+2|0;r=i+3|0;a[i+2|0]=a[s]|0;if((p&240|0)==224){k=3;p=(d[q]|0)<<8|p<<16|(d[s]|0);i=r;break}else{t=n+3|0;a[r]=a[t]|0;k=4;p=(d[q]|0)<<16|p<<24|(d[s]|0)<<8|(d[t]|0);i=i+4|0;break}}}while(0);n=n+k|0;t=g+(j<<2)|0;q=c[t>>2]|0;c[t>>2]=p;j=(p^j<<4)&4095;if(n>>>0<h>>>0){o=((p|0)==(q|0)?k:0)+o|0;m=k+m|0}else{break}}}else{i=b}c[f>>2]=j;f=i-b|0;if((f|0)<(e-3|0)){a[i]=32;a[i+1|0]=32;a[i+2|0]=32;a[i+3|0]=0;return f|0}if((f|0)>=(e|0)){return f|0}a[i]=32;return f|0}function Ud(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+8|0;l=f|0;h=b+d|0;c[l>>2]=0;e=Fq(16384)|0;j=e;Xq(e|0,0,16384)|0;if((d|0)>0){k=h;g=b;p=0;m=b;o=b;do{n=Pd(48,k-o|0)|0;while(1){if((a[o+n|0]&-64)<<24>>24==-128){n=n+1|0}else{break}}q=Sd(o,n)|0;do{if((q|0)<12&(Rd(o,n,l,j)|0)<19){if(p){q=Qd(o,n)|0;o=o+q|0;n=n-q|0}if((n|0)<=0){p=0;break}$q(m|0,o|0,n|0)|0;m=m+n|0;p=0}else{if(p){p=1;break}p=Od(m,m-g|0)|0;q=m+(-p|0)|0;if((q|0)!=(b|0)){m=q;p=1;break}a[b]=32;m=m+(1-p)|0;p=1}}while(0);o=o+n|0;}while(o>>>0<h>>>0)}else{m=b;g=b}g=m-g|0;do{if((g|0)<(d-3|0)){a[m]=32;a[m+1|0]=32;a[m+2|0]=32;a[m+3|0]=0}else{if((g|0)>=(d|0)){break}a[m]=32}}while(0);if((e|0)==0){i=f;return g|0}Hq(e);i=f;return g|0}function Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+8|0;f=e|0;if((b|0)<256){b=0;i=e;return b|0}c[f>>2]=0;b=Fq(16384)|0;Xq(b|0,0,16384)|0;if((Sd(a,256)|0)<64){if((Rd(a,256,f,b)|0)<171){f=0}else{d=4}}else{d=4}if((d|0)==4){f=1}if((b|0)==0){b=f;i=e;return b|0}Hq(b);b=f;i=e;return b|0}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0;e=i;f=c[t>>2]|0;l=0;while(1){m=Xd(a,l)|0;j=m&65535;do{if(!(m<<16>>16==-1)){h=Yd(a,l)|0;if((h|0)==0){break}k=(Zd(a,l)|0)/(h|0)|0;if(!((k|0)<41&(m&65535)>>>0<165>>>0)){break}n=c[545080+(j<<2)>>2]|0;if((n|0)==26){break}r=Lg(a,n&65535)|0;if((r|0)<0){break}o=Yd(a,r)|0;if((o|0)==0){break}m=(Zd(a,r)|0)/(o|0)|0;if((m|0)<(k|0)){g=10}else{if((m|0)==(k|0)&(j|0)<(n|0)){g=10}else{p=r;r=l;q=0}}if((g|0)==10){g=0;p=l;q=1}s=o+h|0;u=fa(_d(_d(k,m)|0,41)|0,s)|0;$d(a,r);ae(a,r,0);be(a,r,0);ae(a,p,s);be(a,p,u);if((s|0)>9&b^1|d){break}if(q){r=Hf(n)|0;s=Hf(j)|0;Zb(f|0,16816,(u=i,i=i+32|0,c[u>>2]=r,c[u+8>>2]=m,c[u+16>>2]=o,c[u+24>>2]=s,u)|0)|0;i=u;break}else{r=Hf(j)|0;s=Hf(n)|0;Zb(f|0,16816,(u=i,i=i+32|0,c[u>>2]=r,c[u+8>>2]=k,c[u+16>>2]=h,c[u+24>>2]=s,u)|0)|0;i=u;break}}}while(0);l=l+1|0;if((l|0)>=24){g=0;break}}do{u=Xd(a,g)|0;j=u&65535;do{if(!(u<<16>>16==-1)){k=Yd(a,g)|0;if((k|0)==0){break}h=(Zd(a,g)|0)/(k|0)|0;if((h|0)>40){break}$d(a,g);ae(a,g,0);be(a,g,0);if((k|0)>9&b^1|d){break}s=Hf(j)|0;Zb(f|0,12304,(u=i,i=i+24|0,c[u>>2]=s,c[u+8>>2]=h,c[u+16>>2]=k,u)|0)|0;i=u}}while(0);g=g+1|0;}while((g|0)<24);i=e;return}function Xd(a,c){a=a|0;c=c|0;return b[a+568+(c<<1)>>1]|0}function Yd(a,b){a=a|0;b=b|0;return c[a+616+(b<<2)>>2]|0}function Zd(a,b){a=a|0;b=b|0;return c[a+808+(b<<2)>>2]|0}function _d(a,b){a=a|0;b=b|0;return((a|0)>(b|0)?a:b)|0}function $d(a,c){a=a|0;c=c|0;b[a+568+(c<<1)>>1]=-1;return}function ae(a,b,d){a=a|0;b=b|0;d=d|0;c[a+712+(b<<2)>>2]=d;return}function be(a,b,d){a=a|0;b=b|0;d=d|0;c[a+808+(b<<2)>>2]=d;return}function ce(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Yd(c,b)|0;de(c,b,(Yd(c,a)|0)+d|0);d=ee(c,b)|0;ae(c,b,(ee(c,a)|0)+d|0);d=Zd(c,b)|0;be(c,b,(Zd(c,a)|0)+d|0);$d(c,a);ae(c,a,0);be(c,a,0);return}function de(a,b,d){a=a|0;b=b|0;d=d|0;c[a+616+(b<<2)>>2]=d;return}function ee(a,b){a=a|0;b=b|0;return c[a+712+(b<<2)>>2]|0}function fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;f=b^1|d;b=c[t>>2]|0;d=0;do{o=(Xd(a,d)|0)&65535;h=If(o)|0;a:do{if((h|0)!=0){g=d;do{g=g+1|0;if((g|0)>=24){break a}n=(Xd(a,g)|0)&65535;}while((If(n)|0)!=(h|0));k=Yd(a,d)|0;k=(k|0)<(Yd(a,g)|0);h=k?d:g;if(!f){l=Yd(a,h)|0;m=Zd(a,h)|0;j=Hf(k?o:n)|0;n=Hf(k?n:o)|0;Zb(b|0,10072,(o=i,i=i+32|0,c[o>>2]=j,c[o+8>>2]=(m|0)/(((l|0)!=0?l:1)|0)|0,c[o+16>>2]=l,c[o+24>>2]=n,o)|0)|0;i=o}ce(h,k?g:d,a)}}while(0);d=d+1|0;}while((d|0)<24);i=e;return}function ge(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;Ka(17600,34,1,b|0)|0;h=c[d>>2]|0;if((h|0)!=26){h=Gf(h)|0;l=(a[1108984]|0)!=0?1108992:2072;k=c[e>>2]|0;Zb(b|0,17224,(j=i,i=i+24|0,c[j>>2]=h,c[j+8>>2]=l,c[j+16>>2]=k,j)|0)|0;i=j}h=c[d+4>>2]|0;if((h|0)!=26){j=Gf(h)|0;k=c[e+4>>2]|0;Zb(b|0,16888,(l=i,i=i+16|0,c[l>>2]=j,c[l+8>>2]=k,l)|0)|0;i=l}d=c[d+8>>2]|0;if((d|0)==26){k=c[f>>2]|0;Zb(b|0,16520,(l=i,i=i+8|0,c[l>>2]=k,l)|0)|0;i=l;Ka(6416,5,1,b|0)|0;i=g;return}j=Gf(d)|0;l=c[e+8>>2]|0;Zb(b|0,16888,(k=i,i=i+16|0,c[k>>2]=j,c[k+8>>2]=l,k)|0)|0;i=k;k=c[f>>2]|0;Zb(b|0,16520,(l=i,i=i+8|0,c[l>>2]=k,l)|0)|0;i=l;Ka(6416,5,1,b|0)|0;i=g;return}function he(a,b){a=a|0;b=b|0;var c=0.0;if((a|0)<1){c=0.0;return+c}c=+((b<<10|0)/(a|0)|0|0);return+c}function ie(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c[e>>2]=0;p=e+4|0;c[p>>2]=0;n=e+8|0;c[n>>2]=0;c[f>>2]=26;q=f+4|0;c[q>>2]=26;o=f+8|0;c[o>>2]=26;c[g>>2]=0;l=g+4|0;c[l>>2]=0;k=g+8|0;c[k>>2]=0;Xq(i|0,0,24)|0;c[j>>2]=d;a[1108984]=0;m=Xd(b,0)|0;if((m<<16>>16|0)==(-1|0)|(m<<16>>16|0)==26){f=0}else{c[f>>2]=m&65535;f=Yd(b,0)|0;r=Zd(b,0)|0;c[e>>2]=(r|0)/(((f|0)!=0?f:1)|0)|0;h[i>>3]=+he(f,ee(b,0)|0)}e=Xd(b,1)|0;if((e<<16>>16|0)==(-1|0)|(e<<16>>16|0)==26){p=0}else{c[q>>2]=e&65535;q=Yd(b,1)|0;r=Zd(b,1)|0;c[p>>2]=(r|0)/(((q|0)!=0?q:1)|0)|0;h[i+8>>3]=+he(q,ee(b,1)|0);p=q}q=Xd(b,2)|0;if((q<<16>>16|0)==(-1|0)|(q<<16>>16|0)==26){o=0}else{c[o>>2]=q&65535;o=Yd(b,2)|0;r=Zd(b,2)|0;c[n>>2]=(r|0)/(((o|0)!=0?o:1)|0)|0;h[i+16>>3]=+he(o,ee(b,2)|0)}i=p+f|0;n=o+i|0;if((n|0)>(d|0)){c[j>>2]=n;d=n}e=_d(1,d)|0;f=(f*100|0|0)/(e|0)|0;c[g>>2]=f;r=(i*100|0|0)/(e|0)|0;i=((n*100|0|0)/(e|0)|0)-r|0;c[k>>2]=i;n=r-f|0;c[l>>2]=n;if((n|0)<(i|0)){n=n+1|0;c[l>>2]=n;c[k>>2]=i-1}if((f|0)<(n|0)){c[g>>2]=f+1;c[l>>2]=n-1}c[j>>2]=d;if((m<<16>>16|0)==(-1|0)|(m<<16>>16|0)==26){b=0}else{j=Yd(b,0)|0;r=Zd(b,0)|0;b=((r|0)/(((j|0)!=0?j:1)|0)|0|0)>40|0}a[1108984]=b;if((100-(c[g>>2]|0)-(c[l>>2]|0)-(c[k>>2]|0)|0)<=20){return}a[1108984]=0;return}function je(a){a=a|0;if((a|0)==4|(a|0)==7|(a|0)==5|(a|0)==14){a=1}else{a=0}return a|0}function ke(a){a=a|0;switch(a|0){case 0:case 4:case 7:case 5:case 14:{a=1;break};default:{a=0}}return a|0}function le(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0;j=i;i=i+16|0;m=j|0;s=m;c[s>>2]=c[5086];c[s+4>>2]=c[5087];c[s+8>>2]=c[5088];s=c[e>>2]|0;r=c[d>>2]|0;c[f>>2]=r;a[1108984]=(s|0)>1|0;o=m|0;n=s*100|0;v=0;p=0;l=3;q=0;while(1){do{if((c[d+(v<<2)>>2]|0)==25){p=(c[e+(v<<2)>>2]|0)+p|0;u=v+1|0;if((u|0)<3){r=u;while(1){c[m+(v<<2)>>2]=c[m+(r<<2)>>2];q=r+1|0;if((q|0)<3){v=r;r=q}else{break}}q=c[o>>2]|0}l=l-1|0;s=(n|0)/(101-p|0)|0;r=c[d+(q<<2)>>2]|0;c[f>>2]=r;if((c[e+(q<<2)>>2]|0)>=2){break}a[1108984]=0}else{u=v+1|0}}while(0);if((u|0)<3){v=u}else{break}}v=c[m+4>>2]|0;m=c[e+(v<<2)>>2]|0;b=fa(m,b)|0;n=c[d+(q<<2)>>2]|0;o=(n|0)==0;d=c[d+(v<<2)>>2]|0;do{if(o){if((d|0)==0|(d|0)==26){k=15;break}if(!((m|0)>16&(b|0)>1499)){k=15;break}s=(m*100|0|0)/(101-p-(c[e+(q<<2)>>2]|0)|0)|0;c[f>>2]=d;if((m|0)>=2){r=d;break}a[1108984]=0;r=d}else{k=15}}while(0);a:do{if((k|0)==15){do{if(je(n)|0){if(ke(d)|0|(d|0)==26){break}if(!((m|0)>19&(b|0)>1499)){break}s=(m*100|0|0)/(101-p-(c[e+(q<<2)>>2]|0)|0)|0;c[f>>2]=d;if((m|0)>=2){r=d;break a}a[1108984]=0;r=d;break a}}while(0);if(!((d|0)!=0|o)){s=((c[e+(q<<2)>>2]|0)*100|0|0)/(101-p-m|0)|0;break}if(!(je(d)|0)){break}if(ke(n)|0){break}s=((c[e+(q<<2)>>2]|0)*100|0|0)/(101-p-m|0)|0}}while(0);if((s|0)<26){if(!(g^1|h)){v=c[t>>2]|0;u=Hf(r)|0;Zb(v|0,15848,(v=i,i=i+16|0,c[v>>2]=u,c[v+8>>2]=s,v)|0)|0;i=v}c[f>>2]=26;a[1108984]=0;r=26}if((s|0)<51){a[1108984]=0}if((100-(c[e>>2]|0)-(c[e+4>>2]|0)-(c[e+8>>2]|0)|0)>20){a[1108984]=0}if((l|0)!=0){i=j;return}if(!(g^1|h)){v=c[t>>2]|0;u=Hf(r)|0;Zb(v|0,15432,(v=i,i=i+8|0,c[v>>2]=u,v)|0)|0;i=v}c[f>>2]=26;a[1108984]=0;i=j;return}function me(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if(Mf(a)|0){e=d+16|0;f=c[e>>2]|0;c[d+20+(f<<2)>>2]=b;c[e>>2]=ne(f+1|0)|0}if(!(Nf(a)|0)){return}f=d+36|0;e=c[f>>2]|0;c[d+40+(e<<2)>>2]=b;c[f>>2]=ne(e+1|0)|0;return}function ne(a){a=a|0;return a&3|0}function oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=hd(b,1)|0;do{if(Mf(a)|0){if(!(Mf(b)|0)){break}f=d+56|0;g=c[f>>2]|0;c[d+60+(g<<2)>>2]=e;c[f>>2]=ne(g+1|0)|0}}while(0);if(!(Nf(a)|0)){return}if(!(Nf(b)|0)){return}g=d+76|0;f=c[g>>2]|0;c[d+80+(f<<2)>>2]=e;c[g>>2]=ne(f+1|0)|0;return}function pe(a,b){a=a|0;b=b|0;var c=0,d=0;if((a|0)==69){oe(69,16,b);return}else if((a|0)==16){oe(16,69,b);return}else{c=If(a)|0;if((c|0)==0){return}else{d=0}do{if(!((c|0)!=(If(d)|0)|(d|0)==(a|0))){oe(a,d,b)}d=d+1|0;}while((d|0)<512);return}}function qe(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+72|0;f=h|0;j=h+32|0;g=h+48|0;k=h+64|0;re(f);do{if((d|0)!=0){l=c[d>>2]|0;do{if((l|0)!=0){if((a[l]|0)==0){break}Gd(l,f)}}while(0);l=c[d+4>>2]|0;do{if((l|0)!=0){if((a[l]|0)==0){break}Hd(l,f)}}while(0);l=c[d+8>>2]|0;if((l|0)!=23){Id(l,f)}d=c[d+12>>2]|0;if((d|0)==26){break}Jd(d,f)}}while(0);zd(f);if((a[e+5|0]|0)!=0){Kd(j,f);if(!(ji(j)|0)){n=c[e>>2]|0;m=ri(j)|0;Zb(n|0,13536,(n=i,i=i+8|0,c[n>>2]=m,n)|0)|0;i=n}di(j)}j=se(c[f>>2]|0)|0;d=(j|0)>0;if(d){m=0}else{c[k>>2]=0;te(g,k);ve(g);i=h;return}do{n=b[f+4+(m<<1)>>1]|0;l=ud(n)|0;n=wd(n)|0;if((n|0)>0){me(l,hd(l,n)|0,e)}m=m+1|0;}while((m|0)<(j|0));c[k>>2]=0;te(g,k);if(!d){ve(g);i=h;return}k=c[g>>2]|0;l=0;do{m=ud(b[f+4+(l<<1)>>1]|0)|0;n=ue(k,If(m)|0)|0;c[n>>2]=(c[n>>2]|0)+1;if((m|0)==16){n=ue(k,10)|0;c[n>>2]=(c[n>>2]|0)+1}else if((m|0)==69){n=ue(k,10)|0;c[n>>2]=(c[n>>2]|0)+1}l=l+1|0;}while((l|0)<(j|0));if(!d){ve(g);i=h;return}d=g|0;m=0;do{n=b[f+4+(m<<1)>>1]|0;k=ud(n)|0;do{if((wd(n)|0)>0){l=If(k)|0;do{if((l|0)>0){if((c[(ue(c[d>>2]|0,l)|0)>>2]|0)!=1){break}pe(k,e)}}while(0);if(!((k|0)==69|(k|0)==16)){break}if((c[(ue(c[d>>2]|0,10)|0)>>2]|0)!=1){break}pe(k,e)}}while(0);m=m+1|0;}while((m|0)<(j|0));ve(g);i=h;return}function re(a){a=a|0;c[a>>2]=0;return}function se(a){a=a|0;return a|0}function te(a,b){a=a|0;b=b|0;Be(a,b);return}function ue(a,b){a=a|0;b=b|0;return a+(b<<2)|0}function ve(a){a=a|0;Ze(a);return}function we(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=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;l=i;i=i+3416|0;x=l|0;z=l+16|0;y=l+32|0;q=l+48|0;v=l+952|0;s=l+1104|0;m=l+3216|0;u=l+3360|0;w=l+3384|0;p=l+3392|0;n=l+3408|0;c[g>>2]=26;c[g+4>>2]=26;c[g+8>>2]=26;c[h>>2]=0;r=h+4|0;c[r>>2]=0;c[h+8>>2]=0;Xq(j|0,0,24)|0;c[k>>2]=0;a[1108984]=0;if((f&8192|0)!=0){ai(x,b,d);o=c[t>>2]|0;if((f&512|0)==0){_e(y);G=ri(y)|0;Zb(o|0,12952,(H=i,i=i+16|0,c[H>>2]=d,c[H+8>>2]=G,H)|0)|0;i=H;di(y)}else{$e(z);G=ri(z)|0;Zb(o|0,13208,(H=i,i=i+16|0,c[H>>2]=d,c[H+8>>2]=G,H)|0)|0;i=H;di(z)}di(x)}if((d|0)==0){H=26;i=l;return H|0}Jg(q);o=c[t>>2]|0;c[v>>2]=o;a[v+4|0]=f>>>8&1;z=f>>>9;a[v+5|0]=z&1;x=v+6|0;a[x]=f>>>10&1;a[v+7|0]=f>>>11&1;c[v+12>>2]=26;B=v+8|0;c[B>>2]=0;c[v+140>>2]=1074704;C=v+144|0;c[C>>2]=0;xe(v);y=f>>>12;qe(e,v);Eg(s|0);Eg(s+528|0);Eg(s+1056|0);Eg(s+1584|0);qf(m,b,d,1);c[C>>2]=m;C=u|0;E=u+4|0;G=u+12|0;Xq(u|0,0,16)|0;c[u+16>>2]=26;c[w>>2]=0;A=Fq(16384)|0;D=A;F=ye(f)|0;if(F){Xq(A|0,0,16384)|0;s=0}else{s=0}a:while(1){if(!(Cf(m,u)|0)){u=34;break}I=ze(f)|0;H=c[E>>2]|0;do{if(I){H=Ud(c[C>>2]|0,H)|0;c[E>>2]=H}else{if((H|0)<=2048){break}if(Ae(f)|0){break}if(Vd(c[C>>2]|0,H)|0){u=25;break a}}}while(0);if(F){c[E>>2]=Td(c[C>>2]|0,H,w,D)|0}c[B>>2]=c[G>>2];Dg(u,v,q);s=(c[E>>2]|0)+s|0}b:do{if((u|0)==25){if((z&1|0)!=0){Zb(o|0,12648,(I=i,i=i+8|0,c[I>>2]=s,I)|0)|0;i=I}if((A|0)!=0){Hq(A)}n=we(b,d,e,f|2,g,h,j,k)|0}else if((u|0)==34){if((A|0)!=0){Hq(A)}u=(z&1|0)!=0;v=y&1;if(u&(v|0)==0){if((a[x]|0)==0){Ka(6416,5,1,o|0)|0}Ng(q,o);v=0}v=(v|0)!=0;fe(q,u,v);Mg(q);w=p|0;ie(q,s,w,g,h,j,k);do{if(!(Ae(f)|0|(s|0)<257)){if((a[1108984]|0)!=0){x=c[h>>2]|0;if((x|0)>69){break}if(((c[r>>2]|0)+x|0)>92){break}}if(!(v|u^1)){ge(o,g,h,k)}if((s|0)<256){if(u){Zb(o|0,10976,(I=i,i=i+8|0,c[I>>2]=s,I)|0)|0;i=I}n=we(b,d,e,f|93,g,h,j,k)|0;break b}else{if(u){Zb(o|0,10728,(I=i,i=i+8|0,c[I>>2]=s,I)|0)|0;i=I}n=we(b,d,e,f|13,g,h,j,k)|0;break b}}}while(0);Wd(q,u,v);Mg(q);ie(q,s,w,g,h,j,k);le(s,g,h,n,u,v);e=u^1;if(!(v|e)){d=0;do{j=c[g+(d<<2)>>2]|0;if((j|0)!=26){F=Hf(j)|0;G=c[p+(d<<2)>>2]|0;H=c[h+(d<<2)>>2]|0;Zb(o|0,12360,(I=i,i=i+24|0,c[I>>2]=F,c[I+8>>2]=G,c[I+16>>2]=H,I)|0)|0;i=I}d=d+1|0;}while((d|0)<3);Zb(o|0,12056,(p=i,i=i+8|0,c[p>>2]=s,p)|0)|0;i=p;p=Gf(c[n>>2]|0)|0;H=(a[1108984]|0)!=0?32:42;Zb(o|0,11880,(I=i,i=i+16|0,c[I>>2]=p,c[I+8>>2]=H,I)|0)|0;i=I;Ka(11640,9,1,o|0)|0}if(e|v^1){n=c[n>>2]|0;break}Ka(11432,37,1,o|0)|0;p=0;do{e=c[g+(p<<2)>>2]|0;if((e|0)!=26){G=Hf(e)|0;H=c[h+(p<<2)>>2]|0;Zb(o|0,11240,(I=i,i=i+16|0,c[I>>2]=G,c[I+8>>2]=H,I)|0)|0;i=I}p=p+1|0;}while((p|0)<3);n=c[n>>2]|0;h=Gf(n)|0;H=(a[1108984]|0)!=0?32:42;Zb(o|0,11880,(I=i,i=i+16|0,c[I>>2]=h,c[I+8>>2]=H,I)|0)|0;i=I;Ka(6416,5,1,o|0)|0}}while(0);rf(m);I=n;i=l;return I|0}function xe(a){a=a|0;Xq(a+16|0,0,120)|0;return}function ye(a){a=a|0;return(a&4|0)!=0|0}function ze(a){a=a|0;return(a&2|0)!=0|0}function Ae(a){a=a|0;return(a&1|0)!=0|0}function Be(a,b){a=a|0;b=b|0;Ce(a|0);De(a);Ee(a,b);return}function Ce(a){a=a|0;var b=0;b=i;i=i+24|0;Ge(b|0);c[a>>2]=0;Ge(b+8|0);c[a+4>>2]=0;Ge(b+16|0);Ve(a+8|0);i=b;return}function De(a){a=a|0;var b=0;if((Pe()|0)>>>0<11>>>0){Gn()}else{b=Qe()|0;c[a+4>>2]=b;c[a>>2]=b;c[(Re(a|0)|0)>>2]=b+44;return}}function Ee(a,b){a=a|0;b=b|0;var d=0,e=0;a=a+4|0;d=11;e=c[a>>2]|0;do{Oe(Le(e)|0,b);e=(c[a>>2]|0)+4|0;c[a>>2]=e;d=d-1|0;}while((d|0)!=0);return}function Fe(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+8|0;d=a|0;e=c[d>>2]|0;Ge(b|0);if((e|0)==0){i=b;return}He(a);Ie(c[d>>2]|0);i=b;return}function Ge(a){a=a|0;Me(a);return}function He(a){a=a|0;Ke(a,c[a>>2]|0);return}function Ie(a){a=a|0;Je(a);return}function Je(a){a=a|0;Gq(a);return}function Ke(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if((a|0)==(b|0)){return}c[d>>2]=a+(~((a-4+(-b|0)|0)>>>2)<<2);return}function Le(a){a=a|0;return a|0}function Me(a){a=a|0;Ne(a);return}function Ne(a){a=a|0;c[a>>2]=0;return}function Oe(a,b){a=a|0;b=b|0;if((a|0)==0){return}c[a>>2]=c[b>>2];return}function Pe(){var a=0,b=0,d=0;b=i;i=i+16|0;d=b|0;a=b+8|0;c[d>>2]=1073741823;c[a>>2]=2147483647;a=c[(Ld(d,a)|0)>>2]|0;i=b;return a|0}function Qe(){return Ue()|0}function Re(a){a=a|0;return Se(a+8|0)|0}function Se(a){a=a|0;return Te(a|0)|0}function Te(a){a=a|0;return a|0}function Ue(){return Eq(44)|0}function Ve(a){a=a|0;We(a);return}function We(a){a=a|0;var b=0,d=0;b=i;i=i+8|0;d=b|0;c[d>>2]=0;Xe(a|0,c[(Ye(d)|0)>>2]|0);i=b;return}function Xe(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+8|0;e=d|0;c[e>>2]=b;c[a>>2]=c[(Ye(e)|0)>>2];i=d;return}function Ye(a){a=a|0;return a|0}function Ze(a){a=a|0;Fe(a|0);return}function _e(a){a=a|0;$h(a);return}function $e(a){a=a|0;$h(a);return}function af(a){a=a|0;var b=0;do{if(a>>>0<256>>>0){a=c[74920+(a<<2)>>2]|0}else{if(a>>>0<55296>>>0){break}b=a&-16;if((b|0)==64976|(b|0)==64992){a=65533;break}if((a&65534|0)==65534){a=65533;break}a=(a-57344|0)>>>0<1056768>>>0?a:65533}}while(0);return a|0}function bf(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0;if((c|0)>0){e=0;f=0;g=0}else{h=0;h=1112944+h|0;a[h]=0;return}while(1){h=a[b+e|0]|0;if(!((h&-64)<<24>>24==-128)){if(((d[27672+((h&255)>>>4)|0]|0)+e|0)>(c|0)|(g|0)>24|(f|0)>7){c=13;break}f=f+1|0}switch(h<<24>>24){case 60:{h=1112944+g|0;B=997485606;a[h]=B;B=B>>8;a[h+1|0]=B;B=B>>8;a[h+2|0]=B;B=B>>8;a[h+3|0]=B;g=g+4|0;break};case 62:{h=1112944+g|0;B=997484326;a[h]=B;B=B>>8;a[h+1|0]=B;B=B>>8;a[h+2|0]=B;B=B>>8;a[h+3|0]=B;g=g+4|0;break};case 38:{h=1112944+g|0;a[h]=a[13472]|0;a[h+1|0]=a[13473]|0;a[h+2|0]=a[13474]|0;a[h+3|0]=a[13475]|0;a[h+4|0]=a[13476]|0;g=g+5|0;break};case 34:{h=1112944+g|0;a[h]=a[8720]|0;a[h+1|0]=a[8721]|0;a[h+2|0]=a[8722]|0;a[h+3|0]=a[8723]|0;a[h+4|0]=a[8724]|0;a[h+5|0]=a[8725]|0;g=g+6|0;break};case 39:{h=1112944+g|0;a[h]=a[10928]|0;a[h+1|0]=a[10929]|0;a[h+2|0]=a[10930]|0;a[h+3|0]=a[10931]|0;a[h+4|0]=a[10932]|0;a[h+5|0]=a[10933]|0;g=g+6|0;break};default:{a[1112944+g|0]=h;g=g+1|0}}e=e+1|0;if((e|0)>=(c|0)){c=13;break}}if((c|0)==13){h=1112944+g|0;a[h]=0;return}}function cf(b,c){b=b|0;c=c|0;if(c>>>0<128>>>0){a[b]=c;c=1;return c|0}if(c>>>0<2048>>>0){a[b]=c>>>6|192;a[b+1|0]=c&63|128;c=2;return c|0}c=c>>>0>1114111>>>0?65533:c;if(c>>>0<65536>>>0){a[b]=c>>>12|224;a[b+1|0]=c>>>6&63|128;a[b+2|0]=c&63|128;c=3;return c|0}else{a[b]=c>>>18|240;a[b+1|0]=c>>>12&63|128;a[b+2|0]=c>>>6&63|128;a[b+3|0]=c&63|128;c=4;return c|0}return 0}function df(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e|0;if((d|0)>15){d=-1;i=e;return d|0}g=f|0;Yq(g|0,b|0,d)|0;a[f+d|0]=0;b=Of(g)|0;if(!((b|0)>-1)){g=-1;i=e;return g|0}g=c[1106796+(b<<3)>>2]|0;i=e;return g|0}function ef(a){a=a|0;return(a-48&255)>>>0<10>>>0|0}function ff(a){a=a|0;if((a-48&255)>>>0<10>>>0|(a-97&255)>>>0<6>>>0){return 1}else{return(a-65&255)>>>0<6>>>0|0}return 0}function gf(a){a=a|0;if((a-48&255)>>>0<10>>>0|(a-97&255)>>>0<26>>>0){return 1}else{return(a-65&255)>>>0<26>>>0|0}return 0}function hf(a){a=a|0;var b=0;b=a<<24>>24;if((a-48&255)>>>0<10>>>0){b=b-48|0;return b|0}if(!((a-97&255)>>>0<6>>>0)){return((a-65&255)>>>0<6>>>0?b-55|0:0)|0}b=b-87|0;return b|0}function jf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+8|0;g=f|0;h=b+d|0;do{if((d|0)!=0){if((a[b]|0)!=38){break}c[e>>2]=1;j=b+1|0;do{if((a[j]|0)==35){if((d|0)<4){k=-1;i=f;return k|0}j=b+2|0;k=a[j]|0;if((k<<24>>24|0)==120|(k<<24>>24|0)==88){j=kf(b+3|0,h,g)|0}else{j=lf(j,h,g)|0}d=c[g>>2]|0;if((j|0)==-1|d>>>0>h>>>0){e=-1}else{break}i=f;return e|0}else{d=j;while(1){c[g>>2]=d;k=d>>>0<h>>>0;if(!k){break}if(gf(a[d]|0)|0){d=d+1|0}else{break}}j=df(j,d-j|0)|0;if((j|0)<0){k=-1;i=f;return k|0}if((j|0)<=255){break}if(!k){k=-1;i=f;return k|0}if((a[d]|0)==59){break}else{e=-1}i=f;return e|0}}while(0);do{if(d>>>0<h>>>0){if((a[d]|0)!=59){break}d=d+1|0;c[g>>2]=d}}while(0);c[e>>2]=d-b;k=j;i=f;return k|0}}while(0);c[e>>2]=0;k=-1;i=f;return k|0}function kf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;c[e>>2]=b;while(1){if(!(b>>>0<d>>>0)){break}if((a[b]|0)==48){b=b+1|0}else{break}}if((b|0)==(d|0)){b=-1;return b|0}if(ff(a[b]|0)|0){f=b}else{b=-1;return b|0}while(1){if(!(f>>>0<d>>>0)){break}if(ff(a[f]|0)|0){f=f+1|0}else{break}}c[e>>2]=f;e=f-b|0;do{if((e|0)>=8){if((e|0)!=8){b=65533;return b|0}if((a[b]|0)<56){break}else{f=65533}return f|0}}while(0);a:do{if(b>>>0<f>>>0){e=0;while(1){e=(hf(a[b]|0)|0)+e|0;b=b+1|0;if(!(b>>>0<f>>>0)){break a}e=e<<4}}else{e=0}}while(0);b=af(e)|0;return b|0}function lf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;c[e>>2]=b;while(1){if(!(b>>>0<d>>>0)){break}if((a[b]|0)==48){b=b+1|0}else{break}}if((b|0)==(d|0)){b=-1;return b|0}if(ef(a[b]|0)|0){f=b}else{b=-1;return b|0}while(1){if(!(f>>>0<d>>>0)){break}if(ef(a[f]|0)|0){f=f+1|0}else{break}}c[e>>2]=f;e=f-b|0;do{if((e|0)>=9){if((e|0)!=10){b=65533;return b|0}if((Vq(b)|0)<1){break}else{f=65533}return f|0}}while(0);if(b>>>0<f>>>0){e=0;do{e=(e*10|0)-48+(a[b]|0)|0;b=b+1|0;}while(b>>>0<f>>>0)}else{e=0}b=af(e)|0;return b|0}function mf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;b=jf(a,b,e)|0;if((b|0)>0){d=cf(d,b)|0}else{c[e>>2]=1;d=0}c[f>>2]=d;return}function nf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e|0;f=e+8|0;of(f,a,b);Qg(c[f>>2]|0,c[f+4>>2]|0,d);i=e;return c[d>>2]|0}function of(a,b,c){a=a|0;b=b|0;c=c|0;Df(a,b,c);return}function pf(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=b+c|0;if((c|0)>0){f=b;j=1073648}else{k=c;return k|0}while(1){j=d[j+(d[1093712+(d[f]|0)|0]|0)|0]|0;if((j|0)<=(e|0)){break}k=f+1|0;if(k>>>0<i>>>0){f=k;j=1073648+(j*20|0)|0}else{g=c;h=7;break}}if((h|0)==7){return g|0}g=f-b|0;if((j|0)==2|(j|0)==0){k=g;return k|0}while(1){f=g-1|0;if((f|0)<=0){h=7;break}if((a[b+f|0]|0)==60){h=7;break}else{g=f}}if((h|0)==7){return g|0}return 0}function qf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;c[b>>2]=d;c[b+4>>2]=d;c[b+8>>2]=d+e;c[b+12>>2]=e;a[b+16|0]=f&1;a[b+28|0]=1;a[b+29|0]=1;c[b+32>>2]=1;e=b+36|0;Qf(e);d=b+88|0;Qf(d);c[b+20>>2]=Fq(40960)|0;c[b+24>>2]=Fq(61440)|0;Rf(e);Rf(d);return}function rf(a){a=a|0;var b=0;b=c[a+20>>2]|0;if((b|0)!=0){Hq(b)}b=c[a+24>>2]|0;if((b|0)!=0){Hq(b)}Sf(a+88|0);Sf(a+36|0);return}function sf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+24|0;l=h|0;j=h+8|0;c[l>>2]=0;if((e|0)<=0){q=0;p=0;c[f>>2]=p;i=h;return q|0}k=b+16|0;m=b+32|0;b=h+16|0;n=0;o=0;while(1){n=(nf(d+n|0,e-n|0)|0)+n|0;if((n|0)>=(e|0)){o=0;g=14;break}q=d+n|0;p=a[q]|0;do{if(tf(p)|0){if((a[k]|0)!=0){g=10;break}if((p<<24>>24|0)==62){c[l>>2]=1;o=1;break}else if((p<<24>>24|0)==38){mf(q,e-n|0,b,l,j);o=uf(b)|0;g=11;break}else if((p<<24>>24|0)==60){o=pf(q,e-n|0,c[m>>2]|0)|0;c[l>>2]=o;break}else{break}}else{g=10}}while(0);if((g|0)==10){c[l>>2]=dd(p)|0;o=uf(q)|0;g=11}if((g|0)==11){g=0;if((o|0)!=0){e=n;g=14;break}o=c[l>>2]|0}n=o+n|0;if((n|0)>=(e|0)){e=n;o=0;g=14;break}}if((g|0)==14){c[f>>2]=o;i=h;return e|0}return 0}function tf(b){b=b|0;if(!((b&-32)<<24>>24==32)){b=0;return b|0}b=(a[1074448+(b&255)|0]|0)!=0;return b|0}function uf(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d|0;f=d+8|0;c[e>>2]=dd(a[b]|0)|0;c[f>>2]=b;b=(Pg(f,e)|0)&255;i=d;return b|0}function vf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+16|0;k=g|0;l=g+8|0;e=b+20|0;c[d>>2]=c[e>>2];f=d+4|0;c[f>>2]=0;h=b+4|0;c[d+8>>2]=(c[h>>2]|0)-(c[b>>2]|0);c[d+12>>2]=0;c[d+16>>2]=26;m=d+20|0;a[m]=0;d=b+12|0;n=c[d>>2]|0;if((n-40928|0)>>>0<40928>>>0){o=(n|0)/2|0}else{o=40896}a[c[e>>2]|0]=32;a[(c[e>>2]|0)+1|0]=0;t=c[d>>2]|0;if((t|0)<1){w=0;i=g;return w|0}n=b+16|0;p=b+32|0;r=0;q=1;b=0;s=0;while(1){if((b|0)>=(t|0)){break}v=c[h>>2]|0;u=v+b|0;w=a[u]|0;w=w<<24>>24==13?10:w;do{if(tf(w)|0){if((a[n]|0)!=0){j=23;break}do{if((w<<24>>24|0)==60){do{if((b|0)<(t-3|0)){s=a[v+(b+1)|0]|0;if(wf(s,112)|0){w=xf(a[v+(b+2)|0]|0)|0;w=w?10:32}else{w=32}do{if(wf(s,98)|0){if(!(wf(a[v+(b+2)|0]|0,114)|0)){break}x=xf(a[v+(b+3)|0]|0)|0;w=x?10:w}}while(0);if(!(wf(s,116)|0)){v=w;break}if(!(wf(a[v+(b+2)|0]|0,114)|0)){v=w;break}x=xf(a[v+(b+3)|0]|0)|0;v=x?10:w}else{v=32}}while(0);s=(pf(u,t-b|0,c[p>>2]|0)|0)+1|0;c[k>>2]=s;u=yf(v)|0;r=r^1;if(!(r|u^1)){t=v;r=1;break}a[(c[e>>2]|0)+q|0]=v;t=v;r=u&r;q=q+1|0}else if((w<<24>>24|0)==38){mf(u,t-b|0,(c[e>>2]|0)+q|0,k,l);t=38;q=(c[l>>2]|0)+q|0;s=c[k>>2]|0}else if((w<<24>>24|0)==62){c[k>>2]=1;a[(c[e>>2]|0)+q|0]=62;t=62;q=q+1|0;s=1}else{t=w}}while(0);b=s+b|0}else{j=23}}while(0);if((j|0)==23){j=0;t=yf(w)|0;r=r^1;if(r|t^1){a[(c[e>>2]|0)+q|0]=w;r=t&r;q=q+1|0}else{r=1}t=w;b=b+1|0}if(!((q|0)<(o|0)|(yf(t)|0)^1)){j=27;break}if((q|0)>40927){j=30;break}t=c[d>>2]|0}if((j|0)==27){a[m]=1}else if((j|0)==30){a[m]=1}j=c[h>>2]|0;a:do{if((b|0)>0){do{if(!((a[j+b|0]&-64)<<24>>24==-128)){break a}b=b-1|0;q=q-1|0;}while((b|0)>0)}}while(0);c[h>>2]=j+b;c[d>>2]=(c[d>>2]|0)-b;a[(c[e>>2]|0)+q|0]=32;a[(c[e>>2]|0)+(q+1)|0]=32;a[(c[e>>2]|0)+(q+2)|0]=32;a[(c[e>>2]|0)+(q+3)|0]=0;c[f>>2]=q;x=1;i=g;return x|0}function wf(a,b){a=a|0;b=b|0;return(a<<24>>24|32|0)==(b<<24>>24|0)|0}function xf(a){a=a|0;return a<<24>>24<64|0}function yf(a){a=a|0;return a<<24>>24==32|a<<24>>24==10|0}function zf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+24|0;p=e|0;m=e+8|0;l=e+16|0;if((a[b+28|0]|0)==0){x=vf(b,d)|0;i=e;return x|0}h=b+20|0;c[d>>2]=c[h>>2];g=d+4|0;c[g>>2]=0;f=b+4|0;r=d+8|0;c[r>>2]=(c[f>>2]|0)-(c[b>>2]|0);q=d+12|0;c[q>>2]=0;c[d+16>>2]=26;n=d+20|0;a[n]=0;d=b+12|0;j=c[d>>2]|0;if((j-40928|0)>>>0<40928>>>0){o=(j|0)/2|0}else{o=40896}c[m>>2]=0;c[l>>2]=0;a[c[h>>2]|0]=32;a[(c[h>>2]|0)+1|0]=0;j=b+36|0;Rf(j);_f(j,c[r>>2]|0);r=sf(b,c[f>>2]|0,c[d>>2]|0,p)|0;c[f>>2]=(c[f>>2]|0)+r;c[d>>2]=(c[d>>2]|0)-r;if((r|0)==1){Yf(j,1)}else{_f(j,r);Zf(j,1)}v=c[d>>2]|0;if((v|0)<1){Wf(j);x=0;i=e;return x|0}p=c[p>>2]|0;c[q>>2]=p;q=b+16|0;r=b+29|0;b=b+32|0;s=1;t=0;u=0;while(1){if((t|0)>=(v|0)){break}a:while(1){if((t|0)>=(v|0)){break}w=(c[f>>2]|0)+t|0;x=a[w]|0;do{if(tf(x)|0){if((a[q]|0)!=0){k=17;break}if((x<<24>>24|0)==60|(x<<24>>24|0)==62){u=0;break a}else if((x<<24>>24|0)!=38){break}mf(w,v-t|0,(c[h>>2]|0)+s|0,m,l);u=uf((c[h>>2]|0)+s|0)|0}else{k=17}}while(0);if((k|0)==17){k=0;u=dd(x)|0;c[l>>2]=u;c[m>>2]=u;x=(c[h>>2]|0)+s|0;if((t|0)<(v-3|0)){Af(x,ld(w)|0)}else{Yq(x|0,w|0,u)|0}u=uf((c[f>>2]|0)+t|0)|0}do{if((u|0)!=(p|0)&(u|0)!=40){if((u|0)==0){u=0;break a}v=c[m>>2]|0;x=uf((c[f>>2]|0)+(v+t)|0)|0;if((x|0)==0|(x|0)==(p|0)){break}if((a[r]|0)!=0){break a}}else{v=c[m>>2]|0}}while(0);t=v+t|0;w=c[l>>2]|0;s=w+s|0;do{if((v|0)==(w|0)){Yf(j,v)}else{if((v|0)<(w|0)){Yf(j,v);Zf(j,w-v|0);break}else{Yf(j,w);_f(j,v-w|0);break}}}while(0);if((s|0)>40927){k=33;break}v=c[d>>2]|0}if((k|0)==33){k=0;a[n]=1}v=c[d>>2]|0;b:do{if((t|0)<(v|0)){while(1){x=nf((c[f>>2]|0)+t|0,v-t|0)|0;c[m>>2]=x;t=x+t|0;_f(j,x);x=c[d>>2]|0;if((t|0)>=(x|0)){break b}w=(c[f>>2]|0)+t|0;v=a[w]|0;do{if(tf(v)|0){if((a[q]|0)!=0){k=42;break}if((v<<24>>24|0)==60){u=pf(w,x-t|0,c[b>>2]|0)|0;c[m>>2]=u;break}else if((v<<24>>24|0)==62){c[m>>2]=1;u=1;break}else if((v<<24>>24|0)==38){mf(w,x-t|0,(c[h>>2]|0)+s|0,m,l);u=uf((c[h>>2]|0)+s|0)|0;k=43;break}else{k=43;break}}else{k=42}}while(0);if((k|0)==42){c[m>>2]=dd(v)|0;u=uf(w)|0;k=43}if((k|0)==43){k=0;if((u|0)!=0){break b}u=c[m>>2]|0}t=u+t|0;_f(j,u);v=c[d>>2]|0;if((t|0)<(v|0)){u=0}else{u=0;break}}}}while(0);v=s+1|0;a[(c[h>>2]|0)+s|0]=32;Zf(j,1);if((u|0)!=(p|0)&(u|0)!=40){s=v;break}if((v|0)>=(o|0)){k=49;break}s=v;v=c[d>>2]|0}if((k|0)==49){a[n]=1;s=v}k=c[d>>2]|0;c:do{if((t|0)>0){do{if((t|0)>=(k|0)){break c}if(!((a[(c[f>>2]|0)+t|0]&-64)<<24>>24==-128)){break c}t=t-1|0;s=s-1|0;}while((t|0)>0)}}while(0);c[f>>2]=(c[f>>2]|0)+t;c[d>>2]=k-t;a[(c[h>>2]|0)+s|0]=32;a[(c[h>>2]|0)+(s+1)|0]=32;a[(c[h>>2]|0)+(s+2)|0]=32;a[(c[h>>2]|0)+(s+3)|0]=0;Zf(j,4);Wf(j);c[g>>2]=s;x=1;i=e;return x|0}function Af(b,c){b=b|0;c=c|0;B=c;a[b]=B;B=B>>8;a[b+1|0]=B;B=B>>8;a[b+2|0]=B;B=B>>8;a[b+3|0]=B;return}function Bf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+40|0;j=e+8|0;l=e+24|0;k=e+32|0;f=b+88|0;Rf(f);g=d|0;d=d+4|0;of(l,c[g>>2]|0,(c[d>>2]|0)+3|0);h=b+24|0;of(k,c[h>>2]|0,61440);Ug(c[l>>2]|0,c[l+4>>2]|0,k,(a[b+16|0]|0)!=0,e|0,j,e+16|0,f);b=c[j>>2]|0;a[(c[h>>2]|0)+b|0]=0;c[g>>2]=c[h>>2];c[d>>2]=b-3;Wf(f);i=e;return}function Cf(a,b){a=a|0;b=b|0;var c=0;c=zf(a,b)|0;Bf(a,b);return c|0}function Df(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Ef(a){a=a|0;a=(a|0)<0?0:a;return c[1101376+(((a|0)>101?0:a)<<2)>>2]|0}function Ff(a){a=a|0;a=(a|0)<0?0:a;return c[1100456+(((a|0)>101?0:a)<<2)>>2]|0}function Gf(a){a=a|0;a=(a|0)<0?26:a;return c[1101784+(((a|0)>613?26:a)<<2)>>2]|0}function Hf(a){a=a|0;a=(a|0)<0?26:a;return c[1104240+(((a|0)>613?26:a)<<2)>>2]|0}function If(a){a=a|0;switch(a|0){case 143:{a=9;break};case 147:{a=9;break};case 68:{a=3;break};case 28:{a=5;break};case 105:{a=2;break};case 160:{a=5;break};case 38:case 40:{a=1;break};case 17:{a=3;break};case 135:{a=2;break};case 31:{a=8;break};case 78:{a=5;break};case 35:{a=6;break};case 83:{a=4;break};case 80:{a=7;break};case 64:{a=6;break};case 1:{a=7;break};case 43:{a=6;break};case 29:{a=5;break};case 51:{a=6;break};case 10:{a=7;break};case 84:{a=4;break};case 14:{a=8;break};case 12:{a=8;break};default:{a=0}}return a|0}function Jf(a){a=a|0;if(a>>>0>101>>>0){a=26;return a|0}a=c[1094048+(a<<2)>>2]|0;return a|0}function Kf(b){b=b|0;if((b|0)<512){b=a[1100864+b|0]|0}else{b=0}return b|0}function Lf(a,b){a=a|0;b=b|0;if(a>>>0>101>>>0){b=26;return b|0}if((c[1100456+(a<<2)>>2]|0)>>>0<2>>>0){b=c[1094048+(a<<2)>>2]|0;return b|0}b=b&255;if((a|0)==1){b=e[1094968+(b<<1)>>1]|0;return b|0}else{b=e[1094456+(b<<1)>>1]|0;return b|0}return 0}function Mf(a){a=a|0;if((a|0)>=512){a=0;return a|0}a=(e[1094968+((d[1100864+a|0]|0)<<1)>>1]|0|0)==(a|0);return a|0}function Nf(a){a=a|0;if((a|0)>=512){a=0;return a|0}a=(e[1094456+((d[1100864+a|0]|0)<<1)>>1]|0|0)==(a|0);return a|0}function Of(a){a=a|0;var b=0,d=0,e=0,f=0;e=0;b=265;a:while(1){while(1){if((e|0)>=(b|0)){d=-1;a=6;break a}d=e+b>>1;f=Wq(a,c[1106792+(d<<3)>>2]|0)|0;if((f|0)<0){b=d;continue a}if((f|0)>0){e=d+1|0}else{a=6;break a}}}if((a|0)==6){return d|0}return 0}function Pf(a){a=a|0;if((a|0)==1){a=0}else if((a|0)==3){a=1}else if((a|0)==6){a=2}else{a=3}return a|0}function Qf(a){a=a|0;Yh(a|0);Rf(a);return}function Rf(a){a=a|0;ii(a|0);c[a+12>>2]=1;Xq(a+16|0,0,36)|0;return}function Sf(a){a=a|0;di(a|0);return}function Tf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=b+16|0;f=c[d>>2]|0;if((f|0)==0){return}e=b+12|0;g=c[e>>2]|0;do{if((g|0)==1){h=b|0;if(ji(h)|0){break}h=li(h,(ci(h)|0)-1|0)|0;i=a[h]|0;if(!((Uf(i)|0)<<24>>24==1)){break}if(!((((Vf(i)|0)<<24>>24)+f|0)>>>0<64>>>0)){break}a[h]=(i&255)+f;c[d>>2]=0;return}}while(0);if(f>>>0>63>>>0){g=30;h=0;while(1){f=f>>>(g>>>0)&63;if((f|0)!=0|h){$f(b,0,f);h=1}else{h=0}g=g-6|0;if((g|0)<=0){break}f=c[d>>2]|0}g=c[e>>2]|0;f=c[d>>2]|0}$f(b,g,f&63);c[d>>2]=0;return}function Uf(a){a=a|0;return(a&255)>>>6|0}function Vf(a){a=a|0;return a&63|0}function Wf(a){a=a|0;Xf(a);Xq(a+20|0,0,24)|0;return}function Xf(a){a=a|0;do{if((c[a+16>>2]|0)==0){if(ji(a|0)|0){break}return}}while(0);ag(a);return}function Yf(a,b){a=a|0;b=b|0;var d=0;if((b|0)==0){return}d=a+44|0;c[d>>2]=(c[d>>2]|0)+b;d=a+48|0;c[d>>2]=(c[d>>2]|0)+b;d=a+12|0;if((c[d>>2]|0)==1){d=a+16|0;c[d>>2]=(c[d>>2]|0)+b;return}else{Tf(a);c[d>>2]=1;c[a+16>>2]=b;return}}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((b|0)==0){return}d=a+48|0;c[d>>2]=(c[d>>2]|0)+b;d=a+12|0;e=c[d>>2]|0;if((e|0)==2){f=a+16|0;c[f>>2]=(c[f>>2]|0)+b;return}f=a+16|0;do{if((b|0)==1&(e|0)==3){if((c[f>>2]|0)!=1){break}c[d>>2]=1;return}}while(0);Tf(a);c[d>>2]=2;c[f>>2]=b;return}function _f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((b|0)==0){return}d=a+44|0;c[d>>2]=(c[d>>2]|0)+b;d=a+12|0;e=c[d>>2]|0;if((e|0)==3){f=a+16|0;c[f>>2]=(c[f>>2]|0)+b;return}f=a+16|0;do{if((b|0)==1&(e|0)==2){if((c[f>>2]|0)!=1){break}c[d>>2]=1;return}}while(0);Tf(a);c[d>>2]=3;c[f>>2]=b;return}function $f(a,b,c){a=a|0;b=b|0;c=c|0;ni(a|0,(c&63|b<<6)&255);return}function ag(a){a=a|0;Yf(a,1);Tf(a);return}function bg(a,b){a=a|0;b=b|0;Wc(a,b);return}function cg(a,b){a=a|0;b=b|0;dg(b,a>>>8&255);return}function dg(a,c){a=a|0;c=c|0;b[a+16+(c<<1)>>1]=0;return}function eg(a,b){a=a|0;b=b|0;a=If(a)|0;if((a|0)==0){a=0;return a|0}a=(a|0)==(If(b)|0);return a|0}function fg(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+16|0;p=l|0;q=p|0;Ig(j,q);q=c[q>>2]|0;o=Lf(d,q&255)|0;p=c[p+4>>2]|0;m=Lf(d,p&255)|0;if((g|0)>0){n=((gg(j,q)|0)<<10|0)/(g|0)|0}else{n=0}r=(Pf(d)|0)+(o<<2)|0;h=b[(c[(c[h+140>>2]|0)+32>>2]|0)+(r<<1)>>1]|0;b[k>>1]=f;b[k+2>>1]=e;b[k+4>>1]=o;b[k+6>>1]=m;f=gg(j,q)|0;b[k+8>>1]=f;e=gg(j,p)|0;b[k+10>>1]=e;b[k+12>>1]=g;q=hg(c[j+12>>2]|0)|0;b[k+14>>1]=q;b[k+16>>1]=d;d=(ed(f&65535,e&65535,q&65535)|0)&255;q=eg(o,m)|0;a[k+18|0]=q?100:d;a[k+19|0]=gd(n,h)|0;i=l;return}function gg(a,b){a=a|0;b=b|0;return e[a+16+(b<<1)>>1]|0|0}function hg(a){a=a|0;return a|0}function ig(a,b){a=a|0;b=b|0;var d=0,e=0;e=(c[b+8>>2]|0)==1?b+96|0:b+116|0;b=e|0;d=c[b>>2]|0;c[e+4+(d<<2)>>2]=a;c[b>>2]=ne(d+1|0)|0;return}function jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((c[a+8>>2]|0)==1){e=a+16|0;d=a+56|0;a=a+96|0}else{e=a+36|0;d=a+76|0;a=a+116|0}f=c[e+4>>2]|0;if((f|0)!=0){bg(f,b)}f=c[e+8>>2]|0;if((f|0)!=0){bg(f,b)}f=c[e+12>>2]|0;if((f|0)!=0){bg(f,b)}e=c[e+16>>2]|0;if((e|0)!=0){bg(e,b)}e=c[a+4>>2]|0;if((e|0)!=0){bg(e,b)}e=c[a+8>>2]|0;if((e|0)!=0){bg(e,b)}e=c[a+12>>2]|0;if((e|0)!=0){bg(e,b)}a=c[a+16>>2]|0;if((a|0)!=0){bg(a,b)}a=c[d+4>>2]|0;if((a|0)!=0){cg(a,b)}a=c[d+8>>2]|0;if((a|0)!=0){cg(a,b)}a=c[d+12>>2]|0;if((a|0)!=0){cg(a,b)}d=c[d+16>>2]|0;if((d|0)==0){return}cg(d,b);return}function kg(a,b){a=a|0;b=b|0;return((a|0)<(b|0)?a:b)|0}function lg(d,f,g,h,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0;n=i;m=c[f+56064+(g<<2)>>2]|0;g=c[f+56064+(g+1<<2)>>2]|0;Fg(k);c[j+16>>2]=0;c[j+20>>2]=0;if((a[h+7|0]|0)!=0){Zb(c[h>>2]|0,15712,(q=i,i=i+16|0,c[q>>2]=m,c[q+8>>2]=g,q)|0)|0;i=q}c[j>>2]=m;c[j+12>>2]=g-m;if((m|0)<(g|0)){j=m;do{o=c[f+24056+(j<<3)+4>>2]|0;bg(o,k);p=f+24056+(j<<3)+2|0;q=b[p>>1]|0;if((q&65535)>>>0<2>>>0){Gg(k);q=b[p>>1]|0}if(q<<16>>16==3){ig(o,h)}j=j+1|0;}while((j|0)<(g|0))}jg(h,k);q=e[f+24056+(m<<3)>>1]|0;fg(d,m,q,(e[f+24056+(g<<3)>>1]|0)-q|0,h,k,l);c[h+12>>2]=e[l+4>>1]|0;i=n;return}function mg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=i;i=i+600|0;m=h+24|0;l=h+48|0;n=h+576|0;j=h|0;Xq(j|0,0,24)|0;o=m;Xq(o|0,0,24)|0;p=d+24|0;k=f|0;if((c[p>>2]|0)>0){w=n;r=m+12|0;q=m|0;t=m+16|0;s=m+4|0;v=m+20|0;u=m+8|0;x=0;do{Eg(l);lg(a,d,x,e,m,l,n);y=c[k>>2]|0;if((y|0)<50){Yq(f+4+(y*20|0)|0,w|0,20)|0;y=(c[k>>2]|0)+1|0;c[k>>2]=y}c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];c[j+16>>2]=c[o+16>>2];c[j+20>>2]=c[o+20>>2];c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[v>>2]|0);x=x+1|0;}while((x|0)<(c[p>>2]|0))}else{y=c[k>>2]|0}x=c[d+20>>2]|0;v=b[d+24056+(x<<3)>>1]|0;w=f+4+(y*20|0)|0;Xq(w|0,0,20)|0;b[w>>1]=v;b[f+4+(y*20|0)+2>>1]=x;y=g;c[y>>2]=c[j>>2];c[y+4>>2]=c[j+4>>2];c[y+8>>2]=c[j+8>>2];c[y+12>>2]=c[j+12>>2];c[y+16>>2]=c[j+16>>2];c[y+20>>2]=c[j+20>>2];i=h;return}function ng(a,f){a=a|0;f=f|0;var g=0,h=0,i=0;g=a|0;if((c[g>>2]|0)>0){h=0}else{return}do{i=kg(d[a+4+(h*20|0)+18|0]|0,d[a+4+(h*20|0)+19|0]|0)|0;Kg(f,b[a+4+(h*20|0)+4>>1]|0,e[a+4+(h*20|0)+12>>1]|0,e[a+4+(h*20|0)+8>>1]|0,i);h=h+1|0;}while((h|0)<(c[g>>2]|0));return}function og(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;n=Ef(c[d>>2]|0)|0;j=d+8|0;m=c[j>>2]|0;g=d+12|0;l=c[g>>2]|0;f=d+16|0;h=c[f>>2]|0;Zb(a|0,18520,(k=i,i=i+32|0,c[k>>2]=n,c[k+8>>2]=m,c[k+16>>2]=l,c[k+24>>2]=h,k)|0)|0;i=k;k=d+4|0;h=0;while(1){if((h|0)>=(c[k>>2]|0)){break}if((h|0)<(c[j>>2]|0)){l=c[d+32+(h<<3)>>2]|0;m=pg(c[d+32+(h<<3)+4>>2]|0)|0;bf(b+l|0,6);Zb(a|0,13448,(n=i,i=i+32|0,c[n>>2]=h,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n}if((h|0)<(c[g>>2]|0)){l=c[d+8040+(h<<3)>>2]|0;m=c[d+8040+(h<<3)+4>>2]|0;bf(b+l|0,12);Zb(a|0,10904,(n=i,i=i+32|0,c[n>>2]=h,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n}if((h|0)<(c[f>>2]|0)){l=c[d+16048+(h<<3)>>2]|0;m=c[d+16048+(h<<3)+4>>2]|0;bf(b+l|0,12);Zb(a|0,8696,(n=i,i=i+32|0,c[n>>2]=h,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n}if((h|0)<(c[j>>2]|0)){Ka(6416,5,1,a|0)|0}if((h|0)>50){break}h=h+1|0}h=c[j>>2]|0;if((h|0)>50){l=c[d+32+(h<<3)>>2]|0;m=pg(c[d+32+(h<<3)+4>>2]|0)|0;bf(b+l|0,6);Zb(a|0,13448,(n=i,i=i+32|0,c[n>>2]=h,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n}g=c[g>>2]|0;if((g|0)>50){l=c[d+8040+(g<<3)>>2]|0;m=c[d+8040+(g<<3)+4>>2]|0;bf(b+l|0,12);Zb(a|0,10904,(n=i,i=i+32|0,c[n>>2]=g,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n}f=c[f>>2]|0;if((f|0)<=50){Ka(6416,5,1,a|0)|0;i=e;return}l=c[d+16048+(f<<3)>>2]|0;m=c[d+16048+(f<<3)+4>>2]|0;bf(b+l|0,12);Zb(a|0,8696,(n=i,i=i+32|0,c[n>>2]=f,c[n+8>>2]=l,c[n+16>>2]=m,c[n+24>>2]=1112944,n)|0)|0;i=n;Ka(6416,5,1,a|0)|0;i=e;return}function pg(a){a=a|0;if((a|0)<0){a=(a&2147483647)+2e9|0}return a|0}function qg(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;h=f+20|0;Zb(b|0,3952,(l=i,i=i+8|0,c[l>>2]=c[h>>2],l)|0)|0;i=l;l=c[h>>2]|0;if((l+1|0)>0){k=0;do{if((k|0)>50){if((k|0)>=(l-1|0)){j=4}}else{j=4}if((j|0)==4){j=0;o=e[f+24056+(k<<3)>>1]|0;n=a[1352+(e[f+24056+(k<<3)+2>>1]|0)|0]|0;m=c[f+24056+(k<<3)+4>>2]|0;bf(d+o|0,6);Zb(b|0,2568,(l=i,i=i+40|0,c[l>>2]=k,c[l+8>>2]=o,c[l+16>>2]=n,c[l+24>>2]=m,c[l+32>>2]=1112944,l)|0)|0;i=l;l=c[h>>2]|0}k=k+1|0;}while((k|0)<(l+1|0))}Ka(6416,5,1,b|0)|0;d=f+24|0;Zb(b|0,368,(o=i,i=i+8|0,c[o>>2]=c[d>>2],o)|0)|0;i=o;if(((c[d>>2]|0)+1|0)>0){h=0}else{Ka(6416,5,1,b|0)|0;i=g;return}do{n=c[f+56064+(h<<2)>>2]|0;Zb(b|0,19624,(o=i,i=i+16|0,c[o>>2]=h,c[o+8>>2]=n,o)|0)|0;i=o;h=h+1|0;}while((h|0)<((c[d>>2]|0)+1|0));Ka(6416,5,1,b|0)|0;i=g;return}function rg(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;r=e[b>>1]|0;q=e[b+2>>1]|0;p=Hf(e[b+4>>1]|0)|0;o=e[b+8>>1]|0;n=Hf(e[b+6>>1]|0)|0;m=e[b+10>>1]|0;l=e[b+12>>1]|0;k=e[b+14>>1]|0;j=Ef(e[b+16>>1]|0)|0;h=d[b+18|0]|0;g=d[b+19|0]|0;Zb(a|0,18984,(b=i,i=i+88|0,c[b>>2]=r,c[b+8>>2]=q,c[b+16>>2]=p,c[b+24>>2]=o,c[b+32>>2]=n,c[b+40>>2]=m,c[b+48>>2]=l,c[b+56>>2]=k,c[b+64>>2]=j,c[b+72>>2]=h,c[b+80>>2]=g,b)|0)|0;i=b;i=f;return}function sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;e=b|0;Zb(a|0,18328,(f=i,i=i+8|0,c[f>>2]=c[e>>2],f)|0)|0;i=f;Ka(17792,101,1,a|0)|0;if((c[e>>2]|0)<0){Ka(6416,5,1,a|0)|0;i=d;return}else{f=0}do{Zb(a|0,17384,(g=i,i=i+8|0,c[g>>2]=f,g)|0)|0;i=g;rg(a,b+4+(f*20|0)|0);f=f+1|0;}while((f|0)<=(c[e>>2]|0));Ka(6416,5,1,a|0)|0;i=d;return}function tg(a){a=a|0;return hd(Jf(a)|0,1)|0}function ug(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=c[a+140>>2]|0;if(d){d=c[g+4>>2]|0;f=d;h=g+8|0;i=g+12|0;g=0}else{f=c[g+16>>2]|0;d=c[g+20>>2]|0;h=g+24|0;i=g+28|0;g=1}l=c[h>>2]|0;m=c[i>>2]|0;h=e+8|0;j=c[h>>2]|0;k=c[e+12>>2]|0;i=c[e+16>>2]|0;b[e+24056>>1]=c[e+28>>2];b[e+24058>>1]=g;c[e+24060>>2]=tg(c[a+8>>2]|0)|0;if(!((j|0)>0|(k|0)>0|(i|0)>0)){t=1;r=j;s=e+20|0;c[s>>2]=t;r=e+32+(r<<3)|0;r=c[r>>2]|0;r=r&65535;s=e+24056+(t<<3)|0;b[s>>1]=r;t=e+24056+(t<<3)+4|0;c[t>>2]=0;return}a=m+4|0;l=l+4|0;m=1;n=0;o=0;q=0;do{p=c[e+32+(q<<3)>>2]|0;r=c[e+8040+(o<<3)>>2]|0;s=c[e+16048+(n<<3)>>2]|0;do{if((o|0)>=(k|0)|(r|0)>(p|0)|(r|0)>(s|0)){if(!((n|0)>=(i|0)|(s|0)>(p|0)|(s|0)>(r|0))){p=n+1|0;n=c[(c[a>>2]|0)+(c[e+16048+(n<<3)+4>>2]<<2)>>2]|0;if((n|0)==0){n=p;break}b[e+24056+(m<<3)>>1]=s;b[e+24056+(m<<3)+2>>1]=3;c[e+24056+(m<<3)+4>>2]=n;n=p;m=m+1|0;break}r=c[e+32+(q<<3)+4>>2]|0;s=(r|0)<0;r=s?r&2147483647:r;s=s?d:f;q=q+1|0;t=c[s+8>>2]|0;if((r|0)<(t|0)){r=c[(c[s+4>>2]|0)+(r<<2)>>2]|0;if((r|0)==0){break}b[e+24056+(m<<3)>>1]=p;b[e+24056+(m<<3)+2>>1]=g;c[e+24056+(m<<3)+4>>2]=r;m=m+1|0;break}r=r-t+r|0;t=c[s+4>>2]|0;s=c[t+(r<<2)>>2]|0;r=c[t+(r+1<<2)>>2]|0;if((s|0)!=0){b[e+24056+(m<<3)>>1]=p;b[e+24056+(m<<3)+2>>1]=g;c[e+24056+(m<<3)+4>>2]=s;m=m+1|0}if((r|0)==0){break}b[e+24056+(m<<3)>>1]=p;b[e+24056+(m<<3)+2>>1]=g;c[e+24056+(m<<3)+4>>2]=r;m=m+1|0}else{p=o+1|0;o=c[(c[l>>2]|0)+(c[e+8040+(o<<3)+4>>2]<<2)>>2]|0;if((o|0)==0){o=p;break}b[e+24056+(m<<3)>>1]=r;b[e+24056+(m<<3)+2>>1]=2;c[e+24056+(m<<3)+4>>2]=o;o=p;m=m+1|0}}while(0);}while((q|0)<(j|0)|(o|0)<(k|0)|(n|0)<(i|0));t=m;r=c[h>>2]|0;s=e+20|0;c[s>>2]=t;r=e+32+(r<<3)|0;r=c[r>>2]|0;r=r&65535;s=e+24056+(t<<3)|0;b[s>>1]=r;t=e+24056+(t<<3)+4|0;c[t>>2]=0;return}function vg(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=b&1^1;g=b?50:20;b=d+20|0;h=c[b>>2]|0;l=c[d+8>>2]|0;do{if((l|0)>0){j=(g>>>1)+g|0;i=g<<1;n=0;k=0;do{do{if((l|0)<(j|0)){m=l}else{if((l|0)>=(i|0)){m=g;break}m=l+1>>1}}while(0);c[d+56064+(k<<2)>>2]=n;c[d+56268+(k<<2)>>2]=a;k=k+1|0;if((m|0)>0&(n|0)<(h|0)){a=0;do{a=((e[d+24056+(n<<3)+2>>1]|0|0)==(f|0))+a|0;n=n+1|0;}while((a|0)<(m|0)&(n|0)<(h|0))}a=e[d+24056+(n<<3)>>1]|0;l=l-m|0;}while((l|0)>0);if((k|0)==0){break}m=d+24|0;c[m>>2]=k;m=c[b>>2]|0;n=d+56064+(k<<2)|0;c[n>>2]=m;n=d+56268+(k<<2)|0;c[n>>2]=a;return}}while(0);c[d+56064>>2]=0;c[d+56268>>2]=e[d+24056>>1]|0;m=1;n=a;l=d+24|0;c[l>>2]=m;l=c[b>>2]|0;a=d+56064+(m<<2)|0;c[a>>2]=l;a=d+56268+(m<<2)|0;c[a>>2]=n;return}function wg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ug(b,c,d);vg(a,c,d);return}function xg(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 j=0,k=0,l=0,m=0;k=i;i=i+1048|0;j=k|0;l=e+7|0;if((a[l]|0)!=0){m=e|0;Ka(12184,12,1,c[m>>2]|0)|0;og(c[m>>2]|0,c[b>>2]|0,h)}wg(d,e,g,h);if((a[l]|0)!=0){m=e|0;Ka(11952,9,1,c[m>>2]|0)|0;qg(c[m>>2]|0,c[b>>2]|0,h)}c[j>>2]=0;mg(c[b+12>>2]|0,h,e,j,k+1024|0);if((a[l]|0)==0){ng(j,f);i=k;return}sg(c[e>>2]|0,j);ng(j,f);i=k;return}function yg(a,b){a=a|0;b=b|0;Xq(a+8|0,0,20)|0;c[a+28>>2]=b;return}function zg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Kg(e,(Jf(b)|0)&65535,a,a,100);c[d+12>>2]=26;return}function Ag(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;k=Eq(56472)|0;g=k;Bg(g);c[k>>2]=c[b+12>>2];h=d+12|0;c[h>>2]=26;c[d+136>>2]=0;c[k+28>>2]=1;f=c[b+4>>2]|0;if((f|0)>1){o=d+7|0;l=b|0;n=d|0;m=d+140|0;p=1;while(1){if((a[o]|0)!=0){Zb(c[n>>2]|0,11728,(q=i,i=i+16|0,c[q>>2]=p,c[q+8>>2]=f,q)|0)|0;i=q}q=_c(c[l>>2]|0,p,f,c[c[m>>2]>>2]|0,g)|0;r=c[m>>2]|0;$c(c[l>>2]|0,p,q,c[r+8>>2]|0,c[r+12>>2]|0,g);xg(b,p,d,e,1,g);yg(g,q);if((q|0)<(f|0)){p=q}else{break}}}if((k|0)==0){c[h>>2]=26;i=j;return}Gq(k);c[h>>2]=26;i=j;return}function Bg(a){a=a|0;c[a>>2]=0;c[a+4>>2]=1e3;c[a+8040>>2]=0;c[a+8044>>2]=0;c[a+16048>>2]=0;c[a+16052>>2]=0;b[a+24056>>1]=0;c[a+24060>>2]=0;c[a+56064>>2]=0;c[a+56268>>2]=0;Xq(a+8|0,0,32)|0;return}function Cg(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,l=0;e=Eq(56472)|0;g=e;Bg(g);c[e>>2]=c[a+12>>2];c[b+12>>2]=26;c[b+136>>2]=0;c[e+28>>2]=1;f=c[a+4>>2]|0;if((f|0)>1){i=a|0;h=b+140|0;j=1;while(1){k=c[h>>2]|0;k=ad(c[i>>2]|0,j,f,c[k+16>>2]|0,c[k+20>>2]|0,g)|0;l=c[h>>2]|0;bd(c[i>>2]|0,j,k,c[l+24>>2]|0,c[l+28>>2]|0,g);xg(a,j,b,d,0,g);yg(g,k);if((k|0)<(f|0)){j=k}else{break}}}if((e|0)==0){return}Gq(e);return}function Dg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f|0;h=f+16|0;if((a[d+7|0]|0)==0){g=b+12|0}else{k=d|0;m=c[k>>2]|0;j=b+12|0;o=Ef(c[j>>2]|0)|0;l=b+4|0;n=c[l>>2]|0;Zb(m|0,11512,(m=i,i=i+16|0,c[m>>2]=o,c[m+8>>2]=n,m)|0)|0;i=m;ai(g,c[b>>2]|0,c[l>>2]|0);l=c[k>>2]|0;$e(h);m=ri(h)|0;Zb(l|0,11328,(l=i,i=i+8|0,c[l>>2]=m,l)|0)|0;i=l;di(h);Ka(6416,5,1,c[k>>2]|0)|0;di(g);g=j}c[d+12>>2]=26;c[d+136>>2]=0;g=Ff(c[g>>2]|0)|0;g=(a[d+4|0]|0)==0|(g|0)==3?g:2;if((g|0)==3){Ag(b,d,e);i=f;return}else if((g|0)==0|(g|0)==1){zg(c[b+4>>2]|0,c[b+12>>2]|0,d,e);i=f;return}else if((g|0)==2){Cg(b,d,e);i=f;return}else{i=f;return}}function Eg(a){a=a|0;Xq(a|0,0,16)|0;return}function Fg(a){a=a|0;Xq(a|0,0,16)|0;return}function Gg(a){a=a|0;a=a+12|0;c[a>>2]=(c[a>>2]|0)+1;return}function Hg(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;d=d&255;f=d>>>2;i=cr(1,0,f|0)|0;h=J;g=a|0;if(!((c[g>>2]&i|0)==0&(c[g+4>>2]&h|0)==0)){i=a+16|0;i=i+(d<<1)|0;h=b[i>>1]|0;h=h&65535;h=h+e|0;h=h&65535;b[i>>1]=h;return}f=a+16+(f<<3)|0;c[f>>2]=0;c[f+4>>2]=0;h=c[g+4>>2]|h;c[g>>2]=c[g>>2]|i;c[g+4>>2]=h;i=a+16|0;i=i+(d<<1)|0;h=b[i>>1]|0;h=h&65535;h=h+e|0;h=h&65535;b[i>>1]=h;return}function Ig(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+16|0;d=h|0;c[b>>2]=-1;f=b+4|0;c[f>>2]=-1;g=b+8|0;c[g>>2]=-1;Xq(d|0,-1|0,12)|0;n=a|0;q=c[n>>2]|0;n=c[n+4>>2]|0;if((q|0)==0&(n|0)==0){i=h;return}a=a+16|0;l=d+8|0;m=d+4|0;k=d|0;j=0;while(1){if(!((q&1|0)==0&(n&0|0)==0)){p=0;do{o=p+j|0;r=e[a+(o<<1)>>1]|0;if((r|0)>(c[l>>2]|0)){s=c[m>>2]|0;do{if((r|0)>(s|0)){c[l>>2]=s;c[g>>2]=c[f>>2];s=c[k>>2]|0;if((r|0)<=(s|0)){s=1;break}c[m>>2]=s;c[f>>2]=c[b>>2];s=0}else{s=2}}while(0);c[d+(s<<2)>>2]=r;c[b+(s<<2)>>2]=o}p=p+1|0;}while((p|0)<4)}q=q>>>1|n<<31;n=n>>>1|0<<31;if((q|0)==0&(n|0)==0){break}else{j=j+4|0}}i=h;return}function Jg(a){a=a|0;Eg(a+8|0);c[a>>2]=0;c[a+4>>2]=0;Xq(a+536|0,0,32)|0;Xq(a+568|0,-1|0,48)|0;return}function Kg(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,k=0,l=0,m=0;l=a|0;c[l>>2]=(c[l>>2]|0)+1;l=d&65535;i=l&15;h=b[a+568+(i<<1)>>1]|0;if(h<<16>>16==d<<16>>16){l=a+616+(i<<2)|0;c[l>>2]=(c[l>>2]|0)+e;l=a+712+(i<<2)|0;c[l>>2]=(c[l>>2]|0)+f;l=fa(g,e)|0;m=a+808+(i<<2)|0;c[m>>2]=(c[m>>2]|0)+l;return}j=i^8;k=b[a+568+(j<<1)>>1]|0;if(k<<16>>16==d<<16>>16){l=a+616+(j<<2)|0;c[l>>2]=(c[l>>2]|0)+e;l=a+712+(j<<2)|0;c[l>>2]=(c[l>>2]|0)+f;l=fa(g,e)|0;m=a+808+(j<<2)|0;c[m>>2]=(c[m>>2]|0)+l;return}l=l&7|16;m=b[a+568+(l<<1)>>1]|0;if(m<<16>>16==d<<16>>16){k=a+616+(l<<2)|0;c[k>>2]=(c[k>>2]|0)+e;k=a+712+(l<<2)|0;c[k>>2]=(c[k>>2]|0)+f;k=fa(g,e)|0;m=a+808+(l<<2)|0;c[m>>2]=(c[m>>2]|0)+k;return}do{if(!(h<<16>>16==-1)){if(k<<16>>16==-1){i=j;break}if(m<<16>>16==-1){i=l;break}h=(c[a+616+(j<<2)>>2]|0)<(c[a+616+(i<<2)>>2]|0)?j:i;i=(c[a+616+(l<<2)>>2]|0)<(c[a+616+(h<<2)>>2]|0)?l:h}}while(0);b[a+568+(i<<1)>>1]=d;c[a+616+(i<<2)>>2]=e;c[a+712+(i<<2)>>2]=f;c[a+808+(i<<2)>>2]=fa(g,e)|0;return}function Lg(a,d){a=a|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)!=0){e=0;while(1){if((e|0)>=24){a=-1;e=7;break}if((b[a+568+(e<<1)>>1]|0)==d<<16>>16){a=e;e=7;break}else{e=e+1|0}}if((e|0)==7){return a|0}}e=d&65535;f=e&15;if((b[a+568+(f<<1)>>1]|0)==d<<16>>16){return f|0}f=f^8;if((b[a+568+(f<<1)>>1]|0)==d<<16>>16){return f|0}e=e&7|16;f=(b[a+568+(e<<1)>>1]|0)==d<<16>>16?e:-1;return f|0}function Mg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=0;while(1){e=a+568+(h<<1)|0;if((b[e>>1]|0)==-1){c[a+616+(h<<2)>>2]=-1}g=h+1|0;if((g|0)>=24){d=13;break}d=a+616+(h<<2)|0;f=a+712+(h<<2)|0;i=a+808+(h<<2)|0;h=g;do{j=a+568+(h<<1)|0;k=a+616+(h<<2)|0;if((b[j>>1]|0)==-1){c[k>>2]=-1;l=-1}else{l=c[k>>2]|0}if((c[d>>2]|0)<(l|0)){l=b[e>>1]|0;b[e>>1]=b[j>>1]|0;b[j>>1]=l;l=c[d>>2]|0;c[d>>2]=c[k>>2];c[k>>2]=l;l=c[f>>2]|0;k=a+712+(h<<2)|0;c[f>>2]=c[k>>2];c[k>>2]=l;k=c[i>>2]|0;l=a+808+(h<<2)|0;c[i>>2]=c[l>>2];c[l>>2]=k}h=h+1|0;}while((h|0)<24);if((g|0)<3){h=g}else{d=13;break}}if((d|0)==13){c[a+4>>2]=1;return}}function Ng(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;Ka(15520,14,1,d|0)|0;f=0;do{g=b[a+568+(f<<1)>>1]|0;if(!(g<<16>>16==-1)){l=Hf(g&65535)|0;k=c[a+616+(f<<2)>>2]|0;j=c[a+712+(f<<2)>>2]|0;h=c[a+808+(f<<2)>>2]|0;Zb(d|0,18440,(g=i,i=i+40|0,c[g>>2]=f,c[g+8>>2]=l,c[g+16>>2]=k,c[g+24>>2]=j,c[g+32>>2]=h,g)|0)|0;i=g}f=f+1|0;}while((f|0)<24);Zb(d|0,13368,(l=i,i=i+8|0,c[l>>2]=c[a>>2],l)|0)|0;i=l;i=e;return}function Og(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=c[f>>2]|0;if((g|0)<1){k=0;return k|0}h=c[e>>2]|0;i=c[b>>2]|0;j=c[b+32>>2]|0;k=c[b+16>>2]|0;l=a[h]|0;b=l&255;if(l<<24>>24>-1){l=a[j+(b+i)|0]|0;c[e>>2]=h+1;c[f>>2]=g-1;return l|0}if((b&224|0)==192&(g|0)>1){l=a[j+((d[j+(b+i)|0]<<k)+i+(d[h+1|0]|0))|0]|0;c[e>>2]=h+2;c[f>>2]=g-2;return l|0}if((b&240|0)==224&(g|0)>2){l=(d[j+(b+i)|0]<<k+4)+i|0;l=a[j+((a[j+(l+(d[h+1|0]|0))|0]<<k)+l+(d[h+2|0]|0))|0]|0;c[e>>2]=h+3;c[f>>2]=g-3;return l|0}if((b&248|0)==240&(g|0)>3){l=(d[j+((d[j+(b+i)|0]<<k)+i+(d[h+1|0]|0))|0]<<k+4)+i|0;l=a[j+((a[j+(l+(d[h+2|0]|0))|0]<<k)+l+(d[h+3|0]|0))|0]|0;c[e>>2]=h+4;c[f>>2]=g-4;return l|0}else{c[e>>2]=h+1;c[f>>2]=g-1;l=0;return l|0}return 0}function Pg(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=c[g>>2]|0;if((h|0)<1){j=0;return j|0}i=c[f>>2]|0;k=a[i]|0;j=k&255;if(k<<24>>24>-1){k=b[42408+(j<<1)>>1]|0;c[f>>2]=i+1;c[g>>2]=h-1;k=k&255;return k|0}if((j&224|0)==192&(h|0)>1){k=b[42408+(((e[42408+(j<<1)>>1]|0)<<6)+(d[i+1|0]|0)<<1)>>1]|0;c[f>>2]=i+2;c[g>>2]=h-2;k=k&255;return k|0}if((j&240|0)==224&(h|0)>2){k=b[42408+(((e[42408+(((e[42408+(j<<1)>>1]|0)<<6)+(d[i+1|0]|0)<<1)>>1]|0)<<6)+(d[i+2|0]|0)<<1)>>1]|0;c[f>>2]=i+3;c[g>>2]=h-3;k=k&255;return k|0}if((j&248|0)==240&(h|0)>3){k=b[42408+(((e[42408+(((e[42408+(((e[42408+(j<<1)>>1]|0)<<6)+(d[i+1|0]|0)<<1)>>1]|0)<<6)+(d[i+2|0]|0)<<1)>>1]|0)<<6)+(d[i+3|0]|0)<<1)>>1]|0;c[f>>2]=i+4;c[g>>2]=h-4;k=k&255;return k|0}else{c[f>>2]=i+1;c[g>>2]=h-1;k=0;return k|0}return 0}function Qg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=Rg(b)|0;m=Sg(e)|0;e=b+m|0;h=b+(m-7)|0;c[f>>2]=0;if((m|0)==0){return}else{i=b}a:do{b:do{if(i>>>0<h>>>0){while(1){j=c[i>>2]|0;k=i+4|0;m=c[k>>2]|0;l=i+8|0;if(((j-656877351|j+1145324612|m-656877351|m+1145324612)&-2139062144|0)!=0){if(!((a[28008+(d[i+1|0]|0)|0]|a[28008+(j&255)|0]|a[28008+(d[i+2|0]|0)|0]|a[28008+(d[i+3|0]|0)|0])<<24>>24==0)){break b}if(!((a[28008+(d[i+5|0]|0)|0]|a[28008+(m&255)|0]|a[28008+(d[i+6|0]|0)|0]|a[28008+(d[i+7|0]|0)|0])<<24>>24==0)){i=k;break b}}if(l>>>0<h>>>0){i=l}else{i=l;break}}}}while(0);if(i>>>0<e>>>0){k=i;i=0;l=28264}else{l=28264;g=13;break}while(1){j=a[28264+((d[k]|0)+i)|0]|0;i=k+1|0;if((j&255)>>>0>239>>>0){break}j=(j&255)<<6;l=28264+j|0;if(i>>>0<e>>>0){k=i;i=j}else{g=13;break a}}c:do{if(Tg(64,28264,l)|0){i=k}else{i=k;do{i=i-1|0;if(!(i>>>0>b>>>0)){break c}}while((a[i]&-64)<<24>>24==-128)}}while(0);}while(j<<24>>24==-3);d:do{if((g|0)==13){if(Tg(64,28264,l)|0){break}do{i=i-1|0;if(!(i>>>0>b>>>0)){break d}}while((a[i]&-64)<<24>>24==-128)}}while(0);c[f>>2]=i-b;return}function Rg(a){a=a|0;return a|0}function Sg(a){a=a|0;return a|0}function Tg(a,b,c){a=a|0;b=b|0;c=c|0;return(c-b|0)>>>0<a>>>0|0}function Ug(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=i;i=i+40|0;k=p|0;o=p+8|0;l=p+16|0;m=p+24|0;n=p+32|0;a=Rg(a)|0;of(k,a,Sg(b)|0);a=Rg(c[d>>2]|0)|0;of(o,a,Sg(c[d+4>>2]|0)|0);a=k|0;q=k+4|0;d=0;b=0;r=0;do{s=Vg(c[a>>2]|0,c[q>>2]|0,o,e,l,m,n,j)|0;u=c[l>>2]|0;Wg(k,u);t=c[m>>2]|0;Wg(o,t);d=u+d|0;r=t+r|0;b=(c[n>>2]|0)+b|0;}while((s|0)==253);c[f>>2]=d;c[g>>2]=r;c[h>>2]=b;i=p;return}function Vg(b,f,g,h,i,j,k,l){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,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;b=Rg(b)|0;E=Sg(f)|0;q=b+E|0;c[i>>2]=0;c[j>>2]=0;c[k>>2]=0;s=Rg(c[g>>2]|0)|0;D=Sg(c[g+4>>2]|0)|0;r=s+D|0;f=s;t=q;g=b;u=(l|0)==0;if((D|0)<(E|0)){if(u){E=239;return E|0}Yf(l,0);E=239;return E|0}else{p=b;n=0;x=76504;v=0;w=0;o=b}a:while(1){do{if(o>>>0<q>>>0){v=a[o]|0;E=a[x+(v&255)|0]|0;w=E&255;a[s]=v;o=o+1|0;s=s+1|0;if((E&255)>>>0>239>>>0){break}x=76504+(w<<6)|0;continue a}}while(0);if((w|0)<=239){m=43;break}b:do{switch(w|0){case 247:{if(!u){Yf(l,-2-p+o|0);_f(l,2);p=o}a[s-3|0]=a[x+((v&255)+64)|0]|0;n=n+1|0;x=76504;v=0;w=0;s=s-2|0;continue a};case 252:case 249:{A=0;m=28;break};case 251:{a[s-1|0]=a[x+(v&255|256)|0]|0;n=n+1|0;x=76504;v=0;w=0;continue a};case 244:{v=v&255;m=22;break};case 248:{if(!u){Yf(l,o+~p|0);_f(l,1);p=o}v=v&255;a[s-3|0]=a[x+(v+128)|0]|0;a[s-2|0]=a[x+(v+64)|0]|0;n=n+1|0;x=76504;v=0;w=0;s=s-1|0;continue a};case 246:{if(!u){Yf(l,o+~p|0);_f(l,1);p=o}a[s-2|0]=a[x+((v&255)+64)|0]|0;n=n+1|0;x=76504;v=0;w=0;s=s-1|0;continue a};case 245:{v=v&255;a[s-3|0]=a[x+(v+192)|0]|0;m=22;break};case 250:{m=v&255;if(Tg(320,76504,x)|0){A=d[x+(m|512)|0]<<8;m=28;break b}else{A=d[x+(m+128)|0]<<8;m=28;break b}};case 243:{v=v&255;break};default:{m=9;break a}}}while(0);if((m|0)==22){m=0;a[s-2|0]=a[x+(v+128)|0]|0}else if((m|0)==28){m=0;y=Tg(320,76504,x)|0;z=v&255;B=d[x+(y?z|256:z+64|0)|0]|A;A=27824+(B<<2)|0;x=a[A|0]&127;z=d[27825+(B<<2)|0]|0;if(!((z&128|0)==0|h)){A=B+1|0;z=d[27825+(A<<2)|0]|0;A=27824+(A<<2)|0}B=z&127;C=e[A+2>>1]|0;D=B-x|0;z=s+D|0;E=o;if((r-z|0)<(t-E|0)){w=239;m=39;break}Yq(s+(-x|0)|0,27688+C|0,B)|0;n=n+1|0;do{if(!u){if(B>>>0>x>>>0){Yf(l,E-p|0);Zf(l,D);p=o;break}if(!(B>>>0<x>>>0)){break}Yf(l,E-p-x+B|0);_f(l,x-B|0);p=o}}while(0);if((a[A|0]|0)<0){w=d[27688+(C+B)|0]|0;x=76504+(w<<6)|0;s=z;continue}else{if((w|0)==254){w=254;s=z;m=39;break}else{x=76504;v=0;w=0;s=z;continue}}}a[s-1|0]=a[x+(v+64)|0]|0;n=n+1|0;x=76504;v=0;w=0}c:do{if((m|0)==9){o=o-1|0;s=s-1|0;if(!(Tg(320,76504,x)|0)){m=40}}else if((m|0)==39){o=o-1|0;s=s-1|0;if(!y){m=40}}else if((m|0)==43){if(Tg(320,76504,x)|0){w=241;break}while(1){o=o-1|0;s=s-1|0;if(!(o>>>0>b>>>0)){w=240;break c}if(!((a[o]&-64)<<24>>24==-128)){w=240;break}}}}while(0);d:do{if((m|0)==40){do{o=o-1|0;s=s-1|0;if(!(o>>>0>b>>>0)){break d}}while((a[o]&-64)<<24>>24==-128)}}while(0);m=o;if((l|0)!=0&o>>>0>p>>>0){Yf(l,m-p|0)}c[i>>2]=m-g;c[j>>2]=s-f;c[k>>2]=n;E=w;return E|0}function Wg(a,b){a=a|0;b=b|0;var d=0;d=a|0;c[d>>2]=(c[d>>2]|0)+b;a=a+4|0;c[a>>2]=(c[a>>2]|0)-b;return}function Xg(a){a=a|0;return Hf(rd(a,Zq(a|0)|0)|0)|0}function Yg(){return(a[1108984]|0)!=0|0}function Zg(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;f=b|0;h=b+8|0;l=b+16|0;j=b+24|0;d=c[r>>2]|0;th(d);c[278194]=22412;c[278196]=22432;c[278195]=0;Fi(1112784,1111784);c[278214]=0;c[278215]=-1;g=c[o>>2]|0;c[277922]=22192;Mn(1111692);Xq(1111696,0,24)|0;c[277922]=22560;c[277930]=g;Nn(j,c[277923]|0);j=c[j>>2]|0;k=Pn(j,1112112)|0;e=k;On(j);c[277931]=e;c[277932]=1111920;a[1111732]=(uc[c[(c[k>>2]|0)+28>>2]&127](e)|0)&1;c[278128]=22316;c[278129]=22336;Fi(1112516,1111688);c[278147]=0;c[278148]=-1;e=c[t>>2]|0;c[277934]=22192;Mn(1111740);Xq(1111744,0,24)|0;c[277934]=22560;c[277942]=e;Nn(l,c[277935]|0);l=c[l>>2]|0;k=Pn(l,1112112)|0;j=k;On(l);c[277943]=j;c[277944]=1111928;a[1111780]=(uc[c[(c[k>>2]|0)+28>>2]&127](j)|0)&1;c[278172]=22316;c[278173]=22336;Fi(1112692,1111736);c[278191]=0;c[278192]=-1;j=c[(c[(c[278172]|0)-12>>2]|0)+1112712>>2]|0;c[278150]=22316;c[278151]=22336;Fi(1112604,j);c[278169]=0;c[278170]=-1;c[(c[(c[278194]|0)-12>>2]|0)+1112848>>2]=1112512;j=(c[(c[278172]|0)-12>>2]|0)+1112692|0;c[j>>2]=c[j>>2]|8192;c[(c[(c[278172]|0)-12>>2]|0)+1112760>>2]=1112512;fh(d);c[278106]=22364;c[278108]=22384;c[278107]=0;Fi(1112432,1111632);c[278126]=0;c[278127]=-1;c[277884]=22120;Mn(1111540);Xq(1111544,0,24)|0;c[277884]=22488;c[277892]=g;Nn(h,c[277885]|0);h=c[h>>2]|0;g=Pn(h,1112104)|0;d=g;On(h);c[277893]=d;c[277894]=1111944;a[1111580]=(uc[c[(c[g>>2]|0)+28>>2]&127](d)|0)&1;c[278036]=22268;c[278037]=22288;Fi(1112148,1111536);c[278055]=0;c[278056]=-1;c[277896]=22120;Mn(1111588);Xq(1111592,0,24)|0;c[277896]=22488;c[277904]=e;Nn(f,c[277897]|0);f=c[f>>2]|0;e=Pn(f,1112104)|0;d=e;On(f);c[277905]=d;c[277906]=1111952;a[1111628]=(uc[c[(c[e>>2]|0)+28>>2]&127](d)|0)&1;c[278080]=22268;c[278081]=22288;Fi(1112324,1111584);c[278099]=0;c[278100]=-1;d=c[(c[(c[278080]|0)-12>>2]|0)+1112344>>2]|0;c[278058]=22268;c[278059]=22288;Fi(1112236,d);c[278077]=0;c[278078]=-1;c[(c[(c[278106]|0)-12>>2]|0)+1112496>>2]=1112144;d=(c[(c[278080]|0)-12>>2]|0)+1112324|0;c[d>>2]=c[d>>2]|8192;c[(c[(c[278080]|0)-12>>2]|0)+1112392>>2]=1112144;i=b;return}function _g(a){a=a|0;kj(1112512);kj(1112600);pj(1112144);pj(1112232);return}function $g(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);return}function ah(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);Gq(a);return}function bh(b,d){b=b|0;d=d|0;var e=0;uc[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Pn(c[d>>2]|0,1112104)|0;d=e;c[b+36>>2]=d;a[b+44|0]=(uc[c[(c[e>>2]|0)+28>>2]&127](d)|0)&1;return}function ch(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;j=b|0;d=b+8|0;e=a+36|0;f=a+40|0;g=j|0;h=j+8|0;a=a+32|0;while(1){k=c[e>>2]|0;k=sc[c[(c[k>>2]|0)+20>>2]&31](k,c[f>>2]|0,g,h,d)|0;l=(c[d>>2]|0)-j|0;if((Ka(g|0,1,l|0,c[a>>2]|0)|0)!=(l|0)){e=-1;d=5;break}if((k|0)==2){e=-1;d=5;break}else if((k|0)!=1){d=4;break}}if((d|0)==4){l=((Ia(c[a>>2]|0)|0)!=0)<<31>>31;i=b;return l|0}else if((d|0)==5){i=b;return e|0}return 0}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if((a[b+44|0]|0)!=0){g=Ka(d|0,4,e|0,c[b+32>>2]|0)|0;return g|0}f=b;if((e|0)>0){g=0}else{g=0;return g|0}while(1){if((rc[c[(c[f>>2]|0)+52>>2]&31](b,c[d>>2]|0)|0)==-1){b=6;break}g=g+1|0;if((g|0)<(e|0)){d=d+4|0}else{b=6;break}}if((b|0)==6){return g|0}return 0}function eh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+32|0;o=e|0;p=e+8|0;h=e+16|0;j=e+24|0;f=(d|0)==-1;a:do{if(!f){c[p>>2]=d;if((a[b+44|0]|0)!=0){if((Ka(p|0,4,1,c[b+32>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}m=o|0;c[h>>2]=m;k=p+4|0;n=b+36|0;l=b+40|0;g=o+8|0;b=b+32|0;while(1){q=c[n>>2]|0;q=zc[c[(c[q>>2]|0)+12>>2]&31](q,c[l>>2]|0,p,k,j,m,g,h)|0;if((c[j>>2]|0)==(p|0)){d=-1;g=12;break}if((q|0)==3){g=7;break}r=(q|0)==1;if(!(q>>>0<2>>>0)){d=-1;g=12;break}q=(c[h>>2]|0)-o|0;if((Ka(m|0,1,q|0,c[b>>2]|0)|0)!=(q|0)){d=-1;g=12;break}if(r){p=r?c[j>>2]|0:p}else{break a}}if((g|0)==7){if((Ka(p|0,1,1,c[b>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}else if((g|0)==12){i=e;return d|0}}}while(0);r=f?0:d;i=e;return r|0}function fh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+8|0;f=d|0;c[277908]=22120;Mn(1111636);Xq(1111640,0,24)|0;c[277908]=22888;c[277916]=b;c[277918]=1111936;c[277920]=-1;a[1111684]=0;Nn(f,c[277909]|0);b=c[f>>2]|0;f=Pn(b,1112104)|0;e=f;c[277917]=e;c[277919]=uc[c[(c[f>>2]|0)+24>>2]&127](e)|0;e=c[277917]|0;a[1111685]=(uc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[277919]|0)<=8){On(b);i=d;return}Xm(328);On(b);i=d;return}function gh(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);return}function hh(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);Gq(a);return}function ih(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=Pn(c[d>>2]|0,1112104)|0;f=g;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=uc[c[(c[g>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53|0]=(uc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8){Xm(328)}else{return}}function jh(a){a=a|0;return mh(a,0)|0}function kh(a){a=a|0;return mh(a,1)|0}function lh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;k=e|0;f=e+8|0;m=e+16|0;l=e+24|0;g=b+52|0;j=(a[g]|0)!=0;if((d|0)==-1){if(j){m=-1;i=e;return m|0}m=c[b+48>>2]|0;a[g]=(m|0)!=-1|0;i=e;return m|0}h=b+48|0;a:do{if(j){c[m>>2]=c[h>>2];n=c[b+36>>2]|0;j=k|0;l=zc[c[(c[n>>2]|0)+12>>2]&31](n,c[b+40>>2]|0,m,m+4|0,l,j,k+8|0,f)|0;if((l|0)==3){a[j]=c[h>>2];c[f>>2]=k+1}else if((l|0)==2|(l|0)==1){n=-1;i=e;return n|0}b=b+32|0;while(1){k=c[f>>2]|0;if(!(k>>>0>j>>>0)){break a}n=k-1|0;c[f>>2]=n;if((Rb(a[n]|0,c[b>>2]|0)|0)==-1){f=-1;break}}i=e;return f|0}}while(0);c[h>>2]=d;a[g]=1;n=d;i=e;return n|0}function mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+32|0;f=e|0;h=e+8|0;m=e+16|0;l=e+24|0;n=b+52|0;if((a[n]|0)!=0){f=b+48|0;g=c[f>>2]|0;if(!d){w=g;i=e;return w|0}c[f>>2]=-1;a[n]=0;w=g;i=e;return w|0}n=c[b+44>>2]|0;t=(n|0)>1?n:1;a:do{if((t|0)>0){p=b+32|0;n=0;while(1){o=$a(c[p>>2]|0)|0;if((o|0)==-1){g=-1;break}a[f+n|0]=o;n=n+1|0;if((n|0)>=(t|0)){break a}}i=e;return g|0}}while(0);b:do{if((a[b+53|0]|0)==0){o=b+40|0;n=b+36|0;r=f|0;q=h+4|0;p=b+32|0;while(1){v=c[o>>2]|0;w=v;u=c[w>>2]|0;w=c[w+4>>2]|0;x=c[n>>2]|0;s=f+t|0;v=zc[c[(c[x>>2]|0)+16>>2]&31](x,v,r,s,m,h,q,l)|0;if((v|0)==3){j=14;break}else if((v|0)==2){g=-1;j=22;break}else if((v|0)!=1){k=t;break b}x=c[o>>2]|0;c[x>>2]=u;c[x+4>>2]=w;if((t|0)==8){g=-1;j=22;break}u=$a(c[p>>2]|0)|0;if((u|0)==-1){g=-1;j=22;break}a[s]=u;t=t+1|0}if((j|0)==14){c[h>>2]=a[r]|0;k=t;break}else if((j|0)==22){i=e;return g|0}}else{c[h>>2]=a[f|0]|0;k=t}}while(0);if(d){x=c[h>>2]|0;c[b+48>>2]=x;i=e;return x|0}d=b+32|0;while(1){if((k|0)<=0){break}k=k-1|0;if((Rb(a[f+k|0]|0,c[d>>2]|0)|0)==-1){g=-1;j=22;break}}if((j|0)==22){i=e;return g|0}x=c[h>>2]|0;i=e;return x|0}function nh(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);return}function oh(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);Gq(a);return}function ph(b,d){b=b|0;d=d|0;var e=0;uc[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Pn(c[d>>2]|0,1112112)|0;d=e;c[b+36>>2]=d;a[b+44|0]=(uc[c[(c[e>>2]|0)+28>>2]&127](d)|0)&1;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;j=b|0;d=b+8|0;e=a+36|0;f=a+40|0;g=j|0;h=j+8|0;a=a+32|0;while(1){k=c[e>>2]|0;k=sc[c[(c[k>>2]|0)+20>>2]&31](k,c[f>>2]|0,g,h,d)|0;l=(c[d>>2]|0)-j|0;if((Ka(g|0,1,l|0,c[a>>2]|0)|0)!=(l|0)){e=-1;d=5;break}if((k|0)==2){e=-1;d=5;break}else if((k|0)!=1){d=4;break}}if((d|0)==4){l=((Ia(c[a>>2]|0)|0)!=0)<<31>>31;i=b;return l|0}else if((d|0)==5){i=b;return e|0}return 0}function rh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;if((a[b+44|0]|0)!=0){h=Ka(e|0,1,f|0,c[b+32>>2]|0)|0;return h|0}g=b;if((f|0)>0){h=0}else{h=0;return h|0}while(1){if((rc[c[(c[g>>2]|0)+52>>2]&31](b,d[e]|0)|0)==-1){b=6;break}h=h+1|0;if((h|0)<(f|0)){e=e+1|0}else{b=6;break}}if((b|0)==6){return h|0}return 0}function sh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+32|0;o=e|0;p=e+8|0;h=e+16|0;j=e+24|0;f=(d|0)==-1;a:do{if(!f){a[p]=d;if((a[b+44|0]|0)!=0){if((Ka(p|0,1,1,c[b+32>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}m=o|0;c[h>>2]=m;k=p+1|0;n=b+36|0;l=b+40|0;g=o+8|0;b=b+32|0;while(1){q=c[n>>2]|0;q=zc[c[(c[q>>2]|0)+12>>2]&31](q,c[l>>2]|0,p,k,j,m,g,h)|0;if((c[j>>2]|0)==(p|0)){d=-1;g=12;break}if((q|0)==3){g=7;break}r=(q|0)==1;if(!(q>>>0<2>>>0)){d=-1;g=12;break}q=(c[h>>2]|0)-o|0;if((Ka(m|0,1,q|0,c[b>>2]|0)|0)!=(q|0)){d=-1;g=12;break}if(r){p=r?c[j>>2]|0:p}else{break a}}if((g|0)==7){if((Ka(p|0,1,1,c[b>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}else if((g|0)==12){i=e;return d|0}}}while(0);r=f?0:d;i=e;return r|0}function th(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+8|0;f=d|0;c[277946]=22192;Mn(1111788);Xq(1111792,0,24)|0;c[277946]=22960;c[277954]=b;c[277956]=1111912;c[277958]=-1;a[1111836]=0;Nn(f,c[277947]|0);b=c[f>>2]|0;f=Pn(b,1112112)|0;e=f;c[277955]=e;c[277957]=uc[c[(c[f>>2]|0)+24>>2]&127](e)|0;e=c[277955]|0;a[1111837]=(uc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[277957]|0)<=8){On(b);i=d;return}Xm(328);On(b);i=d;return}function uh(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);return}function vh(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);Gq(a);return}function wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=Pn(c[d>>2]|0,1112112)|0;f=g;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=uc[c[(c[g>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53|0]=(uc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8){Xm(328)}else{return}}function xh(a){a=a|0;return Ah(a,0)|0}function yh(a){a=a|0;return Ah(a,1)|0}function zh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;k=e|0;f=e+8|0;m=e+16|0;l=e+24|0;g=b+52|0;j=(a[g]|0)!=0;if((d|0)==-1){if(j){m=-1;i=e;return m|0}m=c[b+48>>2]|0;a[g]=(m|0)!=-1|0;i=e;return m|0}h=b+48|0;a:do{if(j){a[m]=c[h>>2];n=c[b+36>>2]|0;j=k|0;l=zc[c[(c[n>>2]|0)+12>>2]&31](n,c[b+40>>2]|0,m,m+1|0,l,j,k+8|0,f)|0;if((l|0)==3){a[j]=c[h>>2];c[f>>2]=k+1}else if((l|0)==2|(l|0)==1){n=-1;i=e;return n|0}b=b+32|0;while(1){k=c[f>>2]|0;if(!(k>>>0>j>>>0)){break a}n=k-1|0;c[f>>2]=n;if((Rb(a[n]|0,c[b>>2]|0)|0)==-1){f=-1;break}}i=e;return f|0}}while(0);c[h>>2]=d;a[g]=1;n=d;i=e;return n|0}function Ah(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+32|0;h=f|0;j=f+8|0;n=f+16|0;m=f+24|0;o=b+52|0;if((a[o]|0)!=0){g=b+48|0;h=c[g>>2]|0;if(!e){x=h;i=f;return x|0}c[g>>2]=-1;a[o]=0;x=h;i=f;return x|0}o=c[b+44>>2]|0;t=(o|0)>1?o:1;a:do{if((t|0)>0){q=b+32|0;o=0;while(1){p=$a(c[q>>2]|0)|0;if((p|0)==-1){k=-1;break}a[h+o|0]=p;o=o+1|0;if((o|0)>=(t|0)){break a}}i=f;return k|0}}while(0);b:do{if((a[b+53|0]|0)==0){r=b+40|0;q=b+36|0;o=h|0;p=j+1|0;s=b+32|0;while(1){w=c[r>>2]|0;x=w;v=c[x>>2]|0;x=c[x+4>>2]|0;y=c[q>>2]|0;u=h+t|0;w=zc[c[(c[y>>2]|0)+16>>2]&31](y,w,o,u,n,j,p,m)|0;if((w|0)==2){k=-1;m=23;break}else if((w|0)==3){m=14;break}else if((w|0)!=1){l=t;break b}y=c[r>>2]|0;c[y>>2]=v;c[y+4>>2]=x;if((t|0)==8){k=-1;m=23;break}v=$a(c[s>>2]|0)|0;if((v|0)==-1){k=-1;m=23;break}a[u]=v;t=t+1|0}if((m|0)==14){a[j]=a[o]|0;l=t;break}else if((m|0)==23){i=f;return k|0}}else{a[j]=a[h|0]|0;l=t}}while(0);do{if(e){g=a[j]|0;c[b+48>>2]=g&255}else{e=b+32|0;while(1){if((l|0)<=0){m=21;break}l=l-1|0;if((Rb(d[h+l|0]|0,c[e>>2]|0)|0)==-1){k=-1;m=23;break}}if((m|0)==21){g=a[j]|0;break}else if((m|0)==23){i=f;return k|0}}}while(0);y=g&255;i=f;return y|0}function Bh(){Zg();bb(130,1112864,p|0)|0;return}function Ch(a){a=a|0;a=a+4|0;H=c[a>>2]|0,c[a>>2]=H+1,H;return}function Dh(a){a=a|0;var b=0;b=a+4|0;if(((H=c[b>>2]|0,c[b>>2]=H+ -1,H)|0)!=0){return}pc[c[(c[a>>2]|0)+8>>2]&255](a);return}function Eh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a>>2]=20496;a=a+4|0;if((a|0)==0){return}d=Zq(b|0)|0;f=Fq(d+13|0)|0;c[f+4>>2]=d;c[f>>2]=d;e=f+12|0;c[a>>2]=e;c[f+8>>2]=0;Yq(e|0,b|0,d+1|0)|0;return}function Fh(a){a=a|0;var b=0,d=0;c[a>>2]=20496;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((H=c[d>>2]|0,c[d>>2]=H+ -1,H)-1|0)<0){b=(c[b>>2]|0)-12|0;if((b|0)==0){break}Hq(b)}}while(0);Gq(a);return}function Gh(a){a=a|0;var b=0;c[a>>2]=20496;a=a+4|0;b=(c[a>>2]|0)-4|0;if(((H=c[b>>2]|0,c[b>>2]=H+ -1,H)-1|0)>=0){return}a=(c[a>>2]|0)-12|0;if((a|0)==0){return}Hq(a);return}function Hh(a){a=a|0;return c[a+4>>2]|0}function Ih(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;c[b>>2]=20432;b=b+4|0;if((b|0)==0){return}if((a[d]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}e=Zq(d|0)|0;g=Fq(e+13|0)|0;c[g+4>>2]=e;c[g>>2]=e;f=g+12|0;c[b>>2]=f;c[g+8>>2]=0;Yq(f|0,d|0,e+1|0)|0;return}function Jh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a>>2]=20432;a=a+4|0;if((a|0)==0){return}d=Zq(b|0)|0;f=Fq(d+13|0)|0;c[f+4>>2]=d;c[f>>2]=d;e=f+12|0;c[a>>2]=e;c[f+8>>2]=0;Yq(e|0,b|0,d+1|0)|0;return}function Kh(a){a=a|0;var b=0,d=0;c[a>>2]=20432;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((H=c[d>>2]|0,c[d>>2]=H+ -1,H)-1|0)<0){b=(c[b>>2]|0)-12|0;if((b|0)==0){break}Hq(b)}}while(0);Gq(a);return}function Lh(a){a=a|0;var b=0;c[a>>2]=20432;a=a+4|0;b=(c[a>>2]|0)-4|0;if(((H=c[b>>2]|0,c[b>>2]=H+ -1,H)-1|0)>=0){return}a=(c[a>>2]|0)-12|0;if((a|0)==0){return}Hq(a);return}function Mh(a){a=a|0;return c[a+4>>2]|0}function Nh(a){a=a|0;var b=0,d=0;c[a>>2]=20496;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((H=c[d>>2]|0,c[d>>2]=H+ -1,H)-1|0)<0){b=(c[b>>2]|0)-12|0;if((b|0)==0){break}Hq(b)}}while(0);Gq(a);return}function Oh(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function Ph(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+8|0;f=e|0;wc[c[(c[a>>2]|0)+12>>2]&7](f,a,b);if((c[f+4>>2]|0)!=(c[d+4>>2]|0)){a=0;i=e;return a|0}a=(c[f>>2]|0)==(c[d>>2]|0);i=e;return a|0}function Qh(a,b,d){a=a|0;b=b|0;d=d|0;if((c[b+4>>2]|0)!=(a|0)){a=0;return a|0}a=(c[b>>2]|0)==(d|0);return a|0}function Rh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=Nb(d|0)|0;d=Zq(e|0)|0;if(d>>>0>4294967279>>>0){Xh()}if(d>>>0<11>>>0){a[b]=d<<1;b=b+1|0;Yq(b|0,e|0,d)|0;e=b+d|0;a[e]=0;return}else{g=d+16&-16;f=Eq(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f;Yq(b|0,e|0,d)|0;e=b+d|0;a[e]=0;return}}function Sh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f|0;j=d|0;k=c[j>>2]|0;h=e;do{if((k|0)!=0){l=a[h]|0;if((l&1)==0){l=(l&255)>>>1}else{l=c[e+4>>2]|0}if((l|0)!=0){oi(e,12072,2);k=c[j>>2]|0}d=c[d+4>>2]|0;wc[c[(c[d>>2]|0)+24>>2]&7](g,d,k);d=g;j=a[d]|0;if((j&1)==0){j=(j&255)>>>1;k=g+1|0}else{j=c[g+4>>2]|0;k=c[g+8>>2]|0}oi(e,k,j);if((a[d]&1)==0){break}Gq(c[g+8>>2]|0)}}while(0);l=b;c[l>>2]=c[h>>2];c[l+4>>2]=c[h+4>>2];c[l+8>>2]=c[h+8>>2];Xq(h|0,0,12)|0;i=f;return}function Th(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+8|0;h=g|0;j=h;c[h>>2]=d;c[j+4>>2]=e;k=i;i=i+12|0;i=i+7&-8;d=i;i=i+12|0;i=i+7&-8;l=Zq(f|0)|0;if(l>>>0>4294967279>>>0){Xh()}if(l>>>0<11>>>0){a[d]=l<<1;e=d+1|0}else{m=l+16&-16;e=Eq(m)|0;c[d+8>>2]=e;c[d>>2]=m|1;c[d+4>>2]=l}Yq(e|0,f|0,l)|0;a[e+l|0]=0;Sh(k,j,d);Ih(b|0,k);if(!((a[k]&1)==0)){Gq(c[k+8>>2]|0)}if((a[d]&1)==0){m=b|0;c[m>>2]=22456;m=b+8|0;d=h|0;d=c[d>>2]|0;l=h+4|0;l=c[l>>2]|0;k=m|0;c[k>>2]=d;m=m+4|0;c[m>>2]=l;i=g;return}Gq(c[d+8>>2]|0);m=b|0;c[m>>2]=22456;m=b+8|0;d=h|0;d=c[d>>2]|0;l=h+4|0;l=c[l>>2]|0;k=m|0;c[k>>2]=d;m=m+4|0;c[m>>2]=l;i=g;return}function Uh(a){a=a|0;Lh(a|0);Gq(a);return}function Vh(a){a=a|0;Lh(a|0);return}function Wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h;if((c[a>>2]|0)==1){do{Ta(1111864,1111840)|0;}while((c[a>>2]|0)==1)}if((c[a>>2]|0)!=0){d;return}c[a>>2]=1;e;Mp(b);f;c[a>>2]=-1;g;Hb(1111864)|0;return}function Xh(){var a=0;a=ec(8)|0;Eh(a,18248);c[a>>2]=20464;Ab(a|0,26120,88)}function Yh(a){a=a|0;Xq(a|0,0,12)|0;return}function Zh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=d;if((a[e]&1)==0){d=b;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];return}e=c[d+8>>2]|0;d=c[d+4>>2]|0;if(d>>>0>4294967279>>>0){Xh()}if(d>>>0<11>>>0){a[b]=d<<1;b=b+1|0}else{g=d+16&-16;f=Eq(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}Yq(b|0,e|0,d)|0;a[b+d|0]=0;return}function _h(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>4294967279>>>0){Xh()}if(e>>>0<11>>>0){a[b]=e<<1;b=b+1|0;Yq(b|0,d|0,e)|0;d=b+e|0;a[d]=0;return}else{g=e+16&-16;f=Eq(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f;Yq(b|0,d|0,e)|0;d=b+e|0;a[d]=0;return}}function $h(b){b=b|0;a[b]=0;a[b+1|0]=0;return}function ai(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>4294967279>>>0){Xh()}if(e>>>0<11>>>0){a[b]=e<<1;b=b+1|0;Yq(b|0,d|0,e)|0;d=b+e|0;a[d]=0;return}else{g=e+16&-16;f=Eq(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f;Yq(b|0,d|0,e)|0;d=b+e|0;a[d]=0;return}}function bi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>4294967279>>>0){Xh()}if(d>>>0<11>>>0){a[b]=d<<1;b=b+1|0}else{g=d+16&-16;f=Eq(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}Xq(b|0,e|0,d|0)|0;a[b+d|0]=0;return}function ci(b){b=b|0;var d=0;d=a[b]|0;if((d&1)==0){d=(d&255)>>>1;return d|0}else{d=c[b+4>>2]|0;return d|0}return 0}function di(b){b=b|0;if((a[b]&1)==0){return}Gq(c[b+8>>2]|0);return}function ei(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Zq(d|0)|0;f=b;h=a[f]|0;if((h&1)==0){g=10}else{h=c[b>>2]|0;g=(h&-2)-1|0;h=h&255}i=(h&1)==0;if(g>>>0<e>>>0){if(i){f=(h&255)>>>1}else{f=c[b+4>>2]|0}pi(b,g,e-g|0,f,0,f,e,d);return}if(i){g=b+1|0}else{g=c[b+8>>2]|0}$q(g|0,d|0,e|0)|0;a[g+e|0]=0;if((a[f]&1)==0){a[f]=e<<1;return}else{c[b+4>>2]=e;return}}function fi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b;g=a[e]|0;f=(g&1)==0;if(f){g=(g&255)>>>1}else{g=c[b+4>>2]|0}if(g>>>0<d>>>0){gi(b,d-g|0,0);return}if(f){a[b+1+d|0]=0;a[e]=d<<1;return}else{a[(c[b+8>>2]|0)+d|0]=0;c[b+4>>2]=d;return}}function gi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((d|0)==0){return}f=b;i=a[f]|0;if((i&1)==0){h=10}else{i=c[b>>2]|0;h=(i&-2)-1|0;i=i&255}if((i&1)==0){g=(i&255)>>>1}else{g=c[b+4>>2]|0}if((h-g|0)>>>0<d>>>0){qi(b,h,d-h+g|0,g,g,0);i=a[f]|0}if((i&1)==0){h=b+1|0}else{h=c[b+8>>2]|0}Xq(h+g|0,e|0,d|0)|0;e=g+d|0;if((a[f]&1)==0){a[f]=e<<1}else{c[b+4>>2]=e}a[h+e|0]=0;return}function hi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=b;g=a[f]|0;if((g&1)==0){i=10}else{g=c[b>>2]|0;i=(g&-2)-1|0;g=g&255}h=(g&1)==0;if(h){d=(g&255)>>>1}else{d=c[b+4>>2]|0}if(d>>>0<11>>>0){e=10}else{e=(d+16&-16)-1|0}if((e|0)==(i|0)){return}do{if((e|0)==10){i=b+1|0;j=c[b+8>>2]|0;if(!h){g=0;h=j;j=19;break}Yq(i|0,j|0,((g&255)>>>1)+1|0)|0;Gq(j);j=21}else{j=e+1|0;if(e>>>0>i>>>0){i=Eq(j)|0}else{i=Eq(j)|0}if(h){Yq(i|0,b+1|0,((g&255)>>>1)+1|0)|0;j=20;break}else{g=1;h=c[b+8>>2]|0;j=19;break}}}while(0);if((j|0)==19){Yq(i|0,h|0,(c[b+4>>2]|0)+1|0)|0;Gq(h);if(g){j=20}else{j=21}}if((j|0)==20){c[b>>2]=e+1|1;c[b+4>>2]=d;c[b+8>>2]=i;return}else if((j|0)==21){a[f]=d<<1;return}}function ii(b){b=b|0;var d=0;d=b;if((a[d]&1)==0){a[b+1|0]=0;a[d]=0;return}else{a[c[b+8>>2]|0]=0;c[b+4>>2]=0;return}}function ji(b){b=b|0;var d=0;d=a[b]|0;if((d&1)==0){b=(d&255)>>>1}else{b=c[b+4>>2]|0}return(b|0)==0|0}function ki(b,d){b=b|0;d=d|0;if((a[b]&1)==0){b=b+1|0}else{b=c[b+8>>2]|0}return b+d|0}function li(b,d){b=b|0;d=d|0;if((a[b]&1)==0){b=b+1|0}else{b=c[b+8>>2]|0}return b+d|0}function mi(a,b){a=a|0;b=b|0;oi(a,b,Zq(b|0)|0);return}function ni(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=b;g=a[e]|0;f=(g&1)!=0;if(f){g=c[b+4>>2]|0;h=(c[b>>2]&-2)-1|0}else{g=(g&255)>>>1;h=10}if((g|0)==(h|0)){qi(b,h,1,h,h,0);if((a[e]&1)==0){f=7}else{f=8}}else{if(f){f=8}else{f=7}}if((f|0)==7){a[e]=(g<<1)+2;f=b+1|0;h=g+1|0;g=f+g|0;a[g]=d;h=f+h|0;a[h]=0;return}else if((f|0)==8){f=c[b+8>>2]|0;h=g+1|0;c[b+4>>2]=h;g=f+g|0;a[g]=d;h=f+h|0;a[h]=0;return}}function oi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b;i=a[f]|0;if((i&1)==0){g=10}else{i=c[b>>2]|0;g=(i&-2)-1|0;i=i&255}h=(i&1)==0;if(h){i=(i&255)>>>1}else{i=c[b+4>>2]|0}if((g-i|0)>>>0<e>>>0){pi(b,g,e-g+i|0,i,i,0,e,d);return}if((e|0)==0){return}if(h){g=b+1|0}else{g=c[b+8>>2]|0}Yq(g+i|0,d|0,e)|0;e=i+e|0;if((a[f]&1)==0){a[f]=e<<1}else{c[b+4>>2]=e}a[g+e|0]=0;return}function pi(b,d,e,f,g,h,i,j){b=b|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((-18-d|0)>>>0<e>>>0){Xh()}if((a[b]&1)==0){k=b+1|0}else{k=c[b+8>>2]|0}do{if(d>>>0<2147483623>>>0){l=e+d|0;e=d<<1;e=l>>>0<e>>>0?e:l;if(e>>>0<11>>>0){l=11;break}l=e+16&-16}else{l=-17}}while(0);e=Eq(l)|0;if((g|0)!=0){Yq(e|0,k|0,g)|0}if((i|0)!=0){Yq(e+g|0,j|0,i)|0}f=f-h|0;if((f|0)!=(g|0)){Yq(e+(i+g)|0,k+(h+g)|0,f-g|0)|0}if((d|0)==10){j=b+8|0;c[j>>2]=e;j=l|1;l=b|0;c[l>>2]=j;l=f+i|0;j=b+4|0;c[j>>2]=l;l=e+l|0;a[l]=0;return}Gq(k);j=b+8|0;c[j>>2]=e;j=l|1;l=b|0;c[l>>2]=j;l=f+i|0;j=b+4|0;c[j>>2]=l;l=e+l|0;a[l]=0;return}function qi(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;if((-17-d|0)>>>0<e>>>0){Xh()}if((a[b]&1)==0){i=b+1|0}else{i=c[b+8>>2]|0}do{if(d>>>0<2147483623>>>0){j=e+d|0;e=d<<1;e=j>>>0<e>>>0?e:j;if(e>>>0<11>>>0){j=11;break}j=e+16&-16}else{j=-17}}while(0);e=Eq(j)|0;if((g|0)!=0){Yq(e|0,i|0,g)|0}if((f|0)!=(g|0)){Yq(e+(h+g)|0,i+g|0,f-g|0)|0}if((d|0)==10){h=b+8|0;c[h>>2]=e;e=j|1;j=b|0;c[j>>2]=e;return}Gq(i);h=b+8|0;c[h>>2]=e;e=j|1;j=b|0;c[j>>2]=e;return}function ri(b){b=b|0;if((a[b]&1)==0){b=b+1|0;return b|0}else{b=c[b+8>>2]|0;return b|0}return 0}function si(b,d){b=b|0;d=d|0;var e=0,f=0;f=a[b]|0;e=(f&1)==0;if(e){f=(f&255)>>>1}else{f=c[b+4>>2]|0}if(!(f>>>0>d>>>0)){f=-1;return f|0}if(e){b=b+1|0}else{b=c[b+8>>2]|0}d=Xa(b+d|0,44,f-d|0)|0;if((d|0)==0){f=-1;return f|0}f=d-b|0;return f|0}function ti(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>1073741807>>>0){Xh()}if(e>>>0<2>>>0){a[b]=e<<1;b=b+4|0;bq(b,d,e);d=b+(e<<2)|0;c[d>>2]=0;return}else{g=e+4&-4;f=Eq(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f;bq(b,d,e);d=b+(e<<2)|0;c[d>>2]=0;return}}function ui(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>1073741807>>>0){Xh()}if(d>>>0<2>>>0){a[b]=d<<1;b=b+4|0;dq(b,e,d);e=b+(d<<2)|0;c[e>>2]=0;return}else{g=d+4&-4;f=Eq(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f;dq(b,e,d);e=b+(d<<2)|0;c[e>>2]=0;return}}function vi(b){b=b|0;if((a[b]&1)==0){return}Gq(c[b+8>>2]|0);return}function wi(a,b){a=a|0;b=b|0;xi(a,b,aq(b)|0);return}function xi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b;h=a[f]|0;if((h&1)==0){g=1}else{h=c[b>>2]|0;g=(h&-2)-1|0;h=h&255}i=(h&1)==0;if(g>>>0<e>>>0){if(i){f=(h&255)>>>1}else{f=c[b+4>>2]|0}Ai(b,g,e-g|0,f,f,e,d);return}if(i){g=b+4|0}else{g=c[b+8>>2]|0}cq(g,d,e);c[g+(e<<2)>>2]=0;if((a[f]&1)==0){a[f]=e<<1;return}else{c[b+4>>2]=e;return}}function yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=b;g=a[f]|0;if((g&1)==0){h=1}else{g=c[b>>2]|0;h=(g&-2)-1|0;g=g&255}i=(g&1)==0;if(i){d=(g&255)>>>1}else{d=c[b+4>>2]|0}if(d>>>0<2>>>0){e=1}else{e=(d+4&-4)-1|0}if((e|0)==(h|0)){return}do{if((e|0)==1){h=b+4|0;k=c[b+8>>2]|0;if(i){j=0;i=1;l=h;h=19}else{g=0;l=h;h=18}}else{j=(e<<2)+4|0;if(e>>>0>h>>>0){h=Eq(j)|0}else{h=Eq(j)|0}if(i){j=1;i=0;k=b+4|0;l=h;h=19;break}else{g=1;k=c[b+8>>2]|0;l=h;h=18;break}}}while(0);do{if((h|0)==18){bq(l,k,(c[b+4>>2]|0)+1|0);Gq(k);if(g){h=22}else{h=23}}else if((h|0)==19){bq(l,k,((g&255)>>>1)+1|0);if(i){Gq(k);if(j){h=22;break}else{h=23;break}}else{if(j){h=22;break}else{h=23;break}}}}while(0);if((h|0)==22){c[b>>2]=e+1|1;c[b+4>>2]=d;c[b+8>>2]=l;return}else if((h|0)==23){a[f]=d<<1;return}}function zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=b;g=a[e]|0;f=(g&1)!=0;if(f){g=c[b+4>>2]|0;h=(c[b>>2]&-2)-1|0}else{g=(g&255)>>>1;h=1}if((g|0)==(h|0)){Bi(b,h,1,h,h,0,0);if((a[e]&1)==0){f=7}else{f=8}}else{if(f){f=8}else{f=7}}if((f|0)==7){a[e]=(g<<1)+2;f=b+4|0;h=g+1|0;g=f+(g<<2)|0;c[g>>2]=d;h=f+(h<<2)|0;c[h>>2]=0;return}else if((f|0)==8){f=c[b+8>>2]|0;h=g+1|0;c[b+4>>2]=h;g=f+(g<<2)|0;c[g>>2]=d;h=f+(h<<2)|0;c[h>>2]=0;return}}function Ai(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;if((1073741806-d|0)>>>0<e>>>0){Xh()}if((a[b]&1)==0){j=b+4|0}else{j=c[b+8>>2]|0}do{if(d>>>0<536870887>>>0){k=e+d|0;e=d<<1;e=k>>>0<e>>>0?e:k;if(e>>>0<2>>>0){k=2;break}k=e+4&-4}else{k=1073741807}}while(0);e=Eq(k<<2)|0;if((h|0)!=0){bq(e,i,h)}i=f-g|0;if((f|0)!=(g|0)){bq(e+(h<<2)|0,j+(g<<2)|0,i)}if((d|0)!=1){Gq(j)}c[b+8>>2]=e;c[b>>2]=k|1;k=i+h|0;c[b+4>>2]=k;c[e+(k<<2)>>2]=0;return}function Bi(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;if((1073741807-d|0)>>>0<e>>>0){Xh()}if((a[b]&1)==0){j=b+4|0}else{j=c[b+8>>2]|0}do{if(d>>>0<536870887>>>0){k=e+d|0;e=d<<1;e=k>>>0<e>>>0?e:k;if(e>>>0<2>>>0){k=2;break}k=e+4&-4}else{k=1073741807}}while(0);e=Eq(k<<2)|0;if((g|0)!=0){bq(e,j,g)}f=f-h|0;if((f|0)!=(g|0)){bq(e+(i+g<<2)|0,j+(h+g<<2)|0,f-g|0)}if((d|0)==1){f=b+8|0;c[f>>2]=e;e=k|1;k=b|0;c[k>>2]=e;return}Gq(j);f=b+8|0;c[f>>2]=e;e=k|1;k=b|0;c[k>>2]=e;return}function Ci(b,d){b=b|0;d=d|0;var e=0;e=(c[b+24>>2]|0)==0;if(e){c[b+16>>2]=d|1}else{c[b+16>>2]=d}if(((e&1|d)&c[b+20>>2]|0)==0){return}d=ec(16)|0;do{if((a[1113072]|0)==0){if((pb(1113072)|0)==0){break}c[277748]=21960}}while(0);Th(d,1,1110992,13424);c[d>>2]=21144;Ab(d|0,26664,30)}function Di(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=21120;e=c[a+40>>2]|0;b=a+32|0;d=a+36|0;if((e|0)!=0){do{e=e-1|0;wc[c[(c[b>>2]|0)+(e<<2)>>2]&7](0,a,c[(c[d>>2]|0)+(e<<2)>>2]|0);}while((e|0)!=0)}On(c[a+28>>2]|0);Aq(c[b>>2]|0);Aq(c[d>>2]|0);Aq(c[a+48>>2]|0);Aq(c[a+60>>2]|0);return}function Ei(a,b){a=a|0;b=b|0;Nn(a,c[b+28>>2]|0);return}function Fi(a,b){a=a|0;b=b|0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;b=a+28|0;Xq(a+32|0,0,40)|0;if((b|0)==0){return}Mn(b);return}function Gi(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);Gq(a);return}function Hi(a){a=a|0;c[a>>2]=22192;On(c[a+4>>2]|0);return}function Ii(a,b){a=a|0;b=b|0;return}function Ji(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Ki(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function Li(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;e=i;f=d;b=i;i=i+16|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=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;i=e;return}function Mi(a){a=a|0;return 0}function Ni(a){a=a|0;return 0}function Oi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=b;if((e|0)<=0){j=0;return j|0}g=b+12|0;h=b+16|0;i=0;while(1){j=c[g>>2]|0;if(j>>>0<(c[h>>2]|0)>>>0){c[g>>2]=j+1;j=a[j]|0}else{j=uc[c[(c[f>>2]|0)+40>>2]&127](b)|0;if((j|0)==-1){e=8;break}j=j&255}a[d]=j;i=i+1|0;if((i|0)<(e|0)){d=d+1|0}else{e=8;break}}if((e|0)==8){return i|0}return 0}function Pi(a){a=a|0;return-1|0}function Qi(a){a=a|0;var b=0;if((uc[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){a=-1;return a|0}b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+1;a=d[a]|0;return a|0}function Ri(a,b){a=a|0;b=b|0;return-1|0}function Si(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=b;if((f|0)<=0){k=0;return k|0}g=b+24|0;h=b+28|0;j=0;while(1){k=c[g>>2]|0;if(k>>>0<(c[h>>2]|0)>>>0){l=a[e]|0;c[g>>2]=k+1;a[k]=l}else{if((rc[c[(c[i>>2]|0)+52>>2]&31](b,d[e]|0)|0)==-1){f=7;break}}j=j+1|0;if((j|0)<(f|0)){e=e+1|0}else{f=7;break}}if((f|0)==7){return j|0}return 0}function Ti(a,b){a=a|0;b=b|0;return-1|0}function Ui(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);Gq(a);return}function Vi(a){a=a|0;c[a>>2]=22120;On(c[a+4>>2]|0);return}function Wi(a,b){a=a|0;b=b|0;return}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Yi(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function Zi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;e=i;f=d;b=i;i=i+16|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=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;i=e;return}function _i(a){a=a|0;return 0}function $i(a){a=a|0;return 0}function aj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a;if((d|0)<=0){i=0;return i|0}f=a+12|0;g=a+16|0;h=0;while(1){i=c[f>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[f>>2]=i+4;i=c[i>>2]|0}else{i=uc[c[(c[e>>2]|0)+40>>2]&127](a)|0;if((i|0)==-1){d=7;break}}c[b>>2]=i;h=h+1|0;if((h|0)<(d|0)){b=b+4|0}else{d=7;break}}if((d|0)==7){return h|0}return 0}function bj(a){a=a|0;return-1|0}function cj(a){a=a|0;var b=0;if((uc[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){a=-1;return a|0}b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+4;a=c[a>>2]|0;return a|0}function dj(a,b){a=a|0;b=b|0;return-1|0}function ej(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;g=a;if((d|0)<=0){i=0;return i|0}e=a+24|0;f=a+28|0;h=0;while(1){i=c[e>>2]|0;if(i>>>0<(c[f>>2]|0)>>>0){j=c[b>>2]|0;c[e>>2]=i+4;c[i>>2]=j}else{if((rc[c[(c[g>>2]|0)+52>>2]&31](a,c[b>>2]|0)|0)==-1){d=8;break}}h=h+1|0;if((h|0)>=(d|0)){d=8;break}b=b+4|0}if((d|0)==8){return h|0}return 0}function fj(a,b){a=a|0;b=b|0;return-1|0}function gj(a){a=a|0;Di(a+8|0);Gq(a);return}function hj(a){a=a|0;Di(a+8|0);return}function ij(a){a=a|0;var b=0;b=a;a=c[(c[a>>2]|0)-12>>2]|0;Di(b+(a+8)|0);Gq(b+a|0);return}function jj(a){a=a|0;Di(a+((c[(c[a>>2]|0)-12>>2]|0)+8)|0);return}function kj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+8|0;g=d|0;f=b;j=c[(c[f>>2]|0)-12>>2]|0;e=b;if((c[e+(j+24)>>2]|0)==0){i=d;return}h=g|0;a[h]=0;c[g+4>>2]=b;do{if((c[e+(j+16)>>2]|0)==0){b=c[e+(j+72)>>2]|0;if((b|0)!=0){kj(b);j=c[(c[f>>2]|0)-12>>2]|0}a[h]=1;b=c[e+(j+24)>>2]|0;if(!((uc[c[(c[b>>2]|0)+24>>2]&127](b)|0)==-1)){break}b=c[(c[f>>2]|0)-12>>2]|0;Ci(e+b|0,c[e+(b+16)>>2]|1)}}while(0);uj(g);i=d;return}function lj(a){a=a|0;Di(a+8|0);Gq(a);return}function mj(a){a=a|0;Di(a+8|0);return}function nj(a){a=a|0;var b=0;b=a;a=c[(c[a>>2]|0)-12>>2]|0;Di(b+(a+8)|0);Gq(b+a|0);return}function oj(a){a=a|0;Di(a+((c[(c[a>>2]|0)-12>>2]|0)+8)|0);return}function pj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+8|0;g=d|0;f=b;j=c[(c[f>>2]|0)-12>>2]|0;e=b;if((c[e+(j+24)>>2]|0)==0){i=d;return}h=g|0;a[h]=0;c[g+4>>2]=b;do{if((c[e+(j+16)>>2]|0)==0){b=c[e+(j+72)>>2]|0;if((b|0)!=0){pj(b);j=c[(c[f>>2]|0)-12>>2]|0}a[h]=1;b=c[e+(j+24)>>2]|0;if(!((uc[c[(c[b>>2]|0)+24>>2]&127](b)|0)==-1)){break}b=c[(c[f>>2]|0)-12>>2]|0;Ci(e+b|0,c[e+(b+16)>>2]|1)}}while(0);zj(g);i=d;return}function qj(a){a=a|0;Di(a+4|0);Gq(a);return}function rj(a){a=a|0;Di(a+4|0);return}function sj(a){a=a|0;var b=0;b=a;a=c[(c[a>>2]|0)-12>>2]|0;Di(b+(a+4)|0);Gq(b+a|0);return}function tj(a){a=a|0;Di(a+((c[(c[a>>2]|0)-12>>2]|0)+4)|0);return}function uj(a){a=a|0;var b=0,d=0;a=a+4|0;b=c[a>>2]|0;d=c[(c[b>>2]|0)-12>>2]|0;if((c[b+(d+24)>>2]|0)==0){return}if((c[b+(d+16)>>2]|0)!=0){return}if((c[b+(d+4)>>2]&8192|0)==0){return}if(ub()|0){return}d=c[a>>2]|0;d=c[d+((c[(c[d>>2]|0)-12>>2]|0)+24)>>2]|0;if(!((uc[c[(c[d>>2]|0)+24>>2]&127](d)|0)==-1)){return}b=c[a>>2]|0;d=c[(c[b>>2]|0)-12>>2]|0;Ci(b+d|0,c[b+(d+16)>>2]|1);return}function vj(a){a=a|0;Di(a+4|0);Gq(a);return}function wj(a){a=a|0;Di(a+4|0);return}function xj(a){a=a|0;var b=0;b=a;a=c[(c[a>>2]|0)-12>>2]|0;Di(b+(a+4)|0);Gq(b+a|0);return}function yj(a){a=a|0;Di(a+((c[(c[a>>2]|0)-12>>2]|0)+4)|0);return}function zj(a){a=a|0;var b=0,d=0;a=a+4|0;b=c[a>>2]|0;d=c[(c[b>>2]|0)-12>>2]|0;if((c[b+(d+24)>>2]|0)==0){return}if((c[b+(d+16)>>2]|0)!=0){return}if((c[b+(d+4)>>2]&8192|0)==0){return}if(ub()|0){return}d=c[a>>2]|0;d=c[d+((c[(c[d>>2]|0)-12>>2]|0)+24)>>2]|0;if(!((uc[c[(c[d>>2]|0)+24>>2]&127](d)|0)==-1)){return}b=c[a>>2]|0;d=c[(c[b>>2]|0)-12>>2]|0;Ci(b+d|0,c[b+(d+16)>>2]|1);return}function Aj(a){a=a|0;return 15768}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)==1){_h(a,18584,35);return}else{Rh(a,c);return}}function Cj(a){a=a|0;return}function Dj(a){a=a|0;Vh(a|0);Gq(a);return}function Ej(a){a=a|0;Vh(a|0);return}function Fj(a){a=a|0;Di(a);Gq(a);return}function Gj(a){a=a|0;Gq(a);return}function Hj(a){a=a|0;Gq(a);return}function Ij(a){a=a|0;return}function Jj(a){a=a|0;return}function Kj(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;a:do{if((e|0)!=(f|0)){while(1){if((c|0)==(d|0)){d=-1;f=7;break}g=a[c]|0;b=a[e]|0;if(g<<24>>24<b<<24>>24){d=-1;f=7;break}if(b<<24>>24<g<<24>>24){d=1;f=7;break}c=c+1|0;e=e+1|0;if((e|0)==(f|0)){break a}}if((f|0)==7){return d|0}}}while(0);g=(c|0)!=(d|0)|0;return g|0}function Lj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;d=e;g=f-d|0;if(g>>>0>4294967279>>>0){Xh()}if(g>>>0<11>>>0){a[b]=g<<1;b=b+1|0}else{i=g+16&-16;h=Eq(i)|0;c[b+8>>2]=h;c[b>>2]=i|1;c[b+4>>2]=g;b=h}if((e|0)==(f|0)){i=b;a[i]=0;return}else{g=b}while(1){a[g]=a[e]|0;e=e+1|0;if((e|0)==(f|0)){break}else{g=g+1|0}}i=b+(f+(-d|0))|0;a[i]=0;return}function Mj(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)==(d|0)){b=0;return b|0}else{b=0}do{b=(a[c]|0)+(b<<4)|0;e=b&-268435456;b=(e>>>24|e)^b;c=c+1|0;}while((c|0)!=(d|0));return b|0}function Nj(a){a=a|0;Gq(a);return}function Oj(a){a=a|0;return}function Pj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;a:do{if((e|0)!=(f|0)){while(1){if((b|0)==(d|0)){d=-1;f=7;break}g=c[b>>2]|0;a=c[e>>2]|0;if((g|0)<(a|0)){d=-1;f=7;break}if((a|0)<(g|0)){d=1;f=7;break}b=b+4|0;e=e+4|0;if((e|0)==(f|0)){break a}}if((f|0)==7){return d|0}}}while(0);g=(b|0)!=(d|0)|0;return g|0}function Qj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;d=e;g=f-d|0;h=g>>2;if(h>>>0>1073741807>>>0){Xh()}if(h>>>0<2>>>0){a[b]=g>>>1;b=b+4|0}else{i=h+4&-4;g=Eq(i<<2)|0;c[b+8>>2]=g;c[b>>2]=i|1;c[b+4>>2]=h;b=g}if((e|0)==(f|0)){i=b;c[i>>2]=0;return}d=f-4+(-d|0)|0;g=b;while(1){c[g>>2]=c[e>>2];e=e+4|0;if((e|0)==(f|0)){break}else{g=g+4|0}}i=b+((d>>>2)+1<<2)|0;c[i>>2]=0;return}function Rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((b|0)==(d|0)){a=0;return a|0}else{a=0}do{a=(c[b>>2]|0)+(a<<4)|0;e=a&-268435456;a=(e>>>24|e)^a;b=b+4|0;}while((b|0)!=(d|0));return a|0}function Sj(a){a=a|0;Gq(a);return}function Tj(a){a=a|0;return}function Uj(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+104|0;m=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[m>>2];m=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[m>>2];m=k|0;p=k+16|0;o=k+32|0;t=k+40|0;r=k+48|0;s=k+56|0;q=k+64|0;n=k+72|0;l=k+80|0;if((c[g+4>>2]&1|0)==0){c[o>>2]=-1;p=c[(c[d>>2]|0)+16>>2]|0;q=e|0;c[r>>2]=c[q>>2];c[s>>2]=c[f>>2];oc[p&127](t,d,r,s,g,h,o);e=c[t>>2]|0;c[q>>2]=e;f=c[o>>2]|0;if((f|0)==1){a[j]=1}else if((f|0)==0){a[j]=0}else{a[j]=1;c[h>>2]=4}c[b>>2]=e;i=k;return}Ei(q,g);q=c[q>>2]|0;if(!((c[278104]|0)==-1)){c[p>>2]=1112416;c[p+4>>2]=14;c[p+8>>2]=0;Wh(1112416,p)}o=(c[278105]|0)-1|0;p=c[q+8>>2]|0;do{if((c[q+12>>2]|0)-p>>2>>>0>o>>>0){o=c[p+(o<<2)>>2]|0;if((o|0)==0){break}Dh(q|0);Ei(n,g);n=c[n>>2]|0;if(!((c[278008]|0)==-1)){c[m>>2]=1112032;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112032,m)}m=(c[278009]|0)-1|0;g=c[n+8>>2]|0;do{if((c[n+12>>2]|0)-g>>2>>>0>m>>>0){m=c[g+(m<<2)>>2]|0;if((m|0)==0){break}d=m;Dh(n|0);t=l|0;r=m;qc[c[(c[r>>2]|0)+24>>2]&127](t,d);s=l+12|0;qc[c[(c[r>>2]|0)+28>>2]&127](s,d);a[j]=(Vj(e,c[f>>2]|0,t,l+24|0,o,h,1)|0)==(t|0)|0;c[b>>2]=c[e>>2];di(s);di(t);i=k;return}}while(0);t=ec(4)|0;eq(t);Ab(t|0,26088,180)}}while(0);t=ec(4)|0;eq(t);Ab(t|0,26088,180)}function Vj(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;l=i;i=i+104|0;u=(f-e|0)/12|0;n=l|0;do{if(u>>>0>100>>>0){m=zq(u)|0;if((m|0)!=0){n=m;break}Lq();n=0;m=0}else{m=0}}while(0);o=(e|0)==(f|0);if(o){t=0}else{t=0;p=n;q=e;while(1){r=a[q]|0;if((r&1)==0){r=(r&255)>>>1}else{r=c[q+4>>2]|0}if((r|0)==0){a[p]=2;t=t+1|0;u=u-1|0}else{a[p]=1}q=q+12|0;if((q|0)==(f|0)){break}else{p=p+1|0}}}p=b|0;b=g;q=0;a:while(1){v=(u|0)!=0;r=q;while(1){q=c[p>>2]|0;do{if((q|0)==0){q=0}else{if((c[q+12>>2]|0)!=(c[q+16>>2]|0)){break}if((uc[c[(c[q>>2]|0)+36>>2]&127](q)|0)==-1){c[p>>2]=0;q=0;break}else{q=c[p>>2]|0;break}}}while(0);w=(q|0)==0;do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}A=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=A?0:d}}while(0);q=(d|0)==0;s=c[p>>2]|0;if(!((w^q)&v)){break a}q=c[s+12>>2]|0;if((q|0)==(c[s+16>>2]|0)){s=(uc[c[(c[s>>2]|0)+36>>2]&127](s)|0)&255}else{s=a[q]|0}if(!j){s=rc[c[(c[b>>2]|0)+12>>2]&31](g,s)|0}q=r+1|0;if(o){r=q}else{break}}b:do{if(j){v=n;x=0;w=e;while(1){do{if((a[v]|0)==1){y=a[w]|0;A=(y&1)==0;if(A){z=w+1|0}else{z=c[w+8>>2]|0}if(!(s<<24>>24==(a[z+r|0]|0))){a[v]=0;u=u-1|0;break}if(A){x=(y&255)>>>1}else{x=c[w+4>>2]|0}if((x|0)!=(q|0)){x=1;break}a[v]=2;x=1;t=t+1|0;u=u-1|0}}while(0);w=w+12|0;if((w|0)==(f|0)){r=u;break b}v=v+1|0}}else{v=n;x=0;w=e;while(1){do{if((a[v]|0)==1){z=w;if((a[z]&1)==0){y=w+1|0}else{y=c[w+8>>2]|0}if(!(s<<24>>24==(rc[c[(c[b>>2]|0)+12>>2]&31](g,a[y+r|0]|0)|0)<<24>>24)){a[v]=0;u=u-1|0;break}x=a[z]|0;if((x&1)==0){x=(x&255)>>>1}else{x=c[w+4>>2]|0}if((x|0)!=(q|0)){x=1;break}a[v]=2;x=1;t=t+1|0;u=u-1|0}}while(0);w=w+12|0;if((w|0)==(f|0)){r=u;break b}v=v+1|0}}}while(0);if(!x){u=r;continue}v=c[p>>2]|0;s=v+12|0;u=c[s>>2]|0;if((u|0)==(c[v+16>>2]|0)){uc[c[(c[v>>2]|0)+40>>2]&127](v)|0}else{c[s>>2]=u+1}if((r+t|0)>>>0<2>>>0){u=r;continue}else{s=n;u=e}while(1){do{if((a[s]|0)==2){v=a[u]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[u+4>>2]|0}if((v|0)==(q|0)){break}a[s]=0;t=t-1|0}}while(0);u=u+12|0;if((u|0)==(f|0)){u=r;continue a}else{s=s+1|0}}}do{if((s|0)==0){s=0}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){break}if((uc[c[(c[s>>2]|0)+36>>2]&127](s)|0)==-1){c[p>>2]=0;s=0;break}else{s=c[p>>2]|0;break}}}while(0);g=(s|0)==0;do{if(q){k=91}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){if(g){break}else{k=93;break}}if((uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1){k=91;break}if(!g){k=93}}}while(0);if((k|0)==91){if(g){k=93}}if((k|0)==93){c[h>>2]=c[h>>2]|2}c:do{if(o){k=98}else{while(1){if((a[n]|0)==2){f=e;break c}e=e+12|0;if((e|0)==(f|0)){k=98;break c}n=n+1|0}}}while(0);if((k|0)==98){c[h>>2]=c[h>>2]|4}if((m|0)==0){i=l;return f|0}Aq(m);i=l;return f|0}function Wj(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Xj(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Xj(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+256|0;s=j|0;y=j+32|0;l=j+40|0;m=j+56|0;q=j+72|0;n=j+80|0;o=j+240|0;p=j+248|0;r=c[f+4>>2]&74;if((r|0)==0){r=0}else if((r|0)==8){r=16}else if((r|0)==64){r=8}else{r=10}s=s|0;Nk(l,f,s,y);w=m;Xq(w|0,0,12)|0;fi(m,10);if((a[w]&1)==0){u=m+1|0;A=u;v=m+8|0}else{v=m+8|0;A=c[v>>2]|0;u=m+1|0}c[q>>2]=A;f=n|0;c[o>>2]=f;c[p>>2]=0;t=m|0;x=m+4|0;y=a[y]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);z=(d|0)==0;do{if((e|0)==0){k=19}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=19;break}if(!z){break a}}}while(0);if((k|0)==19){k=0;if(z){e=0;break}else{e=0}}C=a[w]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}if(((c[q>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}fi(m,B<<1);if((a[w]&1)==0){A=10}else{A=(c[t>>2]&-2)-1|0}fi(m,A);if((a[w]&1)==0){A=u}else{A=c[v>>2]|0}c[q>>2]=A+B}B=d+12|0;D=c[B>>2]|0;C=d+16|0;if((D|0)==(c[C>>2]|0)){D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{D=a[D]|0}if((nk(D,r,A,q,p,y,l,f,o,s)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=z+1;continue}}s=a[l]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}do{if((s|0)!=0){s=c[o>>2]|0;if((s-n|0)>=160){break}D=c[p>>2]|0;c[o>>2]=s+4;c[s>>2]=D}}while(0);c[h>>2]=Lp(A,c[q>>2]|0,g,r)|0;$m(l,f,c[o>>2]|0,g);do{if(z){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);n=(d|0)==0;do{if((e|0)==0){k=62}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=62;break}if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);do{if((k|0)==62){if(n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);c[g>>2]=c[g>>2]|2;D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}function Yj(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Zj(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Zj(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+256|0;s=j|0;y=j+32|0;l=j+40|0;m=j+56|0;q=j+72|0;n=j+80|0;o=j+240|0;p=j+248|0;r=c[f+4>>2]&74;if((r|0)==8){r=16}else if((r|0)==64){r=8}else if((r|0)==0){r=0}else{r=10}s=s|0;Nk(l,f,s,y);w=m;Xq(w|0,0,12)|0;fi(m,10);if((a[w]&1)==0){u=m+1|0;A=u;v=m+8|0}else{v=m+8|0;A=c[v>>2]|0;u=m+1|0}c[q>>2]=A;f=n|0;c[o>>2]=f;c[p>>2]=0;t=m|0;x=m+4|0;y=a[y]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);z=(d|0)==0;do{if((e|0)==0){k=19}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=19;break}if(!z){break a}}}while(0);if((k|0)==19){k=0;if(z){e=0;break}else{e=0}}C=a[w]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}if(((c[q>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}fi(m,B<<1);if((a[w]&1)==0){A=10}else{A=(c[t>>2]&-2)-1|0}fi(m,A);if((a[w]&1)==0){A=u}else{A=c[v>>2]|0}c[q>>2]=A+B}B=d+12|0;D=c[B>>2]|0;C=d+16|0;if((D|0)==(c[C>>2]|0)){D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{D=a[D]|0}if((nk(D,r,A,q,p,y,l,f,o,s)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=z+1;continue}}s=a[l]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}do{if((s|0)!=0){s=c[o>>2]|0;if((s-n|0)>=160){break}D=c[p>>2]|0;c[o>>2]=s+4;c[s>>2]=D}}while(0);D=Kp(A,c[q>>2]|0,g,r)|0;c[h>>2]=D;c[h+4>>2]=J;$m(l,f,c[o>>2]|0,g);do{if(z){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);n=(d|0)==0;do{if((e|0)==0){k=62}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=62;break}if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);do{if((k|0)==62){if(n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);c[g>>2]=c[g>>2]|2;D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}function _j(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];$j(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function $j(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;k=i;i=i+256|0;t=k|0;z=k+32|0;m=k+40|0;n=k+56|0;r=k+72|0;o=k+80|0;p=k+240|0;q=k+248|0;s=c[g+4>>2]&74;if((s|0)==0){s=0}else if((s|0)==8){s=16}else if((s|0)==64){s=8}else{s=10}t=t|0;Nk(m,g,t,z);x=n;Xq(x|0,0,12)|0;fi(n,10);if((a[x]&1)==0){v=n+1|0;B=v;w=n+8|0}else{w=n+8|0;B=c[w>>2]|0;v=n+1|0}c[r>>2]=B;g=o|0;c[p>>2]=g;c[q>>2]=0;u=n|0;y=n+4|0;z=a[z]|0;a:while(1){do{if((e|0)==0){e=0}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){break}E=(uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1;e=E?0:e}}while(0);A=(e|0)==0;do{if((f|0)==0){l=19}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if(A){break}else{break a}}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){l=19;break}if(!A){break a}}}while(0);if((l|0)==19){l=0;if(A){f=0;break}else{f=0}}D=a[x]|0;E=(D&1)==0;if(E){C=(D&255)>>>1}else{C=c[y>>2]|0}if(((c[r>>2]|0)-B|0)==(C|0)){if(E){C=(D&255)>>>1}else{C=c[y>>2]|0}fi(n,C<<1);if((a[x]&1)==0){B=10}else{B=(c[u>>2]&-2)-1|0}fi(n,B);if((a[x]&1)==0){B=v}else{B=c[w>>2]|0}c[r>>2]=B+C}C=e+12|0;E=c[C>>2]|0;D=e+16|0;if((E|0)==(c[D>>2]|0)){E=(uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)&255}else{E=a[E]|0}if((nk(E,s,B,r,q,z,m,g,p,t)|0)!=0){break}A=c[C>>2]|0;if((A|0)==(c[D>>2]|0)){uc[c[(c[e>>2]|0)+40>>2]&127](e)|0;continue}else{c[C>>2]=A+1;continue}}t=a[m]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[m+4>>2]|0}do{if((t|0)!=0){t=c[p>>2]|0;if((t-o|0)>=160){break}E=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=E}}while(0);b[j>>1]=Jp(B,c[r>>2]|0,h,s)|0;$m(m,g,c[p>>2]|0,h);do{if(A){e=0}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){break}E=(uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1;e=E?0:e}}while(0);o=(e|0)==0;do{if((f|0)==0){l=62}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if(!o){break}E=d|0;c[E>>2]=e;di(n);di(m);i=k;return}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){l=62;break}if(!o){break}E=d|0;c[E>>2]=e;di(n);di(m);i=k;return}}while(0);do{if((l|0)==62){if(o){break}E=d|0;c[E>>2]=e;di(n);di(m);i=k;return}}while(0);c[h>>2]=c[h>>2]|2;E=d|0;c[E>>2]=e;di(n);di(m);i=k;return}function ak(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];bk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function bk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+256|0;s=j|0;y=j+32|0;l=j+40|0;m=j+56|0;q=j+72|0;n=j+80|0;o=j+240|0;p=j+248|0;r=c[f+4>>2]&74;if((r|0)==8){r=16}else if((r|0)==64){r=8}else if((r|0)==0){r=0}else{r=10}s=s|0;Nk(l,f,s,y);w=m;Xq(w|0,0,12)|0;fi(m,10);if((a[w]&1)==0){u=m+1|0;A=u;v=m+8|0}else{v=m+8|0;A=c[v>>2]|0;u=m+1|0}c[q>>2]=A;f=n|0;c[o>>2]=f;c[p>>2]=0;t=m|0;x=m+4|0;y=a[y]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);z=(d|0)==0;do{if((e|0)==0){k=19}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=19;break}if(!z){break a}}}while(0);if((k|0)==19){k=0;if(z){e=0;break}else{e=0}}C=a[w]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}if(((c[q>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}fi(m,B<<1);if((a[w]&1)==0){A=10}else{A=(c[t>>2]&-2)-1|0}fi(m,A);if((a[w]&1)==0){A=u}else{A=c[v>>2]|0}c[q>>2]=A+B}B=d+12|0;D=c[B>>2]|0;C=d+16|0;if((D|0)==(c[C>>2]|0)){D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{D=a[D]|0}if((nk(D,r,A,q,p,y,l,f,o,s)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=z+1;continue}}s=a[l]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}do{if((s|0)!=0){s=c[o>>2]|0;if((s-n|0)>=160){break}D=c[p>>2]|0;c[o>>2]=s+4;c[s>>2]=D}}while(0);c[h>>2]=Ip(A,c[q>>2]|0,g,r)|0;$m(l,f,c[o>>2]|0,g);do{if(z){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);n=(d|0)==0;do{if((e|0)==0){k=62}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=62;break}if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);do{if((k|0)==62){if(n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);c[g>>2]=c[g>>2]|2;D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}function ck(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];dk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function dk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+256|0;s=j|0;y=j+32|0;l=j+40|0;m=j+56|0;q=j+72|0;n=j+80|0;o=j+240|0;p=j+248|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==0){r=0}else if((r|0)==8){r=16}else{r=10}s=s|0;Nk(l,f,s,y);w=m;Xq(w|0,0,12)|0;fi(m,10);if((a[w]&1)==0){u=m+1|0;A=u;v=m+8|0}else{v=m+8|0;A=c[v>>2]|0;u=m+1|0}c[q>>2]=A;f=n|0;c[o>>2]=f;c[p>>2]=0;t=m|0;x=m+4|0;y=a[y]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);z=(d|0)==0;do{if((e|0)==0){k=19}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=19;break}if(!z){break a}}}while(0);if((k|0)==19){k=0;if(z){e=0;break}else{e=0}}C=a[w]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}if(((c[q>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}fi(m,B<<1);if((a[w]&1)==0){A=10}else{A=(c[t>>2]&-2)-1|0}fi(m,A);if((a[w]&1)==0){A=u}else{A=c[v>>2]|0}c[q>>2]=A+B}B=d+12|0;D=c[B>>2]|0;C=d+16|0;if((D|0)==(c[C>>2]|0)){D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{D=a[D]|0}if((nk(D,r,A,q,p,y,l,f,o,s)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=z+1;continue}}s=a[l]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}do{if((s|0)!=0){s=c[o>>2]|0;if((s-n|0)>=160){break}D=c[p>>2]|0;c[o>>2]=s+4;c[s>>2]=D}}while(0);c[h>>2]=Hp(A,c[q>>2]|0,g,r)|0;$m(l,f,c[o>>2]|0,g);do{if(z){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);n=(d|0)==0;do{if((e|0)==0){k=62}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=62;break}if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);do{if((k|0)==62){if(n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);c[g>>2]=c[g>>2]|2;D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}function ek(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];fk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function fk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+256|0;s=j|0;y=j+32|0;l=j+40|0;m=j+56|0;q=j+72|0;n=j+80|0;o=j+240|0;p=j+248|0;r=c[f+4>>2]&74;if((r|0)==8){r=16}else if((r|0)==64){r=8}else if((r|0)==0){r=0}else{r=10}s=s|0;Nk(l,f,s,y);w=m;Xq(w|0,0,12)|0;fi(m,10);if((a[w]&1)==0){u=m+1|0;A=u;v=m+8|0}else{v=m+8|0;A=c[v>>2]|0;u=m+1|0}c[q>>2]=A;f=n|0;c[o>>2]=f;c[p>>2]=0;t=m|0;x=m+4|0;y=a[y]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);z=(d|0)==0;do{if((e|0)==0){k=19}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=19;break}if(!z){break a}}}while(0);if((k|0)==19){k=0;if(z){e=0;break}else{e=0}}C=a[w]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}if(((c[q>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[x>>2]|0}fi(m,B<<1);if((a[w]&1)==0){A=10}else{A=(c[t>>2]&-2)-1|0}fi(m,A);if((a[w]&1)==0){A=u}else{A=c[v>>2]|0}c[q>>2]=A+B}B=d+12|0;D=c[B>>2]|0;C=d+16|0;if((D|0)==(c[C>>2]|0)){D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{D=a[D]|0}if((nk(D,r,A,q,p,y,l,f,o,s)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=z+1;continue}}s=a[l]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}do{if((s|0)!=0){s=c[o>>2]|0;if((s-n|0)>=160){break}D=c[p>>2]|0;c[o>>2]=s+4;c[s>>2]=D}}while(0);D=Gp(A,c[q>>2]|0,g,r)|0;c[h>>2]=D;c[h+4>>2]=J;$m(l,f,c[o>>2]|0,g);do{if(z){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}D=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=D?0:d}}while(0);n=(d|0)==0;do{if((e|0)==0){k=62}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){k=62;break}if(!n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);do{if((k|0)==62){if(n){break}D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}}while(0);c[g>>2]=c[g>>2]|2;D=b|0;c[D>>2]=d;di(m);di(l);i=j;return}function gk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];hk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}
+function bb(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function cb(){return r|0}function db(a){a=a|0;r=a}function eb(a,b){a=a|0;b=b|0;r=a;s=b}function fb(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function gb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function hb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function ib(a){a=a|0;L=a}function jb(){return L|0}function kb(a,b){a=a|0;b=b|0;var c=0,d=0;d=980497+(a<<3&2040)|0;c=a>>>8;if(c&255|0)pd(b,c&255,l[d+5>>0]|0);c=a>>>16;if(c&255|0)pd(b,c&255,l[d+6>>0]|0);c=a>>>24;if(c|0)pd(b,c&255,l[d+7>>0]|0);return}function lb(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,j=0,m=0,n=0,o=0;o=r;r=r+16|0;n=o+4|0;m=o;f=a+b|0;g=a+c|0;j=e+8|0;h=k[e+4>>2]|0;b=k[j>>2]|0;c=(i[f>>0]|0)==32?f+1|0:f;do{if(c>>>0>=g>>>0)break;k[n>>2]=c;f=l[1009576+(l[c>>0]|0)>>0]|0;k[m>>2]=f;c=c+f|0;f=wd(d,n,m)|0;if(f<<24>>24){k[e+32+(b<<3)>>2]=c-a;k[e+32+(b<<3)+4>>2]=f&255;b=b+1|0}}while((b|0)<(h|0));k[j>>2]=b;n=c-a|0;k[e+32+(b<<3)>>2]=n;k[e+32+(k[j>>2]<<3)+4>>2]=0;r=o;return n|0}function mb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;q=a+c|0;z=f+12|0;u=k[f+4>>2]|0;A=f+16|0;v=u+-1|0;w=d+16|0;r=d+12|0;y=a;s=e+16|0;t=e+12|0;h=k[z>>2]|0;g=k[A>>2]|0;p=a+b|0;while(1){if(p>>>0>=q>>>0){c=p;break}b=l[1009576+(l[p>>0]|0)>>0]|0;c=p+b|0;b=(l[1009576+(l[c>>0]|0)>>0]|0)+b|0;do if(b>>>0>5){o=sb(p,b)|0;a=k[d>>2]|0;m=k[w>>2]|0;n=(o>>>12)+o|0;i=(k[r>>2]|0)+-1&n;j=m&o;b=k[a+(i<<4)>>2]|0;if((b^j)&m){b=k[a+(i<<4)+4>>2]|0;if((b^j)&m){b=k[a+(i<<4)+8>>2]|0;if((b^j)&m){b=k[a+(i<<4)+12>>2]|0;if(!((b^j)&m))x=8}else x=8}else x=8}else x=8;if((x|0)==8){x=0;if(b){k[f+8040+(h<<3)>>2]=p-y;k[f+8040+(h<<3)+4>>2]=b&~m;h=h+1|0}}j=k[e>>2]|0;m=k[s>>2]|0;a=(k[t>>2]|0)+-1&n;i=m&o;b=k[j+(a<<4)>>2]|0;if((b^i)&m){b=k[j+(a<<4)+4>>2]|0;if((b^i)&m){b=k[j+(a<<4)+8>>2]|0;if((b^i)&m){b=k[j+(a<<4)+12>>2]|0;if((b^i)&m)break}}}if(b){k[f+16048+(g<<3)>>2]=p-y;k[f+16048+(g<<3)+4>>2]=b&~m;g=g+1|0}}while(0);if((g|0)<(v|0)&(h|0)<(u|0))p=c;else break}k[z>>2]=h;k[A>>2]=g;z=c-y|0;k[f+8040+(h<<3)>>2]=z;k[f+8040+(h<<3)+4>>2]=0;k[f+16048+(k[A>>2]<<3)>>2]=z;k[f+16048+(k[A>>2]<<3)+4>>2]=0;return}function nb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=r;r=r+16|0;C=D;t=a+b|0;u=a+c|0;B=f+8|0;b=k[B>>2]|0;A=k[f+4>>2]|0;v=C;k[v>>2]=0;k[v+4>>2]=0;v=C+4|0;w=d+16|0;x=d+12|0;y=e+12|0;z=e+16|0;g=0;c=(i[t>>0]|0)==32?t+1|0:t;do{if(c>>>0>=u>>>0)break;s=c+(l[979972+(l[c>>0]|0)>>0]|0)|0;s=s+(l[979972+(l[s>>0]|0)>>0]|0)|0;t=s+(l[979972+(l[s>>0]|0)>>0]|0)|0;t=t+(l[979972+(l[t>>0]|0)>>0]|0)|0;q=c;p=ub(c,t-q|0)|0;do if(!((p|0)==(k[C>>2]|0)?1:(p|0)==(k[v>>2]|0))){j=k[d>>2]|0;h=k[w>>2]|0;o=(p>>>12)+p|0;m=(k[x>>2]|0)+-1&o;n=h&p;c=k[j+(m<<4)>>2]|0;if((c^n)&h){c=k[j+(m<<4)+4>>2]|0;if((c^n)&h){c=k[j+(m<<4)+8>>2]|0;if((c^n)&h){c=k[j+(m<<4)+12>>2]|0;if(!((c^n)&h))m=8;else m=9}else m=8}else m=8}else m=8;if((m|0)==8){m=0;if(!c)m=9;else j=0}if((m|0)==9){c=k[y>>2]|0;if(!c)break;n=k[e>>2]|0;h=k[z>>2]|0;j=c+-1&o;m=h&p;c=k[n+(j<<4)>>2]|0;if((c^m)&h){c=k[n+(j<<4)+4>>2]|0;if((c^m)&h){c=k[n+(j<<4)+8>>2]|0;if((c^m)&h){c=k[n+(j<<4)+12>>2]|0;if((c^m)&h)break}}}if(!c)break;else j=-2147483648}k[C+(g<<2)>>2]=p;k[f+32+(b<<3)>>2]=q-a;k[f+32+(b<<3)+4>>2]=c&~h|j;b=b+1|0;g=g&1^1}while(0);c=(i[t>>0]|0)==32?t:s;if(c>>>0<u>>>0)c=c+(l[980228+(l[c>>0]|0)>>0]|0)|0;else c=u}while((b|0)<(A|0));k[B>>2]=b;e=c-a|0;k[f+32+(b<<3)>>2]=e;k[f+32+(k[B>>2]<<3)+4>>2]=0;r=D;return e|0}function ob(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=r;r=r+16|0;F=J;u=a+b|0;A=a+(c+1)|0;H=f+12|0;g=k[H>>2]|0;B=k[f+4>>2]|0;I=f+16|0;b=k[I>>2]|0;C=B+-1|0;k[F>>2]=0;k[F+4>>2]=0;k[F+8>>2]=0;k[F+12>>2]=0;u=(i[u>>0]|0)==32?u+1|0:u;x=F+8|0;y=e+16|0;z=e+12|0;E=a;v=d+16|0;w=d+12|0;n=0;a=g;g=0;q=u;D=u;j=u;while(1){if(D>>>0>=A>>>0){c=D;break}c=i[D>>0]|0;if(c<<24>>24==32){t=u;p=wb(u,j-t|0)|0;s=L;n=F;o=x;do if(!(((p|0)==(k[n>>2]|0)?(s|0)==(k[n+4>>2]|0):0)|((p|0)==(k[o>>2]|0)?(s|0)==(k[o+4>>2]|0):0))){h=F+(g<<3)|0;k[h>>2]=p;k[h+4>>2]=s;g=1-g|0;h=F+(g<<3)|0;c=k[h>>2]|0;h=k[h+4>>2]|0;do if(!((c|0)==0&(h|0)==0|(c|0)==(p|0)&(h|0)==(s|0))){c=xb(c,h,p,s)|0;j=L;m=k[e>>2]|0;o=k[y>>2]|0;n=k[z>>2]|0;h=uf(c|0,j|0,12)|0;h=tf(h|0,L|0,c|0,j|0)|0;h=n+-1&h;j=uf(c|0,j|0,4)|0;j=o&j;c=k[m+(h<<4)>>2]|0;if((c^j)&o){c=k[m+(h<<4)+4>>2]|0;if((c^j)&o){c=k[m+(h<<4)+8>>2]|0;if((c^j)&o){c=k[m+(h<<4)+12>>2]|0;if((c^j)&o){c=n;break}}}}if(!c)c=n;else{k[f+16048+(b<<3)>>2]=q-E;k[f+16048+(b<<3)+4>>2]=c&~o;c=n;b=b+1|0}}else{c=k[z>>2]|0;o=k[y>>2]|0;m=k[e>>2]|0}while(0);q=uf(p|0,s|0,12)|0;q=tf(q|0,L|0,p|0,s|0)|0;j=c+-1&q;p=uf(p|0,s|0,4)|0;h=o&p;c=k[m+(j<<4)>>2]|0;if((c^h)&o){c=k[m+(j<<4)+4>>2]|0;if((c^h)&o){c=k[m+(j<<4)+8>>2]|0;if((c^h)&o){c=k[m+(j<<4)+12>>2]|0;if(!((c^h)&o))G=17}else G=17}else G=17}else G=17;if((G|0)==17){G=0;if(c){k[f+16048+(b<<3)>>2]=t-E;k[f+16048+(b<<3)+4>>2]=c&~o;b=b+1|0}}m=k[d>>2]|0;n=k[v>>2]|0;h=(k[w>>2]|0)+-1&q;j=n&p;c=k[m+(h<<4)>>2]|0;if((c^j)&n){c=k[m+(h<<4)+4>>2]|0;if((c^j)&n){c=k[m+(h<<4)+8>>2]|0;if((c^j)&n){c=k[m+(h<<4)+12>>2]|0;if((c^j)&n)break}}}if(c){k[f+8040+(a<<3)>>2]=t-E;k[f+8040+(a<<3)+4>>2]=c&~n;a=a+1|0}}while(0);m=D+1|0;c=i[D>>0]|0;o=0;h=u;j=m}else{o=n+1|0;h=q;m=u}c=D+(l[1009576+(c&255)>>0]|0)|0;if((b|0)<(C|0)&(a|0)<(B|0)){n=o;q=h;D=c;j=(o|0)<9?c:j;u=m}else break}k[H>>2]=a;k[I>>2]=b;H=c-E|0;k[f+8040+(a<<3)>>2]=H;k[f+8040+(a<<3)+4>>2]=0;k[f+16048+(k[I>>2]<<3)>>2]=H;k[f+16048+(k[I>>2]<<3)+4>>2]=0;r=J;return}function pb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=(c|0)<8?c*12|0:100;e=c*5>>3;e=(e|0)<3?3:(e|0)>16?16:e;c=a-b|0;if((c|0)<(e|0))if((c|0)<1)d=0;else{b=(c*100|0)/(e|0)|0;d=(d|0)<(b|0)?d:b}return d|0}function qb(a,b){a=a|0;b=b|0;var c=0.0;if(b)if(a){if((b|0)>(a|0))c=+(b|0)/+(a|0);else c=+(a|0)/+(b|0);if(!(c<=1.5))if(c>4.0)a=0;else a=~~((4.0-c)*100.0/2.5);else a=100}else a=0;else a=100;return a|0}function rb(a,b){a=a|0;b=b|0;a=((Jc(a)|0)&255)<<8;return a|(l[980484+b>>0]|0)|0}function sb(a,b){a=a|0;b=b|0;var c=0;do if(b){c=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;if((b|0)<5){c=k[120+((b&3)<<2)>>2]&c;c=c>>>3^c;break}else{a=a+4|0;a=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=(a<<18^a)+(c>>>3^c)|0;break}}else c=0;while(0);return c|0}function tb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;do if((b|0)>=5){d=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;d=d>>>3^d;e=a+4|0;e=l[e>>0]|l[e+1>>0]<<8|l[e+2>>0]<<16|l[e+3>>0]<<24;if((b|0)<9){a=k[120+((b&3)<<2)>>2]&e;d=(a<<4^a)+(d^c)|0;break}else{a=a+8|0;a=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);d=(d^c)+(e<<4^e)+(a<<2^a)|0;break}}else{d=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);d=d^c^d>>>3}while(0);return d|0}function ub(a,b){a=a|0;b=b|0;var c=0;if(!b)b=0;else{c=(i[a+-1>>0]|0)==32?17476:0;b=tb(a,b,(i[a+b>>0]|0)==32?c|1145307136:c)|0}return b|0}function vb(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,j=0,m=0;f=(i[a+-1>>0]|0)==32;e=f?c|17476:c;f=f?d:d;d=(i[a+b>>0]|0)==32;e=d?e|1145307136:e;f=d?f:f;switch(b+-1>>2|0){case 0:{b=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=b;d=0;b=(uf(b|0,0,3)|0)^b;a=L;break}case 1:{h=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;j=uf(h|0,0,3)|0;g=L;c=a+4|0;b=k[120+((b&3)<<2)>>2]&(l[c>>0]|l[c+1>>0]<<8|l[c+2>>0]<<16|l[c+3>>0]<<24);c=tf(b|0,0,h|0,0)|0;d=L;b=tf((sf(b|0,0,4)|0)^b|0,L|0,j^h|0,g|0)|0;a=L;break}case 2:{j=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;g=uf(j|0,0,3)|0;h=L;m=a+4|0;m=l[m>>0]|l[m+1>>0]<<8|l[m+2>>0]<<16|l[m+3>>0]<<24;d=tf(m|0,0,j|0,0)|0;c=L;h=tf((sf(m|0,0,4)|0)^m|0,L|0,g^j|0,h|0)|0;j=L;a=a+8|0;b=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=tf(d|0,c|0,b|0,0)|0;d=L;b=tf(h|0,j|0,(sf(b|0,0,2)|0)^b|0,L|0)|0;a=L;break}case 3:{m=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;j=uf(m|0,0,3)|0;h=L;g=a+4|0;g=l[g>>0]|l[g+1>>0]<<8|l[g+2>>0]<<16|l[g+3>>0]<<24;c=tf(g|0,0,m|0,0)|0;d=L;h=tf((sf(g|0,0,4)|0)^g|0,L|0,j^m|0,h|0)|0;m=L;j=a+8|0;j=l[j>>0]|l[j+1>>0]<<8|l[j+2>>0]<<16|l[j+3>>0]<<24;d=tf(c|0,d|0,j|0,0)|0;c=L;j=tf(h|0,m|0,(sf(j|0,0,2)|0)^j|0,L|0)|0;m=L;a=a+12|0;b=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=tf(d|0,c|0,b|0,0)|0;d=L;b=tf(j|0,m|0,(uf(b|0,0,8)|0)^b|0,L|0)|0;a=L;break}case 4:{m=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;h=uf(m|0,0,3)|0;j=L;g=a+4|0;g=l[g>>0]|l[g+1>>0]<<8|l[g+2>>0]<<16|l[g+3>>0]<<24;d=tf(g|0,0,m|0,0)|0;c=L;j=tf((sf(g|0,0,4)|0)^g|0,L|0,h^m|0,j|0)|0;m=L;h=a+8|0;h=l[h>>0]|l[h+1>>0]<<8|l[h+2>>0]<<16|l[h+3>>0]<<24;c=tf(d|0,c|0,h|0,0)|0;d=L;h=tf(j|0,m|0,(sf(h|0,0,2)|0)^h|0,L|0)|0;m=L;j=a+12|0;j=l[j>>0]|l[j+1>>0]<<8|l[j+2>>0]<<16|l[j+3>>0]<<24;d=tf(c|0,d|0,j|0,0)|0;c=L;j=tf(h|0,m|0,(uf(j|0,0,8)|0)^j|0,L|0)|0;m=L;a=a+16|0;b=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=tf(d|0,c|0,b|0,0)|0;d=L;b=tf(j|0,m|0,(uf(b|0,0,4)|0)^b|0,L|0)|0;a=L;break}default:{m=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24;j=uf(m|0,0,3)|0;h=L;g=a+4|0;g=l[g>>0]|l[g+1>>0]<<8|l[g+2>>0]<<16|l[g+3>>0]<<24;c=tf(g|0,0,m|0,0)|0;d=L;h=tf((sf(g|0,0,4)|0)^g|0,L|0,j^m|0,h|0)|0;m=L;j=a+8|0;j=l[j>>0]|l[j+1>>0]<<8|l[j+2>>0]<<16|l[j+3>>0]<<24;d=tf(c|0,d|0,j|0,0)|0;c=L;j=tf(h|0,m|0,(sf(j|0,0,2)|0)^j|0,L|0)|0;m=L;h=a+12|0;h=l[h>>0]|l[h+1>>0]<<8|l[h+2>>0]<<16|l[h+3>>0]<<24;c=tf(d|0,c|0,h|0,0)|0;d=L;h=tf(j|0,m|0,(uf(h|0,0,8)|0)^h|0,L|0)|0;m=L;j=a+16|0;j=l[j>>0]|l[j+1>>0]<<8|l[j+2>>0]<<16|l[j+3>>0]<<24;d=tf(c|0,d|0,j|0,0)|0;c=L;j=tf(h|0,m|0,(uf(j|0,0,4)|0)^j|0,L|0)|0;m=L;a=a+20|0;b=k[120+((b&3)<<2)>>2]&(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24);c=tf(d|0,c|0,b|0,0)|0;d=L;b=tf(j|0,m|0,(uf(b|0,0,6)|0)^b|0,L|0)|0;a=L}}j=uf(c|0,d|0,17)|0;j=tf(j|0,L|0,c|0,d|0)|0;m=L;h=uf(j|0,m|0,9)|0;m=tf(h|0,L|0,j|0,m|0)|0;m=tf(0,m&255|0,b^e|0,a^f|0)|0;return m|0}function wb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(!b){b=0;a=0}else{c=(i[a+-1>>0]|0)==32;e=c?17476:0;c=c?0:0;d=(i[a+b>>0]|0)==32;a=vb(a,b,d?e|1145307136:e,d?c:c)|0;b=L}L=b;return a|0}function xb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=uf(a|0,b|0,13)|0;e=L;b=sf(a|0,b|0,51)|0;d=tf(f|b|0,e|L|0,c|0,d|0)|0;return d|0}function yb(a,b,c,d,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;h=r;r=r+48|0;i=h+24|0;k[i>>2]=0;k[i+4>>2]=1097825;k[i+8>>2]=23;k[i+12>>2]=26;f=mc(a,b,c,i,0,d,e,h,f,g)|0;r=h;return ((f|0)==26?0:f)|0}function zb(a,b,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 mc(a,b,c,d,0,e,f,g,h,i)|0}function Ab(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:do if(a<<16>>16){d=a&1023;e=k[b>>2]|0;do if((e|0)>0){c=0;while(1){f=b+4+(c<<1)|0;g=j[f>>1]|0;c=c+1|0;if((g&1023|0)==(d|0)){c=5;break}if((c|0)>=(e|0)){c=6;break}}if((c|0)==5){b=g<<16>>16>>10;a=a<<16>>16>>10;j[f>>1]=((b|0)>=(a|0)?b:a)<<10|d;break a}else if((c|0)==6)if((e|0)>13)break a;else break}while(0);k[b>>2]=e+1;j[b+4+(e<<1)>>1]=a}while(0);return}function Bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:do if(a<<16>>16){d=a&1023;e=k[b>>2]|0;do if((e|0)>0){c=0;while(1){f=b+4+(c<<1)|0;g=m[f>>1]|0;c=c+1|0;if((g&1023|0)==(d|0)){c=5;break}if((c|0)>=(e|0)){c=6;break}}if((c|0)==5){j[f>>1]=g+2048&64512|d;break a}else if((c|0)==6)if((e|0)>13)break a;else break}while(0);k[b>>2]=e+1;j[b+4+(e<<1)>>1]=a}while(0);return}function Cb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;if((k[a>>2]|0)>4){g=0;do{f=j[a+4+(g<<1)>>1]|0;d=f<<16>>16>>10;d=(d|0)>-1?d:0-d|0;a:do if((g|0)>0){e=g;while(1){b=e+-1|0;c=j[a+4+(b<<1)>>1]|0;h=c<<16>>16>>10;if((((h|0)>-1?h:0-h|0)|0)>=(d|0)){b=e;break a}j[a+4+(e<<1)>>1]=c;if((e|0)>1)e=b;else break}}else b=g;while(0);j[a+4+(b<<1)>>1]=f;g=g+1|0}while((g|0)<(k[a>>2]|0));k[a>>2]=4}return}function Db(a){a=a|0;var b=0,c=0,d=0;d=i[a>>0]|0;b=(d&1)==0;d=b?(d&255)>>>1:k[a+4>>2]|0;if((d|0)>0){a=b?a+1|0:k[a+8>>2]|0;b=0;c=0;do{b=((i[a+c>>0]|0)==44&1)+b|0;c=c+1|0}while((c|0)!=(d|0))}else b=0;return b|0}function Eb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=c;c=0;a:while(1){if((c|0)<(g|0))f=c;else{c=0;break}while(1){d=f+g>>1;c=b+(d*12|0)|0;e=_e(k[c>>2]|0,a)|0;if((e|0)>=0)break;c=d+1|0;if((c|0)<(g|0))f=c;else{c=0;break a}}if((e|0)>0){g=d;c=f}else break}return c|0}function Fb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=181;b=0;a:while(1){if((b|0)<(f|0))e=b;else{b=0;break}while(1){c=e+f>>1;b=5776+(c<<3)|0;d=_e(k[b>>2]|0,a)|0;if((d|0)>=0)break;b=c+1|0;if((b|0)<(f|0))e=b;else{b=0;break a}}if((d|0)>0){f=c;b=e}else break}return b|0}function Gb(a){a=a|0;Ca(a|0)|0;je()}function Hb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=c+-3|0;a:do if((d|0)>(b|0))do{e=a+b|0;e=l[e>>0]|l[e+1>>0]<<8|l[e+2>>0]<<16|l[e+3>>0]<<24;if((e^1010580540)+-16843009&(e&-2139062144^-2139062144)|0)break a;b=b+4|0}while((b|0)<(d|0));while(0);b:do if((b|0)<(c|0))while(1){if((i[a+b>>0]|0)==60)break b;b=b+1|0;if((b|0)>=(c|0)){b=-1;break}}else b=-1;while(0);return b|0}function Ib(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if((b|0)<(c|0))while(1){b:do switch(i[a+b>>0]|0){case 61:break a;case 34:{e=b+1|0;if((e|0)<(c|0)){d=b;b=e;while(1){switch(i[a+b>>0]|0){case 34:break b;case 92:{d=d+2|0;break}default:d=b}b=d+1|0;if((b|0)>=(c|0))break b}}else b=e;break}case 39:{e=b+1|0;if((e|0)<(c|0)){d=b;b=e;while(1){switch(i[a+b>>0]|0){case 39:break b;case 92:{d=d+2|0;break}default:d=b}b=d+1|0;if((b|0)>=(c|0))break b}}else b=e;break}default:{}}while(0);b=b+1|0;if((b|0)>=(c|0)){b=-1;break a}}else b=-1;while(0);return b|0}function Jb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=Ve(d)|0;a:do if((c-b|0)>=(g|0)){f=g+b|0;while(1){if((c|0)<=(f|0))break;e=c+-1|0;if((i[a+e>>0]|0)==32)c=e;else break}c=c-g|0;if((c|0)>=(b|0)){c=a+c|0;if((g|0)>0){e=0;while(1){if((i[c+e>>0]|32|0)!=(i[d+e>>0]|0)){c=0;break a}e=e+1|0;if((e|0)>=(g|0)){c=1;break}}}else c=1}else c=0}else c=0;while(0);return c|0}function Kb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Ve(d)|0;a:do if((c-b|0)>=(e|0)){c=c-e|0;b:do if((c|0)>(b|0))while(1){switch(i[a+b>>0]|0){case 39:case 34:case 32:break;default:break b}b=b+1|0;if((b|0)>=(c|0))break b}while(0);b=a+b|0;if((e|0)>0){c=0;while(1){if((i[b+c>>0]|32|0)!=(i[d+c>>0]|0)){b=0;break a}c=c+1|0;if((c|0)>=(e|0)){b=1;break}}}else b=1}else b=0;while(0);return b|0}function Lb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;if((c|0)<(d|0)){f=1;do{e=l[b+c>>0]|0;g=(l[984554+e>>0]|0)>>>(f*3|0);f=g&3;do if(g&4|0)if(!f){hf(a,i[984810+e>>0]|0);break}else{hf(a,44);break}while(0);c=c+1|0}while((c|0)!=(d|0));if(!f)hf(a,44)}return}function Mb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if((c|0)<(d|0)){b:while(1){switch(i[b+c>>0]|0){case 39:case 34:break b;case 32:break;default:{f=5;break a}}c=c+1|0;if((c|0)>=(d|0)){f=5;break a}}if((c|0)>=0){e=c+1|0;c:do if((e|0)<(d|0)){c=e;d:while(1){switch(i[b+c>>0]|0){case 39:case 34:break d;case 62:{f=8;break d}case 61:{f=9;break d}case 60:{f=10;break d}case 38:{f=11;break d}default:{}}c=c+1|0;if((c|0)>=(d|0))break c}if((f|0)==8)c=c+-1|0;else if((f|0)==9)c=c+-1|0;else if((f|0)==10)c=c+-1|0;else if((f|0)==11)c=c+-1|0;if((c|0)>=0){Lb(a,b,e,c);break a}}while(0);ef(a,1097825,0)}else f=5}else f=5;while(0);if((f|0)==5)ef(a,1097825,0);return}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;n=o;d=i[a>>0]|0;l=a+4|0;e=k[l>>2]|0;c=(d&1)==0?(d&255)>>>1:e;if((c|0?(Db(a)|0)<=4:0)?(c|0)>0:0){g=a+8|0;h=a+1|0;f=0;do{c=of(a,f)|0;if((c|0)==-1){if(!(d&1))e=(d&255)>>>1}else e=c;c=e-f|0;do if((c|0)<17){vf(n|0,((d&1)==0?h:k[g>>2]|0)+f|0,c|0)|0;i[n+c>>0]=0;c=Eb(n,136,213)|0;if(c|0){Ab(j[c+8>>1]|0,b);Ab(j[c+10>>1]|0,b);break}c=Te(n,45)|0;if(c|0)i[c>>0]=0;if((Ve(n)|0)<4?(m=Eb(n,2692,257)|0,m|0):0){Ab(j[m+8>>1]|0,b);Ab(j[m+10>>1]|0,b)}}while(0);f=e+1|0;d=i[a>>0]|0;e=k[l>>2]|0}while((f|0)<(((d&1)==0?(d&255)>>>1:e)|0))}r=o;return}function Ob(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;Lb(d,a,0,Ve(a)|0);Nb(d,b);ff(d);r=c;return}function Pb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+16|0;d=e;c=Ve(a)|0;if((c|0)<=3){$e(d,a);i[d+3>>0]=0;if((c|0)>0){a=0;do{f=d+a|0;i[f>>0]=l[f>>0]|0|32;a=a+1|0}while((a|0)!=(c|0))}a=Fb(d)|0;if(a|0){Bb(j[a+4>>1]|0,b);Bb(j[a+6>>1]|0,b)}}r=e;return}function Qb(a,b){a=a|0;b=b|0;switch(a|0){case 62:case 48:case 46:case 45:case 14:{Bb(4112,b);break}case 47:case 20:case 13:{Bb(4165,b);break}case 12:case 21:case 11:case 10:{Bb(4104,b);break}case 44:case 16:{Bb(4105,b);break}default:{}}return}function Rb(a,b){a=a|0;b=b|0;Bb(a+8192&65535,b);return}function Sb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=r;r=r+80|0;e=f;d=f+8|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;if((k[b>>2]|0)>0){c=0;do{g=j[b+4+(c<<1)>>1]|0;h=Gc(g&1023)|0;k[e>>2]=h;k[e+4>>2]=g<<16>>16>>10;We(d,985273,e);lf(a,d);c=c+1|0}while((c|0)<(k[b>>2]|0))}r=f;return}function Tb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=r;r=r+16|0;C=D;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;y=(c|0)<8192?c:8192;a:do if((y|0)>0){s=C+4|0;t=a+1|0;u=C+8|0;v=C+1|0;w=a+8|0;x=a+4|0;c=0;do{c=Hb(b,c,y)|0;if((c|0)<0)break a;d=c+1|0;if((d|0)<(y|0))c=d;else break a;b:while(1){switch(i[b+c>>0]|0){case 62:break b;case 60:{z=6;break b}case 38:{z=7;break b}default:{}}c=c+1|0;if((c|0)>=(y|0))break a}if((z|0)==6){z=0;c=c+-1|0}else if((z|0)==7){z=0;c=c+-1|0}if((c|0)<0)break a;if((((((!(Kb(b,d,c,985280)|0)?!(Kb(b,d,c,985284)|0):0)?!(Kb(b,d,c,985290)|0):0)?!(Kb(b,d,c,985298)|0):0)?!(Kb(b,d,c,985304)|0):0)?!(Kb(b,d,c,985309)|0):0)?(A=Kb(b,d,c,985312)|0,B=Ib(b,d,c)|0,(B|0)>-1):0){g=B;f=0;e=d;while(1){do if(A){if(Jb(b,e,g,985318)|0?Kb(b,g+1|0,c,985330)|0:0){z=25;break}if(Jb(b,e,g,985348)|0){d=g+1|0;if(!(Kb(b,d,c,985354)|0)?!(f|(Kb(b,d,c,985367)|0)):0){d=0;z=26}else z=25}else z=24}else z=24;while(0);if((z|0)==24)if(f)z=25;else{d=0;z=26}if((z|0)==25)if(Jb(b,e,g,985377)|0){d=1;z=29}else{d=1;z=26}if((z|0)==26){z=0;if(!(Jb(b,e,g,985386)|0)?!(Jb(b,e,g,985392)|0):0)e=g+1|0;else z=29}if((z|0)==29){z=0;p=g+1|0;Mb(C,b,p,c);q=i[C>>0]|0;f=(q&1)==0;q=f?(q&255)>>>1:k[s>>2]|0;c:do if(q|0){e=i[a>>0]|0;if(!(e&1)){e=(e&255)>>>1;g=t}else{e=k[x>>2]|0;g=k[w>>2]|0}l=f?v:k[u>>2]|0;d:do if(e>>>0>=q>>>0){m=g+e|0;n=l+q|0;o=g;if((e|0)<(q|0))break;h=m+(1-q)|0;if((h|0)==(g|0))break;j=i[l>>0]|0;e=g;e:while(1){if((i[e>>0]|0)==j<<24>>24){f=e;g=l;do{g=g+1|0;if((g|0)==(n|0))break e;f=f+1|0}while((i[f>>0]|0)==(i[g>>0]|0))}e=e+1|0;if((e|0)==(h|0))break d}if(!((e|0)==(m|0)|(e-o|0)==-1))break c}while(0);kf(a,l,q)}while(0);ff(C);e=p}g=Ib(b,e,c)|0;if((g|0)<=-1)break;else f=d}}c=c+1|0}while((c|0)<(y|0))}while(0);c=i[a>>0]|0;d=(c&1)==0;if(d)e=(c&255)>>>1;else e=k[a+4>>2]|0;if(e>>>0>1){if(d)c=(c&255)>>>1;else c=k[a+4>>2]|0;nf(a,c+-1|0)}r=D;return}function Ub(a,b){a=a|0;b=b|0;var c=0;c=(b|0)<32?b:32;a:do if((c|0)>0){b=0;while(1){if((i[a+~b>>0]|0)==32)break a;b=b+1|0;if((b|0)>=(c|0)){b=0;break}}while(1){if((i[a+(0-b)>>0]&-64)<<24>>24!=-128)break a;b=b+1|0;if((b|0)>=(c|0)){b=0;break}}}else b=0;while(0);return b|0}function Vb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(b|0)<32?b:32;c=0;while(1){if((c|0)>=(d|0)){e=3;break}b=c+1|0;if((i[a+c>>0]|0)==32)break;else c=b}a:do if((e|0)==3)if((d|0)>0){b=0;while(1){if((i[a+b>>0]&-64)<<24>>24!=-128)break a;b=b+1|0;if((b|0)>=(d|0)){b=0;break}}}else b=0;while(0);return b|0}function Wb(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,j=0,m=0;j=a+b|0;e=k[c>>2]|0;if((b|0)>0){b=0;h=a;do{f=i[h>>0]|0;g=f&255;do if((f&255)>=192){if((g&224|0)==192){g=l[h+1>>0]|0|g<<8;a=2;break}a=i[h+1>>0]|0;f=i[h+2>>0]|0;if((g&240|0)==224){g=(a&255)<<8|g<<16|f&255;a=3;break}else{g=(a&255)<<16|g<<24|(f&255)<<8|(l[h+3>>0]|0);a=4;break}}else a=1;while(0);h=h+a|0;m=d+(e<<2)|0;f=k[m>>2]|0;k[m>>2]=g;b=((g|0)==(f|0)?a:0)+b|0;e=(g^e<<4)&4095}while(h>>>0<j>>>0)}else b=0;k[c>>2]=e;return b|0}function Xb(a,b){a=a|0;b=b|0;var c=0,d=0;c=b&-4;if((c|0)>0){d=0;b=0;do{b=((i[a+d>>0]|0)==32&1)+b+((i[a+(d|1)>>0]|0)==32&1)+((i[a+(d|2)>>0]|0)==32&1)+((i[a+(d|3)>>0]|0)==32&1)|0;d=d+4|0}while((d|0)<(c|0))}else b=0;return b|0}function Yb(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=a+b|0;e=k[c>>2]|0;if((b|0)>0){q=a;p=0;r=a;m=a;n=0;while(1){g=i[r>>0]|0;j=g&255;f=q+1|0;i[q>>0]=g;do if(g<<24>>24!=32)if((g&255)>=192){if((j&224|0)==192){h=r+1|0;i[f>>0]=i[h>>0]|0;j=l[h>>0]|0|j<<8;f=q+2|0;h=p;o=2;break}h=r+1|0;i[f>>0]=i[h>>0]|0;g=r+2|0;f=q+3|0;i[q+2>>0]=i[g>>0]|0;if((j&240|0)==224){j=(l[h>>0]|0)<<8|j<<16|(l[g>>0]|0);h=p;o=3;break}else{o=r+3|0;i[f>>0]=i[o>>0]|0;j=(l[h>>0]|0)<<16|j<<24|(l[g>>0]|0)<<8|(l[o>>0]|0);f=q+4|0;h=p;o=4;break}}else{h=p;o=1}else{m=(p<<1|0)>(n|0)?m:f;f=m;h=0;o=1;n=0}while(0);r=r+o|0;q=d+(e<<2)|0;g=k[q>>2]|0;k[q>>2]=j;e=(j^e<<4)&4095;if(r>>>0>=s>>>0)break;else{q=f;p=((j|0)==(g|0)?o:0)+h|0;n=o+n|0}}}else f=a;k[c>>2]=e;e=f-a|0;if((e|0)>=(b+-3|0)){if((e|0)<(b|0))i[f>>0]=32}else{i[f>>0]=32;i[f+1>>0]=32;i[f+2>>0]=32;i[f+3>>0]=0}return e|0}function Zb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;o=r;r=r+16|0;m=o;h=a+b|0;k[m>>2]=0;n=re(16384)|0;rf(n|0,0,16384)|0;if((b|0)>0){j=h;c=a;l=a+1|0;d=a;e=0;f=a;do{g=j-f|0;g=(g|0)>48?48:g;while(1)if((i[f+g>>0]&-64)<<24>>24==-128)g=g+1|0;else break;p=Xb(f,g)|0;if((p|0)<12&(Wb(f,g,m,n)|0)<19){if(e){p=Vb(f,g)|0;e=g-p|0;f=f+p|0}else e=g;if((e|0)>0){wf(d|0,f|0,e|0)|0;d=d+e|0;g=e;e=0}else{g=e;e=0}}else if(!e){d=d+(0-(Ub(d,d-c|0)|0))|0;if((d|0)==(a|0)){i[a>>0]=32;d=l;e=1}else e=1}else e=1;f=f+g|0}while(f>>>0<h>>>0)}else{c=a;d=a}c=d-c|0;if((c|0)>=(b+-3|0)){if((c|0)<(b|0))i[d>>0]=32}else{i[d>>0]=32;i[d+1>>0]=32;i[d+2>>0]=32;i[d+3>>0]=0}se(n);r=o;return c|0}function _b(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;d=e;if((b|0)<256)b=0;else{k[d>>2]=0;c=re(16384)|0;rf(c|0,0,16384)|0;if((Xb(a,256)|0)<64?(Wb(a,256,d,c)|0)<171:0)b=0;else b=1;se(c)}r=e;return b|0}function $b(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=r;r=r+48|0;x=y+32|0;t=y+16|0;s=y;q=0;do{d=j[a+568+(q<<1)>>1]|0;n=d&65535;do if(((((d<<16>>16!=-1?(o=k[a+616+(q<<2)>>2]|0,o|0):0)?(p=(k[a+808+(q<<2)>>2]|0)/(o|0)|0,(d&65535)<165&(p|0)<41):0)?(i=k[7224+(n<<2)>>2]|0,(i|0)!=26):0)?(l=td(a,i&65535)|0,(l|0)>=0):0)?(m=k[a+616+(l<<2)>>2]|0,m|0):0){d=(k[a+808+(l<<2)>>2]|0)/(m|0)|0;e=(d|0)<(p|0);if(!e?!((n|0)<(i|0)&(d|0)==(p|0)):0){f=q;g=0;h=l}else{f=l;g=1;h=q}z=e?p:d;e=m+o|0;z=ha((z|0)>41?z:41,e)|0;j[a+568+(f<<1)>>1]=-1;k[a+712+(f<<2)>>2]=0;k[a+808+(f<<2)>>2]=0;k[a+712+(h<<2)>>2]=e;k[a+808+(h<<2)>>2]=z;if(!(c|(e|0)>9&b^1))if(g){h=Gc(i)|0;z=Gc(n)|0;k[s>>2]=h;k[s+4>>2]=d;k[s+8>>2]=m;k[s+12>>2]=z;He(941120,985398,s);break}else{n=Gc(n)|0;z=Gc(i)|0;k[t>>2]=n;k[t+4>>2]=p;k[t+8>>2]=o;k[t+12>>2]=z;He(941120,985398,t);break}}while(0);q=q+1|0}while((q|0)!=24);f=0;do{d=a+568+(f<<1)|0;z=j[d>>1]|0;e=z&65535;if(((z<<16>>16!=-1?(u=k[a+616+(f<<2)>>2]|0,v=a+808+(f<<2)|0,u|0):0)?(w=(k[v>>2]|0)/(u|0)|0,(w|0)<=40):0)?(j[d>>1]=-1,k[a+712+(f<<2)>>2]=0,k[v>>2]=0,!(c|(u|0)>9&b^1)):0){z=Gc(e)|0;k[x>>2]=z;k[x+4>>2]=w;k[x+8>>2]=u;He(941120,985425,x)}f=f+1|0}while((f|0)!=24);r=y;return}function ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=c+616+(b<<2)|0;k[e>>2]=(k[c+616+(a<<2)>>2]|0)+(k[e>>2]|0);e=c+712+(b<<2)|0;d=c+712+(a<<2)|0;k[e>>2]=(k[d>>2]|0)+(k[e>>2]|0);e=c+808+(b<<2)|0;b=c+808+(a<<2)|0;k[e>>2]=(k[b>>2]|0)+(k[e>>2]|0);j[c+568+(a<<1)>>1]=-1;k[d>>2]=0;k[b>>2]=0;return}function bc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0;j=r;r=r+16|0;i=j;f=b^1|c;g=0;do{d=m[a+568+(g<<1)>>1]|0;b=Hc(d)|0;a:do if(b|0){h=g;do{h=h+1|0;if((h|0)>=24)break a;e=m[a+568+(h<<1)>>1]|0}while((Hc(e)|0)!=(b|0));b=(k[a+616+(g<<2)>>2]|0)<(k[a+616+(h<<2)>>2]|0);c=b?g:h;if(!f){l=k[a+616+(c<<2)>>2]|0;n=(k[a+808+(c<<2)>>2]|0)/((l|0?l:1)|0)|0;o=Gc(b?d:e)|0;e=Gc(b?e:d)|0;k[i>>2]=o;k[i+4>>2]=n;k[i+8>>2]=l;k[i+12>>2]=e;He(941120,985446,i)}ac(c,b?h:g,a)}while(0);g=g+1|0}while((g|0)!=24);r=j;return}function cc(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,j=0,l=0,m=0;l=r;r=r+48|0;h=l+32|0;j=l+24|0;g=l+16|0;f=l;Ze(985487,34,1,941120);e=k[a>>2]|0;if((e|0)!=26){m=Fc(e)|0;e=i[d>>0]|0?1097825:985485;d=k[b>>2]|0;k[f>>2]=m;k[f+4>>2]=e;k[f+8>>2]=d;He(941120,985522,f)}e=k[a+4>>2]|0;if((e|0)!=26){f=Fc(e)|0;m=k[b+4>>2]|0;k[g>>2]=f;k[g+4>>2]=m;He(941120,985535,g)}e=k[a+8>>2]|0;if((e|0)!=26){g=Fc(e)|0;m=k[b+8>>2]|0;k[j>>2]=g;k[j+4>>2]=m;He(941120,985535,j)}k[h>>2]=k[c>>2];He(941120,985546,h);Ze(1017206,5,1,941120);r=l;return}function dc(a,b,c,d,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 l=0.0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;k[c>>2]=0;n=c+4|0;k[n>>2]=0;r=c+8|0;k[r>>2]=0;k[d>>2]=26;m=d+4|0;k[m>>2]=26;q=d+8|0;k[q>>2]=26;k[e>>2]=0;u=e+4|0;k[u>>2]=0;v=e+8|0;k[v>>2]=0;o=f+8|0;s=f+16|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;k[f+16>>2]=0;k[f+20>>2]=0;k[g>>2]=b;i[h>>0]=0;t=j[a+568>>1]|0;switch(t<<16>>16){case 26:case -1:{f=0;break}default:{k[d>>2]=t&65535;d=k[a+616>>2]|0;k[c>>2]=(k[a+808>>2]|0)/((d|0?d:1)|0)|0;if((d|0)<1)l=0.0;else l=+((k[a+712>>2]<<10|0)/(d|0)|0|0);p[f>>3]=l;f=d}}d=j[a+570>>1]|0;switch(d<<16>>16){case 26:case -1:{c=0;break}default:{k[m>>2]=d&65535;d=k[a+620>>2]|0;k[n>>2]=(k[a+812>>2]|0)/((d|0?d:1)|0)|0;if((d|0)<1)l=0.0;else l=+((k[a+716>>2]<<10|0)/(d|0)|0|0);p[o>>3]=l;c=d}}d=j[a+572>>1]|0;switch(d<<16>>16){case 26:case -1:{d=0;break}default:{k[q>>2]=d&65535;d=k[a+624>>2]|0;k[r>>2]=(k[a+816>>2]|0)/((d|0?d:1)|0)|0;if((d|0)<1)l=0.0;else l=+((k[a+720>>2]<<10|0)/(d|0)|0|0);p[s>>3]=l}}c=c+f|0;d=d+c|0;if((d|0)>(b|0)){k[g>>2]=d;b=d}r=(b|0)<1?1:b;f=(f*100|0)/(r|0)|0;k[e>>2]=f;s=(c*100|0)/(r|0)|0;c=((d*100|0)/(r|0)|0)-s|0;k[v>>2]=c;d=s-f|0;k[u>>2]=d;if((d|0)<(c|0)){d=d+1|0;k[u>>2]=d;k[v>>2]=c+-1}if((f|0)<(d|0)){k[e>>2]=f+1;k[u>>2]=d+-1}k[g>>2]=b;switch(t<<16>>16){case 26:case -1:{d=0;break}default:{d=k[a+616>>2]|0;d=((k[a+808>>2]|0)/((d|0?d:1)|0)|0|0)>40&1}}i[h>>0]=d;i[h>>0]=(100-(k[e>>2]|0)-(k[u>>2]|0)-(k[v>>2]|0)|0)>20?0:d;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;var h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+32|0;w=y+8|0;v=y;q=y+12|0;k[q>>2]=k[1971];k[q+4>>2]=k[1972];k[q+8>>2]=k[1973];h=k[c>>2]|0;k[d>>2]=k[b>>2];i[e>>0]=(h|0)>1&1;j=0;m=0;l=0;p=3;while(1){if((k[b+(m<<2)>>2]|0)==25){o=(k[c+(m<<2)>>2]|0)+l|0;n=m+1|0;if((n|0)<3){h=m;j=n;while(1){k[q+(h<<2)>>2]=k[q+(j<<2)>>2];h=j+1|0;if((h|0)==3)break;else{u=j;j=h;h=u}}j=k[q>>2]|0}l=p+-1|0;h=((k[c>>2]|0)*100|0)/(101-o|0)|0;k[d>>2]=k[b+(j<<2)>>2];if((k[c+(j<<2)>>2]|0)<2){i[e>>0]=0;m=n;s=j;t=o;u=l}else{m=n;s=j;t=o;u=l}}else{m=m+1|0;s=j;t=l;u=p}if((m|0)==3)break;else{j=s;l=t;p=u}}o=k[q+4>>2]|0;p=k[c+(o<<2)>>2]|0;n=ha(p,a)|0;o=b+(o<<2)|0;l=k[b+(s<<2)>>2]|0;m=(l|0)==0;a:do if(m){j=k[o>>2]|0;switch(j|0){case 26:case 0:{x=24;break a}default:{}}if((n|0)>1499&(p|0)>16){h=(p*100|0)/(101-t-(k[c+(s<<2)>>2]|0)|0)|0;k[d>>2]=j;if((p|0)<2)i[e>>0]=0}else x=23}else{b=l+-4|0;if(b>>>0<11?(1035>>>(b&2047)&1)!=0:0){j=k[o>>2]|0;if(j>>>0<15){if(16561>>>(j&32767)&1){x=23;break}}else if((j|0)==26){x=23;break}if((n|0)>1499&(p|0)>19){h=(p*100|0)/(101-t-(k[c+(s<<2)>>2]|0)|0)|0;k[d>>2]=j;if((p|0)<2)i[e>>0]=0}else x=23}else x=23}while(0);if((x|0)==23){j=k[o>>2]|0;x=24}do if((x|0)==24){if(!j){if(m)break;h=((k[c+(s<<2)>>2]|0)*100|0)/(101-t-p|0)|0;break}x=j+-4|0;if(x>>>0<11?(1035>>>(x&2047)&1)!=0:0){if(l>>>0<15?16561>>>(l&32767)&1:0)break;h=((k[c+(s<<2)>>2]|0)*100|0)/(101-t-p|0)|0}}while(0);if((h|0)<26){if(!(f^1|g)){x=Gc(k[d>>2]|0)|0;k[v>>2]=x;k[v+4>>2]=h;He(941120,985557,v)}k[d>>2]=26;i[e>>0]=0}if((h|0)<51)i[e>>0]=0;if((100-(k[c>>2]|0)-(k[c+4>>2]|0)-(k[c+8>>2]|0)|0)>20)i[e>>0]=0;if(!u){if(!(f^1|g)){x=Gc(k[d>>2]|0)|0;k[w>>2]=x;He(941120,985593,w)}k[d>>2]=26;i[e>>0]=0}r=y;return}function fc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(Lc(a)|0){d=c+16|0;e=k[d>>2]|0;k[c+20+(e<<2)>>2]=b;k[d>>2]=e+1&3}if(Mc(a)|0){e=c+36|0;d=k[e>>2]|0;k[c+40+(d<<2)>>2]=b;k[e>>2]=d+1&3}return}function gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=rb(b,1)|0;if(Lc(a)|0?Lc(b)|0:0){e=c+56|0;f=k[e>>2]|0;k[c+60+(f<<2)>>2]=d;k[e>>2]=f+1&3}if(Mc(a)|0?Mc(b)|0:0){f=c+76|0;e=k[f>>2]|0;k[c+80+(e<<2)>>2]=d;k[f>>2]=e+1&3}return}function hc(a,b){a=a|0;b=b|0;var c=0,d=0;switch(a|0){case 16:{gc(16,69,b);break}case 69:{gc(69,16,b);break}default:{c=Hc(a)|0;if(c|0){d=0;do{if(!((d|0)==(a|0)|(c|0)!=(Hc(d)|0)))gc(a,d,b);d=d+1|0}while((d|0)!=512)}}}return}function ic(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,l=0,n=0,o=0,p=0;p=r;r=r+64|0;h=p+8|0;g=p;n=p+32|0;o=p+16|0;l=p+12|0;k[n>>2]=0;if(!c){Tb(o,a,b);Nb(o,n);if(i[e+5>>0]|0?(c=i[o>>0]|0,f=(c&1)==0,(f?(c&255)>>>1:k[o+4>>2]|0)|0):0){c=k[e>>2]|0;k[g>>2]=f?o+1|0:k[o+8>>2]|0;He(c,985624,g)}ff(o)}if(d|0){f=k[d>>2]|0;if(f|0?i[f>>0]|0:0)Ob(f,n);f=k[d+4>>2]|0;if(f|0?i[f>>0]|0:0)Pb(f,n);f=k[d+8>>2]|0;if((f|0)!=23)Qb(f,n);f=k[d+12>>2]|0;if((f|0)!=26)Rb(f,n)}Cb(n);if(i[e+5>>0]|0){Sb(o,n);d=i[o>>0]|0;f=(d&1)==0;if((f?(d&255)>>>1:k[o+4>>2]|0)|0){d=k[e>>2]|0;k[h>>2]=f?o+1|0:k[o+8>>2]|0;He(d,985648,h)}ff(o)}d=k[n>>2]|0;c=(d|0)>0;if(c){b=0;do{a=j[n+4+(b<<1)>>1]|0;f=a&1023;a=a<<16>>16>>10;if((a|0)>0)fc(f,rb(f,a)|0,e);b=b+1|0}while((b|0)<(d|0))}k[l>>2]=0;jc(o,l);g=k[o>>2]|0;if(c){b=g+40|0;f=0;while(1){l=m[n+4+(f<<1)>>1]&1023;h=g+((Hc(l)|0)<<2)|0;k[h>>2]=(k[h>>2]|0)+1;switch(l|0){case 16:{k[b>>2]=(k[b>>2]|0)+1;break}case 69:{k[b>>2]=(k[b>>2]|0)+1;break}default:{}}f=f+1|0;if((f|0)==(d|0)){a=0;break}}do{l=j[n+4+(a<<1)>>1]|0;f=l&1023;a:do if((l<<16>>16>>10|0)>0){l=Hc(f)|0;if((l|0)>0?(k[g+(l<<2)>>2]|0)==1:0)hc(f,e);switch(f|0){case 16:case 69:break;default:break a}if((k[b>>2]|0)==1)hc(f,e)}while(0);a=a+1|0}while((a|0)!=(d|0))}b=g;if(g|0){f=o+4|0;a=k[f>>2]|0;if((a|0)!=(g|0))k[f>>2]=a+(~((a+-4-b|0)>>>2)<<2);Xd(g)}r=p;return}function jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a>>2]=0;e=a+4|0;k[e>>2]=0;k[a+8>>2]=0;kc(a);c=k[e>>2]|0;a=11;d=c;while(1){k[d>>2]=k[b>>2];a=a+-1|0;if(!a)break;else d=d+4|0}k[e>>2]=c+44;return}function kc(a){a=a|0;var b=0;b=pe(44)|0;k[a+4>>2]=b;k[a>>2]=b;k[a+8>>2]=b+44;return}function lc(a){a=a|0;var b=0,c=0,d=0;c=k[a>>2]|0;d=c;if(c|0){a=a+4|0;b=k[a>>2]|0;if((b|0)!=(c|0))k[a>>2]=b+(~((b+-4-d|0)>>>2)<<2);Xd(c)}return}function mc(a,b,c,d,e,f,g,h,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;U=r;r=r+3488|0;S=U+3112|0;O=U+3104|0;F=U+3096|0;E=U+3088|0;R=U+3080|0;L=U+3072|0;I=U+3064|0;H=U+3056|0;J=U+3040|0;C=U+3032|0;p=U+3024|0;o=U+3016|0;D=U+2112|0;m=U+3468|0;n=U+3308|0;z=U+3320|0;q=U;T=U+3168|0;A=U+3144|0;y=U+3136|0;G=U+3124|0;Q=U+3120|0;k[f>>2]=26;K=f+4|0;k[K>>2]=26;M=f+8|0;k[M>>2]=26;k[g>>2]=0;N=g+4|0;k[N>>2]=0;P=g+8|0;k[P>>2]=0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;k[h+16>>2]=0;k[h+20>>2]=0;k[j>>2]=0;i[l>>0]=0;if(e&8192|0){ef(D,a,b);if(!(e&512)){nc(n);B=(i[n>>0]&1)==0?n+1|0:k[n+8>>2]|0;k[p>>2]=b;k[p+4>>2]=B;He(941120,985693,p);ff(n)}else{oc(m);B=(i[m>>0]&1)==0?m+1|0:k[m+8>>2]|0;k[o>>2]=b;k[o+4>>2]=B;He(941120,985674,o);ff(m)}ff(D)}if(!b)m=26;else{rd(D);k[z>>2]=941120;i[z+4>>0]=e>>>8&1;w=e>>>9&1;i[z+5>>0]=w;x=z+6|0;i[x>>0]=e>>>10&1;i[z+7>>0]=e>>>11&1;k[z+12>>2]=26;t=z+8|0;k[t>>2]=0;k[z+140>>2]=7896;o=z+144|0;k[o>>2]=0;m=z+16|0;n=m+120|0;do{k[m>>2]=0;m=m+4|0}while((m|0)<(n|0));u=e>>>12;ic(a,b,c,d,z);md(q);md(q+528|0);md(q+1056|0);md(q+1584|0);wc(T,a,b,c);k[o>>2]=T;n=A+4|0;o=A+12|0;k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;k[A+12>>2]=0;k[A+16>>2]=26;k[y>>2]=0;s=re(16384)|0;p=(e&4|0)!=0;if(p)rf(s|0,0,16384)|0;q=(e&2|0)==0;v=(e&1|0)!=0;B=0;while(1){if(!(Cc(T,A)|0)){o=21;break}m=k[n>>2]|0;if(q){if(!(v|(m|0)<2049)?_b(k[A>>2]|0,m)|0:0){o=15;break}}else{m=Zb(k[A>>2]|0,m)|0;k[n>>2]=m}if(p){m=Yb(k[A>>2]|0,m,y,s)|0;k[n>>2]=m}k[t>>2]=k[o>>2];ld(A,z,D);B=m+B|0}if((o|0)==15){if(w|0){k[C>>2]=B;He(941120,985708,C)}se(s);m=mc(a,b,c,d,e|2,f,g,h,j,l)|0}else if((o|0)==21){se(s);n=(w|0)!=0;m=u&1;if(n&(m|0)==0){if(!(i[x>>0]|0))Ze(1017206,5,1,941120);vd(D)}p=(m|0)!=0;bc(D,n,p);ud(D);dc(D,B,G,f,g,h,j,l);do if(!(v|(B|0)<257)){if(i[l>>0]|0){m=k[g>>2]|0;if((m|0)>69){o=29;break}if(((k[N>>2]|0)+m|0)>92){o=29;break}}if(!(p|n^1))cc(f,g,j,l);if((B|0)<256){if(n){k[E>>2]=B;He(941120,985862,E)}m=mc(a,b,c,d,e|93,f,g,h,j,l)|0;break}else{if(n){k[F>>2]=B;He(941120,985937,F)}m=mc(a,b,c,d,e|13,f,g,h,j,l)|0;break}}else o=29;while(0);if((o|0)==29){$b(D,n,p);ud(D);dc(D,B,G,f,g,h,j,l);ec(B,f,g,Q,l,n,p);m=n^1;if(!(p|m)){o=0;do{n=k[f+(o<<2)>>2]|0;if((n|0)!=26){j=Gc(n)|0;E=k[G+(o<<2)>>2]|0;F=k[g+(o<<2)>>2]|0;k[J>>2]=j;k[J+4>>2]=E;k[J+8>>2]=F;He(941120,985771,J)}o=o+1|0}while((o|0)!=3);k[H>>2]=B;He(941120,985761,H);H=Fc(k[Q>>2]|0)|0;J=i[l>>0]|0?32:42;k[I>>2]=H;k[I+4>>2]=J;He(941120,985785,I);Ze(985793,9,1,941120)}if(m|p^1)m=k[Q>>2]|0;else{Ze(985803,37,1,941120);m=k[f>>2]|0;if((m|0)!=26){J=Gc(m)|0;g=k[g>>2]|0;k[L>>2]=J;k[L+4>>2]=g;He(941120,985841,L)}m=k[K>>2]|0;if((m|0)!=26){L=Gc(m)|0;N=k[N>>2]|0;k[O>>2]=L;k[O+4>>2]=N;He(941120,985841,O)}m=k[M>>2]|0;if((m|0)!=26){O=Gc(m)|0;P=k[P>>2]|0;k[S>>2]=O;k[S+4>>2]=P;He(941120,985841,S)}m=k[Q>>2]|0;Q=Fc(m)|0;S=i[l>>0]|0?32:42;k[R>>2]=Q;k[R+4>>2]=S;He(941120,985785,R);Ze(1017206,5,1,941120)}}}xc(T)}r=U;return m|0}function nc(a){a=a|0;ef(a,1097825,0);return}function oc(a){a=a|0;ef(a,1097825,0);return}function pc(a){a=a|0;a:do if(a>>>0>=256){if(a>>>0>=55296){switch(a&-16|0){case 64992:case 64976:{a=65533;break a}default:{}}if((a&65534|0)==65534)a=65533;else a=(a+-57344|0)>>>0<1056768?a:65533}}else a=k[7932+(a<<2)>>2]|0;while(0);return a|0}function qc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:do if((b|0)>0){g=0;c=0;d=0;while(1){f=i[a+g>>0]|0;if((f&-64)<<24>>24!=-128){e=(d|0)>7|((c|0)>24?1:((l[993817+((f&255)>>>4)>>0]|0)+g|0)>(b|0));if(e)break a;else d=(e&1^1)+d|0}switch(f<<24>>24){case 60:{f=1097792+c|0;i[f>>0]=38;i[f+1>>0]=108;i[f+2>>0]=116;i[f+3>>0]=59;c=c+4|0;break}case 62:{f=1097792+c|0;i[f>>0]=38;i[f+1>>0]=103;i[f+2>>0]=116;i[f+3>>0]=59;c=c+4|0;break}case 38:{f=1097792+c|0;i[f>>0]=i[993833]|0;i[f+1>>0]=i[993834]|0;i[f+2>>0]=i[993835]|0;i[f+3>>0]=i[993836]|0;i[f+4>>0]=i[993837]|0;c=c+5|0;break}case 39:{f=1097792+c|0;i[f>>0]=i[993839]|0;i[f+1>>0]=i[993840]|0;i[f+2>>0]=i[993841]|0;i[f+3>>0]=i[993842]|0;i[f+4>>0]=i[993843]|0;i[f+5>>0]=i[993844]|0;c=c+6|0;break}case 34:{f=1097792+c|0;i[f>>0]=i[993846]|0;i[f+1>>0]=i[993847]|0;i[f+2>>0]=i[993848]|0;i[f+3>>0]=i[993849]|0;i[f+4>>0]=i[993850]|0;i[f+5>>0]=i[993851]|0;c=c+6|0;break}default:{i[1097792+c>>0]=f;c=c+1|0}}g=g+1|0;if((g|0)>=(b|0))break a}}else c=0;while(0);i[1097792+c>>0]=0;return}function rc(a,b){a=a|0;b=b|0;do if(b>>>0>=128){if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;b=2;break}b=b>>>0>1114111?65533:b;if(b>>>0<65536){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;b=3;break}else{i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;b=4;break}}else{i[a>>0]=b;b=1}while(0);return b|0}function sc(a,b){a=a|0;b=b|0;var c=0,d=0;d=r;r=r+16|0;c=d;if((b|0)>15)b=-1;else{vf(c|0,a|0,b|0)|0;i[c+b>>0]=0;b=Nc(c)|0;if((b|0)>-1)b=k[8956+(b<<3)+4>>2]|0;else b=-1}r=d;return b|0}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=a+b|0;a:do if((b|0)!=0?(i[a>>0]|0)==38:0){k[c>>2]=1;f=a+1|0;d=i[f>>0]|0;if(d<<24>>24==35){if((b|0)<4){d=-1;break}d=a+2|0;b:do switch(i[d>>0]|0){case 88:case 120:{d=a+3|0;do{if((i[d>>0]|0)!=48)break;d=d+1|0}while(d>>>0<j>>>0);if((d|0)==(j|0)){d=-1;break a}f=i[d>>0]|0;if((f+-48&255)>=10)switch(f<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{d=-1;break a}}c:do if(d>>>0<j>>>0){e=f;b=d;while(1){if((e+-48&255)>=10)switch(e<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{h=b;break c}}b=b+1|0;if(b>>>0>=j>>>0){h=b;break c}e=i[b>>0]|0}}else h=d;while(0);b=h;g=b-d|0;if((g|0)>=8?!((g|0)==8&f<<24>>24<56):0){d=65533;break b}d:do if(d>>>0<h>>>0){g=f;e=0;while(1){f=e<<4;e=g<<24>>24;do if((g+-48&255)>=10)if((g+-97&255)<6){e=e+-87|0;break}else{e=(g+-65&255)<6?e+-55|0:0;break}else e=e+-48|0;while(0);f=e+f|0;e=d+1|0;if((e|0)==(h|0)){d=f;break d}d=e;g=i[e>>0]|0;e=f}}else d=0;while(0);d=pc(d)|0;break}case 48:{while(1){d=d+1|0;if(d>>>0>=j>>>0){l=32;break b}if((i[d>>0]|0)!=48){l=32;break}}break}default:l=32}while(0);do if((l|0)==32){if((d|0)==(j|0)){d=-1;break a}f=i[d>>0]|0;if((f+-48&255)>=10){d=-1;break a}e:do if(d>>>0<j>>>0){b=d;while(1){b=b+1|0;if(b>>>0>=j>>>0){g=b;break e}if(((i[b>>0]|0)+-48&255)>=10){g=b;break}}}else g=d;while(0);b=g;e=b-d|0;if((e|0)>=9){if((e|0)!=10){d=65533;break}if((bf(d,993853,10)|0)>=1){d=65533;break}}if(d>>>0<g>>>0){e=(f<<24>>24)+-48|0;d=d+1|0;if((d|0)==(g|0))d=e;else{f=d;d=e;do{d=(d*10|0)+-48+(i[f>>0]|0)|0;f=f+1|0}while((f|0)!=(g|0))}}else d=0;d=pc(d)|0}while(0);if((d|0)==-1|b>>>0>j>>>0){d=-1;break}}else{g=f;if((b|0)>1?(d+-48&255)<10|((d&-33)+-65&255)<26:0){d=f;do{d=d+1|0;if(d>>>0>=j>>>0)break;h=i[d>>0]|0}while((h+-48&255)<10|((h&-33)+-65&255)<26);b=d;e=d}else{b=g;e=f}d=sc(f,b-g|0)|0;if((d|0)<0){d=-1;break}if((d|0)>255){if(e>>>0>=j>>>0){d=-1;break}if((i[e>>0]|0)!=59){d=-1;break}}}e=b;if(e>>>0<j>>>0?(i[e>>0]|0)==59:0)b=e+1|0;k[c>>2]=b-a}else l=3;while(0);if((l|0)==3){k[c>>2]=0;d=-1}return d|0}function uc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=tc(a,b,d)|0;if((b|0)>0)b=rc(c,b)|0;else{k[d>>2]=1;b=0}k[e>>2]=b;return}function vc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=a+b|0;a:do if((b|0)>0){d=a;e=1008264;while(1){e=l[e+(l[1009064+(l[d>>0]|0)>>0]|0)>>0]|0;if((e|0)<=(c|0))break;d=d+1|0;if(d>>>0<f>>>0)e=1008264+(e*20|0)|0;else break a}switch(e|0){case 0:case 2:{b=d-a|0;break a}default:{}}b=d-a|0;while(1){d=b+-1|0;if((b|0)<=1)break a;if((i[a+d>>0]|0)==60)break;else b=d}}while(0);return b|0}function wc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a>>2]=b;k[a+4>>2]=b;k[a+8>>2]=b+c;k[a+12>>2]=c;i[a+16>>0]=d&1;i[a+28>>0]=1;i[a+29>>0]=1;k[a+32>>2]=1;c=a+36|0;Pc(c);d=a+88|0;Pc(d);b=re(40960)|0;k[a+20>>2]=b;b=re(61440)|0;k[a+24>>2]=b;Qc(c);Qc(d);return}function xc(a){a=a|0;var b=0;b=k[a+20>>2]|0;if(b|0)se(b);b=k[a+24>>2]|0;if(b|0)se(b);Rc(a+88|0);Rc(a+36|0);return}function yc(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,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+32|0;o=u+12|0;s=u+8|0;q=u+4|0;n=u;p=u+16|0;k[q>>2]=0;a:do if((c|0)>0){m=a+16|0;j=a+32|0;a=0;e=0;while(1){yd(b+e|0,c-e|0,o);e=(k[o>>2]|0)+e|0;if((e|0)>=(c|0)){e=c;a=0;break a}g=b+e|0;h=i[g>>0]|0;f=h&255;b:do if(((h&-32)<<24>>24==32?(i[1009320+f>>0]|0)!=0:0)?(i[m>>0]|0)==0:0)switch(h<<24>>24){case 60:{a=vc(g,c-e|0,k[j>>2]|0)|0;k[q>>2]=a;break b}case 62:{k[q>>2]=1;a=1;break b}case 38:{uc(g,c-e|0,p,q,n);k[o>>2]=l[1009576+(l[p>>0]|0)>>0];k[s>>2]=p;a=(xd(s,o)|0)&255;t=12;break b}default:break b}else t=11;while(0);if((t|0)==11){a=l[1009576+f>>0]|0;k[q>>2]=a;k[o>>2]=a;k[s>>2]=g;a=(xd(s,o)|0)&255;t=12}if((t|0)==12){t=0;if(a|0)break a;a=k[q>>2]|0}e=a+e|0;if((e|0)>=(c|0)){a=0;break}}}else{e=0;a=0}while(0);k[d>>2]=a;r=u;return e|0}function zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;p=w+4|0;o=w;t=a+20|0;m=k[t>>2]|0;k[b>>2]=m;u=b+4|0;k[u>>2]=0;v=a+4|0;k[b+8>>2]=(k[v>>2]|0)-(k[a>>2]|0);k[b+12>>2]=0;k[b+16>>2]=26;l=b+20|0;i[l>>0]=0;s=a+12|0;n=k[s>>2]|0;n=(n+-40928|0)>>>0<40928?(n|0)/2|0:40896;i[m>>0]=32;i[(k[t>>2]|0)+1>>0]=0;b=k[s>>2]|0;if((b|0)<1)b=0;else{m=a+16|0;j=a+32|0;c=0;g=b;h=0;a=1;b=0;while(1){d=k[v>>2]|0;e=d+b|0;f=i[e>>0]|0;f=f<<24>>24==13?10:f;if(((f&-32)<<24>>24==32?(i[1009320+(f&255)>>0]|0)!=0:0)?(i[m>>0]|0)==0:0){a:do switch(f<<24>>24){case 60:{b:do if((b|0)<(g+-3|0))switch(i[d+(b+1)>>0]|32|0){case 112:{d=(i[d+(b+2)>>0]|0)<64?10:32;break b}case 98:{if((i[d+(b+2)>>0]|32|0)!=114){d=32;break b}d=(i[d+(b+3)>>0]|0)<64?10:32;break b}case 116:{if((i[d+(b+2)>>0]|32|0)!=114){d=32;break b}d=(i[d+(b+3)>>0]|0)<64?10:32;break b}default:{d=32;break b}}else d=32;while(0);c=(vc(e,g-b|0,k[j>>2]|0)|0)+1|0;k[p>>2]=c;if(h)switch(d<<24>>24){case 10:case 32:{e=d;d=1;break a}default:{}}i[(k[t>>2]|0)+a>>0]=d;e=d;d=d<<24>>24==32|d<<24>>24==10;a=a+1|0;break}case 62:{k[p>>2]=1;i[(k[t>>2]|0)+a>>0]=62;c=1;e=62;d=h;a=a+1|0;break}case 38:{uc(e,g-b|0,(k[t>>2]|0)+a|0,p,o);c=k[p>>2]|0;e=38;d=h;a=(k[o>>2]|0)+a|0;break}default:{e=f;d=h}}while(0);h=c;b=c+b|0}else{if(h)switch(f<<24>>24){case 10:case 32:{d=1;break}default:q=22}else q=22;if((q|0)==22){q=0;i[(k[t>>2]|0)+a>>0]=f;d=f<<24>>24==32|f<<24>>24==10;a=a+1|0}h=c;e=f;b=b+1|0}if(!((a|0)<(n|0)|e<<24>>24!=10&e<<24>>24!=32)){q=25;break}if((a|0)>40927){q=28;break}g=k[s>>2]|0;if((g|0)<=(b|0))break;else{c=h;h=d}}if((q|0)==25)i[l>>0]=1;else if((q|0)==28)i[l>>0]=1;d=k[v>>2]|0;c:do if((b|0)>0){c=b;while(1){if((i[d+c>>0]&-64)<<24>>24!=-128){b=c;break c}b=c+-1|0;a=a+-1|0;if((c|0)>1)c=b;else break}}while(0);k[v>>2]=d+b;k[s>>2]=(k[s>>2]|0)-b;i[(k[t>>2]|0)+a>>0]=32;i[(k[t>>2]|0)+(a+1)>>0]=32;i[(k[t>>2]|0)+(a+2)>>0]=32;i[(k[t>>2]|0)+(a+3)>>0]=0;k[u>>2]=a;b=1}r=w;return b|0}function Ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=r;r=r+32|0;s=C+16|0;v=C+12|0;c=C+8|0;u=C+4|0;t=C;if(!(i[a+28>>0]|0))b=zc(a,b)|0;else{z=a+20|0;y=k[z>>2]|0;k[b>>2]=y;A=b+4|0;k[A>>2]=0;B=a+4|0;o=b+8|0;k[o>>2]=(k[B>>2]|0)-(k[a>>2]|0);d=b+12|0;k[d>>2]=0;k[b+16>>2]=26;p=b+20|0;i[p>>0]=0;x=a+12|0;q=k[x>>2]|0;q=(q+-40928|0)>>>0<40928?(q|0)/2|0:40896;k[u>>2]=0;k[t>>2]=0;i[y>>0]=32;i[(k[z>>2]|0)+1>>0]=0;y=a+36|0;Qc(y);Xc(y,k[o>>2]|0);b=yc(a,k[B>>2]|0,k[x>>2]|0,c)|0;k[B>>2]=(k[B>>2]|0)+b;k[x>>2]=(k[x>>2]|0)-b;if((b|0)==1)Vc(y,1);else{Xc(y,b);Wc(y,1)}b=k[x>>2]|0;if((b|0)<1){Tc(y);b=0}else{o=k[c>>2]|0;k[d>>2]=o;m=a+16|0;n=a+29|0;j=a+32|0;d=b;c=1;a=0;b=0;do{a:do if((d|0)>(b|0)){g=a;while(1){f=(k[B>>2]|0)+b|0;a=i[f>>0]|0;e=a&255;b:do if(((a&-32)<<24>>24==32?(i[1009320+e>>0]|0)!=0:0)?(i[m>>0]|0)==0:0){switch(a<<24>>24){case 62:case 60:{h=c;c=0;break a}case 38:break;default:break b}uc(f,d-b|0,(k[z>>2]|0)+c|0,u,t);g=(k[z>>2]|0)+c|0;k[s>>2]=l[1009576+(l[g>>0]|0)>>0];k[v>>2]=g;g=(xd(v,s)|0)&255}else w=15;while(0);if((w|0)==15){w=0;a=l[1009576+e>>0]|0;k[t>>2]=a;k[u>>2]=a;e=(k[z>>2]|0)+c|0;if((b|0)<(d+-3|0)){h=l[f>>0]|l[f+1>>0]<<8|l[f+2>>0]<<16|l[f+3>>0]<<24;i[e>>0]=h;i[e+1>>0]=h>>8;i[e+2>>0]=h>>16;i[e+3>>0]=h>>24}else vf(e|0,f|0,a|0)|0;g=(k[B>>2]|0)+b|0;k[s>>2]=l[1009576+(l[g>>0]|0)>>0];k[v>>2]=g;g=(xd(v,s)|0)&255}if((g|0)!=40&(g|0)!=(o|0)){if(!g){h=c;c=0;break a}d=k[u>>2]|0;h=(k[B>>2]|0)+b+d|0;k[s>>2]=l[1009576+(l[h>>0]|0)>>0];k[v>>2]=h;h=xd(v,s)|0;if(!(h<<24>>24==0|(h&255|0)==(o|0))?(i[n>>0]|0)!=0:0){h=c;c=g;break a}}else d=k[u>>2]|0;b=d+b|0;a=k[t>>2]|0;c=a+c|0;do if((d|0)!=(a|0))if((d|0)<(a|0)){Vc(y,d);Wc(y,a-d|0);break}else{Vc(y,a);Xc(y,d-a|0);break}else Vc(y,d);while(0);if((c|0)>40927)break;d=k[x>>2]|0;if((d|0)<=(b|0)){h=c;c=g;break a}}i[p>>0]=1;h=c;c=g}else{h=c;c=a}while(0);d=k[x>>2]|0;c:do if((d|0)>(b|0))while(1){yd((k[B>>2]|0)+b|0,d-b|0,s);d=k[s>>2]|0;k[u>>2]=d;b=d+b|0;Xc(y,d);d=k[x>>2]|0;if((d|0)<=(b|0)){a=c;break c}a=(k[B>>2]|0)+b|0;e=i[a>>0]|0;f=e&255;d:do if(((e&-32)<<24>>24==32?(i[1009320+f>>0]|0)!=0:0)?(i[m>>0]|0)==0:0)switch(e<<24>>24){case 60:{c=vc(a,d-b|0,k[j>>2]|0)|0;k[u>>2]=c;break d}case 62:{k[u>>2]=1;c=1;break d}case 38:{uc(a,d-b|0,(k[z>>2]|0)+h|0,u,t);c=(k[z>>2]|0)+h|0;k[s>>2]=l[1009576+(l[c>>0]|0)>>0];k[v>>2]=c;c=(xd(v,s)|0)&255;w=42;break d}default:{w=42;break d}}else w=41;while(0);if((w|0)==41){c=l[1009576+f>>0]|0;k[u>>2]=c;k[s>>2]=c;k[v>>2]=a;c=(xd(v,s)|0)&255;w=42}if((w|0)==42){w=0;if(c|0){a=c;break c}c=k[u>>2]|0}b=c+b|0;Xc(y,c);d=k[x>>2]|0;if((d|0)<=(b|0)){a=0;break}else c=0}else a=c;while(0);c=h+1|0;i[(k[z>>2]|0)+h>>0]=32;Wc(y,1);if((a|0)!=40&(a|0)!=(o|0))break;if((c|0)>=(q|0)){w=48;break}d=k[x>>2]|0}while((b|0)<(d|0));if((w|0)==48)i[p>>0]=1;e=k[x>>2]|0;e:do if((b|0)>0){a=(b|0)<(e|0);d=b;while(1){if(!a){b=d;break e}if((i[(k[B>>2]|0)+d>>0]&-64)<<24>>24!=-128){b=d;break e}b=d+-1|0;c=c+-1|0;if((d|0)>1)d=b;else break}}while(0);k[B>>2]=(k[B>>2]|0)+b;k[x>>2]=e-b;i[(k[z>>2]|0)+c>>0]=32;i[(k[z>>2]|0)+(c+1)>>0]=32;i[(k[z>>2]|0)+(c+2)>>0]=32;i[(k[z>>2]|0)+(c+3)>>0]=0;Wc(y,4);Tc(y);k[A>>2]=c;b=1}}r=C;return b|0}function Bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;g=c+4|0;d=a+88|0;Qc(d);e=b+4|0;f=a+24|0;zd(k[b>>2]|0,(k[e>>2]|0)+3|0,k[f>>2]|0,61440,(i[a+16>>0]|0)!=0,c+8|0,g,c,d);a=k[g>>2]|0;i[(k[f>>2]|0)+a>>0]=0;k[b>>2]=k[f>>2];k[e>>2]=a+-3;Tc(d);r=c;return}function Cc(a,b){a=a|0;b=b|0;var c=0;c=Ac(a,b)|0;Bc(a,b);return c|0}function Dc(a){a=a|0;a=(a|0)<0?0:a;return k[15988+(((a|0)>101?0:a)<<2)>>2]|0}function Ec(a){a=a|0;a=(a|0)<0?0:a;return k[16396+(((a|0)>101?0:a)<<2)>>2]|0}function Fc(a){a=a|0;a=(a|0)<0?26:a;return k[11076+(((a|0)>613?26:a)<<2)>>2]|0}function Gc(a){a=a|0;a=(a|0)<0?26:a;return k[13532+(((a|0)>613?26:a)<<2)>>2]|0}function Hc(a){a=a|0;do switch(a|0){case 40:case 38:{a=1;break}case 105:{a=2;break}case 135:{a=2;break}case 17:{a=3;break}case 68:{a=3;break}case 84:{a=4;break}case 83:{a=4;break}case 78:{a=5;break}case 28:{a=5;break}case 29:{a=5;break}case 160:{a=5;break}case 35:{a=6;break}case 64:{a=6;break}case 51:{a=6;break}case 43:{a=6;break}case 10:{a=7;break}case 80:{a=7;break}case 1:{a=7;break}case 31:{a=8;break}case 14:{a=8;break}case 12:{a=8;break}case 143:{a=9;break}case 147:{a=9;break}default:a=0}while(0);return a|0}function Ic(a){a=a|0;if(a>>>0>101)a=26;else a=k[16804+(a<<2)>>2]|0;return a|0}function Jc(a){a=a|0;if((a|0)<512)a=i[992810+a>>0]|0;else a=0;return a|0}function Kc(a,b){a=a|0;b=b|0;do if(a>>>0<=101){if((k[16396+(a<<2)>>2]|0)>>>0<2){b=k[16804+(a<<2)>>2]|0;break}b=b&255;if((a|0)==1){b=m[941344+(b<<1)>>1]|0;break}else{b=m[941856+(b<<1)>>1]|0;break}}else b=26;while(0);return b|0}function Lc(a){a=a|0;if((a|0)<512)a=(m[941344+((l[992810+a>>0]|0)<<1)>>1]|0|0)==(a|0);else a=0;return a|0}function Mc(a){a=a|0;if((a|0)<512)a=(m[941856+((l[992810+a>>0]|0)<<1)>>1]|0|0)==(a|0);else a=0;return a|0}function Nc(a){a=a|0;var b=0,c=0,d=0,e=0;c=0;e=265;a:while(1)while(1){if((c|0)>=(e|0)){b=-1;break a}b=c+e>>1;d=_e(a,k[8956+(b<<3)>>2]|0)|0;if((d|0)<0){e=b;continue a}if((d|0)>0)c=b+1|0;else break a}return b|0}function Oc(a){a=a|0;switch(a|0){case 1:{a=0;break}case 3:{a=1;break}case 6:{a=2;break}default:a=3}return a|0}function Pc(a){a=a|0;var b=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=1;a=a+16|0;b=a+36|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Qc(a){a=a|0;var b=0;if(!(i[a>>0]&1)){i[a+1>>0]=0;i[a>>0]=0}else{i[k[a+8>>2]>>0]=0;k[a+4>>2]=0}k[a+12>>2]=1;a=a+16|0;b=a+36|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Rc(a){a=a|0;ff(a);return}function Sc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=a+16|0;g=k[j>>2]|0;do if(g|0){h=a+12|0;b=k[h>>2]|0;if((b|0)==1){e=i[a>>0]|0;f=(e&1)==0;if(f)c=(e&255)>>>1;else c=k[a+4>>2]|0;if(c|0){if(f){c=(e&255)>>>1;d=a+1|0}else{c=k[a+4>>2]|0;d=k[a+8>>2]|0}d=i[d+(c+-1)>>0]|0;if((d&-64)<<24>>24==64?(g+(d&63)|0)>>>0<64:0){if(f){c=(e&255)>>>1;b=a+1|0}else{c=k[a+4>>2]|0;b=k[a+8>>2]|0}a=b+(c+-1)|0;i[a>>0]=(l[a>>0]|0)+g;k[j>>2]=0;break}}}if(g>>>0>63){c=g;d=0;e=30;while(1){b=c>>>e&63;if(d|(b|0)!=0){mf(a,b&255);b=1}else b=0;if((e|0)<=6)break;c=k[j>>2]|0;d=b;e=e+-6|0}c=k[j>>2]|0;b=k[h>>2]|0}else c=g;mf(a,(c&63|b<<6)&255);k[j>>2]=0}while(0);return}function Tc(a){a=a|0;Uc(a);a=a+20|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;return}function Uc(a){a=a|0;var b=0,c=0;if(!(k[a+16>>2]|0)){b=i[a>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=k[a+4>>2]|0;if(!b)c=6}else c=6;if((c|0)==6){Vc(a,1);Sc(a)}return}function Vc(a,b){a=a|0;b=b|0;var c=0;do if(b|0){c=a+44|0;k[c>>2]=(k[c>>2]|0)+b;c=a+48|0;k[c>>2]=(k[c>>2]|0)+b;c=a+12|0;if((k[c>>2]|0)==1){a=a+16|0;k[a>>2]=(k[a>>2]|0)+b;break}else{Sc(a);k[c>>2]=1;k[a+16>>2]=b;break}}while(0);return}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;do if(b|0){d=a+48|0;k[d>>2]=(k[d>>2]|0)+b;d=a+12|0;e=k[d>>2]|0;if((e|0)==2){a=a+16|0;k[a>>2]=(k[a>>2]|0)+b;break}c=a+16|0;if((b|0)==1&(e|0)==3?(k[c>>2]|0)==1:0){k[d>>2]=1;break}Sc(a);k[d>>2]=2;k[c>>2]=b}while(0);return}function Xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;do if(b|0){d=a+44|0;k[d>>2]=(k[d>>2]|0)+b;d=a+12|0;e=k[d>>2]|0;if((e|0)==3){a=a+16|0;k[a>>2]=(k[a>>2]|0)+b;break}c=a+16|0;if((b|0)==1&(e|0)==2?(k[c>>2]|0)==1:0){k[d>>2]=1;break}Sc(a);k[d>>2]=3;k[c>>2]=b}while(0);return}function Yc(a,b,c,d,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,l=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+16|0;l=t;qd(f,l);h=k[l>>2]|0;o=Kc(a,h&255)|0;l=k[l+4>>2]|0;q=Kc(a,l&255)|0;n=f+16|0;if((d|0)>0)s=(m[n+(h<<1)>>1]<<10|0)/(d|0)|0;else s=0;p=(Oc(a)|0)+(o<<2)|0;p=j[(k[(k[e+140>>2]|0)+32>>2]|0)+(p<<1)>>1]|0;j[g>>1]=c;j[g+2>>1]=b;j[g+4>>1]=o;j[g+6>>1]=q;c=j[n+(h<<1)>>1]|0;j[g+8>>1]=c;h=j[n+(l<<1)>>1]|0;j[g+10>>1]=h;j[g+12>>1]=d;e=k[f+12>>2]|0;j[g+14>>1]=e;j[g+16>>1]=a;e=(pb(c&65535,h&65535,e&65535)|0)&255;h=g+18|0;i[h>>0]=e;e=Hc(o)|0;if(e|0?(e|0)==(Hc(q)|0):0)i[h>>0]=100;s=(qb(s,p)|0)&255;i[g+19>>0]=s;r=t;return}function Zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=(k[a+8>>2]|0)==1;f=e?a+96|0:a+116|0;d=e?a+16|0:a+36|0;c=k[d+4>>2]|0;if(c|0)kb(c,b);c=k[d+8>>2]|0;if(c|0)kb(c,b);c=k[d+12>>2]|0;if(c|0)kb(c,b);c=k[d+16>>2]|0;if(c|0)kb(c,b);e=e?a+56|0:a+76|0;c=k[f+4>>2]|0;if(c|0)kb(c,b);c=k[f+8>>2]|0;if(c|0)kb(c,b);c=k[f+12>>2]|0;if(c|0)kb(c,b);c=k[f+16>>2]|0;if(c|0)kb(c,b);d=b+16|0;c=k[e+4>>2]|0;if(c|0)j[d+((c>>>8&255)<<1)>>1]=0;c=k[e+8>>2]|0;if(c|0)j[d+((c>>>8&255)<<1)>>1]=0;c=k[e+12>>2]|0;if(c|0)j[d+((c>>>8&255)<<1)>>1]=0;c=k[e+16>>2]|0;if(c|0)j[d+((c>>>8&255)<<1)>>1]=0;return}function _c(a,b,c,d,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,l=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+16|0;h=t;s=k[b+56064+(c<<2)>>2]|0;q=k[b+56064+(c+1<<2)>>2]|0;nd(f);k[e+16>>2]=0;k[e+20>>2]=0;if(i[d+7>>0]|0){p=k[d>>2]|0;k[h>>2]=s;k[h+4>>2]=q;He(p,1017069,h)}k[e>>2]=s;k[e+12>>2]=q-s;if((q|0)>(s|0)){h=d+96|0;l=d+8|0;n=d+116|0;p=s;do{o=k[b+24056+(p<<3)+4>>2]|0;kb(o,f);e=b+24056+(p<<3)+2|0;c=j[e>>1]|0;if((c&65535)<2){od(f);c=j[e>>1]|0}if(c<<16>>16==3){e=(k[l>>2]|0)==1?h:n;c=k[e>>2]|0;k[e+4+(c<<2)>>2]=o;k[e>>2]=c+1&3}p=p+1|0}while((p|0)!=(q|0))}Zc(d,f);p=m[b+24056+(s<<3)>>1]|0;Yc(a,s,p,(m[b+24056+(q<<3)>>1]|0)-p|0,d,f,g);k[d+12>>2]=m[g+4>>1];r=t;return}function $c(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+608|0;w=x+552|0;s=x+528|0;p=x;q=x+576|0;k[w>>2]=0;k[w+4>>2]=0;k[w+8>>2]=0;k[w+12>>2]=0;k[w+16>>2]=0;k[w+20>>2]=0;k[s>>2]=0;k[s+4>>2]=0;k[s+8>>2]=0;k[s+12>>2]=0;k[s+16>>2]=0;k[s+20>>2]=0;g=b+24|0;if((k[g>>2]|0)>0){i=s+12|0;l=s+16|0;m=s+4|0;n=s+20|0;o=s+8|0;t=0;do{md(p);_c(a,b,t,c,s,p,q);h=k[d>>2]|0;if((h|0)<50){u=d+4+(h*20|0)|0;f=q;v=u+20|0;do{j[u>>1]=j[f>>1]|0;u=u+2|0;f=f+2|0}while((u|0)<(v|0));h=(k[d>>2]|0)+1|0;k[d>>2]=h};k[w>>2]=k[s>>2];k[w+4>>2]=k[s+4>>2];k[w+8>>2]=k[s+8>>2];k[w+12>>2]=k[s+12>>2];k[w+16>>2]=k[s+16>>2];k[w+20>>2]=k[s+20>>2];k[s>>2]=(k[s>>2]|0)+(k[i>>2]|0);k[m>>2]=(k[m>>2]|0)+(k[l>>2]|0);k[o>>2]=(k[o>>2]|0)+(k[n>>2]|0);t=t+1|0}while((t|0)<(k[g>>2]|0))}else h=k[d>>2]|0;i=k[b+20>>2]|0;f=j[b+24056+(i<<3)>>1]|0;g=d+4+(h*20|0)|0;u=g;v=u+20|0;do{j[u>>1]=0;u=u+2|0}while((u|0)<(v|0));j[g>>1]=f;j[d+4+(h*20|0)+2>>1]=i;k[e>>2]=k[w>>2];k[e+4>>2]=k[w+4>>2];k[e+8>>2]=k[w+8>>2];k[e+12>>2]=k[w+12>>2];k[e+16>>2]=k[w+16>>2];k[e+20>>2]=k[w+20>>2];r=x;return}function ad(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((k[a>>2]|0)>0){c=0;do{e=l[a+4+(c*20|0)+18>>0]|0;d=l[a+4+(c*20|0)+19>>0]|0;sd(b,j[a+4+(c*20|0)+4>>1]|0,m[a+4+(c*20|0)+12>>1]|0,m[a+4+(c*20|0)+8>>1]|0,e>>>0<d>>>0?e:d);c=c+1|0}while((c|0)<(k[a>>2]|0))}return}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;p=r;r=r+112|0;o=p+96|0;n=p+80|0;l=p+64|0;h=p+48|0;g=p+32|0;i=p+16|0;e=p;t=Dc(k[c>>2]|0)|0;d=c+8|0;s=k[d>>2]|0;j=c+12|0;q=k[j>>2]|0;m=c+16|0;f=k[m>>2]|0;k[e>>2]=t;k[e+4>>2]=s;k[e+8>>2]=q;k[e+12>>2]=f;He(a,1017096,e);e=c+4|0;a:do if((k[e>>2]|0)>0){f=0;do{if((f|0)<(k[d>>2]|0)){s=k[c+32+(f<<3)>>2]|0;t=k[c+32+(f<<3)+4>>2]|0;qc(b+s|0,6);k[i>>2]=f;k[i+4>>2]=s;k[i+8>>2]=(t|0)<0?(t&2147483647)+2e9|0:t;k[i+12>>2]=1097792;He(a,1017160,i)}if((f|0)<(k[j>>2]|0)){s=k[c+8040+(f<<3)>>2]|0;t=k[c+8040+(f<<3)+4>>2]|0;qc(b+s|0,12);k[g>>2]=f;k[g+4>>2]=s;k[g+8>>2]=t;k[g+12>>2]=1097792;He(a,1017175,g)}if((f|0)<(k[m>>2]|0)){s=k[c+16048+(f<<3)>>2]|0;t=k[c+16048+(f<<3)+4>>2]|0;qc(b+s|0,12);k[h>>2]=f;k[h+4>>2]=s;k[h+8>>2]=t;k[h+12>>2]=1097792;He(a,1017191,h)}if((f|0)<(k[d>>2]|0))Ze(1017206,5,1,a);if((f|0)>50)break a;f=f+1|0}while((f|0)<(k[e>>2]|0))}while(0);d=k[d>>2]|0;if((d|0)>50){s=k[c+32+(d<<3)>>2]|0;t=k[c+32+(d<<3)+4>>2]|0;qc(b+s|0,6);k[l>>2]=d;k[l+4>>2]=s;k[l+8>>2]=(t|0)<0?(t&2147483647)+2e9|0:t;k[l+12>>2]=1097792;He(a,1017160,l)}d=k[j>>2]|0;if((d|0)>50){s=k[c+8040+(d<<3)>>2]|0;t=k[c+8040+(d<<3)+4>>2]|0;qc(b+s|0,12);k[n>>2]=d;k[n+4>>2]=s;k[n+8>>2]=t;k[n+12>>2]=1097792;He(a,1017175,n)}d=k[m>>2]|0;if((d|0)>50){s=k[c+16048+(d<<3)>>2]|0;t=k[c+16048+(d<<3)+4>>2]|0;qc(b+s|0,12);k[o>>2]=d;k[o+4>>2]=s;k[o+8>>2]=t;k[o+12>>2]=1097792;He(a,1017191,o)}Ze(1017206,5,1,a);r=p;return}function cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,n=0,o=0;l=r;r=r+48|0;j=l+40|0;g=l+16|0;h=l+8|0;d=l;f=c+20|0;k[d>>2]=k[f>>2];He(a,1017212,d);d=k[f>>2]|0;if((d|0)>=0){e=0;while(1){if(!((e|0)>50&(e|0)<(d+-1|0))){o=m[c+24056+(e<<3)>>1]|0;n=i[1017266+(m[c+24056+(e<<3)+2>>1]|0)>>0]|0;d=k[c+24056+(e<<3)+4>>2]|0;qc(b+o|0,6);k[g>>2]=e;k[g+4>>2]=o;k[g+8>>2]=n;k[g+12>>2]=d;k[g+16>>2]=1097792;He(a,1017271,g);d=k[f>>2]|0}if((e|0)<(d|0))e=e+1|0;else break}}Ze(1017206,5,1,a);e=c+24|0;k[h>>2]=k[e>>2];He(a,1017242,h);if((k[e>>2]|0)>=0){d=0;while(1){o=k[c+56064+(d<<2)>>2]|0;k[j>>2]=d;k[j+4>>2]=o;He(a,1017294,j);if((d|0)<(k[e>>2]|0))d=d+1|0;else break}}Ze(1017206,5,1,a);r=l;return}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0;c=r;r=r+48|0;d=c;p=m[b>>1]|0;o=m[b+2>>1]|0;n=Gc(m[b+4>>1]|0)|0;l=m[b+8>>1]|0;i=Gc(m[b+6>>1]|0)|0;h=m[b+10>>1]|0;g=m[b+12>>1]|0;f=m[b+14>>1]|0;e=Dc(m[b+16>>1]|0)|0;b=j[b+18>>1]|0;k[d>>2]=p;k[d+4>>2]=o;k[d+8>>2]=n;k[d+12>>2]=l;k[d+16>>2]=i;k[d+20>>2]=h;k[d+24>>2]=g;k[d+28>>2]=f;k[d+32>>2]=e;k[d+36>>2]=b&255;k[d+40>>2]=(b&65535)>>>8&65535;He(a,1017302,d);r=c;return}function ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=r;r=r+16|0;d=e+8|0;c=e;k[c>>2]=k[b>>2];He(a,1017351,c);Ze(1017382,101,1,a);if((k[b>>2]|0)>=0){c=0;while(1){k[d>>2]=c;He(a,1017484,d);dd(a,b+4+(c*20|0)|0);if((c|0)<(k[b>>2]|0))c=c+1|0;else break}}Ze(1017206,5,1,a);r=e;return}function fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=k[a+140>>2]|0;if(b){t=k[d+4>>2]|0;r=0;s=t;b=d+8|0;d=d+12|0}else{r=1;s=k[d+16>>2]|0;t=k[d+20>>2]|0;b=d+24|0;d=d+28|0}e=k[b>>2]|0;b=k[d>>2]|0;o=c+8|0;d=k[o>>2]|0;p=k[c+12>>2]|0;q=k[c+16>>2]|0;j[c+24056>>1]=k[c+28>>2];j[c+24058>>1]=r;n=rb(Ic(k[a+8>>2]|0)|0,1)|0;k[c+24060>>2]=n;if((q|0)>0|((p|0)>0|(d|0)>0)){n=b+4|0;m=e+4|0;g=0;i=0;l=0;b=1;while(1){h=k[c+32+(g<<3)>>2]|0;f=k[c+8040+(i<<3)>>2]|0;a=k[c+16048+(l<<3)>>2]|0;do if((i|0)>=(p|0)|(f|0)>(h|0)|(f|0)>(a|0)){if(!((a|0)>(f|0)|((l|0)>=(q|0)|(a|0)>(h|0)))){f=l+1|0;e=k[(k[n>>2]|0)+(k[c+16048+(l<<3)+4>>2]<<2)>>2]|0;if(!e){a=i;e=f;break}j[c+24056+(b<<3)>>1]=a;j[c+24056+(b<<3)+2>>1]=3;k[c+24056+(b<<3)+4>>2]=e;a=i;e=f;b=b+1|0;break}f=k[c+32+(g<<3)+4>>2]|0;a=f&2147483647;f=(f|0)<0?t:s;g=g+1|0;e=k[f+8>>2]|0;if((a|0)<(e|0)){e=k[(k[f+4>>2]|0)+(a<<2)>>2]|0;if(!e){a=i;e=l;break}j[c+24056+(b<<3)>>1]=h;j[c+24056+(b<<3)+2>>1]=r;k[c+24056+(b<<3)+4>>2]=e;a=i;e=l;b=b+1|0;break}a=a-e+a|0;f=k[f+4>>2]|0;e=k[f+(a<<2)>>2]|0;a=k[f+(a+1<<2)>>2]|0;if(e){j[c+24056+(b<<3)>>1]=h;j[c+24056+(b<<3)+2>>1]=r;k[c+24056+(b<<3)+4>>2]=e;b=b+1|0}if(!a){a=i;e=l}else{j[c+24056+(b<<3)>>1]=h;j[c+24056+(b<<3)+2>>1]=r;k[c+24056+(b<<3)+4>>2]=a;a=i;e=l;b=b+1|0}}else{a=i+1|0;e=k[(k[m>>2]|0)+(k[c+8040+(i<<3)+4>>2]<<2)>>2]|0;if(!e)e=l;else{j[c+24056+(b<<3)>>1]=f;j[c+24056+(b<<3)+2>>1]=2;k[c+24056+(b<<3)+4>>2]=e;e=l;b=b+1|0}}while(0);if((e|0)<(q|0)|((a|0)<(p|0)|(g|0)<(d|0))){i=a;l=e}else break}d=k[o>>2]|0}else b=1;k[c+20>>2]=b;j[c+24056+(b<<3)>>1]=k[c+32+(d<<3)>>2];k[c+24056+(b<<3)+4>>2]=0;return}function gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0;o=b&1^1;i=b?50:20;j=c+20|0;e=k[j>>2]|0;b=k[c+8>>2]|0;if((b|0)>0){l=(i>>>1)+i|0;n=i<<1;h=b;f=0;d=0;b=a;do{if((h|0)>=(l|0))if((h|0)<(n|0))g=h+1>>1;else g=i;else g=h;k[c+56064+(d<<2)>>2]=f;k[c+56268+(d<<2)>>2]=b;d=d+1|0;if((f|0)<(e|0)&(g|0)>0){a=0;b=f;do{a=((m[c+24056+(b<<3)+2>>1]|0|0)==(o|0)&1)+a|0;b=b+1|0}while((b|0)<(e|0)&(a|0)<(g|0));f=b}b=m[c+24056+(f<<3)>>1]|0;h=h-g|0}while((h|0)>0);e=k[j>>2]|0}else{k[c+56064>>2]=0;k[c+56268>>2]=m[c+24056>>1];d=1;b=a}k[c+24>>2]=d;k[c+56064+(d<<2)>>2]=e;k[c+56268+(d<<2)>>2]=b;return}function hd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=r;r=r+1056|0;h=j+24|0;g=c+7|0;if(i[g>>0]|0){Ze(1017490,12,1,k[c>>2]|0);bd(k[c>>2]|0,k[a>>2]|0,f)}fd(c,e,f);gd(b,e,f);if(i[g>>0]|0){Ze(1017503,9,1,k[c>>2]|0);cd(k[c>>2]|0,k[a>>2]|0,f)}k[h>>2]=0;$c(k[a+12>>2]|0,f,c,h,j);if(i[g>>0]|0)ed(k[c>>2]|0,h);ad(h,d);r=j;return}function id(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;sd(d,(Ic(b)|0)&65535,a,a,100);k[c+12>>2]=26;return}function jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;p=r;r=r+16|0;o=p;d=pe(56472)|0;k[d+4>>2]=1e3;l=d+8|0;k[d+8040>>2]=0;k[d+8044>>2]=0;k[d+16048>>2]=0;k[d+16052>>2]=0;j[d+24056>>1]=0;k[d+24060>>2]=0;k[d+56064>>2]=0;k[d+56268>>2]=0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;k[l+24>>2]=0;k[l+28>>2]=0;k[d>>2]=k[a+12>>2];e=b+12|0;k[e>>2]=26;k[b+136>>2]=0;f=d+28|0;k[f>>2]=1;g=k[a+4>>2]|0;if((g|0)>1){h=b+7|0;n=b+140|0;m=1;do{if(i[h>>0]|0){q=k[b>>2]|0;k[o>>2]=m;k[o+4>>2]=g;He(q,1017513,o)}q=m;m=lb(k[a>>2]|0,m,g,k[k[n>>2]>>2]|0,d)|0;s=k[n>>2]|0;mb(k[a>>2]|0,q,m,k[s+8>>2]|0,k[s+12>>2]|0,d);hd(a,q,b,c,1,d);k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[f>>2]=m}while((m|0)<(g|0))}Xd(d);k[e>>2]=26;r=p;return}function kd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0;d=pe(56472)|0;k[d+4>>2]=1e3;g=d+8|0;k[d+8040>>2]=0;k[d+8044>>2]=0;k[d+16048>>2]=0;k[d+16052>>2]=0;j[d+24056>>1]=0;k[d+24060>>2]=0;k[d+56064>>2]=0;k[d+56268>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[g+20>>2]=0;k[g+24>>2]=0;k[g+28>>2]=0;k[d>>2]=k[a+12>>2];k[b+12>>2]=26;k[b+136>>2]=0;e=d+28|0;k[e>>2]=1;f=k[a+4>>2]|0;if((f|0)>1){i=b+140|0;h=1;do{m=k[i>>2]|0;l=h;h=nb(k[a>>2]|0,h,f,k[m+16>>2]|0,k[m+20>>2]|0,d)|0;m=k[i>>2]|0;ob(k[a>>2]|0,l,h,k[m+24>>2]|0,k[m+28>>2]|0,d);hd(a,l,b,c,0,d);k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;k[g+12>>2]=0;k[g+16>>2]=0;k[e>>2]=h}while((h|0)<(f|0))}Xd(d);return}function ld(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;g=r;r=r+32|0;f=g+16|0;e=g;d=g+20|0;if(!(i[b+7>>0]|0))d=a+12|0;else{l=k[b>>2]|0;h=a+12|0;n=Dc(k[h>>2]|0)|0;j=a+4|0;m=k[j>>2]|0;k[e>>2]=n;k[e+4>>2]=m;He(l,1017545,e);ef(e,k[a>>2]|0,k[j>>2]|0);j=k[b>>2]|0;oc(d);k[f>>2]=(i[d>>0]&1)==0?d+1|0:k[d+8>>2]|0;He(j,1017576,f);ff(d);Ze(1017206,5,1,k[b>>2]|0);ff(e);d=h}k[b+12>>2]=26;k[b+136>>2]=0;n=Ec(k[d>>2]|0)|0;switch(((n|0)!=3&(i[b+4>>0]|0)!=0?2:n)|0){case 1:case 0:{id(k[a+4>>2]|0,k[a+12>>2]|0,b,c);break}case 3:{jd(a,b,c);break}case 2:{kd(a,b,c);break}default:{}}r=g;return}function md(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;return}function nd(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;return}function od(a){a=a|0;a=a+12|0;k[a>>2]=(k[a>>2]|0)+1;return}function pd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;b=b&255;d=b>>>2;e=sf(1,0,d|0)|0;f=L;h=a;g=k[h>>2]|0;h=k[h+4>>2]|0;if((g&e|0)==0&(h&f|0)==0){d=a+16+(d<<3)|0;k[d>>2]=0;k[d+4>>2]=0;d=a;k[d>>2]=g|e;k[d+4>>2]=h|f}a=a+16+(b<<1)|0;j[a>>1]=(m[a>>1]|0)+c;return}function qd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=0;q=r;r=r+16|0;p=q;k[b>>2]=-1;n=b+4|0;k[n>>2]=-1;o=b+8|0;k[o>>2]=-1;k[p>>2]=-1;k[p+4>>2]=-1;k[p+8>>2]=-1;d=a;c=k[d>>2]|0;d=k[d+4>>2]|0;if(!((c|0)==0&(d|0)==0)){i=a+16|0;j=p+8|0;l=p+4|0;g=0;while(1){if(!((c&1|0)==0&0==0)){h=0;do{e=h+g|0;f=m[i+(e<<1)>>1]|0;if((f|0)>(k[j>>2]|0)){a=k[l>>2]|0;if((f|0)>(a|0)){k[j>>2]=a;k[o>>2]=k[n>>2];a=k[p>>2]|0;if((f|0)>(a|0)){k[l>>2]=a;k[n>>2]=k[b>>2];a=0}else a=1}else a=2;k[p+(a<<2)>>2]=f;k[b+(a<<2)>>2]=e}h=h+1|0}while((h|0)!=4)}c=uf(c|0,d|0,1)|0;d=L;if((c|0)==0&(d|0)==0)break;else g=g+4|0}}r=q;return}function rd(a){a=a|0;var b=0;b=a+536|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;k[b+28>>2]=0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;k[a+16>>2]=0;k[a+20>>2]=0;a=a+568|0;b=a+48|0;do{k[a>>2]=-1;a=a+4|0}while((a|0)<(b|0));return}function sd(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,l=0,m=0;k[a>>2]=(k[a>>2]|0)+1;g=b&65535;l=g&15;m=j[a+568+(l<<1)>>1]|0;do if(m<<16>>16==b<<16>>16){b=a+616+(l<<2)|0;k[b>>2]=(k[b>>2]|0)+c;b=a+712+(l<<2)|0;k[b>>2]=(k[b>>2]|0)+d;d=ha(e,c)|0;a=a+808+(l<<2)|0;k[a>>2]=(k[a>>2]|0)+d}else{f=l^8;i=j[a+568+(f<<1)>>1]|0;if(i<<16>>16==b<<16>>16){b=a+616+(f<<2)|0;k[b>>2]=(k[b>>2]|0)+c;b=a+712+(f<<2)|0;k[b>>2]=(k[b>>2]|0)+d;d=ha(e,c)|0;a=a+808+(f<<2)|0;k[a>>2]=(k[a>>2]|0)+d;break}g=g&7|16;h=j[a+568+(g<<1)>>1]|0;if(h<<16>>16==b<<16>>16){b=a+616+(g<<2)|0;k[b>>2]=(k[b>>2]|0)+c;b=a+712+(g<<2)|0;k[b>>2]=(k[b>>2]|0)+d;d=ha(e,c)|0;a=a+808+(g<<2)|0;k[a>>2]=(k[a>>2]|0)+d;break}if(m<<16>>16!=-1){if(i<<16>>16!=-1)if(h<<16>>16==-1)f=g;else{f=(k[a+616+(f<<2)>>2]|0)<(k[a+616+(l<<2)>>2]|0)?f:l;f=(k[a+616+(g<<2)>>2]|0)<(k[a+616+(f<<2)>>2]|0)?g:f}}else f=l;j[a+568+(f<<1)>>1]=b;k[a+616+(f<<2)>>2]=c;k[a+712+(f<<2)>>2]=d;d=ha(e,c)|0;k[a+808+(f<<2)>>2]=d}while(0);return}function td(a,b){a=a|0;b=b|0;var c=0,d=0;a:do if(!(k[a+4>>2]|0)){d=b&65535;c=d&15;if((j[a+568+(c<<1)>>1]|0)!=b<<16>>16){c=c^8;if((j[a+568+(c<<1)>>1]|0)!=b<<16>>16){c=d&7|16;c=(j[a+568+(c<<1)>>1]|0)==b<<16>>16?c:-1}}}else{c=0;while(1){if((j[a+568+(c<<1)>>1]|0)==b<<16>>16)break a;c=c+1|0;if((c|0)>=24){c=-1;break}}}while(0);return c|0}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;l=0;while(1){g=a+568+(l<<1)|0;if((j[g>>1]|0)==-1)k[a+616+(l<<2)>>2]=-1;b=l;l=l+1|0;if((l|0)>=24)continue;h=a+616+(b<<2)|0;i=a+712+(b<<2)|0;e=a+808+(b<<2)|0;f=l;do{b=a+568+(f<<1)|0;c=a+616+(f<<2)|0;if((j[b>>1]|0)==-1){k[c>>2]=-1;d=-1}else d=k[c>>2]|0;if((k[h>>2]|0)<(d|0)){d=j[g>>1]|0;j[g>>1]=j[b>>1]|0;j[b>>1]=d;d=k[h>>2]|0;k[h>>2]=k[c>>2];k[c>>2]=d;d=k[i>>2]|0;c=a+712+(f<<2)|0;k[i>>2]=k[c>>2];k[c>>2]=d;c=k[e>>2]|0;d=a+808+(f<<2)|0;k[e>>2]=k[d>>2];k[d>>2]=c}f=f+1|0}while((f|0)!=24);if((l|0)==3)break}k[a+4>>2]=1;return}function vd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=r;r=r+32|0;e=f+8|0;d=f;Ze(1017581,14,1,941120);c=0;do{b=j[a+568+(c<<1)>>1]|0;if(b<<16>>16!=-1){i=Gc(b&65535)|0;h=k[a+616+(c<<2)>>2]|0;g=k[a+712+(c<<2)>>2]|0;b=k[a+808+(c<<2)>>2]|0;k[e>>2]=c;k[e+4>>2]=i;k[e+8>>2]=h;k[e+12>>2]=g;k[e+16>>2]=b;He(941120,1017620,e)}c=c+1|0}while((c|0)!=24);k[d>>2]=k[a>>2];He(941120,1017596,d);r=f;return}function wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=k[c>>2]|0;do if((e|0)>=1){f=k[b>>2]|0;g=(k[a+32>>2]|0)+(k[a>>2]|0)|0;d=k[a+16>>2]|0;h=i[f>>0]|0;a=h&255;if(h<<24>>24>-1){a=i[g+a>>0]|0;k[b>>2]=f+1;k[c>>2]=e+-1;break}if((e|0)>1&(a&224|0)==192){a=i[g+(l[g+a>>0]<<d)+(l[f+1>>0]|0)>>0]|0;k[b>>2]=f+2;k[c>>2]=e+-2;break}if((e|0)>2&(a&240|0)==224){a=g+(l[g+a>>0]<<d+4)|0;a=i[a+(i[a+(l[f+1>>0]|0)>>0]<<d)+(l[f+2>>0]|0)>>0]|0;k[b>>2]=f+3;k[c>>2]=e+-3;break}if((a&248|0)==240&(e|0)>3){a=g+(l[g+(l[g+a>>0]<<d)+(l[f+1>>0]|0)>>0]<<d+4)|0;a=i[a+(i[a+(l[f+2>>0]|0)>>0]<<d)+(l[f+3>>0]|0)>>0]|0;k[b>>2]=f+4;k[c>>2]=e+-4;break}else{k[b>>2]=f+1;k[c>>2]=e+-1;a=0;break}}else a=0;while(0);return a|0}function xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[b>>2]|0;do if((c|0)>=1){d=k[a>>2]|0;f=i[d>>0]|0;e=f&255;if(f<<24>>24>-1){f=j[942368+(e<<1)>>1]|0;k[a>>2]=d+1;k[b>>2]=c+-1;c=f&255;break}if((c|0)>1&(e&224|0)==192){f=j[942368+((m[942368+(e<<1)>>1]|0)<<6<<1)+((l[d+1>>0]|0)<<1)>>1]|0;k[a>>2]=d+2;k[b>>2]=c+-2;c=f&255;break}if((c|0)>2&(e&240|0)==224){f=j[942368+((m[942368+((m[942368+(e<<1)>>1]|0)<<6<<1)+((l[d+1>>0]|0)<<1)>>1]|0)<<6<<1)+((l[d+2>>0]|0)<<1)>>1]|0;k[a>>2]=d+3;k[b>>2]=c+-3;c=f&255;break}if((e&248|0)==240&(c|0)>3){f=j[942368+((m[942368+((m[942368+((m[942368+(e<<1)>>1]|0)<<6<<1)+((l[d+1>>0]|0)<<1)>>1]|0)<<6<<1)+((l[d+2>>0]|0)<<1)>>1]|0)<<6<<1)+((l[d+3>>0]|0)<<1)>>1]|0;k[a>>2]=d+4;k[b>>2]=c+-4;c=f&255;break}else{k[a>>2]=d+1;k[b>>2]=c+-1;c=0;break}}else c=0;while(0);return c|0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;h=a+b|0;j=h+-7|0;k[c>>2]=0;if(b|0){b=a;a:do{b:do if(b>>>0<j>>>0){g=b;while(1){d=k[g>>2]|0;b=g+4|0;e=k[b>>2]|0;f=g+8|0;if((d+-656877351|d+1145324612|e+-656877351|e+1145324612)&-2139062144|0){if((i[1008008+(l[g+1>>0]|0)>>0]|i[1008008+(d&255)>>0]|i[1008008+(l[g+2>>0]|0)>>0]|i[1008008+(l[g+3>>0]|0)>>0])<<24>>24){b=g;break b}if((i[1008008+(l[g+5>>0]|0)>>0]|i[1008008+(e&255)>>0]|i[1008008+(l[g+6>>0]|0)>>0]|i[1008008+(l[g+7>>0]|0)>>0])<<24>>24)break b}if(f>>>0<j>>>0)g=f;else{b=f;break}}}while(0);if(b>>>0<h>>>0)d=993864;else{d=993864;m=13;break}while(1){f=i[d+(l[b>>0]|0)>>0]|0;e=b+1|0;if((f&255)>239)break;b=993864+((f&255)<<6)|0;if(e>>>0<h>>>0){d=b;b=e}else{d=b;b=e;m=13;break a}}c:do if((d-993864|0)>>>0>=64)do{b=b+-1|0;if(b>>>0<=a>>>0)break c}while((i[b>>0]&-64)<<24>>24==-128);while(0)}while(f<<24>>24==-3);d:do if((m|0)==13)if((d-993864|0)>>>0>=64)do{b=b+-1|0;if(b>>>0<=a>>>0)break d}while((i[b>>0]&-64)<<24>>24==-128);while(0);k[c>>2]=b-a}return}function zd(a,b,c,d,e,f,g,h,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;j=j|0;var n=0,o=0,p=0,q=0,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;H=(j|0)==0;I=(j|0)!=0;E=0;F=0;G=0;while(1){C=a;x=a+b|0;D=c;y=c+d|0;z=x;if((d|0)<(b|0))if(H){r=239;q=0;o=0;n=0}else{Vc(j,0);r=239;q=0;o=0;n=0}else{A=1009832;u=0;B=a;p=D;r=0;o=C;n=0;a:while(1){s=o;if(s>>>0<x>>>0){q=i[s>>0]|0;w=i[A+(q&255)>>0]|0;r=w&255;i[p>>0]=q;o=s+1|0;p=p+1|0;if((w&255)>239)w=q;else{w=B;A=1009832+(r<<6)|0;u=q;B=w;continue}}else w=u;if((r|0)<=239){J=43;break}b:do switch(r|0){case 247:{if(H)q=B;else{Vc(j,-2-B+o|0);Xc(j,2);q=o}i[p+-3>>0]=i[A+((w&255)+64)>>0]|0;A=1009832;u=0;B=q;p=p+-2|0;r=0;n=n+1|0;continue a}case 248:{if(H)q=B;else{Vc(j,o+~B|0);Xc(j,1);q=o}u=w&255;i[p+-3>>0]=i[A+(u+128)>>0]|0;i[p+-2>>0]=i[A+(u+64)>>0]|0;A=1009832;u=0;B=q;p=p+-1|0;r=0;n=n+1|0;continue a}case 246:{if(H)q=B;else{Vc(j,o+~B|0);Xc(j,1);q=o}i[p+-2>>0]=i[A+((w&255)+64)>>0]|0;A=1009832;u=0;B=q;p=p+-1|0;r=0;n=n+1|0;continue a}case 245:{q=w&255;r=p;i[r+-3>>0]=i[A+(q+192)>>0]|0;J=23;break}case 244:{q=w&255;r=p;J=23;break}case 243:{q=w&255;r=p;J=24;break}case 251:{i[p+-1>>0]=i[A+(w&255|256)>>0]|0;w=B;A=1009832;u=0;r=0;n=n+1|0;B=w;continue a}case 250:{q=A;r=w&255;if((q-1009832|0)>>>0<320){r=l[A+(r|512)>>0]<<8;break b}else{r=l[A+(r+128)>>0]<<8;J=29;break b}}case 249:case 252:{r=0;J=29;break}default:{J=10;break a}}while(0);if((J|0)==23){i[r+-2>>0]=i[A+(q+128)>>0]|0;J=24}else if((J|0)==29){J=0;q=A}if((J|0)==24){J=0;i[r+-1>>0]=i[A+(q+64)>>0]|0;w=B;A=1009832;u=0;r=0;n=n+1|0;B=w;continue}s=w&255;r=l[A+((q-1009832|0)>>>0<320?s|256:s+64|0)>>0]|r;s=974880+(r<<2)|0;v=l[s>>0]&127;q=l[974880+(r<<2)+1>>0]|0;if(!((q&128|0)==0|e)){s=r+1|0;q=l[974880+(s<<2)+1>>0]|0;s=974880+(s<<2)|0}u=q&127;r=m[s+2>>1]|0;q=p+(0-v)|0;t=q+u|0;if((y-t|0)<(z-o|0)){r=239;J=39;break}vf(q|0,1016936+r|0,u|0)|0;n=n+1|0;do if(!H){if(u>>>0>v>>>0){Vc(j,o-B|0);Wc(j,u-v|0);p=o;break}if(u>>>0<v>>>0){Vc(j,o-B-v+u|0);Xc(j,v-u|0);p=o}else p=B}else p=B;while(0);if((i[s>>0]|0)>=0){A=1009832;u=0;B=p;p=t;r=0;continue}r=l[1016936+(r+u)>>0]|0;A=1009832+(r<<6)|0;u=w;B=p;p=t}c:do if((J|0)==10)J=39;else if((J|0)==43){J=0;if((A-1009832|0)>>>0<320)r=241;else while(1){q=o+-1|0;o=q;p=p+-1|0;if(q>>>0<=a>>>0){r=240;break c}if((i[q>>0]&-64)<<24>>24!=-128){r=240;break}}}while(0);d:do if((J|0)==39){J=0;o=o+-1|0;p=p+-1|0;if((A-1009832|0)>>>0>=320)do{q=o+-1|0;o=q;p=p+-1|0;if(q>>>0<=a>>>0)break d}while((i[q>>0]&-64)<<24>>24==-128)}while(0);if(I&o>>>0>B>>>0)Vc(j,o-B|0);q=o-C|0;o=p-D|0}F=q+F|0;G=o+G|0;E=n+E|0;if((r|0)!=253)break;else{a=a+q|0;b=b-q|0;c=c+o|0;d=d-o|0}}k[f>>2]=F;k[g>>2]=G;k[h>>2]=E;return}function Ad(a){a=a|0;if(a|0)Xd(a);return}function Bd(a){a=a|0;return Gc(k[a>>2]|0)|0}function Cd(a){a=a|0;return i[a+4>>0]|0}function Dd(a){a=a|0;if(a|0){Ed(a);Xd(a)}return}function Ed(a){a=a|0;var b=0;b=k[a+4>>2]|0;if(b|0)Xd(b);b=k[a+8>>2]|0;if(b|0)Xd(b);b=k[a+12>>2]|0;if(b|0)Xd(b);return}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;return Gd(b,c)|0}function Gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;e=c+16|0;d=c+4|0;f=c+28|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;i[f>>0]=0;a=yb(a,Ve(a)|0,b,e,d,c,f)|0;b=pe(20)|0;Hd(b,(i[f>>0]|0)!=0,a,e,d);r=c;return b|0}function Hd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;k[a>>2]=c;i[a+16>>0]=b&1;b=pe(8)|0;c=k[e>>2]&255;k[b>>2]=k[d>>2];i[b+4>>0]=c;k[a+4>>2]=b;b=pe(8)|0;c=k[e+4>>2]&255;k[b>>2]=k[d+4>>2];i[b+4>>0]=c;k[a+8>>2]=b;b=pe(8)|0;e=k[e+8>>2]&255;k[b>>2]=k[d+8>>2];i[b+4>>0]=e;k[a+12>>2]=b;return}function Id(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 Jd(b,c,d,e,f)|0}function Jd(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,j=0,l=0;f=r;r=r+80|0;l=f+56|0;h=f+40|0;g=f+28|0;j=f+72|0;k[l>>2]=e;k[l+4>>2]=c;k[l+8>>2]=d;k[l+12>>2]=26;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[g>>2]=0;k[g+4>>2]=0;k[g+8>>2]=0;i[j>>0]=0;e=zb(a,Ve(a)|0,b,l,h,g,f,f+24|0,j)|0;c=pe(20)|0;Hd(c,(i[j>>0]|0)!=0,e,h,g);r=f;return c|0}function Kd(a){a=a|0;return (i[a+16>>0]|0)!=0|0}function Ld(a){a=a|0;return Gc(k[a>>2]|0)|0}function Md(a,b){a=a|0;b=b|0;if(b>>>0>=3)Ma(0,b|0,3)|0;return k[a+4+(b<<2)>>2]|0}function Nd(a){a=a|0;if(a|0)Xd(a);return}function Od(a){a=a|0;return Gc(k[a>>2]|0)|0}function Pd(a){a=a|0;if(a|0)Xd(a);return}function Qd(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0;e=r;r=r+48|0;g=e+32|0;c=e+24|0;h=e+16|0;f=e;e=e+36|0;a=Rd()|0;if(a|0?(d=k[a>>2]|0,d|0):0){a=d+48|0;b=k[a>>2]|0;a=k[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){k[c>>2]=1094380;Ud(1094475,c)}if((b|0)==1126902529&(a|0)==1129074247)a=k[d+44>>2]|0;else a=d+80|0;k[e>>2]=a;d=k[d>>2]|0;a=k[d+4>>2]|0;if(_d(8,d,e)|0){h=k[e>>2]|0;h=Za[k[(k[h>>2]|0)+8>>2]&3](h)|0;k[f>>2]=1094380;k[f+4>>2]=a;k[f+8>>2]=h;Ud(1094389,f)}else{k[h>>2]=1094380;k[h+4>>2]=a;Ud(1094434,h)}}Ud(1094513,g)}function Rd(){var a=0,b=0;a=r;r=r+16|0;if(!(Ja(1097276,2)|0)){b=Ha(k[274320]|0)|0;r=a;return b|0}else Ud(1094201,a);return 0}function Sd(){var a=0;a=r;r=r+16|0;if(!(Ka(1097280,8)|0)){r=a;return}else Ud(1094151,a)}function Td(a){a=a|0;var b=0;b=r;r=r+16|0;df(a);if(!(Na(k[274320]|0,0)|0)){r=b;return}else Ud(1094098,b)}function Ud(a,b){a=a|0;b=b|0;var c=0;c=r;r=r+16|0;k[c>>2]=b;Ie(941120,a,c)|0;Ye();ua()}function Vd(a){a=a|0;return}function Wd(a){a=a|0;Xd(a);return}function Xd(a){a=a|0;df(a);return}function Yd(a){a=a|0;return}function Zd(a){a=a|0;return}function _d(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=r;r=r+64|0;f=g;if((a|0)!=(b|0))if((b|0)!=0?(e=$d(b,16)|0,(e|0)!=0):0){b=f;d=b+56|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(d|0));k[f>>2]=e;k[f+8>>2]=a;k[f+12>>2]=-1;k[f+48>>2]=1;ab[k[(k[e>>2]|0)+28>>2]&3](e,f,k[c>>2]|0,1);if((k[f+24>>2]|0)==1){k[c>>2]=k[f+16>>2];b=1}else b=0}else b=0;else b=1;r=g;return b|0}function $d(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+64|0;q=s;p=k[a>>2]|0;o=a+(k[p+-8>>2]|0)|0;p=k[p+-4>>2]|0;k[q>>2]=b;k[q+4>>2]=a;k[q+8>>2]=48;h=q+12|0;l=q+16|0;a=q+20|0;c=q+24|0;d=q+28|0;e=q+32|0;f=q+40|0;g=(p|0)==(b|0);m=h;n=m+40|0;do{k[m>>2]=0;m=m+4|0}while((m|0)<(n|0));j[h+40>>1]=0;i[h+42>>0]=0;a:do if(g){k[q+48>>2]=1;$a[k[(k[b>>2]|0)+20>>2]&3](b,q,o,o,1,0);a=(k[c>>2]|0)==1?o:0}else{Xa[k[(k[p>>2]|0)+24>>2]&3](p,q,o,1,0);switch(k[q+36>>2]|0){case 0:{a=(k[f>>2]|0)==1&(k[d>>2]|0)==1&(k[e>>2]|0)==1?k[a>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((k[c>>2]|0)!=1?!((k[f>>2]|0)==0&(k[d>>2]|0)==1&(k[e>>2]|0)==1):0){a=0;break}a=k[l>>2]|0}while(0);r=s;return a|0}function ae(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((a|0)==(k[b+8>>2]|0))be(b,c,d,e);else{a=k[a+8>>2]|0;$a[k[(k[a>>2]|0)+20>>2]&3](a,b,c,d,e,f)}return}function be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;i[a+53>>0]=1;do if((k[a+4>>2]|0)==(c|0)){i[a+52>>0]=1;c=a+16|0;e=k[c>>2]|0;if(!e){k[c>>2]=b;k[a+24>>2]=d;k[a+36>>2]=1;if(!((d|0)==1?(k[a+48>>2]|0)==1:0))break;i[a+54>>0]=1;break}if((e|0)!=(b|0)){d=a+36|0;k[d>>2]=(k[d>>2]|0)+1;i[a+54>>0]=1;break}e=a+24|0;c=k[e>>2]|0;if((c|0)==2){k[e>>2]=d;c=d}if((c|0)==1?(k[a+48>>2]|0)==1:0)i[a+54>>0]=1}while(0);return}function ce(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;do if((a|0)==(k[b+8>>2]|0)){if((k[b+4>>2]|0)==(c|0)?(f=b+28|0,(k[f>>2]|0)!=1):0)k[f>>2]=d}else{if((a|0)!=(k[b>>2]|0)){h=k[a+8>>2]|0;Xa[k[(k[h>>2]|0)+24>>2]&3](h,b,c,d,e);break}if((k[b+16>>2]|0)!=(c|0)?(h=b+20|0,(k[h>>2]|0)!=(c|0)):0){k[b+32>>2]=d;g=b+44|0;if((k[g>>2]|0)==4)break;f=b+52|0;i[f>>0]=0;d=b+53|0;i[d>>0]=0;a=k[a+8>>2]|0;$a[k[(k[a>>2]|0)+20>>2]&3](a,b,c,c,1,e);if(i[d>>0]|0)if(!(i[f>>0]|0)){f=1;d=13}else d=17;else{f=0;d=13}do if((d|0)==13){k[h>>2]=c;c=b+40|0;k[c>>2]=(k[c>>2]|0)+1;if((k[b+36>>2]|0)==1?(k[b+24>>2]|0)==2:0){i[b+54>>0]=1;if(f){d=17;break}else{f=4;break}}if(f)d=17;else f=4}while(0);if((d|0)==17)f=3;k[g>>2]=f;break}if((d|0)==1)k[b+32>>2]=1}while(0);return}function de(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(k[b+8>>2]|0))ee(b,c,d);else{a=k[a+8>>2]|0;ab[k[(k[a>>2]|0)+28>>2]&3](a,b,c,d)}return}function ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+16|0;e=k[d>>2]|0;do if(e){if((e|0)!=(b|0)){c=a+36|0;k[c>>2]=(k[c>>2]|0)+1;k[a+24>>2]=2;i[a+54>>0]=1;break}d=a+24|0;if((k[d>>2]|0)==2)k[d>>2]=c}else{k[d>>2]=b;k[a+24>>2]=c;k[a+36>>2]=1}while(0);return}function fe(a){a=a|0;Xd(a);return}function ge(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((a|0)==(k[b+8>>2]|0))be(b,c,d,e);return}function he(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;do if((a|0)==(k[b+8>>2]|0)){if((k[b+4>>2]|0)==(c|0)?(g=b+28|0,(k[g>>2]|0)!=1):0)k[g>>2]=d}else if((a|0)==(k[b>>2]|0)){if((k[b+16>>2]|0)!=(c|0)?(f=b+20|0,(k[f>>2]|0)!=(c|0)):0){k[b+32>>2]=d;k[f>>2]=c;e=b+40|0;k[e>>2]=(k[e>>2]|0)+1;if((k[b+36>>2]|0)==1?(k[b+24>>2]|0)==2:0)i[b+54>>0]=1;k[b+44>>2]=4;break}if((d|0)==1)k[b+32>>2]=1}while(0);return}function ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(k[b+8>>2]|0))ee(b,c,d);return}function je(){var a=0,b=0,c=0,d=0;c=r;r=r+16|0;d=c+8|0;a=Rd()|0;if((a|0?(b=k[a>>2]|0,b|0):0)?(a=b+48|0,(k[a>>2]&-256|0)==1126902528?(k[a+4>>2]|0)==1129074247:0):0){_a[k[b+12>>2]&3]();Ud(1094525,c)}c=k[235254]|0;k[235254]=c+0;_a[c&3]();Ud(1094525,d)}function ke(a){a=a|0;return}function le(a){a=a|0;Xd(a);return}function me(a){a=a|0;return 1094578}function ne(){xa(1094684,1094713,1175,1094762)}function oe(){xa(1094783,1094713,1164,1094663)}function pe(a){a=a|0;var b=0,c=0;b=(a|0)==0?1:a;while(1){c=cf(b)|0;if(c|0){a=6;break}a=qe()|0;if(!a){a=5;break}_a[a&3]()}if((a|0)==5){c=ya(4)|0;k[c>>2]=941108;Oa(c|0,72,6)}else if((a|0)==6)return c|0;return 0}function qe(){var a=0;a=k[274321]|0;k[274321]=a+0;return a|0}function re(a){a=a|0;return pe(a)|0}function se(a){a=a|0;Xd(a);return}function te(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;k[d>>2]=k[c>>2];a=Wa[k[(k[a>>2]|0)+16>>2]&7](a,b,d)|0;if(a)k[c>>2]=k[d>>2];r=e;return a&1|0}function ue(a){a=a|0;if(!a)a=0;else a=($d(a,104)|0)!=0;return a&1|0}function ve(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=we(Pa(6,c|0)|0)|0;r=b;return a|0}function we(a){a=a|0;var b=0;if(a>>>0>4294963200){b=xe()|0;k[b>>2]=0-a;a=-1}return a|0}function xe(){var a=0;if(!0)a=1097288;else{a=(Ia()|0)+64|0;a=k[a>>2]|0}return a|0}function ye(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;f=e;d=e+20|0;k[f>>2]=k[a+60>>2];k[f+4>>2]=0;k[f+8>>2]=b;k[f+12>>2]=d;k[f+16>>2]=c;if((we(Sa(140,f|0)|0)|0)<0){k[d>>2]=-1;a=-1}else a=k[d>>2]|0;r=e;return a|0}function ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;i=p+32|0;n=a+28|0;g=k[n>>2]|0;k[i>>2]=g;o=a+20|0;g=(k[o>>2]|0)-g|0;k[i+4>>2]=g;k[i+8>>2]=b;k[i+12>>2]=c;h=a+60|0;j=a+44|0;e=2;b=g+c|0;while(1){if(!0){k[m>>2]=k[h>>2];k[m+4>>2]=i;k[m+8>>2]=e;f=we(Ta(146,m|0)|0)|0}else{Qa(9,a|0);k[l>>2]=k[h>>2];k[l+4>>2]=i;k[l+8>>2]=e;f=we(Ta(146,l|0)|0)|0;ta(0)}if((b|0)==(f|0)){b=6;break}if((f|0)<0){b=8;break}b=b-f|0;d=k[i+4>>2]|0;if(f>>>0<=d>>>0)if((e|0)==2){k[n>>2]=(k[n>>2]|0)+f;g=d;d=i;e=2}else{g=d;d=i}else{g=k[j>>2]|0;k[n>>2]=g;k[o>>2]=g;g=k[i+12>>2]|0;f=f-d|0;d=i+8|0;e=e+-1|0}k[d>>2]=(k[d>>2]|0)+f;k[d+4>>2]=g-f;i=d}if((b|0)==6){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((b|0)==8){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((e|0)==2)c=0;else c=c-(k[i+4>>2]|0)|0}r=p;return c|0}function Ae(a){a=a|0;return}function Be(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;g=b&255;i[h>>0]=g;d=a+16|0;e=k[d>>2]|0;if(!e)if(!(Ce(a)|0)){e=k[d>>2]|0;f=4}else c=-1;else f=4;do if((f|0)==4){d=a+20|0;f=k[d>>2]|0;if(f>>>0<e>>>0?(c=b&255,(c|0)!=(i[a+75>>0]|0)):0){k[d>>2]=f+1;i[f>>0]=g;break}if((Wa[k[a+36>>2]&7](a,h,1)|0)==1)c=l[h>>0]|0;else c=-1}while(0);r=j;return c|0}function Ce(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);b=0}else{k[a>>2]=b|32;b=-1}return b|0}function De(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Ee(a,b)|0;return a|0}function Ee(a,b){a=a|0;b=b|0;do if(a){if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}else{a=xe()|0;k[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=c+16|0;e=k[d>>2]|0;if(!e)if(!(Ce(c)|0)){e=k[d>>2]|0;f=5}else d=0;else f=5;a:do if((f|0)==5){g=c+20|0;d=k[g>>2]|0;f=d;if((e-d|0)>>>0<b>>>0){d=Wa[k[c+36>>2]&7](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){d=b;while(1){if(!d){e=f;d=0;break b}e=d+-1|0;if((i[a+e>>0]|0)==10)break;else d=e}if((Wa[k[c+36>>2]&7](c,a,d)|0)>>>0<d>>>0)break a;b=b-d|0;a=a+d|0;e=k[g>>2]|0}else{e=f;d=0}while(0);vf(e|0,a|0,b|0)|0;k[g>>2]=(k[g>>2]|0)+b;d=d+b|0}while(0);return d|0}function Ge(){return 0}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;Ie(a,b,e)|0;r=d;return}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+224|0;m=q+120|0;p=q+80|0;o=q;n=q+136|0;d=p;e=d+40|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));k[m>>2]=k[c>>2];if((Je(0,b,m,o,p)|0)<0)c=-1;else{c=k[a>>2]|0;l=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;j=a+48|0;if(!(k[j>>2]|0)){d=a+44|0;e=k[d>>2]|0;k[d>>2]=n;f=a+28|0;k[f>>2]=n;g=a+20|0;k[g>>2]=n;k[j>>2]=80;h=a+16|0;k[h>>2]=n+80;c=Je(a,b,m,o,p)|0;if(e){Wa[k[a+36>>2]&7](a,0,0)|0;c=(k[g>>2]|0)==0?-1:c;k[d>>2]=e;k[j>>2]=0;k[h>>2]=0;k[f>>2]=0;k[g>>2]=0}}else c=Je(a,b,m,o,p)|0;p=k[a>>2]|0;k[a>>2]=p|l;c=(p&32|0)==0?c:-1}r=q;return c|0}function Je(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,m=0.0,n=0,o=0,q=0,s=0,u=0,v=0,w=0.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,M=0,N=0,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,ia=0;ia=r;r=r+624|0;ca=ia+24|0;ea=ia+16|0;da=ia+588|0;$=ia+576|0;ba=ia;W=ia+536|0;ga=ia+8|0;fa=ia+528|0;M=(a|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ga+4|0;Y=da;Z=0-Y|0;_=$+12|0;$=$+11|0;aa=_;O=aa-Y|0;P=-2-Y|0;Q=aa+2|0;R=ca+288|0;S=da+9|0;T=S;U=da+8|0;f=0;g=0;o=0;x=b;a:while(1){do if((f|0)>-1)if((g|0)>(2147483647-f|0)){f=xe()|0;k[f>>2]=75;f=-1;break}else{f=g+f|0;break}while(0);b=i[x>>0]|0;if(!(b<<24>>24)){K=244;break}else g=x;b:while(1){switch(b<<24>>24){case 37:{b=g;K=9;break b}case 0:{b=g;break b}default:{}}J=g+1|0;b=i[J>>0]|0;g=J}c:do if((K|0)==9)while(1){K=0;if((i[b+1>>0]|0)!=37)break c;g=g+1|0;b=b+2|0;if((i[b>>0]|0)==37)K=9;else break}while(0);v=g-x|0;if(M?(k[a>>2]&32|0)==0:0)Fe(x,v,a)|0;if((g|0)!=(x|0)){g=v;x=b;continue}n=b+1|0;g=i[n>>0]|0;h=(g<<24>>24)+-48|0;if(h>>>0<10){J=(i[b+2>>0]|0)==36;n=J?b+3|0:n;g=i[n>>0]|0;s=J?h:-1;o=J?1:o}else s=-1;b=g<<24>>24;d:do if((b&-32|0)==32){h=0;do{if(!(1<<b+-32&75913))break d;h=1<<(g<<24>>24)+-32|h;n=n+1|0;g=i[n>>0]|0;b=g<<24>>24}while((b&-32|0)==32)}else h=0;while(0);do if(g<<24>>24==42){g=n+1|0;b=(i[g>>0]|0)+-48|0;if(b>>>0<10?(i[n+2>>0]|0)==36:0){k[e+(b<<2)>>2]=10;b=1;n=n+3|0;g=k[d+((i[g>>0]|0)+-48<<3)>>2]|0}else{if(o|0){f=-1;break a}if(!M){u=h;J=0;n=g;I=0;break}b=(k[c>>2]|0)+(4-1)&~(4-1);J=k[b>>2]|0;k[c>>2]=b+4;b=0;n=g;g=J}if((g|0)<0){u=h|8192;J=b;I=0-g|0}else{u=h;J=b;I=g}}else{b=(g<<24>>24)+-48|0;if(b>>>0<10){g=0;do{g=(g*10|0)+b|0;n=n+1|0;b=(i[n>>0]|0)+-48|0}while(b>>>0<10);if((g|0)<0){f=-1;break a}else{u=h;J=o;I=g}}else{u=h;J=o;I=0}}while(0);e:do if((i[n>>0]|0)==46){b=n+1|0;g=i[b>>0]|0;if(g<<24>>24!=42){h=(g<<24>>24)+-48|0;if(h>>>0<10)g=0;else{o=0;break}while(1){g=(g*10|0)+h|0;b=b+1|0;h=(i[b>>0]|0)+-48|0;if(h>>>0>=10){o=g;break e}}}b=n+2|0;g=(i[b>>0]|0)+-48|0;if(g>>>0<10?(i[n+3>>0]|0)==36:0){k[e+(g<<2)>>2]=10;o=k[d+((i[b>>0]|0)+-48<<3)>>2]|0;b=n+4|0;break}if(J|0){f=-1;break a}if(M){H=(k[c>>2]|0)+(4-1)&~(4-1);o=k[H>>2]|0;k[c>>2]=H+4}else o=0}else{o=-1;b=n}while(0);q=0;while(1){g=(i[b>>0]|0)+-65|0;if(g>>>0>57){f=-1;break a}H=b+1|0;g=i[1094812+(q*58|0)+g>>0]|0;h=g&255;if((h+-1|0)>>>0<8){b=H;q=h}else break}if(!(g<<24>>24)){f=-1;break}n=(s|0)>-1;do if(g<<24>>24==19)if(n){f=-1;break a}else K=52;else{if(n){k[e+(s<<2)>>2]=h;F=d+(s<<3)|0;G=k[F+4>>2]|0;K=ba;k[K>>2]=k[F>>2];k[K+4>>2]=G;K=52;break}if(!M){f=0;break a}Ke(ba,h,c)}while(0);if((K|0)==52?(K=0,!M):0){g=v;o=J;x=H;continue}s=i[b>>0]|0;s=(q|0)!=0&(s&15|0)==3?s&-33:s;h=u&-65537;G=(u&8192|0)==0?u:h;f:do switch(s|0){case 110:switch(q|0){case 0:{k[k[ba>>2]>>2]=f;g=v;o=J;x=H;continue a}case 1:{k[k[ba>>2]>>2]=f;g=v;o=J;x=H;continue a}case 2:{g=k[ba>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=v;o=J;x=H;continue a}case 3:{j[k[ba>>2]>>1]=f;g=v;o=J;x=H;continue a}case 4:{i[k[ba>>2]>>0]=f;g=v;o=J;x=H;continue a}case 6:{k[k[ba>>2]>>2]=f;g=v;o=J;x=H;continue a}case 7:{g=k[ba>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=v;o=J;x=H;continue a}default:{g=v;o=J;x=H;continue a}}case 112:{q=G|8;o=o>>>0>8?o:8;s=120;K=64;break}case 88:case 120:{q=G;K=64;break}case 111:{h=ba;g=k[h>>2]|0;h=k[h+4>>2]|0;if((g|0)==0&(h|0)==0)b=N;else{b=N;do{b=b+-1|0;i[b>>0]=g&7|48;g=uf(g|0,h|0,3)|0;h=L}while(!((g|0)==0&(h|0)==0))}if(!(G&8)){g=G;q=0;n=1095292;K=77}else{q=V-b|0;g=G;o=(o|0)>(q|0)?o:q+1|0;q=0;n=1095292;K=77}break}case 105:case 100:{g=ba;b=k[g>>2]|0;g=k[g+4>>2]|0;if((g|0)<0){b=qf(0,0,b|0,g|0)|0;g=L;h=ba;k[h>>2]=b;k[h+4>>2]=g;h=1;n=1095292;K=76;break f}if(!(G&2048)){n=G&1;h=n;n=(n|0)==0?1095292:1095294;K=76}else{h=1;n=1095293;K=76}break}case 117:{g=ba;b=k[g>>2]|0;g=k[g+4>>2]|0;h=0;n=1095292;K=76;break}case 99:{i[W>>0]=k[ba>>2];b=W;s=1;v=0;u=1095292;g=N;break}case 109:{g=xe()|0;g=Me(k[g>>2]|0)|0;K=82;break}case 115:{g=k[ba>>2]|0;g=g|0?g:1097194;K=82;break}case 67:{k[ga>>2]=k[ba>>2];k[X>>2]=0;k[ba>>2]=ga;b=ga;o=-1;K=86;break}case 83:{b=k[ba>>2]|0;if(!o){Oe(a,32,I,0,G);b=0;K=97}else K=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{m=+p[ba>>3];k[ea>>2]=0;p[t>>3]=m;if((k[t+4>>2]|0)>=0)if(!(G&2048)){F=G&1;E=F;F=(F|0)==0?1097202:1097207}else{E=1;F=1097204}else{m=-m;E=1;F=1097201}p[t>>3]=m;D=k[t+4>>2]&2146435072;do if(D>>>0<2146435072|(D|0)==2146435072&0<0){w=+Pe(m,ea)*2.0;g=w!=0.0;if(g)k[ea>>2]=(k[ea>>2]|0)+-1;B=s|32;if((B|0)==97){u=s&32;x=(u|0)==0?F:F+9|0;v=E|2;b=12-o|0;do if(!(o>>>0>11|(b|0)==0)){m=8.0;do{b=b+-1|0;m=m*16.0}while((b|0)!=0);if((i[x>>0]|0)==45){m=-(m+(-w-m));break}else{m=w+m-m;break}}else m=w;while(0);g=k[ea>>2]|0;b=(g|0)<0?0-g|0:g;b=Le(b,((b|0)<0)<<31>>31,_)|0;if((b|0)==(_|0)){i[$>>0]=48;b=$}i[b+-1>>0]=(g>>31&2)+43;q=b+-2|0;i[q>>0]=s+15;n=(o|0)<1;h=(G&8|0)==0;g=da;while(1){F=~~m;b=g+1|0;i[g>>0]=l[1095276+F>>0]|u;m=(m-+(F|0))*16.0;do if((b-Y|0)==1){if(h&(n&m==0.0))break;i[b>>0]=46;b=g+2|0}while(0);if(!(m!=0.0))break;else g=b}h=q;o=(o|0)!=0&(P+b|0)<(o|0)?Q+o-h|0:O-h+b|0;n=o+v|0;Oe(a,32,I,n,G);if(!(k[a>>2]&32))Fe(x,v,a)|0;Oe(a,48,I,n,G^65536);g=b-Y|0;if(!(k[a>>2]&32))Fe(da,g,a)|0;b=aa-h|0;Oe(a,48,o-(g+b)|0,0,0);if(!(k[a>>2]&32))Fe(q,b,a)|0;Oe(a,32,I,n,G^8192);b=(n|0)<(I|0)?I:n;break}b=(o|0)<0?6:o;if(g){g=(k[ea>>2]|0)+-28|0;k[ea>>2]=g;m=w*268435456.0}else{m=w;g=k[ea>>2]|0}D=(g|0)<0?ca:R;C=D;h=D;do{A=~~m>>>0;k[h>>2]=A;h=h+4|0;m=(m-+(A>>>0))*1.0e9}while(m!=0.0);g=k[ea>>2]|0;if((g|0)>0){n=D;o=h;while(1){q=(g|0)>29?29:g;g=o+-4|0;do if(g>>>0>=n>>>0){h=0;do{z=sf(k[g>>2]|0,0,q|0)|0;z=tf(z|0,L|0,h|0,0)|0;A=L;y=Ef(z|0,A|0,1e9,0)|0;k[g>>2]=y;h=Df(z|0,A|0,1e9,0)|0;g=g+-4|0}while(g>>>0>=n>>>0);if(!h)break;n=n+-4|0;k[n>>2]=h}while(0);h=o;while(1){if(h>>>0<=n>>>0)break;g=h+-4|0;if(!(k[g>>2]|0))h=g;else break}g=(k[ea>>2]|0)-q|0;k[ea>>2]=g;if((g|0)>0)o=h;else break}}else n=D;if((g|0)<0){x=((b+25|0)/9|0)+1|0;y=(B|0)==102;do{v=0-g|0;v=(v|0)>9?9:v;do if(n>>>0<h>>>0){g=(1<<v)+-1|0;o=1e9>>>v;u=0;q=n;do{A=k[q>>2]|0;k[q>>2]=(A>>>v)+u;u=ha(A&g,o)|0;q=q+4|0}while(q>>>0<h>>>0);g=(k[n>>2]|0)==0?n+4|0:n;if(!u){n=g;g=h;break}k[h>>2]=u;n=g;g=h+4|0}else{n=(k[n>>2]|0)==0?n+4|0:n;g=h}while(0);h=y?D:n;h=(g-h>>2|0)>(x|0)?h+(x<<2)|0:g;g=(k[ea>>2]|0)+v|0;k[ea>>2]=g}while((g|0)<0);x=n;y=h}else{x=n;y=h}do if(x>>>0<y>>>0){g=(C-x>>2)*9|0;n=k[x>>2]|0;if(n>>>0<10)break;else h=10;do{h=h*10|0;g=g+1|0}while(n>>>0>=h>>>0)}else g=0;while(0);z=(B|0)==103;A=(b|0)!=0;h=b-((B|0)!=102?g:0)+((A&z)<<31>>31)|0;if((h|0)<(((y-C>>2)*9|0)+-9|0)){o=h+9216|0;h=D+4+(((o|0)/9|0)+-1024<<2)|0;o=((o|0)%9|0)+1|0;if((o|0)<9){n=10;do{n=n*10|0;o=o+1|0}while((o|0)!=9)}else n=10;u=k[h>>2]|0;v=(u>>>0)%(n>>>0)|0;o=(h+4|0)==(y|0);do if(o&(v|0)==0)n=x;else{w=(((u>>>0)/(n>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;q=(n|0)/2|0;if(v>>>0<q>>>0)m=.5;else m=o&(v|0)==(q|0)?1.0:1.5;do if(E){if((i[F>>0]|0)!=45)break;w=-w;m=-m}while(0);o=u-v|0;k[h>>2]=o;if(!(w+m!=w)){n=x;break}B=o+n|0;k[h>>2]=B;if(B>>>0>999999999){g=x;while(1){n=h+-4|0;k[h>>2]=0;if(n>>>0<g>>>0){g=g+-4|0;k[g>>2]=0}B=(k[n>>2]|0)+1|0;k[n>>2]=B;if(B>>>0>999999999)h=n;else{q=g;h=n;break}}}else q=x;g=(C-q>>2)*9|0;o=k[q>>2]|0;if(o>>>0<10){n=q;break}else n=10;do{n=n*10|0;g=g+1|0}while(o>>>0>=n>>>0);n=q}while(0);h=h+4|0;x=n;h=y>>>0>h>>>0?h:y}else h=y;v=0-g|0;B=h;while(1){if(B>>>0<=x>>>0){y=0;break}h=B+-4|0;if(!(k[h>>2]|0))B=h;else{y=1;break}}do if(z){b=(A&1^1)+b|0;if((b|0)>(g|0)&(g|0)>-5){s=s+-1|0;b=b+-1-g|0}else{s=s+-2|0;b=b+-1|0}h=G&8;if(h|0)break;do if(y){h=k[B+-4>>2]|0;if(!h){n=9;break}if(!((h>>>0)%10|0)){o=10;n=0}else{n=0;break}do{o=o*10|0;n=n+1|0}while(!((h>>>0)%(o>>>0)|0|0))}else n=9;while(0);h=((B-C>>2)*9|0)+-9|0;if((s|32|0)==102){h=h-n|0;h=(h|0)<0?0:h;b=(b|0)<(h|0)?b:h;h=0;break}else{h=h+g-n|0;h=(h|0)<0?0:h;b=(b|0)<(h|0)?b:h;h=0;break}}else h=G&8;while(0);u=b|h;o=(u|0)!=0&1;q=(s|32|0)==102;if(q){g=(g|0)>0?g:0;s=0}else{n=(g|0)<0?v:g;n=Le(n,((n|0)<0)<<31>>31,_)|0;if((aa-n|0)<2)do{n=n+-1|0;i[n>>0]=48}while((aa-n|0)<2);i[n+-1>>0]=(g>>31&2)+43;C=n+-2|0;i[C>>0]=s;g=aa-C|0;s=C}v=E+1+b+o+g|0;Oe(a,32,I,v,G);if(!(k[a>>2]&32))Fe(F,E,a)|0;Oe(a,48,I,v,G^65536);do if(q){n=x>>>0>D>>>0?D:x;h=n;do{g=Le(k[h>>2]|0,0,S)|0;do if((h|0)==(n|0)){if((g|0)!=(S|0))break;i[U>>0]=48;g=U}else{if(g>>>0<=da>>>0)break;rf(da|0,48,g-Y|0)|0;do g=g+-1|0;while(g>>>0>da>>>0)}while(0);if(!(k[a>>2]&32))Fe(g,T-g|0,a)|0;h=h+4|0}while(h>>>0<=D>>>0);do if(u|0){if(k[a>>2]&32|0)break;Fe(1097236,1,a)|0}while(0);if((b|0)>0&h>>>0<B>>>0)while(1){g=Le(k[h>>2]|0,0,S)|0;if(g>>>0>da>>>0){rf(da|0,48,g-Y|0)|0;do g=g+-1|0;while(g>>>0>da>>>0)}if(!(k[a>>2]&32))Fe(g,(b|0)>9?9:b,a)|0;h=h+4|0;g=b+-9|0;if(!((b|0)>9&h>>>0<B>>>0)){b=g;break}else b=g}Oe(a,48,b+9|0,9,0)}else{q=y?B:x+4|0;if((b|0)>-1){o=(h|0)==0;n=x;do{g=Le(k[n>>2]|0,0,S)|0;if((g|0)==(S|0)){i[U>>0]=48;g=U}do if((n|0)==(x|0)){h=g+1|0;if(!(k[a>>2]&32))Fe(g,1,a)|0;if(o&(b|0)<1){g=h;break}if(k[a>>2]&32|0){g=h;break}Fe(1097236,1,a)|0;g=h}else{if(g>>>0<=da>>>0)break;rf(da|0,48,g+Z|0)|0;do g=g+-1|0;while(g>>>0>da>>>0)}while(0);h=T-g|0;if(!(k[a>>2]&32))Fe(g,(b|0)>(h|0)?h:b,a)|0;b=b-h|0;n=n+4|0}while(n>>>0<q>>>0&(b|0)>-1)}Oe(a,48,b+18|0,18,0);if(k[a>>2]&32|0)break;Fe(s,aa-s|0,a)|0}while(0);Oe(a,32,I,v,G^8192);b=(v|0)<(I|0)?I:v}else{q=(s&32|0)!=0;o=m!=m|0.0!=0.0;g=o?0:E;n=g+3|0;Oe(a,32,I,n,h);b=k[a>>2]|0;if(!(b&32)){Fe(F,g,a)|0;b=k[a>>2]|0}if(!(b&32))Fe(o?(q?1097228:1097232):q?1097220:1097224,3,a)|0;Oe(a,32,I,n,G^8192);b=(n|0)<(I|0)?I:n}while(0);g=b;o=J;x=H;continue a}default:{b=x;h=G;s=o;v=0;u=1095292;g=N}}while(0);g:do if((K|0)==64){h=ba;g=k[h>>2]|0;h=k[h+4>>2]|0;n=s&32;if(!((g|0)==0&(h|0)==0)){b=N;do{b=b+-1|0;i[b>>0]=l[1095276+(g&15)>>0]|n;g=uf(g|0,h|0,4)|0;h=L}while(!((g|0)==0&(h|0)==0));K=ba;if((q&8|0)==0|(k[K>>2]|0)==0&(k[K+4>>2]|0)==0){g=q;q=0;n=1095292;K=77}else{g=q;q=2;n=1095292+(s>>4)|0;K=77}}else{b=N;g=q;q=0;n=1095292;K=77}}else if((K|0)==76){b=Le(b,g,N)|0;g=G;q=h;K=77}else if((K|0)==82){K=0;G=Ne(g,0,o)|0;F=(G|0)==0;b=g;s=F?o:G-g|0;v=0;u=1095292;g=F?g+o|0:G}else if((K|0)==86){K=0;h=0;g=0;q=b;while(1){n=k[q>>2]|0;if(!n)break;g=De(fa,n)|0;if((g|0)<0|g>>>0>(o-h|0)>>>0)break;h=g+h|0;if(o>>>0>h>>>0)q=q+4|0;else break}if((g|0)<0){f=-1;break a}Oe(a,32,I,h,G);if(!h){b=0;K=97}else{n=0;while(1){g=k[b>>2]|0;if(!g){b=h;K=97;break g}g=De(fa,g)|0;n=g+n|0;if((n|0)>(h|0)){b=h;K=97;break g}if(!(k[a>>2]&32))Fe(fa,g,a)|0;if(n>>>0>=h>>>0){b=h;K=97;break}else b=b+4|0}}}while(0);if((K|0)==97){K=0;Oe(a,32,I,b,G^8192);g=(I|0)>(b|0)?I:b;o=J;x=H;continue}if((K|0)==77){K=0;h=(o|0)>-1?g&-65537:g;g=ba;g=(k[g>>2]|0)!=0|(k[g+4>>2]|0)!=0;if((o|0)!=0|g){s=(g&1^1)+(V-b)|0;s=(o|0)>(s|0)?o:s;v=q;u=n;g=N}else{b=N;s=0;v=q;u=n;g=N}}q=g-b|0;n=(s|0)<(q|0)?q:s;o=v+n|0;g=(I|0)<(o|0)?o:I;Oe(a,32,g,o,h);if(!(k[a>>2]&32))Fe(u,v,a)|0;Oe(a,48,g,o,h^65536);Oe(a,48,n,q,0);if(!(k[a>>2]&32))Fe(b,q,a)|0;Oe(a,32,g,o,h^8192);o=J;x=H}h:do if((K|0)==244)if(!a)if(!o)f=0;else{f=1;while(1){b=k[e+(f<<2)>>2]|0;if(!b){b=0;break}Ke(d+(f<<3)|0,b,c);f=f+1|0;if((f|0)>=10){f=1;break h}}while(1){f=f+1|0;if(b|0){f=-1;break h}if((f|0)>=10){f=1;break h}b=k[e+(f<<2)>>2]|0}}while(0);r=ia;return f|0}function Ke(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295)while(1){d=Ef(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=a;a=Df(a|0,b|0,10,0)|0;if(!(b>>>0>9|(b|0)==9&d>>>0>4294967295))break;else b=L}if(a)while(1){c=c+-1|0;i[c>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return c|0}function Me(a){a=a|0;var b=0,c=0;b=0;while(1){if((l[1095302+b>>0]|0)==(a|0)){c=2;break}b=b+1|0;if((b|0)==87){b=87;a=1095390;c=5;break}}if((c|0)==2)if(!b)b=1095390;else{a=1095390;c=5}if((c|0)==5)while(1){do{c=a;a=a+1|0}while((i[c>>0]|0)!=0);b=b+-1|0;if(!b){b=a;break}else c=5}return b|0}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24)break a;a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);b:do if((g|0)==5)if(d){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=ha(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009|0)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}else c=0;while(0);return (c|0?a:0)|0}function Oe(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=r;r=r+256|0;f=g;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;rf(f|0,b|0,(e>>>0>256?256:e)|0)|0;d=k[a>>2]|0;c=(d&32|0)==0;if(e>>>0>255){b=e;do{if(c){Fe(f,256,a)|0;d=k[a>>2]|0}b=b+-256|0;c=(d&32|0)==0}while(b>>>0>255);if(c)e=e&255;else break}else if(!c)break;Fe(f,e,a)|0}while(0);r=g;return}function Pe(a,b){a=+a;b=b|0;return +(+Qe(a,b))}function Qe(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=uf(c|0,d|0,52)|0;e=e&2047;switch(e|0){case 0:{if(a!=0.0){a=+Qe(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=e+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;a=+p[t>>3]}}return +a}function Re(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0;o=r;r=r+128|0;j=o+112|0;l=o;m=l;p=941232;q=m+112|0;do{k[m>>2]=k[p>>2];m=m+4|0;p=p+4|0}while((m|0)<(q|0));if((b+-1|0)>>>0>2147483646)if(!b){e=j;f=1;n=4}else{q=xe()|0;k[q>>2]=75}else{e=a;f=b;n=4}if((n|0)==4?(q=-2-e|0,q=f>>>0>q>>>0?q:f,k[l+48>>2]=q,h=l+20|0,k[h>>2]=e,k[l+44>>2]=e,p=e+q|0,g=l+16|0,k[g>>2]=p,k[l+28>>2]=p,Ie(l,c,d)|0,q|0):0){q=k[h>>2]|0;i[q+(((q|0)==(k[g>>2]|0))<<31>>31)>>0]=0}r=o;return}function Se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=k[d>>2]|0;a=(k[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;vf(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function Te(a,b){a=a|0;b=b|0;a=Ue(a,b)|0;return ((i[a>>0]|0)==(b&255)<<24>>24?a:0)|0}function Ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b&255;a:do if(!d)a=a+(Ve(a)|0)|0;else{if(a&3){c=b&255;do{e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}d=ha(d,16843009)|0;c=k[a>>2]|0;b:do if(!((c&-2139062144^-2139062144)&c+-16843009))do{e=c^d;if((e&-2139062144^-2139062144)&e+-16843009|0)break b;a=a+4|0;c=k[a>>2]|0}while(!((c&-2139062144^-2139062144)&c+-16843009|0));while(0);c=b&255;while(1){e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break;else a=a+1|0}}while(0);return a|0}function Ve(a){a=a|0;var b=0,c=0,d=0;d=a;a:do if(!(d&3))c=4;else{b=a;a=d;while(1){if(!(i[b>>0]|0))break a;b=b+1|0;a=b;if(!(a&3)){a=b;c=4;break}}}while(0);if((c|0)==4){while(1){b=k[a>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))a=a+4|0;else break}if((b&255)<<24>>24)do a=a+1|0;while((i[a>>0]|0)!=0)}return a-d|0}function We(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;Xe(a,b,e);r=d;return}function Xe(a,b,c){a=a|0;b=b|0;c=c|0;Re(a,2147483647,b,c);return}function Ye(){var a=0,b=0,c=0;do if((k[235299]|0)>=0?(Ge()|0)!=0:0){if((i[941195]|0)!=10?(a=k[235285]|0,a>>>0<(k[235284]|0)>>>0):0){k[235285]=a+1;i[a>>0]=10;break}Be(941120,10)|0}else c=3;while(0);do if((c|0)==3){if((i[941195]|0)!=10?(b=k[235285]|0,b>>>0<(k[235284]|0)>>>0):0){k[235285]=b+1;i[b>>0]=10;break}Be(941120,10)|0}while(0);return}function Ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Fe(a,ha(c,b)|0,d)|0;return}function _e(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a>>0]|0;c=i[b>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=c<<24>>24)b=d;else{do{a=a+1|0;b=b+1|0;d=i[a>>0]|0;c=i[b>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=c<<24>>24));b=d}return (b&255)-(c&255)|0}function $e(a,b){a=a|0;b=b|0;af(a,b,4);return}function af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=b;a:do if(!((e^a)&3)){d=(c|0)!=0;if(d&(e&3|0)!=0)do{e=i[b>>0]|0;i[a>>0]=e;if(!(e<<24>>24))break a;c=c+-1|0;b=b+1|0;a=a+1|0;d=(c|0)!=0}while(d&(b&3|0)!=0);if(d){if(i[b>>0]|0){b:do if(c>>>0>3)do{d=k[b>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0)break b;k[a>>2]=d;c=c+-4|0;b=b+4|0;a=a+4|0}while(c>>>0>3);while(0);f=11}}else c=0}else f=11;while(0);c:do if((f|0)==11)if(!c)c=0;else while(1){f=i[b>>0]|0;i[a>>0]=f;if(!(f<<24>>24))break c;c=c+-1|0;a=a+1|0;if(!c){c=0;break}else b=b+1|0}while(0);rf(a|0,0,c|0)|0;return}function bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(!c)c=0;else{while(1){d=i[a>>0]|0;e=i[b>>0]|0;if(d<<24>>24!=e<<24>>24)break;c=c+-1|0;if(!c){c=0;break a}else{a=a+1|0;b=b+1|0}}c=(d&255)-(e&255)|0}while(0);return c|0}
+function cf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=k[274323]|0;b=i>>>a;if(b&3|0){b=(b&1^1)+a|0;c=1097332+(b<<1<<2)|0;d=c+8|0;e=k[d>>2]|0;f=e+8|0;g=k[f>>2]|0;do if((c|0)!=(g|0)){if(g>>>0<(k[274327]|0)>>>0)ua();a=g+12|0;if((k[a>>2]|0)==(e|0)){k[a>>2]=c;k[d>>2]=g;break}else ua()}else k[274323]=i&~(1<<b);while(0);G=b<<3;k[e+4>>2]=G|3;G=e+G+4|0;k[G>>2]=k[G>>2]|1;G=f;return G|0}g=k[274325]|0;if(o>>>0>g>>>0){if(b|0){c=2<<a;c=b<<a&(c|0-c);c=(c&0-c)+-1|0;h=c>>>12&16;c=c>>>h;e=c>>>5&8;c=c>>>e;f=c>>>2&4;c=c>>>f;d=c>>>1&2;c=c>>>d;b=c>>>1&1;b=(e|h|f|d|b)+(c>>>b)|0;c=1097332+(b<<1<<2)|0;d=c+8|0;f=k[d>>2]|0;h=f+8|0;e=k[h>>2]|0;do if((c|0)!=(e|0)){if(e>>>0<(k[274327]|0)>>>0)ua();a=e+12|0;if((k[a>>2]|0)==(f|0)){k[a>>2]=c;k[d>>2]=e;j=k[274325]|0;break}else ua()}else{k[274323]=i&~(1<<b);j=g}while(0);g=(b<<3)-o|0;k[f+4>>2]=o|3;d=f+o|0;k[d+4>>2]=g|1;k[d+g>>2]=g;if(j|0){e=k[274328]|0;b=j>>>3;c=1097332+(b<<1<<2)|0;a=k[274323]|0;b=1<<b;if(a&b){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();else{l=a;m=b}}else{k[274323]=a|b;l=c+8|0;m=c}k[l>>2]=e;k[m+12>>2]=e;k[e+8>>2]=m;k[e+12>>2]=c}k[274325]=g;k[274328]=d;G=h;return G|0}a=k[274324]|0;if(a){h=(a&0-a)+-1|0;F=h>>>12&16;h=h>>>F;E=h>>>5&8;h=h>>>E;G=h>>>2&4;h=h>>>G;b=h>>>1&2;h=h>>>b;i=h>>>1&1;i=k[1097596+((E|F|G|b|i)+(h>>>i)<<2)>>2]|0;h=(k[i+4>>2]&-8)-o|0;b=i;while(1){a=k[b+16>>2]|0;if(!a){a=k[b+20>>2]|0;if(!a)break}b=(k[a+4>>2]&-8)-o|0;G=b>>>0<h>>>0;h=G?b:h;b=a;i=G?a:i}e=k[274327]|0;if(i>>>0<e>>>0)ua();g=i+o|0;if(i>>>0>=g>>>0)ua();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){n=0;break}}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<e>>>0)ua();else{k[b>>2]=0;n=a;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)ua();a=d+12|0;if((k[a>>2]|0)!=(i|0))ua();b=c+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=c;k[b>>2]=d;n=c;break}else ua()}while(0);do if(f|0){a=k[i+28>>2]|0;b=1097596+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=n;if(!n){k[274324]=k[274324]&~(1<<a);break}}else{if(f>>>0<(k[274327]|0)>>>0)ua();a=f+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=n;else k[f+20>>2]=n;if(!n)break}b=k[274327]|0;if(n>>>0<b>>>0)ua();k[n+24>>2]=f;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ua();else{k[n+16>>2]=a;k[a+24>>2]=n;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[274327]|0)>>>0)ua();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}while(0);if(h>>>0<16){G=h+o|0;k[i+4>>2]=G|3;G=i+G+4|0;k[G>>2]=k[G>>2]|1}else{k[i+4>>2]=o|3;k[g+4>>2]=h|1;k[g+h>>2]=h;a=k[274325]|0;if(a|0){d=k[274328]|0;b=a>>>3;c=1097332+(b<<1<<2)|0;a=k[274323]|0;b=1<<b;if(a&b){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();else{p=a;q=b}}else{k[274323]=a|b;p=c+8|0;q=c}k[p>>2]=d;k[q+12>>2]=d;k[d+8>>2]=q;k[d+12>>2]=c}k[274325]=h;k[274328]=g}G=i+8|0;return G|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=k[274324]|0;if(j){c=0-o|0;a=a>>>8;if(a)if(o>>>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;z=a<<q;p=(z+520192|0)>>>16&4;z=z<<p;i=(z+245760|0)>>>16&2;i=14-(p|q|i)+(z<<i>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;b=k[1097596+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;z=86}else{e=c;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){d=k[h+4>>2]&-8;c=d-o|0;if(c>>>0<e>>>0)if((d|0)==(o|0)){a=h;b=h;z=90;break a}else b=h;else c=e;d=k[h+20>>2]|0;h=k[h+16+(g>>>31<<2)>>2]|0;a=(d|0)==0|(d|0)==(h|0)?a:d;d=(h|0)==0;if(d){z=86;break}else{e=c;g=g<<(d&1^1)}}}while(0);if((z|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=k[1097596+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){h=c;i=b}else z=90}if((z|0)==90)while(1){z=0;q=(k[a+4>>2]&-8)-o|0;d=q>>>0<c>>>0;c=d?q:c;b=d?a:b;d=k[a+16>>2]|0;if(d|0){a=d;z=90;continue}a=k[a+20>>2]|0;if(!a){h=c;i=b;break}else z=90}if((i|0)!=0?h>>>0<((k[274325]|0)-o|0)>>>0:0){e=k[274327]|0;if(i>>>0<e>>>0)ua();g=i+o|0;if(i>>>0>=g>>>0)ua();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){s=0;break}}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<e>>>0)ua();else{k[b>>2]=0;s=a;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)ua();a=d+12|0;if((k[a>>2]|0)!=(i|0))ua();b=c+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=c;k[b>>2]=d;s=c;break}else ua()}while(0);do if(f|0){a=k[i+28>>2]|0;b=1097596+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=s;if(!s){k[274324]=k[274324]&~(1<<a);break}}else{if(f>>>0<(k[274327]|0)>>>0)ua();a=f+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=s;else k[f+20>>2]=s;if(!s)break}b=k[274327]|0;if(s>>>0<b>>>0)ua();k[s+24>>2]=f;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ua();else{k[s+16>>2]=a;k[a+24>>2]=s;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[274327]|0)>>>0)ua();else{k[s+20>>2]=a;k[a+24>>2]=s;break}}while(0);do if(h>>>0>=16){k[i+4>>2]=o|3;k[g+4>>2]=h|1;k[g+h>>2]=h;a=h>>>3;if(h>>>0<256){c=1097332+(a<<1<<2)|0;b=k[274323]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();else{t=a;v=b}}else{k[274323]=b|a;t=c+8|0;v=c}k[t>>2]=g;k[v+12>>2]=g;k[g+8>>2]=v;k[g+12>>2]=c;break}a=h>>>8;if(a)if(h>>>0>16777215)c=31;else{F=(a+1048320|0)>>>16&8;G=a<<F;E=(G+520192|0)>>>16&4;G=G<<E;c=(G+245760|0)>>>16&2;c=14-(E|F|c)+(G<<c>>>15)|0;c=h>>>(c+7|0)&1|c<<1}else c=0;d=1097596+(c<<2)|0;k[g+28>>2]=c;a=g+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[274324]|0;b=1<<c;if(!(a&b)){k[274324]=a|b;k[d>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}c=h<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(h|0)){z=148;break}b=d+16+(c>>>31<<2)|0;a=k[b>>2]|0;if(!a){z=145;break}else{c=c<<1;d=a}}if((z|0)==145)if(b>>>0<(k[274327]|0)>>>0)ua();else{k[b>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}else if((z|0)==148){a=d+8|0;b=k[a>>2]|0;G=k[274327]|0;if(b>>>0>=G>>>0&d>>>0>=G>>>0){k[b+12>>2]=g;k[a>>2]=g;k[g+8>>2]=b;k[g+12>>2]=d;k[g+24>>2]=0;break}else ua()}}else{G=h+o|0;k[i+4>>2]=G|3;G=i+G+4|0;k[G>>2]=k[G>>2]|1}while(0);G=i+8|0;return G|0}}}else o=-1;while(0);c=k[274325]|0;if(c>>>0>=o>>>0){a=c-o|0;b=k[274328]|0;if(a>>>0>15){G=b+o|0;k[274328]=G;k[274325]=a;k[G+4>>2]=a|1;k[G+a>>2]=a;k[b+4>>2]=o|3}else{k[274325]=0;k[274328]=0;k[b+4>>2]=c|3;G=b+c+4|0;k[G>>2]=k[G>>2]|1}G=b+8|0;return G|0}a=k[274326]|0;if(a>>>0>o>>>0){E=a-o|0;k[274326]=E;G=k[274329]|0;F=G+o|0;k[274329]=F;k[F+4>>2]=E|1;k[G+4>>2]=o|3;G=G+8|0;return G|0}do if(!(k[274441]|0)){a=Ga(30)|0;if(!(a+-1&a)){k[274443]=a;k[274442]=a;k[274444]=-1;k[274445]=-1;k[274446]=0;k[274434]=0;v=(Ra(0)|0)&-16^1431655768;k[274441]=v;break}else ua()}while(0);g=o+48|0;d=k[274443]|0;h=o+47|0;c=d+h|0;d=0-d|0;i=c&d;if(i>>>0<=o>>>0){G=0;return G|0}a=k[274433]|0;if(a|0?(t=k[274431]|0,v=t+i|0,v>>>0<=t>>>0|v>>>0>a>>>0):0){G=0;return G|0}b:do if(!(k[274434]&4)){b=k[274329]|0;c:do if(b){e=1097740;while(1){a=k[e>>2]|0;if(a>>>0<=b>>>0?(r=e+4|0,(a+(k[r>>2]|0)|0)>>>0>b>>>0):0)break;a=k[e+8>>2]|0;if(!a){z=173;break c}else e=a}a=c-(k[274326]|0)&d;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((k[e>>2]|0)+(k[r>>2]|0)|0)){if((b|0)!=(-1|0)){g=b;f=a;z=193;break b}}else z=183}}else z=173;while(0);do if((z|0)==173?(u=Ba(0)|0,(u|0)!=(-1|0)):0){a=u;b=k[274442]|0;c=b+-1|0;if(!(c&a))a=i;else a=i-a+(c+a&0-b)|0;b=k[274431]|0;c=b+a|0;if(a>>>0>o>>>0&a>>>0<2147483647){v=k[274433]|0;if(v|0?c>>>0<=b>>>0|c>>>0>v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(u|0)){g=u;f=a;z=193;break b}else z=183}}while(0);d:do if((z|0)==183){c=0-a|0;do if(g>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=k[274443]|0,w=h-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(c|0)|0;break d}else{a=w+a|0;break}while(0);if((b|0)!=(-1|0)){g=b;f=a;z=193;break b}}while(0);k[274434]=k[274434]|4;z=190}else z=190;while(0);if((((z|0)==190?i>>>0<2147483647:0)?(x=Ba(i|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(f=y-x|0,f>>>0>(o+40|0)>>>0):0){g=x;z=193}if((z|0)==193){a=(k[274431]|0)+f|0;k[274431]=a;if(a>>>0>(k[274432]|0)>>>0)k[274432]=a;j=k[274329]|0;do if(j){e=1097740;while(1){a=k[e>>2]|0;b=e+4|0;c=k[b>>2]|0;if((g|0)==(a+c|0)){z=203;break}d=k[e+8>>2]|0;if(!d)break;else e=d}if(((z|0)==203?(k[e+12>>2]&8|0)==0:0)?j>>>0<g>>>0&j>>>0>=a>>>0:0){k[b>>2]=c+f;G=j+8|0;G=(G&7|0)==0?0:0-G&7;F=j+G|0;G=f-G+(k[274326]|0)|0;k[274329]=F;k[274326]=G;k[F+4>>2]=G|1;k[F+G+4>>2]=40;k[274330]=k[274445];break}a=k[274327]|0;if(g>>>0<a>>>0){k[274327]=g;h=g}else h=a;b=g+f|0;a=1097740;while(1){if((k[a>>2]|0)==(b|0)){z=211;break}a=k[a+8>>2]|0;if(!a){b=1097740;break}}if((z|0)==211)if(!(k[a+12>>2]&8)){k[a>>2]=g;m=a+4|0;k[m>>2]=(k[m>>2]|0)+f;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=b+8|0;a=b+((a&7|0)==0?0:0-a&7)|0;l=m+o|0;i=a-m-o|0;k[m+4>>2]=o|3;do if((a|0)!=(j|0)){if((a|0)==(k[274328]|0)){G=(k[274325]|0)+i|0;k[274325]=G;k[274328]=l;k[l+4>>2]=G|1;k[l+G>>2]=G;break}b=k[a+4>>2]|0;if((b&3|0)==1){g=b&-8;e=b>>>3;e:do if(b>>>0>=256){f=k[a+24>>2]|0;d=k[a+12>>2]|0;do if((d|0)==(a|0)){d=a+16|0;c=d+4|0;b=k[c>>2]|0;if(!b){b=k[d>>2]|0;if(!b){E=0;break}else c=d}while(1){d=b+20|0;e=k[d>>2]|0;if(e|0){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<h>>>0)ua();else{k[c>>2]=0;E=b;break}}else{e=k[a+8>>2]|0;if(e>>>0<h>>>0)ua();b=e+12|0;if((k[b>>2]|0)!=(a|0))ua();c=d+8|0;if((k[c>>2]|0)==(a|0)){k[b>>2]=d;k[c>>2]=e;E=d;break}else ua()}while(0);if(!f)break;b=k[a+28>>2]|0;c=1097596+(b<<2)|0;do if((a|0)!=(k[c>>2]|0)){if(f>>>0<(k[274327]|0)>>>0)ua();b=f+16|0;if((k[b>>2]|0)==(a|0))k[b>>2]=E;else k[f+20>>2]=E;if(!E)break e}else{k[c>>2]=E;if(E|0)break;k[274324]=k[274324]&~(1<<b);break e}while(0);d=k[274327]|0;if(E>>>0<d>>>0)ua();k[E+24>>2]=f;b=a+16|0;c=k[b>>2]|0;do if(c|0)if(c>>>0<d>>>0)ua();else{k[E+16>>2]=c;k[c+24>>2]=E;break}while(0);b=k[b+4>>2]|0;if(!b)break;if(b>>>0<(k[274327]|0)>>>0)ua();else{k[E+20>>2]=b;k[b+24>>2]=E;break}}else{c=k[a+8>>2]|0;d=k[a+12>>2]|0;b=1097332+(e<<1<<2)|0;do if((c|0)!=(b|0)){if(c>>>0<h>>>0)ua();if((k[c+12>>2]|0)==(a|0))break;ua()}while(0);if((d|0)==(c|0)){k[274323]=k[274323]&~(1<<e);break}do if((d|0)==(b|0))B=d+8|0;else{if(d>>>0<h>>>0)ua();b=d+8|0;if((k[b>>2]|0)==(a|0)){B=b;break}ua()}while(0);k[c+12>>2]=d;k[B>>2]=c}while(0);a=a+g|0;e=g+i|0}else e=i;a=a+4|0;k[a>>2]=k[a>>2]&-2;k[l+4>>2]=e|1;k[l+e>>2]=e;a=e>>>3;if(e>>>0<256){c=1097332+(a<<1<<2)|0;b=k[274323]|0;a=1<<a;do if(!(b&a)){k[274323]=b|a;F=c+8|0;G=c}else{a=c+8|0;b=k[a>>2]|0;if(b>>>0>=(k[274327]|0)>>>0){F=a;G=b;break}ua()}while(0);k[F>>2]=l;k[G+12>>2]=l;k[l+8>>2]=G;k[l+12>>2]=c;break}a=e>>>8;do if(!a)c=0;else{if(e>>>0>16777215){c=31;break}F=(a+1048320|0)>>>16&8;G=a<<F;E=(G+520192|0)>>>16&4;G=G<<E;c=(G+245760|0)>>>16&2;c=14-(E|F|c)+(G<<c>>>15)|0;c=e>>>(c+7|0)&1|c<<1}while(0);d=1097596+(c<<2)|0;k[l+28>>2]=c;a=l+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[274324]|0;b=1<<c;if(!(a&b)){k[274324]=a|b;k[d>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}c=e<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){z=281;break}b=d+16+(c>>>31<<2)|0;a=k[b>>2]|0;if(!a){z=278;break}else{c=c<<1;d=a}}if((z|0)==278)if(b>>>0<(k[274327]|0)>>>0)ua();else{k[b>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}else if((z|0)==281){a=d+8|0;b=k[a>>2]|0;G=k[274327]|0;if(b>>>0>=G>>>0&d>>>0>=G>>>0){k[b+12>>2]=l;k[a>>2]=l;k[l+8>>2]=b;k[l+12>>2]=d;k[l+24>>2]=0;break}else ua()}}else{G=(k[274326]|0)+i|0;k[274326]=G;k[274329]=l;k[l+4>>2]=G|1}while(0);G=m+8|0;return G|0}else b=1097740;while(1){a=k[b>>2]|0;if(a>>>0<=j>>>0?(A=a+(k[b+4>>2]|0)|0,A>>>0>j>>>0):0)break;b=k[b+8>>2]|0}e=A+-47|0;b=e+8|0;b=e+((b&7|0)==0?0:0-b&7)|0;e=j+16|0;b=b>>>0<e>>>0?j:b;a=b+8|0;c=g+8|0;c=(c&7|0)==0?0:0-c&7;G=g+c|0;c=f+-40-c|0;k[274329]=G;k[274326]=c;k[G+4>>2]=c|1;k[G+c+4>>2]=40;k[274330]=k[274445];c=b+4|0;k[c>>2]=27;k[a>>2]=k[274435];k[a+4>>2]=k[274436];k[a+8>>2]=k[274437];k[a+12>>2]=k[274438];k[274435]=g;k[274436]=f;k[274438]=0;k[274437]=a;a=b+24|0;do{a=a+4|0;k[a>>2]=7}while((a+4|0)>>>0<A>>>0);if((b|0)!=(j|0)){f=b-j|0;k[c>>2]=k[c>>2]&-2;k[j+4>>2]=f|1;k[b>>2]=f;a=f>>>3;if(f>>>0<256){c=1097332+(a<<1<<2)|0;b=k[274323]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();else{C=a;D=b}}else{k[274323]=b|a;C=c+8|0;D=c}k[C>>2]=j;k[D+12>>2]=j;k[j+8>>2]=D;k[j+12>>2]=c;break}a=f>>>8;if(a)if(f>>>0>16777215)c=31;else{F=(a+1048320|0)>>>16&8;G=a<<F;E=(G+520192|0)>>>16&4;G=G<<E;c=(G+245760|0)>>>16&2;c=14-(E|F|c)+(G<<c>>>15)|0;c=f>>>(c+7|0)&1|c<<1}else c=0;d=1097596+(c<<2)|0;k[j+28>>2]=c;k[j+20>>2]=0;k[e>>2]=0;a=k[274324]|0;b=1<<c;if(!(a&b)){k[274324]=a|b;k[d>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}c=f<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(f|0)){z=307;break}b=d+16+(c>>>31<<2)|0;a=k[b>>2]|0;if(!a){z=304;break}else{c=c<<1;d=a}}if((z|0)==304)if(b>>>0<(k[274327]|0)>>>0)ua();else{k[b>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}else if((z|0)==307){a=d+8|0;b=k[a>>2]|0;G=k[274327]|0;if(b>>>0>=G>>>0&d>>>0>=G>>>0){k[b+12>>2]=j;k[a>>2]=j;k[j+8>>2]=b;k[j+12>>2]=d;k[j+24>>2]=0;break}else ua()}}}else{G=k[274327]|0;if((G|0)==0|g>>>0<G>>>0)k[274327]=g;k[274435]=g;k[274436]=f;k[274438]=0;k[274332]=k[274441];k[274331]=-1;a=0;do{G=1097332+(a<<1<<2)|0;k[G+12>>2]=G;k[G+8>>2]=G;a=a+1|0}while((a|0)!=32);G=g+8|0;G=(G&7|0)==0?0:0-G&7;F=g+G|0;G=f+-40-G|0;k[274329]=F;k[274326]=G;k[F+4>>2]=G|1;k[F+G+4>>2]=40;k[274330]=k[274445]}while(0);a=k[274326]|0;if(a>>>0>o>>>0){E=a-o|0;k[274326]=E;G=k[274329]|0;F=G+o|0;k[274329]=F;k[F+4>>2]=E|1;k[G+4>>2]=o|3;G=G+8|0;return G|0}}G=xe()|0;k[G>>2]=12;G=0;return G|0}function df(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;c=a+-8|0;g=k[274327]|0;if(c>>>0<g>>>0)ua();a=k[a+-4>>2]|0;b=a&3;if((b|0)==1)ua();d=a&-8;m=c+d|0;do if(!(a&1)){a=k[c>>2]|0;if(!b)return;j=c+(0-a)|0;i=a+d|0;if(j>>>0<g>>>0)ua();if((j|0)==(k[274328]|0)){a=m+4|0;b=k[a>>2]|0;if((b&3|0)!=3){q=j;e=i;break}k[274325]=i;k[a>>2]=b&-2;k[j+4>>2]=i|1;k[j+i>>2]=i;return}d=a>>>3;if(a>>>0<256){b=k[j+8>>2]|0;c=k[j+12>>2]|0;a=1097332+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<g>>>0)ua();if((k[b+12>>2]|0)!=(j|0))ua()}if((c|0)==(b|0)){k[274323]=k[274323]&~(1<<d);q=j;e=i;break}if((c|0)!=(a|0)){if(c>>>0<g>>>0)ua();a=c+8|0;if((k[a>>2]|0)==(j|0))f=a;else ua()}else f=c+8|0;k[b+12>>2]=c;k[f>>2]=b;q=j;e=i;break}f=k[j+24>>2]|0;c=k[j+12>>2]|0;do if((c|0)==(j|0)){c=j+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){h=0;break}else b=c}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<g>>>0)ua();else{k[b>>2]=0;h=a;break}}else{d=k[j+8>>2]|0;if(d>>>0<g>>>0)ua();a=d+12|0;if((k[a>>2]|0)!=(j|0))ua();b=c+8|0;if((k[b>>2]|0)==(j|0)){k[a>>2]=c;k[b>>2]=d;h=c;break}else ua()}while(0);if(f){a=k[j+28>>2]|0;b=1097596+(a<<2)|0;if((j|0)==(k[b>>2]|0)){k[b>>2]=h;if(!h){k[274324]=k[274324]&~(1<<a);q=j;e=i;break}}else{if(f>>>0<(k[274327]|0)>>>0)ua();a=f+16|0;if((k[a>>2]|0)==(j|0))k[a>>2]=h;else k[f+20>>2]=h;if(!h){q=j;e=i;break}}c=k[274327]|0;if(h>>>0<c>>>0)ua();k[h+24>>2]=f;a=j+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)ua();else{k[h+16>>2]=b;k[b+24>>2]=h;break}while(0);a=k[a+4>>2]|0;if(a)if(a>>>0<(k[274327]|0)>>>0)ua();else{k[h+20>>2]=a;k[a+24>>2]=h;q=j;e=i;break}else{q=j;e=i}}else{q=j;e=i}}else{q=c;e=d}while(0);if(q>>>0>=m>>>0)ua();a=m+4|0;b=k[a>>2]|0;if(!(b&1))ua();if(!(b&2)){if((m|0)==(k[274329]|0)){p=(k[274326]|0)+e|0;k[274326]=p;k[274329]=q;k[q+4>>2]=p|1;if((q|0)!=(k[274328]|0))return;k[274328]=0;k[274325]=0;return}if((m|0)==(k[274328]|0)){p=(k[274325]|0)+e|0;k[274325]=p;k[274328]=q;k[q+4>>2]=p|1;k[q+p>>2]=p;return}e=(b&-8)+e|0;d=b>>>3;do if(b>>>0>=256){f=k[m+24>>2]|0;a=k[m+12>>2]|0;do if((a|0)==(m|0)){c=m+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){n=0;break}else b=c}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<(k[274327]|0)>>>0)ua();else{k[b>>2]=0;n=a;break}}else{b=k[m+8>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();c=b+12|0;if((k[c>>2]|0)!=(m|0))ua();d=a+8|0;if((k[d>>2]|0)==(m|0)){k[c>>2]=a;k[d>>2]=b;n=a;break}else ua()}while(0);if(f|0){a=k[m+28>>2]|0;b=1097596+(a<<2)|0;if((m|0)==(k[b>>2]|0)){k[b>>2]=n;if(!n){k[274324]=k[274324]&~(1<<a);break}}else{if(f>>>0<(k[274327]|0)>>>0)ua();a=f+16|0;if((k[a>>2]|0)==(m|0))k[a>>2]=n;else k[f+20>>2]=n;if(!n)break}c=k[274327]|0;if(n>>>0<c>>>0)ua();k[n+24>>2]=f;a=m+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)ua();else{k[n+16>>2]=b;k[b+24>>2]=n;break}while(0);a=k[a+4>>2]|0;if(a|0)if(a>>>0<(k[274327]|0)>>>0)ua();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}}else{b=k[m+8>>2]|0;c=k[m+12>>2]|0;a=1097332+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(k[274327]|0)>>>0)ua();if((k[b+12>>2]|0)!=(m|0))ua()}if((c|0)==(b|0)){k[274323]=k[274323]&~(1<<d);break}if((c|0)!=(a|0)){if(c>>>0<(k[274327]|0)>>>0)ua();a=c+8|0;if((k[a>>2]|0)==(m|0))l=a;else ua()}else l=c+8|0;k[b+12>>2]=c;k[l>>2]=b}while(0);k[q+4>>2]=e|1;k[q+e>>2]=e;if((q|0)==(k[274328]|0)){k[274325]=e;return}}else{k[a>>2]=b&-2;k[q+4>>2]=e|1;k[q+e>>2]=e}a=e>>>3;if(e>>>0<256){c=1097332+(a<<1<<2)|0;b=k[274323]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[274327]|0)>>>0)ua();else{o=a;p=b}}else{k[274323]=b|a;o=c+8|0;p=c}k[o>>2]=q;k[p+12>>2]=q;k[q+8>>2]=p;k[q+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)c=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;c=(p+245760|0)>>>16&2;c=14-(n|o|c)+(p<<c>>>15)|0;c=e>>>(c+7|0)&1|c<<1}else c=0;d=1097596+(c<<2)|0;k[q+28>>2]=c;k[q+20>>2]=0;k[q+16>>2]=0;a=k[274324]|0;b=1<<c;do if(a&b){c=e<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){a=130;break}b=d+16+(c>>>31<<2)|0;a=k[b>>2]|0;if(!a){a=127;break}else{c=c<<1;d=a}}if((a|0)==127)if(b>>>0<(k[274327]|0)>>>0)ua();else{k[b>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q;break}else if((a|0)==130){a=d+8|0;b=k[a>>2]|0;p=k[274327]|0;if(b>>>0>=p>>>0&d>>>0>=p>>>0){k[b+12>>2]=q;k[a>>2]=q;k[q+8>>2]=b;k[q+12>>2]=d;k[q+24>>2]=0;break}else ua()}}else{k[274324]=a|b;k[d>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q}while(0);q=(k[274331]|0)+-1|0;k[274331]=q;if(!q)a=1097748;else return;while(1){a=k[a>>2]|0;if(!a)break;else a=a+8|0}k[274331]=-1;return}function ef(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(c>>>0>4294967279)oe();if(c>>>0<11){i[a>>0]=c<<1;a=a+1|0}else{e=c+16&-16;d=pe(e)|0;k[a+8>>2]=d;k[a>>2]=e|1;k[a+4>>2]=c;a=d}vf(a|0,b|0,c|0)|0;i[a+c>>0]=0;return}function ff(a){a=a|0;if(i[a>>0]&1)Xd(k[a+8>>2]|0);return}function gf(a,b,c,d,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,j=0;if((-18-b|0)>>>0<c>>>0)oe();if(!(i[a>>0]&1))j=a+1|0;else j=k[a+8>>2]|0;if(b>>>0<2147483623){c=c+b|0;h=b<<1;c=c>>>0<h>>>0?h:c;c=c>>>0<11?11:c+16&-16}else c=-17;h=pe(c)|0;if(e|0)vf(h|0,j|0,e|0)|0;if(f|0)vf(h+e|0,g|0,f|0)|0;if((d|0)!=(e|0))vf(h+e+f|0,j+e|0,d-e|0)|0;if((b|0)!=10)Xd(j);k[a+8>>2]=h;k[a>>2]=c|1;g=d+f|0;k[a+4>>2]=g;i[h+g>>0]=0;return}function hf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=i[a>>0]|0;if(!(c&1))d=10;else{c=k[a>>2]|0;d=(c&-2)+-1|0;c=c&255}if(!(c&1))e=(c&255)>>>1;else e=k[a+4>>2]|0;if((d|0)==(e|0)){jf(a,d,1,d,d);c=i[a>>0]|0}if(!(c&1))d=a+1|0;else d=k[a+8>>2]|0;rf(d+e|0,b|0,1)|0;c=e+1|0;if(!(i[a>>0]&1))i[a>>0]=c<<1;else k[a+4>>2]=c;i[d+c>>0]=0;return}function jf(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;if((-17-b|0)>>>0<c>>>0)oe();if(!(i[a>>0]&1))g=a+1|0;else g=k[a+8>>2]|0;if(b>>>0<2147483623){c=c+b|0;f=b<<1;c=c>>>0<f>>>0?f:c;c=c>>>0<11?11:c+16&-16}else c=-17;f=pe(c)|0;if(e|0)vf(f|0,g|0,e|0)|0;if((d|0)!=(e|0))vf(f+e|0,g+e|0,d-e|0)|0;if((b|0)!=10)Xd(g);k[a+8>>2]=f;k[a>>2]=c|1;return}function kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=i[a>>0]|0;if(!(d&1))f=10;else{d=k[a>>2]|0;f=(d&-2)+-1|0;d=d&255}e=(d&1)==0;if(e)d=(d&255)>>>1;else d=k[a+4>>2]|0;if((f-d|0)>>>0>=c>>>0){if(c|0){if(e)e=a+1|0;else e=k[a+8>>2]|0;vf(e+d|0,b|0,c|0)|0;d=d+c|0;if(!(i[a>>0]&1))i[a>>0]=d<<1;else k[a+4>>2]=d;i[e+d>>0]=0}}else gf(a,f,c-f+d|0,d,d,c,b);return}function lf(a,b){a=a|0;b=b|0;kf(a,b,Ve(b)|0);return}function mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a>>0]|0;d=(c&1)!=0;if(d){e=(k[a>>2]&-2)+-1|0;f=k[a+4>>2]|0}else{e=10;f=(c&255)>>>1}if((f|0)==(e|0)){jf(a,e,1,e,e);if(!(i[a>>0]&1))d=7;else d=8}else if(d)d=8;else d=7;if((d|0)==7){i[a>>0]=(f<<1)+2;c=a+1|0}else if((d|0)==8){c=k[a+8>>2]|0;k[a+4>>2]=f+1}a=c+f|0;i[a>>0]=b;i[a+1>>0]=0;return}function nf(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a>>0]|0;d=(c&1)==0;if(d)c=(c&255)>>>1;else c=k[a+4>>2]|0;if(c>>>0<b>>>0)ne();if(d){i[a>>0]=b<<1;c=a+1|0}else{c=k[a+8>>2]|0;k[a+4>>2]=b}i[c+b>>0]=0;return}function of(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a>>0]|0;if(!(c&1)){d=(c&255)>>>1;c=a+1|0}else{d=k[a+4>>2]|0;c=k[a+8>>2]|0}if(d>>>0>b>>>0){b=Ne(c+b|0,44,d-b|0)|0;c=(b|0)==0?-1:b-c|0}else c=-1;return c|0}function pf(){}function qf(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 (L=d,a-c>>>0|0)|0}function rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function sf(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function uf(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function vf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Da(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)<(a|0)&(a|0)<(b+c|0)){d=a;b=b+c|0;a=a+c|0;while((c|0)>0){a=a-1|0;b=b-1|0;c=c-1|0;i[a>>0]=i[b>>0]|0}a=d}else vf(a,b,c)|0;return a|0}function xf(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function yf(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=ha(e,f)|0;d=a>>>16;a=(c>>>16)+(ha(e,d)|0)|0;e=b>>>16;b=ha(e,f)|0;return (L=(a>>>16)+(ha(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=qf(j^a|0,i^b|0,j|0,i|0)|0;g=L;a=f^j;b=e^i;return qf((Ff(h,g,qf(f^c|0,e^d|0,f|0,e|0)|0,L,0)|0)^a|0,L^b|0,a|0,b|0)|0}function Bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=r;r=r+16|0;h=e|0;g=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;j=d>>31|((d|0)<0?-1:0)<<1;i=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=qf(g^a|0,f^b|0,g|0,f|0)|0;b=L;Ff(a,b,qf(j^c|0,i^d|0,j|0,i|0)|0,L,h)|0;d=qf(k[h>>2]^g|0,k[h+4>>2]^f|0,g|0,f|0)|0;c=L;r=e;return (L=c,d)|0}function Cf(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=zf(e,f)|0;a=L;return (L=(ha(b,f)|0)+(ha(d,e)|0)+a|a&0,c|0|0)|0}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ff(a,b,c,d,0)|0}function Ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;Ff(a,b,c,d,e)|0;r=f;return (L=k[e+4>>2]|0,k[e>>2]|0)|0}function Ff(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,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (L=n,e)|0}else{if(!f){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (L=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (L=n,e)|0}f=g-1|0;if(f&g|0){h=(ja(g|0)|0)+33-(ja(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e|0){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (L=o,p)|0}else{p=yf(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (L=o,p)|0}}else{if(f){if(e|0){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (L=o,p)|0}if(!l){if(e|0){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (L=o,p)|0}f=h-1|0;if(!(f&h)){if(e|0){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((yf(h|0)|0)>>>0);return (L=o,p)|0}f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (L=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (L=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=tf(m|0,l|0,-1,-1)|0;c=L;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;qf(j|0,c|0,d|0,n|0)|0;p=L;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=qf(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=L;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e|0){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (L=o,p)|0}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Wa[a&7](b|0,c|0,d|0)|0}function Hf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Xa[a&3](b|0,c|0,d|0,e|0,f|0)}function If(a,b){a=a|0;b=b|0;Ya[a&15](b|0)}function Jf(a,b){a=a|0;b=b|0;return Za[a&3](b|0)|0}function Kf(a){a=a|0;_a[a&3]()}function Lf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$a[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Mf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ab[a&3](b|0,c|0,d|0,e|0)}function Nf(a,b,c){a=a|0;b=b|0;c=c|0;ka(0);return 0}function Of(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(1)}function Pf(a){a=a|0;ka(2)}function Qf(a){a=a|0;ka(3);return 0}function Rf(){ka(4)}function Sf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(5)}function Tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(6)}
+
+// EMSCRIPTEN_END_FUNCS
+var Wa=[Nf,_d,ze,ye,Se,Nf,Nf,Nf];var Xa=[Of,he,ce,Of];var Ya=[Pf,Vd,fe,Yd,Zd,Wd,ke,le,Td,Ae,Pf,Pf,Pf,Pf,Pf,Pf];var Za=[Qf,me,ve,Qf];var _a=[Rf,Qd,Sd,Rf];var $a=[Sf,ge,ae,Sf];var ab=[Tf,ie,de,Tf];return{_emscripten_bind_LanguageInfo_getLanguageCode_0:Ld,_bitshift64Lshr:uf,_bitshift64Shl:sf,_malloc:cf,___cxa_is_pointer_type:ue,_emscripten_bind_LanguageGuess_getPercent_0:Cd,_emscripten_bind_VoidPtr___destroy___0:Pd,_memset:rf,_memcpy:vf,_emscripten_bind_LanguageInfo_getIsReliable_0:Kd,_i64Subtract:qf,_emscripten_bind_LanguageInfo___destroy___0:Dd,_i64Add:tf,_emscripten_bind_LanguageInfo_get_languages_1:Md,_emscripten_bind_Language_getLanguageCode_0:Od,_emscripten_bind_LanguageGuess___destroy___0:Ad,_emscripten_bind_Language___destroy___0:Nd,___cxa_can_catch:te,_free:df,_emscripten_bind_LanguageInfo_detectLanguage_5:Id,_memmove:wf,_emscripten_bind_LanguageInfo_detectLanguage_2:Fd,_emscripten_bind_LanguageGuess_getLanguageCode_0:Bd,runPostSets:pf,_emscripten_replace_memory:Va,stackAlloc:bb,stackSave:cb,stackRestore:db,establishStackSpace:eb,setThrew:fb,setTempRet0:ib,getTempRet0:jb,dynCall_iiii:Gf,dynCall_viiiii:Hf,dynCall_vi:If,dynCall_ii:Jf,dynCall_v:Kf,dynCall_viiiiii:Lf,dynCall_viiii:Mf}})
 
 
-
-function hk(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;k=i;i=i+280|0;A=k+32|0;B=k+40|0;l=k+48|0;m=k+64|0;p=k+80|0;o=k+88|0;r=k+248|0;q=k+256|0;s=k+264|0;t=k+272|0;u=k|0;Ok(l,f,u,A,B);z=m;Xq(z|0,0,12)|0;fi(m,10);if((a[z]&1)==0){y=m+1|0;D=y;x=m+8|0}else{x=m+8|0;D=c[x>>2]|0;y=m+1|0}c[p>>2]=D;f=o|0;c[r>>2]=f;c[q>>2]=0;a[s]=1;a[t]=69;w=m|0;v=m+4|0;A=a[A]|0;C=a[B]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);B=(d|0)==0;do{if((e|0)==0){n=15}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(B){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=15;break}if(!B){break a}}}while(0);if((n|0)==15){n=0;if(B){e=0;break}else{e=0}}E=a[z]|0;F=(E&1)==0;if(F){G=(E&255)>>>1}else{G=c[v>>2]|0}if(((c[p>>2]|0)-D|0)==(G|0)){if(F){E=(E&255)>>>1}else{E=c[v>>2]|0}fi(m,E<<1);if((a[z]&1)==0){D=10}else{D=(c[w>>2]&-2)-1|0}fi(m,D);if((a[z]&1)==0){D=y}else{D=c[x>>2]|0}c[p>>2]=D+E}F=d+12|0;G=c[F>>2]|0;E=d+16|0;if((G|0)==(c[E>>2]|0)){G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{G=a[G]|0}if((Pk(G,s,t,D,p,A,C,l,f,r,q,u)|0)!=0){break}B=c[F>>2]|0;if((B|0)==(c[E>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[F>>2]=B+1;continue}}t=a[l]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[l+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}G=c[q>>2]|0;c[r>>2]=s+4;c[s>>2]=G}}while(0);g[j>>2]=+Fp(D,c[p>>2]|0,h);$m(l,f,c[r>>2]|0,h);do{if(B){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);o=(d|0)==0;do{if((e|0)==0){n=59}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=59;break}if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);do{if((n|0)==59){if(o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);c[h>>2]=c[h>>2]|2;G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}function ik(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];jk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function jk(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;k=i;i=i+280|0;A=k+32|0;B=k+40|0;l=k+48|0;m=k+64|0;p=k+80|0;o=k+88|0;r=k+248|0;q=k+256|0;s=k+264|0;t=k+272|0;u=k|0;Ok(l,f,u,A,B);z=m;Xq(z|0,0,12)|0;fi(m,10);if((a[z]&1)==0){y=m+1|0;D=y;x=m+8|0}else{x=m+8|0;D=c[x>>2]|0;y=m+1|0}c[p>>2]=D;f=o|0;c[r>>2]=f;c[q>>2]=0;a[s]=1;a[t]=69;w=m|0;v=m+4|0;A=a[A]|0;C=a[B]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);B=(d|0)==0;do{if((e|0)==0){n=15}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(B){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=15;break}if(!B){break a}}}while(0);if((n|0)==15){n=0;if(B){e=0;break}else{e=0}}E=a[z]|0;F=(E&1)==0;if(F){G=(E&255)>>>1}else{G=c[v>>2]|0}if(((c[p>>2]|0)-D|0)==(G|0)){if(F){E=(E&255)>>>1}else{E=c[v>>2]|0}fi(m,E<<1);if((a[z]&1)==0){D=10}else{D=(c[w>>2]&-2)-1|0}fi(m,D);if((a[z]&1)==0){D=y}else{D=c[x>>2]|0}c[p>>2]=D+E}F=d+12|0;G=c[F>>2]|0;E=d+16|0;if((G|0)==(c[E>>2]|0)){G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{G=a[G]|0}if((Pk(G,s,t,D,p,A,C,l,f,r,q,u)|0)!=0){break}B=c[F>>2]|0;if((B|0)==(c[E>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[F>>2]=B+1;continue}}t=a[l]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[l+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}G=c[q>>2]|0;c[r>>2]=s+4;c[s>>2]=G}}while(0);h[j>>3]=+Ep(D,c[p>>2]|0,g);$m(l,f,c[r>>2]|0,g);do{if(B){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);o=(d|0)==0;do{if((e|0)==0){n=59}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=59;break}if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);do{if((n|0)==59){if(o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);c[g>>2]=c[g>>2]|2;G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}function kk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];lk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function lk(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;k=i;i=i+280|0;A=k+32|0;B=k+40|0;l=k+48|0;m=k+64|0;p=k+80|0;o=k+88|0;r=k+248|0;q=k+256|0;s=k+264|0;t=k+272|0;u=k|0;Ok(l,f,u,A,B);z=m;Xq(z|0,0,12)|0;fi(m,10);if((a[z]&1)==0){y=m+1|0;D=y;x=m+8|0}else{x=m+8|0;D=c[x>>2]|0;y=m+1|0}c[p>>2]=D;f=o|0;c[r>>2]=f;c[q>>2]=0;a[s]=1;a[t]=69;w=m|0;v=m+4|0;A=a[A]|0;C=a[B]|0;a:while(1){do{if((d|0)==0){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);B=(d|0)==0;do{if((e|0)==0){n=15}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(B){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=15;break}if(!B){break a}}}while(0);if((n|0)==15){n=0;if(B){e=0;break}else{e=0}}E=a[z]|0;F=(E&1)==0;if(F){G=(E&255)>>>1}else{G=c[v>>2]|0}if(((c[p>>2]|0)-D|0)==(G|0)){if(F){E=(E&255)>>>1}else{E=c[v>>2]|0}fi(m,E<<1);if((a[z]&1)==0){D=10}else{D=(c[w>>2]&-2)-1|0}fi(m,D);if((a[z]&1)==0){D=y}else{D=c[x>>2]|0}c[p>>2]=D+E}F=d+12|0;G=c[F>>2]|0;E=d+16|0;if((G|0)==(c[E>>2]|0)){G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)&255}else{G=a[G]|0}if((Pk(G,s,t,D,p,A,C,l,f,r,q,u)|0)!=0){break}B=c[F>>2]|0;if((B|0)==(c[E>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[F>>2]=B+1;continue}}t=a[l]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[l+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}G=c[q>>2]|0;c[r>>2]=s+4;c[s>>2]=G}}while(0);h[j>>3]=+Dp(D,c[p>>2]|0,g);$m(l,f,c[r>>2]|0,g);do{if(B){d=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){break}G=(uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1;d=G?0:d}}while(0);o=(d|0)==0;do{if((e|0)==0){n=59}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){n=59;break}if(!o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);do{if((n|0)==59){if(o){break}G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}}while(0);c[g>>2]=c[g>>2]|2;G=b|0;c[G>>2]=d;di(m);di(l);i=k;return}function mk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;l=i;i=i+272|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[r>>2];r=l|0;q=l+16|0;d=l+48|0;A=l+64|0;m=l+72|0;p=l+88|0;t=l+96|0;o=l+256|0;n=l+264|0;Xq(d|0,0,12)|0;Ei(A,g);g=c[A>>2]|0;if(!((c[278104]|0)==-1)){c[r>>2]=1112416;c[r+4>>2]=14;c[r+8>>2]=0;Wh(1112416,r)}s=(c[278105]|0)-1|0;r=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-r>>2>>>0>s>>>0){r=c[r+(s<<2)>>2]|0;if((r|0)==0){break}q=q|0;Cc[c[(c[r>>2]|0)+32>>2]&15](r,27632,27658,q)|0;Dh(g|0);s=m;Xq(s|0,0,12)|0;fi(m,10);if((a[s]&1)==0){r=m+1|0;x=r;g=m+8|0}else{g=m+8|0;x=c[g>>2]|0;r=m+1|0}c[p>>2]=x;t=t|0;c[o>>2]=t;c[n>>2]=0;e=e|0;f=f|0;u=m|0;v=m+4|0;w=c[e>>2]|0;a:while(1){do{if((w|0)==0){w=0}else{if((c[w+12>>2]|0)!=(c[w+16>>2]|0)){break}if(!((uc[c[(c[w>>2]|0)+36>>2]&127](w)|0)==-1)){break}c[e>>2]=0;w=0}}while(0);z=(w|0)==0;y=c[f>>2]|0;do{if((y|0)==0){k=24}else{if((c[y+12>>2]|0)!=(c[y+16>>2]|0)){if(z){break}else{break a}}if((uc[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1){c[f>>2]=0;k=24;break}else{if(z){break}else{break a}}}}while(0);if((k|0)==24){k=0;if(z){break}}y=a[s]|0;z=(y&1)==0;if(z){A=(y&255)>>>1}else{A=c[v>>2]|0}if(((c[p>>2]|0)-x|0)==(A|0)){if(z){y=(y&255)>>>1}else{y=c[v>>2]|0}fi(m,y<<1);if((a[s]&1)==0){x=10}else{x=(c[u>>2]&-2)-1|0}fi(m,x);if((a[s]&1)==0){x=r}else{x=c[g>>2]|0}c[p>>2]=x+y}y=w+12|0;A=c[y>>2]|0;z=w+16|0;if((A|0)==(c[z>>2]|0)){A=(uc[c[(c[w>>2]|0)+36>>2]&127](w)|0)&255}else{A=a[A]|0}if((nk(A,16,x,p,n,0,d,t,o,q)|0)!=0){break}A=c[y>>2]|0;if((A|0)==(c[z>>2]|0)){uc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[y>>2]=A+1;continue}}a[x+3|0]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);A=ok(x,c[277746]|0,(z=i,i=i+8|0,c[z>>2]=j,z)|0)|0;i=z;if((A|0)!=1){c[h>>2]=4}o=c[e>>2]|0;do{if((o|0)==0){o=0}else{if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){break}if(!((uc[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1)){break}c[e>>2]=0;o=0}}while(0);j=(o|0)==0;n=c[f>>2]|0;do{if((n|0)==0){k=71}else{if((c[n+12>>2]|0)!=(c[n+16>>2]|0)){if(!j){break}A=b|0;c[A>>2]=o;di(m);di(d);i=l;return}if((uc[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1){c[f>>2]=0;k=71;break}if(!j){break}A=b|0;c[A>>2]=o;di(m);di(d);i=l;return}}while(0);do{if((k|0)==71){if(j){break}A=b|0;c[A>>2]=o;di(m);di(d);i=l;return}}while(0);c[h>>2]=c[h>>2]|2;A=b|0;c[A>>2]=o;di(m);di(d);i=l;return}}while(0);A=ec(4)|0;eq(A);Ab(A|0,26088,180)}function nk(b,d,e,f,g,h,i,j,k,l){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;l=l|0;var m=0,n=0,o=0;m=c[f>>2]|0;n=(m|0)==(e|0);do{if(n){o=(a[l+24|0]|0)==b<<24>>24;if(!o){if(!((a[l+25|0]|0)==b<<24>>24)){break}}c[f>>2]=e+1;a[e]=o?43:45;c[g>>2]=0;o=0;return o|0}}while(0);o=a[i]|0;if((o&1)==0){i=(o&255)>>>1}else{i=c[i+4>>2]|0}if((i|0)!=0&b<<24>>24==h<<24>>24){e=c[k>>2]|0;if((e-j|0)>=160){o=0;return o|0}o=c[g>>2]|0;c[k>>2]=e+4;c[e>>2]=o;c[g>>2]=0;o=0;return o|0}j=l+26|0;k=l;while(1){if((k|0)==(j|0)){break}if((a[k]|0)==b<<24>>24){j=k;break}else{k=k+1|0}}l=j-l|0;if((l|0)>23){o=-1;return o|0}do{if((d|0)==16){if((l|0)<22){break}if(n){o=-1;return o|0}if((m-e|0)>=3){o=-1;return o|0}if((a[m-1|0]|0)!=48){o=-1;return o|0}c[g>>2]=0;o=a[27632+l|0]|0;c[f>>2]=m+1;a[m]=o;o=0;return o|0}else if((d|0)==8|(d|0)==10){if((l|0)<(d|0)){break}else{g=-1}return g|0}}while(0);o=a[27632+l|0]|0;c[f>>2]=m+1;a[m]=o;c[g>>2]=(c[g>>2]|0)+1;o=0;return o|0}function ok(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e|0;g=f;c[g>>2]=d;c[g+4>>2]=0;b=Sb(b|0)|0;a=Za(a|0,10440,f|0)|0;if((b|0)==0){i=e;return a|0}Sb(b|0)|0;i=e;return a|0}function pk(a){a=a|0;Gq(a);return}function qk(a){a=a|0;return}function rk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+104|0;m=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[m>>2];m=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[m>>2];m=k|0;p=k+16|0;o=k+32|0;t=k+40|0;r=k+48|0;s=k+56|0;q=k+64|0;n=k+72|0;l=k+80|0;if((c[g+4>>2]&1|0)==0){c[o>>2]=-1;p=c[(c[d>>2]|0)+16>>2]|0;q=e|0;c[r>>2]=c[q>>2];c[s>>2]=c[f>>2];oc[p&127](t,d,r,s,g,h,o);e=c[t>>2]|0;c[q>>2]=e;f=c[o>>2]|0;if((f|0)==1){a[j]=1}else if((f|0)==0){a[j]=0}else{a[j]=1;c[h>>2]=4}c[b>>2]=e;i=k;return}Ei(q,g);q=c[q>>2]|0;if(!((c[278102]|0)==-1)){c[p>>2]=1112408;c[p+4>>2]=14;c[p+8>>2]=0;Wh(1112408,p)}o=(c[278103]|0)-1|0;p=c[q+8>>2]|0;do{if((c[q+12>>2]|0)-p>>2>>>0>o>>>0){o=c[p+(o<<2)>>2]|0;if((o|0)==0){break}Dh(q|0);Ei(n,g);n=c[n>>2]|0;if(!((c[278006]|0)==-1)){c[m>>2]=1112024;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112024,m)}m=(c[278007]|0)-1|0;g=c[n+8>>2]|0;do{if((c[n+12>>2]|0)-g>>2>>>0>m>>>0){m=c[g+(m<<2)>>2]|0;if((m|0)==0){break}d=m;Dh(n|0);t=l|0;r=m;qc[c[(c[r>>2]|0)+24>>2]&127](t,d);s=l+12|0;qc[c[(c[r>>2]|0)+28>>2]&127](s,d);a[j]=(sk(e,c[f>>2]|0,t,l+24|0,o,h,1)|0)==(t|0)|0;c[b>>2]=c[e>>2];vi(s);vi(t);i=k;return}}while(0);t=ec(4)|0;eq(t);Ab(t|0,26088,180)}}while(0);t=ec(4)|0;eq(t);Ab(t|0,26088,180)}function sk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=i;i=i+104|0;u=(f-e|0)/12|0;n=k|0;do{if(u>>>0>100>>>0){m=zq(u)|0;if((m|0)!=0){n=m;break}Lq();n=0;m=0}else{m=0}}while(0);o=(e|0)==(f|0);if(o){t=0}else{t=0;p=n;q=e;while(1){r=a[q]|0;if((r&1)==0){r=(r&255)>>>1}else{r=c[q+4>>2]|0}if((r|0)==0){a[p]=2;t=t+1|0;u=u-1|0}else{a[p]=1}q=q+12|0;if((q|0)==(f|0)){break}else{p=p+1|0}}}b=b|0;p=g;q=0;a:while(1){v=(u|0)!=0;while(1){r=c[b>>2]|0;do{if((r|0)==0){r=1}else{s=c[r+12>>2]|0;if((s|0)==(c[r+16>>2]|0)){r=uc[c[(c[r>>2]|0)+36>>2]&127](r)|0}else{r=c[s>>2]|0}if((r|0)==-1){c[b>>2]=0;r=1;break}else{r=(c[b>>2]|0)==0;break}}}while(0);if((d|0)==0){w=1;d=0}else{s=c[d+12>>2]|0;if((s|0)==(c[d+16>>2]|0)){s=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{s=c[s>>2]|0}s=(s|0)==-1;w=s?1:0;d=s?0:d}s=c[b>>2]|0;if(!((r^w)&v)){break a}r=c[s+12>>2]|0;if((r|0)==(c[s+16>>2]|0)){s=uc[c[(c[s>>2]|0)+36>>2]&127](s)|0}else{s=c[r>>2]|0}if(!j){s=rc[c[(c[p>>2]|0)+28>>2]&31](g,s)|0}r=q+1|0;if(o){q=r}else{break}}b:do{if(j){v=n;x=0;w=e;while(1){do{if((a[v]|0)==1){z=a[w]|0;A=(z&1)==0;if(A){y=w+4|0}else{y=c[w+8>>2]|0}if((s|0)!=(c[y+(q<<2)>>2]|0)){a[v]=0;u=u-1|0;break}if(A){x=(z&255)>>>1}else{x=c[w+4>>2]|0}if((x|0)!=(r|0)){x=1;break}a[v]=2;x=1;t=t+1|0;u=u-1|0}}while(0);w=w+12|0;if((w|0)==(f|0)){break b}v=v+1|0}}else{v=n;x=0;w=e;while(1){do{if((a[v]|0)==1){y=w;if((a[y]&1)==0){z=w+4|0}else{z=c[w+8>>2]|0}if((s|0)!=(rc[c[(c[p>>2]|0)+28>>2]&31](g,c[z+(q<<2)>>2]|0)|0)){a[v]=0;u=u-1|0;break}x=a[y]|0;if((x&1)==0){x=(x&255)>>>1}else{x=c[w+4>>2]|0}if((x|0)!=(r|0)){x=1;break}a[v]=2;x=1;t=t+1|0;u=u-1|0}}while(0);w=w+12|0;if((w|0)==(f|0)){break b}v=v+1|0}}}while(0);if(!x){q=r;continue}v=c[b>>2]|0;q=v+12|0;s=c[q>>2]|0;if((s|0)==(c[v+16>>2]|0)){uc[c[(c[v>>2]|0)+40>>2]&127](v)|0}else{c[q>>2]=s+4}if((u+t|0)>>>0<2>>>0){q=r;continue}else{q=n;s=e}while(1){do{if((a[q]|0)==2){v=a[s]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[s+4>>2]|0}if((v|0)==(r|0)){break}a[q]=0;t=t-1|0}}while(0);s=s+12|0;if((s|0)==(f|0)){q=r;continue a}else{q=q+1|0}}}do{if((s|0)==0){j=1}else{j=c[s+12>>2]|0;if((j|0)==(c[s+16>>2]|0)){j=uc[c[(c[s>>2]|0)+36>>2]&127](s)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[b>>2]=0;j=1;break}else{j=(c[b>>2]|0)==0;break}}}while(0);do{if((d|0)==0){l=93}else{g=c[d+12>>2]|0;if((g|0)==(c[d+16>>2]|0)){g=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{g=c[g>>2]|0}if((g|0)==-1){l=93;break}if(!j){l=95}}}while(0);if((l|0)==93){if(j){l=95}}if((l|0)==95){c[h>>2]=c[h>>2]|2}c:do{if(o){l=100}else{while(1){if((a[n]|0)==2){f=e;break c}e=e+12|0;if((e|0)==(f|0)){l=100;break c}n=n+1|0}}}while(0);if((l|0)==100){c[h>>2]=c[h>>2]|4}if((m|0)==0){i=k;return f|0}Aq(m);i=k;return f|0}function tk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];uk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function uk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+328|0;s=l|0;y=l+104|0;j=l+112|0;k=l+128|0;o=l+144|0;p=l+152|0;q=l+312|0;n=l+320|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==8){r=16}else if((r|0)==0){r=0}else{r=10}s=s|0;Qk(j,f,s,y);u=k;Xq(u|0,0,12)|0;fi(k,10);if((a[u]&1)==0){w=k+1|0;z=w;t=k+8|0}else{t=k+8|0;z=c[t>>2]|0;w=k+1|0}c[o>>2]=z;f=p|0;c[q>>2]=f;c[n>>2]=0;v=k|0;x=k+4|0;y=c[y>>2]|0;a:while(1){if((d|0)==0){A=1;d=0}else{A=c[d+12>>2]|0;if((A|0)==(c[d+16>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}B=(A|0)==-1;A=B?1:0;d=B?0:d}do{if((e|0)==0){m=20}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}if((B|0)==-1){m=20;break}if(!A){break a}}}while(0);if((m|0)==20){m=0;if(A){e=0;break}else{e=0}}B=a[u]|0;C=(B&1)==0;if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}if(((c[o>>2]|0)-z|0)==(A|0)){if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}fi(k,A<<1);if((a[u]&1)==0){z=10}else{z=(c[v>>2]&-2)-1|0}fi(k,z);if((a[u]&1)==0){z=w}else{z=c[t>>2]|0}c[o>>2]=z+A}B=d+12|0;C=c[B>>2]|0;A=d+16|0;if((C|0)==(c[A>>2]|0)){C=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{C=c[C>>2]|0}if((Mk(C,r,z,o,n,y,j,f,q,s)|0)!=0){break}C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=C+4;continue}}s=a[j]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[j+4>>2]|0}do{if((s|0)!=0){s=c[q>>2]|0;if((s-p|0)>=160){break}C=c[n>>2]|0;c[q>>2]=s+4;c[s>>2]=C}}while(0);c[h>>2]=Lp(z,c[o>>2]|0,g,r)|0;$m(j,f,c[q>>2]|0,g);if((d|0)==0){n=1;o=0}else{n=c[d+12>>2]|0;if((n|0)==(c[d+16>>2]|0)){n=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{n=c[n>>2]|0}o=(n|0)==-1;n=o?1:0;o=o?0:d}do{if((e|0)==0){m=63}else{h=c[e+12>>2]|0;if((h|0)==(c[e+16>>2]|0)){h=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{h=c[h>>2]|0}if((h|0)==-1){m=63;break}if(!n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);do{if((m|0)==63){if(n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);c[g>>2]=c[g>>2]|2;C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}function vk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];wk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function wk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+328|0;s=l|0;y=l+104|0;j=l+112|0;k=l+128|0;o=l+144|0;p=l+152|0;q=l+312|0;n=l+320|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==0){r=0}else if((r|0)==8){r=16}else{r=10}s=s|0;Qk(j,f,s,y);u=k;Xq(u|0,0,12)|0;fi(k,10);if((a[u]&1)==0){w=k+1|0;z=w;t=k+8|0}else{t=k+8|0;z=c[t>>2]|0;w=k+1|0}c[o>>2]=z;f=p|0;c[q>>2]=f;c[n>>2]=0;v=k|0;x=k+4|0;y=c[y>>2]|0;a:while(1){if((d|0)==0){A=1;d=0}else{A=c[d+12>>2]|0;if((A|0)==(c[d+16>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}B=(A|0)==-1;A=B?1:0;d=B?0:d}do{if((e|0)==0){m=20}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}if((B|0)==-1){m=20;break}if(!A){break a}}}while(0);if((m|0)==20){m=0;if(A){e=0;break}else{e=0}}B=a[u]|0;C=(B&1)==0;if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}if(((c[o>>2]|0)-z|0)==(A|0)){if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}fi(k,A<<1);if((a[u]&1)==0){z=10}else{z=(c[v>>2]&-2)-1|0}fi(k,z);if((a[u]&1)==0){z=w}else{z=c[t>>2]|0}c[o>>2]=z+A}B=d+12|0;C=c[B>>2]|0;A=d+16|0;if((C|0)==(c[A>>2]|0)){C=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{C=c[C>>2]|0}if((Mk(C,r,z,o,n,y,j,f,q,s)|0)!=0){break}C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=C+4;continue}}s=a[j]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[j+4>>2]|0}do{if((s|0)!=0){s=c[q>>2]|0;if((s-p|0)>=160){break}C=c[n>>2]|0;c[q>>2]=s+4;c[s>>2]=C}}while(0);C=Kp(z,c[o>>2]|0,g,r)|0;c[h>>2]=C;c[h+4>>2]=J;$m(j,f,c[q>>2]|0,g);if((d|0)==0){n=1;o=0}else{n=c[d+12>>2]|0;if((n|0)==(c[d+16>>2]|0)){n=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{n=c[n>>2]|0}o=(n|0)==-1;n=o?1:0;o=o?0:d}do{if((e|0)==0){m=63}else{h=c[e+12>>2]|0;if((h|0)==(c[e+16>>2]|0)){h=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{h=c[h>>2]|0}if((h|0)==-1){m=63;break}if(!n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);do{if((m|0)==63){if(n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);c[g>>2]=c[g>>2]|2;C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}function xk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];yk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function yk(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;m=i;i=i+328|0;t=m|0;z=m+104|0;k=m+112|0;l=m+128|0;p=m+144|0;q=m+152|0;r=m+312|0;o=m+320|0;s=c[g+4>>2]&74;if((s|0)==64){s=8}else if((s|0)==8){s=16}else if((s|0)==0){s=0}else{s=10}t=t|0;Qk(k,g,t,z);v=l;Xq(v|0,0,12)|0;fi(l,10);if((a[v]&1)==0){x=l+1|0;A=x;u=l+8|0}else{u=l+8|0;A=c[u>>2]|0;x=l+1|0}c[p>>2]=A;g=q|0;c[r>>2]=g;c[o>>2]=0;w=l|0;y=l+4|0;z=c[z>>2]|0;a:while(1){if((e|0)==0){B=1;e=0}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}C=(B|0)==-1;B=C?1:0;e=C?0:e}do{if((f|0)==0){n=20}else{C=c[f+12>>2]|0;if((C|0)==(c[f+16>>2]|0)){C=uc[c[(c[f>>2]|0)+36>>2]&127](f)|0}else{C=c[C>>2]|0}if((C|0)==-1){n=20;break}if(!B){break a}}}while(0);if((n|0)==20){n=0;if(B){f=0;break}else{f=0}}C=a[v]|0;D=(C&1)==0;if(D){B=(C&255)>>>1}else{B=c[y>>2]|0}if(((c[p>>2]|0)-A|0)==(B|0)){if(D){B=(C&255)>>>1}else{B=c[y>>2]|0}fi(l,B<<1);if((a[v]&1)==0){A=10}else{A=(c[w>>2]&-2)-1|0}fi(l,A);if((a[v]&1)==0){A=x}else{A=c[u>>2]|0}c[p>>2]=A+B}C=e+12|0;D=c[C>>2]|0;B=e+16|0;if((D|0)==(c[B>>2]|0)){D=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{D=c[D>>2]|0}if((Mk(D,s,A,p,o,z,k,g,r,t)|0)!=0){break}D=c[C>>2]|0;if((D|0)==(c[B>>2]|0)){uc[c[(c[e>>2]|0)+40>>2]&127](e)|0;continue}else{c[C>>2]=D+4;continue}}t=a[k]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[k+4>>2]|0}do{if((t|0)!=0){t=c[r>>2]|0;if((t-q|0)>=160){break}D=c[o>>2]|0;c[r>>2]=t+4;c[t>>2]=D}}while(0);b[j>>1]=Jp(A,c[p>>2]|0,h,s)|0;$m(k,g,c[r>>2]|0,h);if((e|0)==0){o=1;p=0}else{o=c[e+12>>2]|0;if((o|0)==(c[e+16>>2]|0)){o=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{o=c[o>>2]|0}p=(o|0)==-1;o=p?1:0;p=p?0:e}do{if((f|0)==0){n=63}else{j=c[f+12>>2]|0;if((j|0)==(c[f+16>>2]|0)){j=uc[c[(c[f>>2]|0)+36>>2]&127](f)|0}else{j=c[j>>2]|0}if((j|0)==-1){n=63;break}if(!o){break}D=d|0;c[D>>2]=p;di(l);di(k);i=m;return}}while(0);do{if((n|0)==63){if(o){break}D=d|0;c[D>>2]=p;di(l);di(k);i=m;return}}while(0);c[h>>2]=c[h>>2]|2;D=d|0;c[D>>2]=p;di(l);di(k);i=m;return}function zk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Ak(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Ak(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+328|0;s=l|0;y=l+104|0;j=l+112|0;k=l+128|0;o=l+144|0;p=l+152|0;q=l+312|0;n=l+320|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==0){r=0}else if((r|0)==8){r=16}else{r=10}s=s|0;Qk(j,f,s,y);u=k;Xq(u|0,0,12)|0;fi(k,10);if((a[u]&1)==0){w=k+1|0;z=w;t=k+8|0}else{t=k+8|0;z=c[t>>2]|0;w=k+1|0}c[o>>2]=z;f=p|0;c[q>>2]=f;c[n>>2]=0;v=k|0;x=k+4|0;y=c[y>>2]|0;a:while(1){if((d|0)==0){A=1;d=0}else{A=c[d+12>>2]|0;if((A|0)==(c[d+16>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}B=(A|0)==-1;A=B?1:0;d=B?0:d}do{if((e|0)==0){m=20}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}if((B|0)==-1){m=20;break}if(!A){break a}}}while(0);if((m|0)==20){m=0;if(A){e=0;break}else{e=0}}B=a[u]|0;C=(B&1)==0;if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}if(((c[o>>2]|0)-z|0)==(A|0)){if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}fi(k,A<<1);if((a[u]&1)==0){z=10}else{z=(c[v>>2]&-2)-1|0}fi(k,z);if((a[u]&1)==0){z=w}else{z=c[t>>2]|0}c[o>>2]=z+A}B=d+12|0;C=c[B>>2]|0;A=d+16|0;if((C|0)==(c[A>>2]|0)){C=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{C=c[C>>2]|0}if((Mk(C,r,z,o,n,y,j,f,q,s)|0)!=0){break}C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=C+4;continue}}s=a[j]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[j+4>>2]|0}do{if((s|0)!=0){s=c[q>>2]|0;if((s-p|0)>=160){break}C=c[n>>2]|0;c[q>>2]=s+4;c[s>>2]=C}}while(0);c[h>>2]=Ip(z,c[o>>2]|0,g,r)|0;$m(j,f,c[q>>2]|0,g);if((d|0)==0){n=1;o=0}else{n=c[d+12>>2]|0;if((n|0)==(c[d+16>>2]|0)){n=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{n=c[n>>2]|0}o=(n|0)==-1;n=o?1:0;o=o?0:d}do{if((e|0)==0){m=63}else{h=c[e+12>>2]|0;if((h|0)==(c[e+16>>2]|0)){h=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{h=c[h>>2]|0}if((h|0)==-1){m=63;break}if(!n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);do{if((m|0)==63){if(n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);c[g>>2]=c[g>>2]|2;C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}function Bk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Ck(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Ck(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+328|0;s=l|0;y=l+104|0;j=l+112|0;k=l+128|0;o=l+144|0;p=l+152|0;q=l+312|0;n=l+320|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==8){r=16}else if((r|0)==0){r=0}else{r=10}s=s|0;Qk(j,f,s,y);u=k;Xq(u|0,0,12)|0;fi(k,10);if((a[u]&1)==0){w=k+1|0;z=w;t=k+8|0}else{t=k+8|0;z=c[t>>2]|0;w=k+1|0}c[o>>2]=z;f=p|0;c[q>>2]=f;c[n>>2]=0;v=k|0;x=k+4|0;y=c[y>>2]|0;a:while(1){if((d|0)==0){A=1;d=0}else{A=c[d+12>>2]|0;if((A|0)==(c[d+16>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}B=(A|0)==-1;A=B?1:0;d=B?0:d}do{if((e|0)==0){m=20}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}if((B|0)==-1){m=20;break}if(!A){break a}}}while(0);if((m|0)==20){m=0;if(A){e=0;break}else{e=0}}B=a[u]|0;C=(B&1)==0;if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}if(((c[o>>2]|0)-z|0)==(A|0)){if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}fi(k,A<<1);if((a[u]&1)==0){z=10}else{z=(c[v>>2]&-2)-1|0}fi(k,z);if((a[u]&1)==0){z=w}else{z=c[t>>2]|0}c[o>>2]=z+A}B=d+12|0;C=c[B>>2]|0;A=d+16|0;if((C|0)==(c[A>>2]|0)){C=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{C=c[C>>2]|0}if((Mk(C,r,z,o,n,y,j,f,q,s)|0)!=0){break}C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=C+4;continue}}s=a[j]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[j+4>>2]|0}do{if((s|0)!=0){s=c[q>>2]|0;if((s-p|0)>=160){break}C=c[n>>2]|0;c[q>>2]=s+4;c[s>>2]=C}}while(0);c[h>>2]=Hp(z,c[o>>2]|0,g,r)|0;$m(j,f,c[q>>2]|0,g);if((d|0)==0){n=1;o=0}else{n=c[d+12>>2]|0;if((n|0)==(c[d+16>>2]|0)){n=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{n=c[n>>2]|0}o=(n|0)==-1;n=o?1:0;o=o?0:d}do{if((e|0)==0){m=63}else{h=c[e+12>>2]|0;if((h|0)==(c[e+16>>2]|0)){h=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{h=c[h>>2]|0}if((h|0)==-1){m=63;break}if(!n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);do{if((m|0)==63){if(n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);c[g>>2]=c[g>>2]|2;C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}function Dk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Ek(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Ek(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+328|0;s=l|0;y=l+104|0;j=l+112|0;k=l+128|0;o=l+144|0;p=l+152|0;q=l+312|0;n=l+320|0;r=c[f+4>>2]&74;if((r|0)==64){r=8}else if((r|0)==0){r=0}else if((r|0)==8){r=16}else{r=10}s=s|0;Qk(j,f,s,y);u=k;Xq(u|0,0,12)|0;fi(k,10);if((a[u]&1)==0){w=k+1|0;z=w;t=k+8|0}else{t=k+8|0;z=c[t>>2]|0;w=k+1|0}c[o>>2]=z;f=p|0;c[q>>2]=f;c[n>>2]=0;v=k|0;x=k+4|0;y=c[y>>2]|0;a:while(1){if((d|0)==0){A=1;d=0}else{A=c[d+12>>2]|0;if((A|0)==(c[d+16>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}B=(A|0)==-1;A=B?1:0;d=B?0:d}do{if((e|0)==0){m=20}else{B=c[e+12>>2]|0;if((B|0)==(c[e+16>>2]|0)){B=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{B=c[B>>2]|0}if((B|0)==-1){m=20;break}if(!A){break a}}}while(0);if((m|0)==20){m=0;if(A){e=0;break}else{e=0}}B=a[u]|0;C=(B&1)==0;if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}if(((c[o>>2]|0)-z|0)==(A|0)){if(C){A=(B&255)>>>1}else{A=c[x>>2]|0}fi(k,A<<1);if((a[u]&1)==0){z=10}else{z=(c[v>>2]&-2)-1|0}fi(k,z);if((a[u]&1)==0){z=w}else{z=c[t>>2]|0}c[o>>2]=z+A}B=d+12|0;C=c[B>>2]|0;A=d+16|0;if((C|0)==(c[A>>2]|0)){C=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{C=c[C>>2]|0}if((Mk(C,r,z,o,n,y,j,f,q,s)|0)!=0){break}C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[B>>2]=C+4;continue}}s=a[j]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[j+4>>2]|0}do{if((s|0)!=0){s=c[q>>2]|0;if((s-p|0)>=160){break}C=c[n>>2]|0;c[q>>2]=s+4;c[s>>2]=C}}while(0);C=Gp(z,c[o>>2]|0,g,r)|0;c[h>>2]=C;c[h+4>>2]=J;$m(j,f,c[q>>2]|0,g);if((d|0)==0){n=1;o=0}else{n=c[d+12>>2]|0;if((n|0)==(c[d+16>>2]|0)){n=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{n=c[n>>2]|0}o=(n|0)==-1;n=o?1:0;o=o?0:d}do{if((e|0)==0){m=63}else{h=c[e+12>>2]|0;if((h|0)==(c[e+16>>2]|0)){h=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{h=c[h>>2]|0}if((h|0)==-1){m=63;break}if(!n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);do{if((m|0)==63){if(n){break}C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}}while(0);c[g>>2]=c[g>>2]|2;C=b|0;c[C>>2]=o;di(k);di(j);i=l;return}function Fk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Gk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Gk(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;n=i;i=i+376|0;A=n+128|0;B=n+136|0;k=n+144|0;l=n+160|0;q=n+176|0;o=n+184|0;r=n+344|0;p=n+352|0;s=n+360|0;t=n+368|0;u=n|0;Rk(k,f,u,A,B);v=l;Xq(v|0,0,12)|0;fi(l,10);if((a[v]&1)==0){x=l+1|0;C=x;y=l+8|0}else{y=l+8|0;C=c[y>>2]|0;x=l+1|0}c[q>>2]=C;f=o|0;c[r>>2]=f;c[p>>2]=0;a[s]=1;a[t]=69;z=l|0;w=l+4|0;A=c[A>>2]|0;B=c[B>>2]|0;a:while(1){if((d|0)==0){D=1;d=0}else{D=c[d+12>>2]|0;if((D|0)==(c[d+16>>2]|0)){D=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{D=c[D>>2]|0}E=(D|0)==-1;D=E?1:0;d=E?0:d}do{if((e|0)==0){m=16}else{E=c[e+12>>2]|0;if((E|0)==(c[e+16>>2]|0)){E=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{E=c[E>>2]|0}if((E|0)==-1){m=16;break}if(!D){break a}}}while(0);if((m|0)==16){m=0;if(D){e=0;break}else{e=0}}F=a[v]|0;E=(F&1)==0;if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}if(((c[q>>2]|0)-C|0)==(D|0)){if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}fi(l,D<<1);if((a[v]&1)==0){C=10}else{C=(c[z>>2]&-2)-1|0}fi(l,C);if((a[v]&1)==0){C=x}else{C=c[y>>2]|0}c[q>>2]=C+D}E=d+12|0;F=c[E>>2]|0;D=d+16|0;if((F|0)==(c[D>>2]|0)){F=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{F=c[F>>2]|0}if((Sk(F,s,t,C,q,A,B,k,f,r,p,u)|0)!=0){break}F=c[E>>2]|0;if((F|0)==(c[D>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[E>>2]=F+4;continue}}t=a[k]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[k+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}F=c[p>>2]|0;c[r>>2]=s+4;c[s>>2]=F}}while(0);g[j>>2]=+Fp(C,c[q>>2]|0,h);$m(k,f,c[r>>2]|0,h);if((d|0)==0){o=1;p=0}else{o=c[d+12>>2]|0;if((o|0)==(c[d+16>>2]|0)){o=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{o=c[o>>2]|0}p=(o|0)==-1;o=p?1:0;p=p?0:d}do{if((e|0)==0){m=60}else{j=c[e+12>>2]|0;if((j|0)==(c[e+16>>2]|0)){j=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{j=c[j>>2]|0}if((j|0)==-1){m=60;break}if(!o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);do{if((m|0)==60){if(o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);c[h>>2]=c[h>>2]|2;F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}function Hk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Ik(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Ik(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;n=i;i=i+376|0;A=n+128|0;B=n+136|0;k=n+144|0;l=n+160|0;q=n+176|0;o=n+184|0;r=n+344|0;p=n+352|0;s=n+360|0;t=n+368|0;u=n|0;Rk(k,f,u,A,B);v=l;Xq(v|0,0,12)|0;fi(l,10);if((a[v]&1)==0){x=l+1|0;C=x;y=l+8|0}else{y=l+8|0;C=c[y>>2]|0;x=l+1|0}c[q>>2]=C;f=o|0;c[r>>2]=f;c[p>>2]=0;a[s]=1;a[t]=69;z=l|0;w=l+4|0;A=c[A>>2]|0;B=c[B>>2]|0;a:while(1){if((d|0)==0){D=1;d=0}else{D=c[d+12>>2]|0;if((D|0)==(c[d+16>>2]|0)){D=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{D=c[D>>2]|0}E=(D|0)==-1;D=E?1:0;d=E?0:d}do{if((e|0)==0){m=16}else{E=c[e+12>>2]|0;if((E|0)==(c[e+16>>2]|0)){E=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{E=c[E>>2]|0}if((E|0)==-1){m=16;break}if(!D){break a}}}while(0);if((m|0)==16){m=0;if(D){e=0;break}else{e=0}}F=a[v]|0;E=(F&1)==0;if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}if(((c[q>>2]|0)-C|0)==(D|0)){if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}fi(l,D<<1);if((a[v]&1)==0){C=10}else{C=(c[z>>2]&-2)-1|0}fi(l,C);if((a[v]&1)==0){C=x}else{C=c[y>>2]|0}c[q>>2]=C+D}E=d+12|0;F=c[E>>2]|0;D=d+16|0;if((F|0)==(c[D>>2]|0)){F=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{F=c[F>>2]|0}if((Sk(F,s,t,C,q,A,B,k,f,r,p,u)|0)!=0){break}F=c[E>>2]|0;if((F|0)==(c[D>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[E>>2]=F+4;continue}}t=a[k]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[k+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}F=c[p>>2]|0;c[r>>2]=s+4;c[s>>2]=F}}while(0);h[j>>3]=+Ep(C,c[q>>2]|0,g);$m(k,f,c[r>>2]|0,g);if((d|0)==0){o=1;p=0}else{o=c[d+12>>2]|0;if((o|0)==(c[d+16>>2]|0)){o=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{o=c[o>>2]|0}p=(o|0)==-1;o=p?1:0;p=p?0:d}do{if((e|0)==0){m=60}else{j=c[e+12>>2]|0;if((j|0)==(c[e+16>>2]|0)){j=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{j=c[j>>2]|0}if((j|0)==-1){m=60;break}if(!o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);do{if((m|0)==60){if(o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);c[g>>2]=c[g>>2]|2;F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}function Jk(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 j=0,k=0;b=i;k=d;j=i;i=i+4|0;i=i+7&-8;c[j>>2]=c[k>>2];k=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];Kk(a,c[j>>2]|0,c[d>>2]|0,f,g,h);i=b;return}function Kk(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;n=i;i=i+376|0;A=n+128|0;B=n+136|0;k=n+144|0;l=n+160|0;q=n+176|0;o=n+184|0;r=n+344|0;p=n+352|0;s=n+360|0;t=n+368|0;u=n|0;Rk(k,f,u,A,B);v=l;Xq(v|0,0,12)|0;fi(l,10);if((a[v]&1)==0){x=l+1|0;C=x;y=l+8|0}else{y=l+8|0;C=c[y>>2]|0;x=l+1|0}c[q>>2]=C;f=o|0;c[r>>2]=f;c[p>>2]=0;a[s]=1;a[t]=69;z=l|0;w=l+4|0;A=c[A>>2]|0;B=c[B>>2]|0;a:while(1){if((d|0)==0){D=1;d=0}else{D=c[d+12>>2]|0;if((D|0)==(c[d+16>>2]|0)){D=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{D=c[D>>2]|0}E=(D|0)==-1;D=E?1:0;d=E?0:d}do{if((e|0)==0){m=16}else{E=c[e+12>>2]|0;if((E|0)==(c[e+16>>2]|0)){E=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{E=c[E>>2]|0}if((E|0)==-1){m=16;break}if(!D){break a}}}while(0);if((m|0)==16){m=0;if(D){e=0;break}else{e=0}}F=a[v]|0;E=(F&1)==0;if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}if(((c[q>>2]|0)-C|0)==(D|0)){if(E){D=(F&255)>>>1}else{D=c[w>>2]|0}fi(l,D<<1);if((a[v]&1)==0){C=10}else{C=(c[z>>2]&-2)-1|0}fi(l,C);if((a[v]&1)==0){C=x}else{C=c[y>>2]|0}c[q>>2]=C+D}E=d+12|0;F=c[E>>2]|0;D=d+16|0;if((F|0)==(c[D>>2]|0)){F=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{F=c[F>>2]|0}if((Sk(F,s,t,C,q,A,B,k,f,r,p,u)|0)!=0){break}F=c[E>>2]|0;if((F|0)==(c[D>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0;continue}else{c[E>>2]=F+4;continue}}t=a[k]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[k+4>>2]|0}do{if((t|0)!=0){if((a[s]|0)==0){break}s=c[r>>2]|0;if((s-o|0)>=160){break}F=c[p>>2]|0;c[r>>2]=s+4;c[s>>2]=F}}while(0);h[j>>3]=+Dp(C,c[q>>2]|0,g);$m(k,f,c[r>>2]|0,g);if((d|0)==0){o=1;p=0}else{o=c[d+12>>2]|0;if((o|0)==(c[d+16>>2]|0)){o=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{o=c[o>>2]|0}p=(o|0)==-1;o=p?1:0;p=p?0:d}do{if((e|0)==0){m=60}else{j=c[e+12>>2]|0;if((j|0)==(c[e+16>>2]|0)){j=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{j=c[j>>2]|0}if((j|0)==-1){m=60;break}if(!o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);do{if((m|0)==60){if(o){break}F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}}while(0);c[g>>2]=c[g>>2]|2;F=b|0;c[F>>2]=p;di(l);di(k);i=n;return}function Lk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;l=i;i=i+344|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[r>>2];r=l|0;q=l+16|0;d=l+120|0;A=l+136|0;m=l+144|0;n=l+160|0;t=l+168|0;o=l+328|0;p=l+336|0;Xq(d|0,0,12)|0;Ei(A,g);g=c[A>>2]|0;if(!((c[278102]|0)==-1)){c[r>>2]=1112408;c[r+4>>2]=14;c[r+8>>2]=0;Wh(1112408,r)}r=(c[278103]|0)-1|0;s=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-s>>2>>>0>r>>>0){r=c[s+(r<<2)>>2]|0;if((r|0)==0){break}q=q|0;Cc[c[(c[r>>2]|0)+48>>2]&15](r,27632,27658,q)|0;Dh(g|0);s=m;Xq(s|0,0,12)|0;fi(m,10);if((a[s]&1)==0){g=m+1|0;x=g;r=m+8|0}else{r=m+8|0;x=c[r>>2]|0;g=m+1|0}c[n>>2]=x;t=t|0;c[o>>2]=t;c[p>>2]=0;e=e|0;f=f|0;u=m|0;v=m+4|0;w=c[e>>2]|0;a:while(1){do{if((w|0)==0){y=1;w=0}else{y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0)){y=uc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{y=c[y>>2]|0}if(!((y|0)==-1)){y=0;break}c[e>>2]=0;y=1;w=0}}while(0);A=c[f>>2]|0;do{if((A|0)==0){k=25}else{z=c[A+12>>2]|0;if((z|0)==(c[A+16>>2]|0)){z=uc[c[(c[A>>2]|0)+36>>2]&127](A)|0}else{z=c[z>>2]|0}if((z|0)==-1){c[f>>2]=0;k=25;break}else{if(y){break}else{break a}}}}while(0);if((k|0)==25){k=0;if(y){break}}y=a[s]|0;z=(y&1)==0;if(z){A=(y&255)>>>1}else{A=c[v>>2]|0}if(((c[n>>2]|0)-x|0)==(A|0)){if(z){y=(y&255)>>>1}else{y=c[v>>2]|0}fi(m,y<<1);if((a[s]&1)==0){x=10}else{x=(c[u>>2]&-2)-1|0}fi(m,x);if((a[s]&1)==0){x=g}else{x=c[r>>2]|0}c[n>>2]=x+y}z=w+12|0;A=c[z>>2]|0;y=w+16|0;if((A|0)==(c[y>>2]|0)){A=uc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{A=c[A>>2]|0}if((Mk(A,16,x,n,p,0,d,t,o,q)|0)!=0){break}A=c[z>>2]|0;if((A|0)==(c[y>>2]|0)){uc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[z>>2]=A+4;continue}}a[x+3|0]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);A=ok(x,c[277746]|0,(z=i,i=i+8|0,c[z>>2]=j,z)|0)|0;i=z;if((A|0)!=1){c[h>>2]=4}n=c[e>>2]|0;do{if((n|0)==0){j=1;n=0}else{j=c[n+12>>2]|0;if((j|0)==(c[n+16>>2]|0)){j=uc[c[(c[n>>2]|0)+36>>2]&127](n)|0}else{j=c[j>>2]|0}if(!((j|0)==-1)){j=0;break}c[e>>2]=0;j=1;n=0}}while(0);o=c[f>>2]|0;do{if((o|0)==0){k=72}else{p=c[o+12>>2]|0;if((p|0)==(c[o+16>>2]|0)){o=uc[c[(c[o>>2]|0)+36>>2]&127](o)|0}else{o=c[p>>2]|0}if((o|0)==-1){c[f>>2]=0;k=72;break}if(!j){break}A=b|0;c[A>>2]=n;di(m);di(d);i=l;return}}while(0);do{if((k|0)==72){if(j){break}A=b|0;c[A>>2]=n;di(m);di(d);i=l;return}}while(0);c[h>>2]=c[h>>2]|2;A=b|0;c[A>>2]=n;di(m);di(d);i=l;return}}while(0);A=ec(4)|0;eq(A);Ab(A|0,26088,180)}function Mk(b,d,e,f,g,h,i,j,k,l){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;l=l|0;var m=0,n=0,o=0;n=c[f>>2]|0;m=(n|0)==(e|0);do{if(m){o=(c[l+96>>2]|0)==(b|0);if(!o){if((c[l+100>>2]|0)!=(b|0)){break}}c[f>>2]=e+1;a[e]=o?43:45;c[g>>2]=0;o=0;return o|0}}while(0);o=a[i]|0;if((o&1)==0){i=(o&255)>>>1}else{i=c[i+4>>2]|0}if((i|0)!=0&(b|0)==(h|0)){e=c[k>>2]|0;if((e-j|0)>=160){o=0;return o|0}o=c[g>>2]|0;c[k>>2]=e+4;c[e>>2]=o;c[g>>2]=0;o=0;return o|0}j=l+104|0;k=l;while(1){if((k|0)==(j|0)){break}if((c[k>>2]|0)==(b|0)){j=k;break}else{k=k+4|0}}b=j-l|0;l=b>>2;if((b|0)>92){o=-1;return o|0}do{if((d|0)==8|(d|0)==10){if((l|0)<(d|0)){break}else{g=-1}return g|0}else if((d|0)==16){if((b|0)<88){break}if(m){o=-1;return o|0}if((n-e|0)>=3){o=-1;return o|0}if((a[n-1|0]|0)!=48){o=-1;return o|0}c[g>>2]=0;o=a[27632+l|0]|0;c[f>>2]=n+1;a[n]=o;o=0;return o|0}}while(0);o=a[27632+l|0]|0;c[f>>2]=n+1;a[n]=o;c[g>>2]=(c[g>>2]|0)+1;o=0;return o|0}function Nk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+40|0;h=g|0;j=g+16|0;m=g+32|0;Ei(m,d);d=c[m>>2]|0;if(!((c[278104]|0)==-1)){c[j>>2]=1112416;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112416,j)}l=(c[278105]|0)-1|0;j=d+12|0;k=d+8|0;m=c[k>>2]|0;do{if((c[j>>2]|0)-m>>2>>>0>l>>>0){l=c[m+(l<<2)>>2]|0;if((l|0)==0){break}Cc[c[(c[l>>2]|0)+32>>2]&15](l,27632,27658,e)|0;if(!((c[278008]|0)==-1)){c[h>>2]=1112032;c[h+4>>2]=14;c[h+8>>2]=0;Wh(1112032,h)}h=(c[278009]|0)-1|0;e=c[k>>2]|0;do{if((c[j>>2]|0)-e>>2>>>0>h>>>0){h=c[e+(h<<2)>>2]|0;if((h|0)==0){break}m=h;a[f]=uc[c[(c[h>>2]|0)+16>>2]&127](m)|0;qc[c[(c[h>>2]|0)+20>>2]&127](b,m);Dh(d|0);i=g;return}}while(0);m=ec(4)|0;eq(m);Ab(m|0,26088,180)}}while(0);m=ec(4)|0;eq(m);Ab(m|0,26088,180)}function Ok(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+40|0;j=h|0;k=h+16|0;n=h+32|0;Ei(n,d);d=c[n>>2]|0;if(!((c[278104]|0)==-1)){c[k>>2]=1112416;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112416,k)}m=(c[278105]|0)-1|0;k=d+12|0;l=d+8|0;n=c[l>>2]|0;do{if((c[k>>2]|0)-n>>2>>>0>m>>>0){m=c[n+(m<<2)>>2]|0;if((m|0)==0){break}Cc[c[(c[m>>2]|0)+32>>2]&15](m,27632,27664,e)|0;if(!((c[278008]|0)==-1)){c[j>>2]=1112032;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112032,j)}e=(c[278009]|0)-1|0;j=c[l>>2]|0;do{if((c[k>>2]|0)-j>>2>>>0>e>>>0){e=c[j+(e<<2)>>2]|0;if((e|0)==0){break}n=e;m=e;a[f]=uc[c[(c[m>>2]|0)+12>>2]&127](n)|0;a[g]=uc[c[(c[m>>2]|0)+16>>2]&127](n)|0;qc[c[(c[e>>2]|0)+20>>2]&127](b,n);Dh(d|0);i=h;return}}while(0);n=ec(4)|0;eq(n);Ab(n|0,26088,180)}}while(0);n=ec(4)|0;eq(n);Ab(n|0,26088,180)}function Pk(b,d,e,f,g,h,i,j,k,l,m,n){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;l=l|0;m=m|0;n=n|0;if(b<<24>>24==h<<24>>24){if((a[d]|0)==0){h=-1;return h|0}a[d]=0;h=c[g>>2]|0;c[g>>2]=h+1;a[h]=46;g=a[j]|0;if((g&1)==0){g=(g&255)>>>1}else{g=c[j+4>>2]|0}if((g|0)==0){h=0;return h|0}g=c[l>>2]|0;if((g-k|0)>=160){h=0;return h|0}h=c[m>>2]|0;c[l>>2]=g+4;c[g>>2]=h;h=0;return h|0}do{if(b<<24>>24==i<<24>>24){i=a[j]|0;if((i&1)==0){i=(i&255)>>>1}else{i=c[j+4>>2]|0}if((i|0)==0){break}if((a[d]|0)==0){h=-1;return h|0}g=c[l>>2]|0;if((g-k|0)>=160){h=0;return h|0}h=c[m>>2]|0;c[l>>2]=g+4;c[g>>2]=h;c[m>>2]=0;h=0;return h|0}}while(0);i=n+32|0;h=n;while(1){if((h|0)==(i|0)){break}if((a[h]|0)==b<<24>>24){i=h;break}else{h=h+1|0}}b=i-n|0;if((b|0)>31){h=-1;return h|0}n=a[27632+b|0]|0;if((b|0)==25|(b|0)==24){m=c[g>>2]|0;do{if((m|0)!=(f|0)){if((a[m-1|0]&95|0)==(a[e]&127|0)){break}else{m=-1}return m|0}}while(0);c[g>>2]=m+1;a[m]=n;h=0;return h|0}else if((b|0)==22|(b|0)==23){a[e]=80;h=c[g>>2]|0;c[g>>2]=h+1;a[h]=n;h=0;return h|0}else{f=a[e]|0;do{if((n&95|0)==(f<<24>>24|0)){a[e]=f|-128;if((a[d]|0)==0){break}a[d]=0;e=a[j]|0;if((e&1)==0){j=(e&255)>>>1}else{j=c[j+4>>2]|0}if((j|0)==0){break}j=c[l>>2]|0;if((j-k|0)>=160){break}h=c[m>>2]|0;c[l>>2]=j+4;c[j>>2]=h}}while(0);h=c[g>>2]|0;c[g>>2]=h+1;a[h]=n;if((b|0)>21){h=0;return h|0}c[m>>2]=(c[m>>2]|0)+1;h=0;return h|0}return 0}function Qk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+40|0;g=f|0;h=f+16|0;l=f+32|0;Ei(l,b);b=c[l>>2]|0;if(!((c[278102]|0)==-1)){c[h>>2]=1112408;c[h+4>>2]=14;c[h+8>>2]=0;Wh(1112408,h)}k=(c[278103]|0)-1|0;h=b+12|0;j=b+8|0;l=c[j>>2]|0;do{if((c[h>>2]|0)-l>>2>>>0>k>>>0){k=c[l+(k<<2)>>2]|0;if((k|0)==0){break}Cc[c[(c[k>>2]|0)+48>>2]&15](k,27632,27658,d)|0;if(!((c[278006]|0)==-1)){c[g>>2]=1112024;c[g+4>>2]=14;c[g+8>>2]=0;Wh(1112024,g)}g=(c[278007]|0)-1|0;d=c[j>>2]|0;do{if((c[h>>2]|0)-d>>2>>>0>g>>>0){g=c[d+(g<<2)>>2]|0;if((g|0)==0){break}l=g;c[e>>2]=uc[c[(c[g>>2]|0)+16>>2]&127](l)|0;qc[c[(c[g>>2]|0)+20>>2]&127](a,l);Dh(b|0);i=f;return}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}function Rk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+40|0;h=g|0;j=g+16|0;m=g+32|0;Ei(m,b);b=c[m>>2]|0;if(!((c[278102]|0)==-1)){c[j>>2]=1112408;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112408,j)}l=(c[278103]|0)-1|0;j=b+12|0;k=b+8|0;m=c[k>>2]|0;do{if((c[j>>2]|0)-m>>2>>>0>l>>>0){l=c[m+(l<<2)>>2]|0;if((l|0)==0){break}Cc[c[(c[l>>2]|0)+48>>2]&15](l,27632,27664,d)|0;if(!((c[278006]|0)==-1)){c[h>>2]=1112024;c[h+4>>2]=14;c[h+8>>2]=0;Wh(1112024,h)}d=(c[278007]|0)-1|0;h=c[k>>2]|0;do{if((c[j>>2]|0)-h>>2>>>0>d>>>0){d=c[h+(d<<2)>>2]|0;if((d|0)==0){break}m=d;l=d;c[e>>2]=uc[c[(c[l>>2]|0)+12>>2]&127](m)|0;c[f>>2]=uc[c[(c[l>>2]|0)+16>>2]&127](m)|0;qc[c[(c[d>>2]|0)+20>>2]&127](a,m);Dh(b|0);i=g;return}}while(0);m=ec(4)|0;eq(m);Ab(m|0,26088,180)}}while(0);m=ec(4)|0;eq(m);Ab(m|0,26088,180)}function Sk(b,d,e,f,g,h,i,j,k,l,m,n){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;l=l|0;m=m|0;n=n|0;if((b|0)==(h|0)){if((a[d]|0)==0){h=-1;return h|0}a[d]=0;h=c[g>>2]|0;c[g>>2]=h+1;a[h]=46;g=a[j]|0;if((g&1)==0){g=(g&255)>>>1}else{g=c[j+4>>2]|0}if((g|0)==0){h=0;return h|0}g=c[l>>2]|0;if((g-k|0)>=160){h=0;return h|0}h=c[m>>2]|0;c[l>>2]=g+4;c[g>>2]=h;h=0;return h|0}do{if((b|0)==(i|0)){i=a[j]|0;if((i&1)==0){i=(i&255)>>>1}else{i=c[j+4>>2]|0}if((i|0)==0){break}if((a[d]|0)==0){h=-1;return h|0}g=c[l>>2]|0;if((g-k|0)>=160){h=0;return h|0}h=c[m>>2]|0;c[l>>2]=g+4;c[g>>2]=h;c[m>>2]=0;h=0;return h|0}}while(0);i=n+128|0;h=n;while(1){if((h|0)==(i|0)){break}if((c[h>>2]|0)==(b|0)){i=h;break}else{h=h+4|0}}b=i-n|0;i=b>>2;if((b|0)>124){h=-1;return h|0}n=a[27632+i|0]|0;do{if((i|0)==22|(i|0)==23){a[e]=80}else if((i|0)==25|(i|0)==24){m=c[g>>2]|0;do{if((m|0)!=(f|0)){if((a[m-1|0]&95|0)==(a[e]&127|0)){break}else{m=-1}return m|0}}while(0);c[g>>2]=m+1;a[m]=n;h=0;return h|0}else{f=a[e]|0;if((n&95|0)!=(f<<24>>24|0)){break}a[e]=f|-128;if((a[d]|0)==0){break}a[d]=0;e=a[j]|0;if((e&1)==0){j=(e&255)>>>1}else{j=c[j+4>>2]|0}if((j|0)==0){break}j=c[l>>2]|0;if((j-k|0)>=160){break}h=c[m>>2]|0;c[l>>2]=j+4;c[j>>2]=h}}while(0);h=c[g>>2]|0;c[g>>2]=h+1;a[h]=n;if((b|0)>84){h=0;return h|0}c[m>>2]=(c[m>>2]|0)+1;h=0;return h|0}function Tk(a){a=a|0;Gq(a);return}function Uk(a){a=a|0;return}function Vk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+48|0;l=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[l>>2];l=j|0;m=j+16|0;n=j+24|0;k=j+32|0;if((c[f+4>>2]&1|0)==0){p=c[(c[d>>2]|0)+24>>2]|0;c[m>>2]=c[e>>2];Bc[p&31](b,d,m,f,g,h&1);i=j;return}Ei(n,f);d=c[n>>2]|0;if(!((c[278008]|0)==-1)){c[l>>2]=1112032;c[l+4>>2]=14;c[l+8>>2]=0;Wh(1112032,l)}l=(c[278009]|0)-1|0;f=c[d+8>>2]|0;do{if((c[d+12>>2]|0)-f>>2>>>0>l>>>0){f=c[f+(l<<2)>>2]|0;if((f|0)==0){break}l=f;Dh(d|0);d=c[f>>2]|0;if(h){qc[c[d+24>>2]&127](k,l)}else{qc[c[d+28>>2]&127](k,l)}d=k;n=a[d]|0;if((n&1)==0){l=k+1|0;m=l;h=k+8|0}else{h=k+8|0;m=c[h>>2]|0;l=k+1|0}f=e|0;e=k+4|0;while(1){if((n&1)==0){n=(n&255)>>>1;g=l}else{n=c[e>>2]|0;g=c[h>>2]|0}if((m|0)==(g+n|0)){break}o=a[m]|0;g=c[f>>2]|0;do{if((g|0)!=0){n=g+24|0;p=c[n>>2]|0;if((p|0)!=(c[g+28>>2]|0)){c[n>>2]=p+1;a[p]=o;break}if(!((rc[c[(c[g>>2]|0)+52>>2]&31](g,o&255)|0)==-1)){break}c[f>>2]=0}}while(0);m=m+1|0;n=a[d]|0}c[b>>2]=c[f>>2];di(k);i=j;return}}while(0);p=ec(4)|0;eq(p);Ab(p|0,26088,180)}function Wk(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+72|0;s=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[s>>2];s=l|0;o=l+8|0;n=l+24|0;m=l+48|0;k=l+56|0;d=l+64|0;q=s|0;a[q]=a[20328]|0;a[q+1|0]=a[20329]|0;a[q+2|0]=a[20330]|0;a[q+3|0]=a[20331]|0;a[q+4|0]=a[20332]|0;a[q+5|0]=a[20333]|0;t=s+1|0;p=f+4|0;r=c[p>>2]|0;if((r&2048|0)!=0){a[t]=43;t=s+2|0}if((r&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;t=t+1|0;s=r&74;do{if((s|0)==64){a[t]=111}else if((s|0)==8){if((r&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=100}}while(0);r=o|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);q=Xk(r,12,c[277746]|0,q,(t=i,i=i+8|0,c[t>>2]=h,t)|0)|0;i=t;h=o+q|0;p=c[p>>2]&176;do{if((p|0)==16){p=a[r]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){o=o+1|0;break}if(!((q|0)>1&p<<24>>24==48)){j=22;break}t=a[o+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){j=22;break}o=o+2|0}else if((p|0)==32){o=h}else{j=22}}while(0);if((j|0)==22){o=r}t=n|0;Ei(d,f);Yk(r,o,h,t,m,k,d);Dh(c[d>>2]|0);Zk(b,c[e>>2]|0,t,c[m>>2]|0,c[k>>2]|0,f,g);i=l;return}function Xk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;g=i;i=i+16|0;h=g|0;j=h;c[j>>2]=f;c[j+4>>2]=0;d=Sb(d|0)|0;e=Tb(a|0,b|0,e|0,h|0)|0;if((d|0)==0){i=g;return e|0}Sb(d|0)|0;i=g;return e|0}function Yk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,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;k=i;i=i+48|0;m=k|0;o=k+16|0;l=k+32|0;n=j|0;j=c[n>>2]|0;if(!((c[278104]|0)==-1)){c[o>>2]=1112416;c[o+4>>2]=14;c[o+8>>2]=0;Wh(1112416,o)}p=(c[278105]|0)-1|0;o=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-o>>2>>>0>p>>>0)){v=ec(4)|0;u=v;eq(u);Ab(v|0,26088,180)}o=c[o+(p<<2)>>2]|0;if((o|0)==0){v=ec(4)|0;u=v;eq(u);Ab(v|0,26088,180)}j=o;n=c[n>>2]|0;if(!((c[278008]|0)==-1)){c[m>>2]=1112032;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112032,m)}m=(c[278009]|0)-1|0;p=c[n+8>>2]|0;if(!((c[n+12>>2]|0)-p>>2>>>0>m>>>0)){v=ec(4)|0;u=v;eq(u);Ab(v|0,26088,180)}q=c[p+(m<<2)>>2]|0;if((q|0)==0){v=ec(4)|0;u=v;eq(u);Ab(v|0,26088,180)}p=q;qc[c[(c[q>>2]|0)+20>>2]&127](l,p);m=l;n=a[m]|0;if((n&1)==0){n=(n&255)>>>1}else{n=c[l+4>>2]|0}do{if((n|0)==0){Cc[c[(c[o>>2]|0)+32>>2]&15](j,b,e,f)|0;c[h>>2]=f+(e-b)}else{c[h>>2]=f;n=a[b]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){v=rc[c[(c[o>>2]|0)+28>>2]&31](j,n)|0;n=c[h>>2]|0;c[h>>2]=n+1;a[n]=v;n=b+1|0}else{n=b}do{if((e-n|0)>1){if((a[n]|0)!=48){break}r=n+1|0;v=a[r]|0;if(!((v<<24>>24|0)==120|(v<<24>>24|0)==88)){break}u=o;t=rc[c[(c[u>>2]|0)+28>>2]&31](j,48)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v]=t;u=rc[c[(c[u>>2]|0)+28>>2]&31](j,a[r]|0)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v]=u;n=n+2|0}}while(0);do{if((n|0)!=(e|0)){s=e-1|0;if(s>>>0>n>>>0){r=n}else{break}do{v=a[r]|0;a[r]=a[s]|0;a[s]=v;r=r+1|0;s=s-1|0;}while(r>>>0<s>>>0)}}while(0);p=uc[c[(c[q>>2]|0)+16>>2]&127](p)|0;if(n>>>0<e>>>0){q=l+1|0;s=l+4|0;r=l+8|0;v=0;u=0;t=n;while(1){w=a[((a[m]&1)==0?q:c[r>>2]|0)+u|0]|0;if(w<<24>>24!=0&(v|0)==(w<<24>>24|0)){v=c[h>>2]|0;c[h>>2]=v+1;a[v]=p;v=a[m]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[s>>2]|0}u=(u>>>0<(v-1|0)>>>0)+u|0;v=0}x=rc[c[(c[o>>2]|0)+28>>2]&31](j,a[t]|0)|0;w=c[h>>2]|0;c[h>>2]=w+1;a[w]=x;t=t+1|0;if(t>>>0<e>>>0){v=v+1|0}else{break}}}j=f+(n-b)|0;m=c[h>>2]|0;if((j|0)==(m|0)){break}m=m-1|0;if(!(m>>>0>j>>>0)){break}do{x=a[j]|0;a[j]=a[m]|0;a[m]=x;j=j+1|0;m=m-1|0;}while(j>>>0<m>>>0)}}while(0);if((d|0)==(e|0)){x=c[h>>2]|0;c[g>>2]=x;di(l);i=k;return}else{x=f+(d-b)|0;c[g>>2]=x;di(l);i=k;return}}function Zk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;k=i;i=i+16|0;l=k|0;if((d|0)==0){c[b>>2]=0;i=k;return}m=e;n=g-m|0;h=h+12|0;o=c[h>>2]|0;o=(o|0)>(n|0)?o-n|0:0;n=f;m=n-m|0;do{if((m|0)>0){if((vc[c[(c[d>>2]|0)+48>>2]&63](d,e,m)|0)==(m|0)){break}c[b>>2]=0;i=k;return}}while(0);do{if((o|0)>0){bi(l,o,j);if((a[l]&1)==0){e=l+1|0}else{e=c[l+8>>2]|0}if((vc[c[(c[d>>2]|0)+48>>2]&63](d,e,o)|0)==(o|0)){di(l);break}c[b>>2]=0;di(l);i=k;return}}while(0);l=g-n|0;do{if((l|0)>0){if((vc[c[(c[d>>2]|0)+48>>2]&63](d,f,l)|0)==(l|0)){break}c[b>>2]=0;i=k;return}}while(0);c[h>>2]=0;c[b>>2]=d;i=k;return}function _k(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+104|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=m|0;p=m+8|0;o=m+32|0;n=m+80|0;l=m+88|0;d=m+96|0;c[r>>2]=37;c[r+4>>2]=0;t=r+1|0;q=f+4|0;s=c[q>>2]|0;if((s&2048|0)!=0){a[t]=43;t=r+2|0}if((s&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;a[t+1|0]=108;t=t+2|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=100}}while(0);s=p|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);j=Xk(s,22,c[277746]|0,r,(u=i,i=i+16|0,c[u>>2]=h,c[u+8>>2]=j,u)|0)|0;i=u;h=p+j|0;q=c[q>>2]&176;do{if((q|0)==32){p=h}else if((q|0)==16){q=a[s]|0;if((q<<24>>24|0)==45|(q<<24>>24|0)==43){p=p+1|0;break}if(!((j|0)>1&q<<24>>24==48)){k=22;break}u=a[p+1|0]|0;if(!((u<<24>>24|0)==120|(u<<24>>24|0)==88)){k=22;break}p=p+2|0}else{k=22}}while(0);if((k|0)==22){p=s}u=o|0;Ei(d,f);Yk(s,p,h,u,n,l,d);Dh(c[d>>2]|0);Zk(b,c[e>>2]|0,u,c[n>>2]|0,c[l>>2]|0,f,g);i=m;return}function $k(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+72|0;s=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[s>>2];s=l|0;o=l+8|0;n=l+24|0;m=l+48|0;k=l+56|0;d=l+64|0;q=s|0;a[q]=a[20328]|0;a[q+1|0]=a[20329]|0;a[q+2|0]=a[20330]|0;a[q+3|0]=a[20331]|0;a[q+4|0]=a[20332]|0;a[q+5|0]=a[20333]|0;t=s+1|0;p=f+4|0;r=c[p>>2]|0;if((r&2048|0)!=0){a[t]=43;t=s+2|0}if((r&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;t=t+1|0;s=r&74;do{if((s|0)==64){a[t]=111}else if((s|0)==8){if((r&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=117}}while(0);r=o|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);q=Xk(r,12,c[277746]|0,q,(t=i,i=i+8|0,c[t>>2]=h,t)|0)|0;i=t;h=o+q|0;p=c[p>>2]&176;do{if((p|0)==16){p=a[r]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){o=o+1|0;break}if(!((q|0)>1&p<<24>>24==48)){j=22;break}t=a[o+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){j=22;break}o=o+2|0}else if((p|0)==32){o=h}else{j=22}}while(0);if((j|0)==22){o=r}t=n|0;Ei(d,f);Yk(r,o,h,t,m,k,d);Dh(c[d>>2]|0);Zk(b,c[e>>2]|0,t,c[m>>2]|0,c[k>>2]|0,f,g);i=l;return}function al(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+104|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=m|0;p=m+8|0;o=m+32|0;n=m+80|0;l=m+88|0;d=m+96|0;c[r>>2]=37;c[r+4>>2]=0;t=r+1|0;q=f+4|0;s=c[q>>2]|0;if((s&2048|0)!=0){a[t]=43;t=r+2|0}if((s&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;a[t+1|0]=108;t=t+2|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=117}}while(0);s=p|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);j=Xk(s,23,c[277746]|0,r,(u=i,i=i+16|0,c[u>>2]=h,c[u+8>>2]=j,u)|0)|0;i=u;h=p+j|0;q=c[q>>2]&176;do{if((q|0)==32){p=h}else if((q|0)==16){q=a[s]|0;if((q<<24>>24|0)==45|(q<<24>>24|0)==43){p=p+1|0;break}if(!((j|0)>1&q<<24>>24==48)){k=22;break}u=a[p+1|0]|0;if(!((u<<24>>24|0)==120|(u<<24>>24|0)==88)){k=22;break}p=p+2|0}else{k=22}}while(0);if((k|0)==22){p=s}u=o|0;Ei(d,f);Yk(s,p,h,u,n,l,d);Dh(c[d>>2]|0);Zk(b,c[e>>2]|0,u,c[n>>2]|0,c[l>>2]|0,f,g);i=m;return}function bl(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,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;n=i;i=i+144|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;s=n+8|0;o=n+40|0;q=n+48|0;k=n+112|0;l=n+120|0;d=n+128|0;m=n+136|0;c[t>>2]=37;c[t+4>>2]=0;w=t+1|0;r=f+4|0;u=c[r>>2]|0;if((u&2048|0)!=0){a[w]=43;w=t+2|0}if((u&1024|0)!=0){a[w]=35;w=w+1|0}v=u&260;u=u>>>14;do{if((v|0)==260){if((u&1|0)==0){a[w]=97;u=0;break}else{a[w]=65;u=0;break}}else{a[w]=46;x=w+2|0;a[w+1|0]=42;if((v|0)==4){if((u&1|0)==0){a[x]=102;u=1;break}else{a[x]=70;u=1;break}}else if((v|0)==256){if((u&1|0)==0){a[x]=101;u=1;break}else{a[x]=69;u=1;break}}else{if((u&1|0)==0){a[x]=103;u=1;break}else{a[x]=71;u=1;break}}}}while(0);s=s|0;c[o>>2]=s;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);v=c[277746]|0;if(u){w=Xk(s,30,v,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}else{w=Xk(s,30,v,t,(x=i,i=i+8|0,h[x>>3]=j,x)|0)|0;i=x}do{if((w|0)>29){v=(a[1113064]|0)==0;if(u){do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}else{do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}u=c[o>>2]|0;if((u|0)!=0){t=u;v=u;break}Lq();v=c[o>>2]|0;t=v}else{t=0;v=c[o>>2]|0}}while(0);u=v+w|0;r=c[r>>2]&176;do{if((r|0)==16){r=a[v]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){r=v+1|0;break}if(!((w|0)>1&r<<24>>24==48)){p=53;break}x=a[v+1|0]|0;if(!((x<<24>>24|0)==120|(x<<24>>24|0)==88)){p=53;break}r=v+2|0}else if((r|0)==32){r=u}else{p=53}}while(0);if((p|0)==53){r=v}do{if((v|0)==(s|0)){p=q|0;q=0}else{q=zq(w<<1)|0;if((q|0)!=0){p=q;s=v;break}Lq();p=0;q=0;s=c[o>>2]|0}}while(0);Ei(d,f);dl(s,r,u,p,k,l,d);Dh(c[d>>2]|0);w=e|0;Zk(m,c[w>>2]|0,p,c[k>>2]|0,c[l>>2]|0,f,g);x=c[m>>2]|0;c[w>>2]=x;c[b>>2]=x;if((q|0)!=0){Aq(q)}if((t|0)==0){i=n;return}Aq(t);i=n;return}function cl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f|0;h=g;c[h>>2]=e;c[h+4>>2]=0;b=Sb(b|0)|0;d=fc(a|0,d|0,g|0)|0;if((b|0)==0){i=f;return d|0}Sb(b|0)|0;i=f;return d|0}function dl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=i;i=i+48|0;n=l|0;m=l+16|0;k=l+32|0;o=j|0;j=c[o>>2]|0;if(!((c[278104]|0)==-1)){c[m>>2]=1112416;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112416,m)}p=(c[278105]|0)-1|0;m=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-m>>2>>>0>p>>>0)){A=ec(4)|0;z=A;eq(z);Ab(A|0,26088,180)}j=c[m+(p<<2)>>2]|0;if((j|0)==0){A=ec(4)|0;z=A;eq(z);Ab(A|0,26088,180)}m=j;o=c[o>>2]|0;if(!((c[278008]|0)==-1)){c[n>>2]=1112032;c[n+4>>2]=14;c[n+8>>2]=0;Wh(1112032,n)}p=(c[278009]|0)-1|0;n=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-n>>2>>>0>p>>>0)){A=ec(4)|0;z=A;eq(z);Ab(A|0,26088,180)}p=c[n+(p<<2)>>2]|0;if((p|0)==0){A=ec(4)|0;z=A;eq(z);Ab(A|0,26088,180)}o=p;qc[c[(c[p>>2]|0)+20>>2]&127](k,o);c[h>>2]=f;n=a[b]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){A=rc[c[(c[j>>2]|0)+28>>2]&31](m,n)|0;r=c[h>>2]|0;c[h>>2]=r+1;a[r]=A;r=b+1|0}else{r=b}n=e;a:do{if((n-r|0)>1){if((a[r]|0)!=48){q=r;s=34;break}q=r+1|0;A=a[q]|0;if(!((A<<24>>24|0)==120|(A<<24>>24|0)==88)){q=r;s=34;break}A=j;y=rc[c[(c[A>>2]|0)+28>>2]&31](m,48)|0;z=c[h>>2]|0;c[h>>2]=z+1;a[z]=y;r=r+2|0;A=rc[c[(c[A>>2]|0)+28>>2]&31](m,a[q]|0)|0;q=c[h>>2]|0;c[h>>2]=q+1;a[q]=A;q=r;while(1){if(!(q>>>0<e>>>0)){break a}t=a[q]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((Oa(t<<24>>24|0,c[277746]|0)|0)==0){break}else{q=q+1|0}}}else{q=r;s=34}}while(0);b:do{if((s|0)==34){while(1){if(!(q>>>0<e>>>0)){break b}s=a[q]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((eb(s<<24>>24|0,c[277746]|0)|0)==0){break}else{q=q+1|0;s=34}}}}while(0);s=k;t=a[s]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[k+4>>2]|0}do{if((t|0)==0){Cc[c[(c[j>>2]|0)+32>>2]&15](m,r,q,c[h>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(q-r)}else{do{if((r|0)!=(q|0)){u=q-1|0;if(u>>>0>r>>>0){t=r}else{break}do{A=a[t]|0;a[t]=a[u]|0;a[u]=A;t=t+1|0;u=u-1|0;}while(t>>>0<u>>>0)}}while(0);u=uc[c[(c[p>>2]|0)+16>>2]&127](o)|0;if(r>>>0<q>>>0){t=k+1|0;x=k+4|0;v=k+8|0;w=j;A=0;z=0;y=r;while(1){B=a[((a[s]&1)==0?t:c[v>>2]|0)+z|0]|0;if(B<<24>>24>0&(A|0)==(B<<24>>24|0)){A=c[h>>2]|0;c[h>>2]=A+1;a[A]=u;A=a[s]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[x>>2]|0}z=(z>>>0<(A-1|0)>>>0)+z|0;A=0}C=rc[c[(c[w>>2]|0)+28>>2]&31](m,a[y]|0)|0;B=c[h>>2]|0;c[h>>2]=B+1;a[B]=C;y=y+1|0;if(y>>>0<q>>>0){A=A+1|0}else{break}}}r=f+(r-b)|0;s=c[h>>2]|0;if((r|0)==(s|0)){break}s=s-1|0;if(!(s>>>0>r>>>0)){break}do{C=a[r]|0;a[r]=a[s]|0;a[s]=C;r=r+1|0;s=s-1|0;}while(r>>>0<s>>>0)}}while(0);c:do{if(q>>>0<e>>>0){r=j;while(1){s=a[q]|0;if(s<<24>>24==46){break}B=rc[c[(c[r>>2]|0)+28>>2]&31](m,s)|0;C=c[h>>2]|0;c[h>>2]=C+1;a[C]=B;q=q+1|0;if(!(q>>>0<e>>>0)){break c}}B=uc[c[(c[p>>2]|0)+12>>2]&127](o)|0;C=c[h>>2]|0;c[h>>2]=C+1;a[C]=B;q=q+1|0}}while(0);Cc[c[(c[j>>2]|0)+32>>2]&15](m,q,e,c[h>>2]|0)|0;j=(c[h>>2]|0)+(n-q)|0;c[h>>2]=j;if((d|0)==(e|0)){C=j;c[g>>2]=C;di(k);i=l;return}C=f+(d-b)|0;c[g>>2]=C;di(k);i=l;return}function el(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=i;i=i+144|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;s=n+8|0;o=n+40|0;q=n+48|0;k=n+112|0;l=n+120|0;d=n+128|0;m=n+136|0;c[t>>2]=37;c[t+4>>2]=0;w=t+1|0;r=f+4|0;v=c[r>>2]|0;if((v&2048|0)!=0){a[w]=43;w=t+2|0}if((v&1024|0)!=0){a[w]=35;w=w+1|0}u=v&260;v=v>>>14;do{if((u|0)==260){a[w]=76;u=w+1|0;if((v&1|0)==0){a[u]=97;u=0;break}else{a[u]=65;u=0;break}}else{a[w]=46;a[w+1|0]=42;a[w+2|0]=76;w=w+3|0;if((u|0)==256){if((v&1|0)==0){a[w]=101;u=1;break}else{a[w]=69;u=1;break}}else if((u|0)==4){if((v&1|0)==0){a[w]=102;u=1;break}else{a[w]=70;u=1;break}}else{if((v&1|0)==0){a[w]=103;u=1;break}else{a[w]=71;u=1;break}}}}while(0);s=s|0;c[o>>2]=s;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);v=c[277746]|0;if(u){w=Xk(s,30,v,t,(v=i,i=i+16|0,c[v>>2]=c[f+8>>2],h[v+8>>3]=j,v)|0)|0;i=v}else{w=Xk(s,30,v,t,(v=i,i=i+8|0,h[v>>3]=j,v)|0)|0;i=v}do{if((w|0)>29){v=(a[1113064]|0)==0;if(u){do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(v=i,i=i+16|0,c[v>>2]=c[f+8>>2],h[v+8>>3]=j,v)|0)|0;i=v}else{do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(v=i,i=i+8|0,h[v>>3]=j,v)|0)|0;i=v}u=c[o>>2]|0;if((u|0)!=0){t=u;v=u;break}Lq();v=c[o>>2]|0;t=v}else{t=0;v=c[o>>2]|0}}while(0);u=v+w|0;r=c[r>>2]&176;do{if((r|0)==16){r=a[v]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){r=v+1|0;break}if(!((w|0)>1&r<<24>>24==48)){p=53;break}r=a[v+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){p=53;break}r=v+2|0}else if((r|0)==32){r=u}else{p=53}}while(0);if((p|0)==53){r=v}do{if((v|0)==(s|0)){p=q|0;q=0}else{q=zq(w<<1)|0;if((q|0)!=0){p=q;s=v;break}Lq();p=0;q=0;s=c[o>>2]|0}}while(0);Ei(d,f);dl(s,r,u,p,k,l,d);Dh(c[d>>2]|0);v=e|0;Zk(m,c[v>>2]|0,p,c[k>>2]|0,c[l>>2]|0,f,g);w=c[m>>2]|0;c[v>>2]=w;c[b>>2]=w;if((q|0)!=0){Aq(q)}if((t|0)==0){i=n;return}Aq(t);i=n;return}function fl(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+96|0;o=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[o>>2];o=k|0;d=k+24|0;j=k+48|0;q=k+88|0;m=k+16|0;a[m]=a[20336]|0;a[m+1|0]=a[20337]|0;a[m+2|0]=a[20338]|0;a[m+3|0]=a[20339]|0;a[m+4|0]=a[20340]|0;a[m+5|0]=a[20341]|0;l=d|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);m=Xk(l,20,c[277746]|0,m,(n=i,i=i+8|0,c[n>>2]=h,n)|0)|0;i=n;h=d+m|0;n=c[f+4>>2]&176;do{if((n|0)==32){n=h}else if((n|0)==16){n=a[l]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){n=d+1|0;break}if(!((m|0)>1&n<<24>>24==48)){p=12;break}n=a[d+1|0]|0;if(!((n<<24>>24|0)==120|(n<<24>>24|0)==88)){p=12;break}n=d+2|0}else{p=12}}while(0);if((p|0)==12){n=l}Ei(q,f);p=c[q>>2]|0;if(!((c[278104]|0)==-1)){c[o>>2]=1112416;c[o+4>>2]=14;c[o+8>>2]=0;Wh(1112416,o)}o=(c[278105]|0)-1|0;q=c[p+8>>2]|0;do{if((c[p+12>>2]|0)-q>>2>>>0>o>>>0){o=c[q+(o<<2)>>2]|0;if((o|0)==0){break}Dh(p|0);p=j|0;Cc[c[(c[o>>2]|0)+32>>2]&15](o,l,h,p)|0;l=j+m|0;if((n|0)==(h|0)){q=l;o=e|0;o=c[o>>2]|0;Zk(b,o,p,q,l,f,g);i=k;return}q=j+(n-d)|0;o=e|0;o=c[o>>2]|0;Zk(b,o,p,q,l,f,g);i=k;return}}while(0);q=ec(4)|0;eq(q);Ab(q|0,26088,180)}function gl(a){a=a|0;Gq(a);return}function hl(a){a=a|0;return}function il(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 j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;l=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[l>>2];l=k|0;m=k+16|0;n=k+24|0;j=k+32|0;if((c[f+4>>2]&1|0)==0){o=c[(c[d>>2]|0)+24>>2]|0;c[m>>2]=c[e>>2];Bc[o&31](b,d,m,f,g,h&1);i=k;return}Ei(n,f);m=c[n>>2]|0;if(!((c[278006]|0)==-1)){c[l>>2]=1112024;c[l+4>>2]=14;c[l+8>>2]=0;Wh(1112024,l)}d=(c[278007]|0)-1|0;l=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-l>>2>>>0>d>>>0){d=c[l+(d<<2)>>2]|0;if((d|0)==0){break}l=d;Dh(m|0);m=c[d>>2]|0;if(h){qc[c[m+24>>2]&127](j,l)}else{qc[c[m+28>>2]&127](j,l)}m=j;f=a[m]|0;if((f&1)==0){l=j+4|0;d=l;h=j+8|0}else{h=j+8|0;d=c[h>>2]|0;l=j+4|0}e=e|0;while(1){if((f&1)==0){f=(f&255)>>>1;g=l}else{f=c[l>>2]|0;g=c[h>>2]|0}if((d|0)==(g+(f<<2)|0)){break}n=c[d>>2]|0;f=c[e>>2]|0;do{if((f|0)!=0){g=f+24|0;o=c[g>>2]|0;if((o|0)==(c[f+28>>2]|0)){n=rc[c[(c[f>>2]|0)+52>>2]&31](f,n)|0}else{c[g>>2]=o+4;c[o>>2]=n}if(!((n|0)==-1)){break}c[e>>2]=0}}while(0);d=d+4|0;f=a[m]|0}c[b>>2]=c[e>>2];vi(j);i=k;return}}while(0);o=ec(4)|0;eq(o);Ab(o|0,26088,180)}function jl(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+136|0;s=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[s>>2];s=l|0;o=l+8|0;n=l+24|0;m=l+112|0;k=l+120|0;d=l+128|0;q=s|0;a[q]=a[20328]|0;a[q+1|0]=a[20329]|0;a[q+2|0]=a[20330]|0;a[q+3|0]=a[20331]|0;a[q+4|0]=a[20332]|0;a[q+5|0]=a[20333]|0;t=s+1|0;p=f+4|0;r=c[p>>2]|0;if((r&2048|0)!=0){a[t]=43;t=s+2|0}if((r&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;s=t+1|0;t=r&74;do{if((t|0)==64){a[s]=111}else if((t|0)==8){if((r&16384|0)==0){a[s]=120;break}else{a[s]=88;break}}else{a[s]=100}}while(0);r=o|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);q=Xk(r,12,c[277746]|0,q,(t=i,i=i+8|0,c[t>>2]=h,t)|0)|0;i=t;h=o+q|0;p=c[p>>2]&176;do{if((p|0)==32){o=h}else if((p|0)==16){p=a[r]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){o=o+1|0;break}if(!((q|0)>1&p<<24>>24==48)){j=22;break}t=a[o+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){j=22;break}o=o+2|0}else{j=22}}while(0);if((j|0)==22){o=r}t=n|0;Ei(d,f);kl(r,o,h,t,m,k,d);Dh(c[d>>2]|0);ll(b,c[e>>2]|0,t,c[m>>2]|0,c[k>>2]|0,f,g);i=l;return}function kl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,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;l=i;i=i+48|0;m=l|0;o=l+16|0;k=l+32|0;n=j|0;j=c[n>>2]|0;if(!((c[278102]|0)==-1)){c[o>>2]=1112408;c[o+4>>2]=14;c[o+8>>2]=0;Wh(1112408,o)}p=(c[278103]|0)-1|0;o=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-o>>2>>>0>p>>>0)){w=ec(4)|0;v=w;eq(v);Ab(w|0,26088,180)}o=c[o+(p<<2)>>2]|0;if((o|0)==0){w=ec(4)|0;v=w;eq(v);Ab(w|0,26088,180)}j=o;n=c[n>>2]|0;if(!((c[278006]|0)==-1)){c[m>>2]=1112024;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112024,m)}p=(c[278007]|0)-1|0;m=c[n+8>>2]|0;if(!((c[n+12>>2]|0)-m>>2>>>0>p>>>0)){w=ec(4)|0;v=w;eq(v);Ab(w|0,26088,180)}q=c[m+(p<<2)>>2]|0;if((q|0)==0){w=ec(4)|0;v=w;eq(v);Ab(w|0,26088,180)}p=q;qc[c[(c[q>>2]|0)+20>>2]&127](k,p);m=k;n=a[m]|0;if((n&1)==0){n=(n&255)>>>1}else{n=c[k+4>>2]|0}do{if((n|0)==0){Cc[c[(c[o>>2]|0)+48>>2]&15](j,b,e,f)|0;v=f+(e-b<<2)|0;c[h>>2]=v}else{c[h>>2]=f;n=a[b]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){w=rc[c[(c[o>>2]|0)+44>>2]&31](j,n)|0;n=c[h>>2]|0;c[h>>2]=n+4;c[n>>2]=w;n=b+1|0}else{n=b}do{if((e-n|0)>1){if((a[n]|0)!=48){break}r=n+1|0;w=a[r]|0;if(!((w<<24>>24|0)==120|(w<<24>>24|0)==88)){break}v=o;u=rc[c[(c[v>>2]|0)+44>>2]&31](j,48)|0;w=c[h>>2]|0;c[h>>2]=w+4;c[w>>2]=u;v=rc[c[(c[v>>2]|0)+44>>2]&31](j,a[r]|0)|0;w=c[h>>2]|0;c[h>>2]=w+4;c[w>>2]=v;n=n+2|0}}while(0);do{if((n|0)!=(e|0)){s=e-1|0;if(s>>>0>n>>>0){r=n}else{break}do{w=a[r]|0;a[r]=a[s]|0;a[s]=w;r=r+1|0;s=s-1|0;}while(r>>>0<s>>>0)}}while(0);p=uc[c[(c[q>>2]|0)+16>>2]&127](p)|0;if(n>>>0<e>>>0){q=k+1|0;r=k+4|0;s=k+8|0;v=0;u=0;t=n;while(1){w=a[((a[m]&1)==0?q:c[s>>2]|0)+u|0]|0;if(w<<24>>24!=0&(v|0)==(w<<24>>24|0)){v=c[h>>2]|0;c[h>>2]=v+4;c[v>>2]=p;v=a[m]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[r>>2]|0}u=(u>>>0<(v-1|0)>>>0)+u|0;w=0}else{w=v}y=rc[c[(c[o>>2]|0)+44>>2]&31](j,a[t]|0)|0;x=c[h>>2]|0;v=x+4|0;c[h>>2]=v;c[x>>2]=y;t=t+1|0;if(t>>>0<e>>>0){v=w+1|0}else{break}}}else{v=c[h>>2]|0}h=f+(n-b<<2)|0;if((h|0)==(v|0)){break}j=v-4|0;if(!(j>>>0>h>>>0)){break}do{y=c[h>>2]|0;c[h>>2]=c[j>>2];c[j>>2]=y;h=h+4|0;j=j-4|0;}while(h>>>0<j>>>0)}}while(0);if((d|0)==(e|0)){y=v;c[g>>2]=y;di(k);i=l;return}y=f+(d-b<<2)|0;c[g>>2]=y;di(k);i=l;return}function ll(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+16|0;l=k|0;if((d|0)==0){c[b>>2]=0;i=k;return}m=e;n=g-m>>2;h=h+12|0;o=c[h>>2]|0;o=(o|0)>(n|0)?o-n|0:0;n=f;p=n-m|0;m=p>>2;do{if((p|0)>0){if((vc[c[(c[d>>2]|0)+48>>2]&63](d,e,m)|0)==(m|0)){break}c[b>>2]=0;i=k;return}}while(0);do{if((o|0)>0){ui(l,o,j);if((a[l]&1)==0){e=l+4|0}else{e=c[l+8>>2]|0}if((vc[c[(c[d>>2]|0)+48>>2]&63](d,e,o)|0)==(o|0)){vi(l);break}c[b>>2]=0;vi(l);i=k;return}}while(0);p=g-n|0;l=p>>2;do{if((p|0)>0){if((vc[c[(c[d>>2]|0)+48>>2]&63](d,f,l)|0)==(l|0)){break}c[b>>2]=0;i=k;return}}while(0);c[h>>2]=0;c[b>>2]=d;i=k;return}function ml(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+224|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=m|0;p=m+8|0;n=m+32|0;o=m+200|0;l=m+208|0;d=m+216|0;c[r>>2]=37;c[r+4>>2]=0;t=r+1|0;q=f+4|0;s=c[q>>2]|0;if((s&2048|0)!=0){a[t]=43;t=r+2|0}if((s&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;a[t+1|0]=108;u=t+2|0;t=s&74;do{if((t|0)==8){if((s&16384|0)==0){a[u]=120;break}else{a[u]=88;break}}else if((t|0)==64){a[u]=111}else{a[u]=100}}while(0);s=p|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);j=Xk(s,22,c[277746]|0,r,(u=i,i=i+16|0,c[u>>2]=h,c[u+8>>2]=j,u)|0)|0;i=u;h=p+j|0;q=c[q>>2]&176;do{if((q|0)==16){q=a[s]|0;if((q<<24>>24|0)==45|(q<<24>>24|0)==43){p=p+1|0;break}if(!((j|0)>1&q<<24>>24==48)){k=22;break}u=a[p+1|0]|0;if(!((u<<24>>24|0)==120|(u<<24>>24|0)==88)){k=22;break}p=p+2|0}else if((q|0)==32){p=h}else{k=22}}while(0);if((k|0)==22){p=s}u=n|0;Ei(d,f);kl(s,p,h,u,o,l,d);Dh(c[d>>2]|0);ll(b,c[e>>2]|0,u,c[o>>2]|0,c[l>>2]|0,f,g);i=m;return}function nl(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+136|0;s=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[s>>2];s=l|0;o=l+8|0;n=l+24|0;m=l+112|0;k=l+120|0;d=l+128|0;q=s|0;a[q]=a[20328]|0;a[q+1|0]=a[20329]|0;a[q+2|0]=a[20330]|0;a[q+3|0]=a[20331]|0;a[q+4|0]=a[20332]|0;a[q+5|0]=a[20333]|0;t=s+1|0;p=f+4|0;r=c[p>>2]|0;if((r&2048|0)!=0){a[t]=43;t=s+2|0}if((r&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;s=t+1|0;t=r&74;do{if((t|0)==64){a[s]=111}else if((t|0)==8){if((r&16384|0)==0){a[s]=120;break}else{a[s]=88;break}}else{a[s]=117}}while(0);r=o|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);q=Xk(r,12,c[277746]|0,q,(t=i,i=i+8|0,c[t>>2]=h,t)|0)|0;i=t;h=o+q|0;p=c[p>>2]&176;do{if((p|0)==32){o=h}else if((p|0)==16){p=a[r]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){o=o+1|0;break}if(!((q|0)>1&p<<24>>24==48)){j=22;break}t=a[o+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){j=22;break}o=o+2|0}else{j=22}}while(0);if((j|0)==22){o=r}t=n|0;Ei(d,f);kl(r,o,h,t,m,k,d);Dh(c[d>>2]|0);ll(b,c[e>>2]|0,t,c[m>>2]|0,c[k>>2]|0,f,g);i=l;return}function ol(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+232|0;r=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[r>>2];r=m|0;p=m+8|0;n=m+32|0;o=m+208|0;l=m+216|0;d=m+224|0;c[r>>2]=37;c[r+4>>2]=0;t=r+1|0;q=f+4|0;s=c[q>>2]|0;if((s&2048|0)!=0){a[t]=43;t=r+2|0}if((s&512|0)!=0){a[t]=35;t=t+1|0}a[t]=108;a[t+1|0]=108;u=t+2|0;t=s&74;do{if((t|0)==8){if((s&16384|0)==0){a[u]=120;break}else{a[u]=88;break}}else if((t|0)==64){a[u]=111}else{a[u]=117}}while(0);s=p|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);j=Xk(s,23,c[277746]|0,r,(u=i,i=i+16|0,c[u>>2]=h,c[u+8>>2]=j,u)|0)|0;i=u;h=p+j|0;q=c[q>>2]&176;do{if((q|0)==16){q=a[s]|0;if((q<<24>>24|0)==45|(q<<24>>24|0)==43){p=p+1|0;break}if(!((j|0)>1&q<<24>>24==48)){k=22;break}u=a[p+1|0]|0;if(!((u<<24>>24|0)==120|(u<<24>>24|0)==88)){k=22;break}p=p+2|0}else if((q|0)==32){p=h}else{k=22}}while(0);if((k|0)==22){p=s}u=n|0;Ei(d,f);kl(s,p,h,u,o,l,d);Dh(c[d>>2]|0);ll(b,c[e>>2]|0,u,c[o>>2]|0,c[l>>2]|0,f,g);i=m;return}function pl(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,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;n=i;i=i+312|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;s=n+8|0;o=n+40|0;q=n+48|0;k=n+280|0;l=n+288|0;d=n+296|0;m=n+304|0;c[t>>2]=37;c[t+4>>2]=0;w=t+1|0;r=f+4|0;u=c[r>>2]|0;if((u&2048|0)!=0){a[w]=43;w=t+2|0}if((u&1024|0)!=0){a[w]=35;w=w+1|0}v=u&260;u=u>>>14;do{if((v|0)==260){if((u&1|0)==0){a[w]=97;u=0;break}else{a[w]=65;u=0;break}}else{a[w]=46;x=w+2|0;a[w+1|0]=42;if((v|0)==4){if((u&1|0)==0){a[x]=102;u=1;break}else{a[x]=70;u=1;break}}else if((v|0)==256){if((u&1|0)==0){a[x]=101;u=1;break}else{a[x]=69;u=1;break}}else{if((u&1|0)==0){a[x]=103;u=1;break}else{a[x]=71;u=1;break}}}}while(0);s=s|0;c[o>>2]=s;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);v=c[277746]|0;if(u){w=Xk(s,30,v,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}else{w=Xk(s,30,v,t,(x=i,i=i+8|0,h[x>>3]=j,x)|0)|0;i=x}do{if((w|0)>29){v=(a[1113064]|0)==0;if(u){do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}else{do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(x=i,i=i+16|0,c[x>>2]=c[f+8>>2],h[x+8>>3]=j,x)|0)|0;i=x}u=c[o>>2]|0;if((u|0)!=0){t=u;v=u;break}Lq();v=c[o>>2]|0;t=v}else{t=0;v=c[o>>2]|0}}while(0);u=v+w|0;r=c[r>>2]&176;do{if((r|0)==32){r=u}else if((r|0)==16){r=a[v]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){r=v+1|0;break}if(!((w|0)>1&r<<24>>24==48)){p=53;break}x=a[v+1|0]|0;if(!((x<<24>>24|0)==120|(x<<24>>24|0)==88)){p=53;break}r=v+2|0}else{p=53}}while(0);if((p|0)==53){r=v}do{if((v|0)==(s|0)){p=q|0;q=0}else{x=zq(w<<3)|0;q=x;if((x|0)!=0){p=q;s=v;break}Lq();p=q;s=c[o>>2]|0}}while(0);Ei(d,f);ql(s,r,u,p,k,l,d);Dh(c[d>>2]|0);w=e|0;ll(m,c[w>>2]|0,p,c[k>>2]|0,c[l>>2]|0,f,g);x=c[m>>2]|0;c[w>>2]=x;c[b>>2]=x;if((q|0)!=0){Aq(q)}if((t|0)==0){i=n;return}Aq(t);i=n;return}function ql(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+48|0;n=k|0;m=k+16|0;l=k+32|0;o=j|0;j=c[o>>2]|0;if(!((c[278102]|0)==-1)){c[m>>2]=1112408;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1112408,m)}m=(c[278103]|0)-1|0;p=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-p>>2>>>0>m>>>0)){B=ec(4)|0;A=B;eq(A);Ab(B|0,26088,180)}m=c[p+(m<<2)>>2]|0;if((m|0)==0){B=ec(4)|0;A=B;eq(A);Ab(B|0,26088,180)}j=m;o=c[o>>2]|0;if(!((c[278006]|0)==-1)){c[n>>2]=1112024;c[n+4>>2]=14;c[n+8>>2]=0;Wh(1112024,n)}n=(c[278007]|0)-1|0;p=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-p>>2>>>0>n>>>0)){B=ec(4)|0;A=B;eq(A);Ab(B|0,26088,180)}p=c[p+(n<<2)>>2]|0;if((p|0)==0){B=ec(4)|0;A=B;eq(A);Ab(B|0,26088,180)}o=p;qc[c[(c[p>>2]|0)+20>>2]&127](l,o);c[h>>2]=f;n=a[b]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){B=rc[c[(c[m>>2]|0)+44>>2]&31](j,n)|0;r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=B;r=b+1|0}else{r=b}n=e;a:do{if((n-r|0)>1){if((a[r]|0)!=48){q=r;s=34;break}q=r+1|0;B=a[q]|0;if(!((B<<24>>24|0)==120|(B<<24>>24|0)==88)){q=r;s=34;break}B=m;z=rc[c[(c[B>>2]|0)+44>>2]&31](j,48)|0;A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=z;r=r+2|0;B=rc[c[(c[B>>2]|0)+44>>2]&31](j,a[q]|0)|0;q=c[h>>2]|0;c[h>>2]=q+4;c[q>>2]=B;q=r;while(1){if(!(q>>>0<e>>>0)){break a}t=a[q]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((Oa(t<<24>>24|0,c[277746]|0)|0)==0){break}else{q=q+1|0}}}else{q=r;s=34}}while(0);b:do{if((s|0)==34){while(1){if(!(q>>>0<e>>>0)){break b}s=a[q]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((eb(s<<24>>24|0,c[277746]|0)|0)==0){break}else{q=q+1|0;s=34}}}}while(0);s=l;t=a[s]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[l+4>>2]|0}do{if((t|0)==0){Cc[c[(c[m>>2]|0)+48>>2]&15](j,r,q,c[h>>2]|0)|0;A=(c[h>>2]|0)+(q-r<<2)|0;c[h>>2]=A}else{do{if((r|0)!=(q|0)){u=q-1|0;if(u>>>0>r>>>0){t=r}else{break}do{B=a[t]|0;a[t]=a[u]|0;a[u]=B;t=t+1|0;u=u-1|0;}while(t>>>0<u>>>0)}}while(0);v=uc[c[(c[p>>2]|0)+16>>2]&127](o)|0;if(r>>>0<q>>>0){u=l+1|0;x=l+4|0;t=l+8|0;w=m;A=0;z=0;y=r;while(1){B=a[((a[s]&1)==0?u:c[t>>2]|0)+z|0]|0;if(B<<24>>24>0&(A|0)==(B<<24>>24|0)){A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=v;A=a[s]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[x>>2]|0}z=(z>>>0<(A-1|0)>>>0)+z|0;B=0}else{B=A}D=rc[c[(c[w>>2]|0)+44>>2]&31](j,a[y]|0)|0;C=c[h>>2]|0;A=C+4|0;c[h>>2]=A;c[C>>2]=D;y=y+1|0;if(y>>>0<q>>>0){A=B+1|0}else{break}}}else{A=c[h>>2]|0}r=f+(r-b<<2)|0;if((r|0)==(A|0)){break}s=A-4|0;if(!(s>>>0>r>>>0)){break}do{D=c[r>>2]|0;c[r>>2]=c[s>>2];c[s>>2]=D;r=r+4|0;s=s-4|0;}while(r>>>0<s>>>0)}}while(0);c:do{if(q>>>0<e>>>0){r=m;while(1){s=a[q]|0;if(s<<24>>24==46){break}C=rc[c[(c[r>>2]|0)+44>>2]&31](j,s)|0;D=c[h>>2]|0;A=D+4|0;c[h>>2]=A;c[D>>2]=C;q=q+1|0;if(!(q>>>0<e>>>0)){break c}}C=uc[c[(c[p>>2]|0)+12>>2]&127](o)|0;D=c[h>>2]|0;A=D+4|0;c[h>>2]=A;c[D>>2]=C;q=q+1|0}}while(0);Cc[c[(c[m>>2]|0)+48>>2]&15](j,q,e,A)|0;j=(c[h>>2]|0)+(n-q<<2)|0;c[h>>2]=j;if((d|0)==(e|0)){D=j;c[g>>2]=D;di(l);i=k;return}D=f+(d-b<<2)|0;c[g>>2]=D;di(l);i=k;return}function rl(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=i;i=i+312|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;s=n+8|0;o=n+40|0;q=n+48|0;k=n+280|0;l=n+288|0;d=n+296|0;m=n+304|0;c[t>>2]=37;c[t+4>>2]=0;w=t+1|0;r=f+4|0;v=c[r>>2]|0;if((v&2048|0)!=0){a[w]=43;w=t+2|0}if((v&1024|0)!=0){a[w]=35;w=w+1|0}u=v&260;v=v>>>14;do{if((u|0)==260){a[w]=76;u=w+1|0;if((v&1|0)==0){a[u]=97;u=0;break}else{a[u]=65;u=0;break}}else{a[w]=46;a[w+1|0]=42;a[w+2|0]=76;w=w+3|0;if((u|0)==4){if((v&1|0)==0){a[w]=102;u=1;break}else{a[w]=70;u=1;break}}else if((u|0)==256){if((v&1|0)==0){a[w]=101;u=1;break}else{a[w]=69;u=1;break}}else{if((v&1|0)==0){a[w]=103;u=1;break}else{a[w]=71;u=1;break}}}}while(0);s=s|0;c[o>>2]=s;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);v=c[277746]|0;if(u){w=Xk(s,30,v,t,(v=i,i=i+16|0,c[v>>2]=c[f+8>>2],h[v+8>>3]=j,v)|0)|0;i=v}else{w=Xk(s,30,v,t,(v=i,i=i+8|0,h[v>>3]=j,v)|0)|0;i=v}do{if((w|0)>29){v=(a[1113064]|0)==0;if(u){do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(v=i,i=i+16|0,c[v>>2]=c[f+8>>2],h[v+8>>3]=j,v)|0)|0;i=v}else{do{if(v){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);w=cl(o,c[277746]|0,t,(v=i,i=i+8|0,h[v>>3]=j,v)|0)|0;i=v}u=c[o>>2]|0;if((u|0)!=0){t=u;v=u;break}Lq();v=c[o>>2]|0;t=v}else{t=0;v=c[o>>2]|0}}while(0);u=v+w|0;r=c[r>>2]&176;do{if((r|0)==32){r=u}else if((r|0)==16){r=a[v]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){r=v+1|0;break}if(!((w|0)>1&r<<24>>24==48)){p=53;break}r=a[v+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){p=53;break}r=v+2|0}else{p=53}}while(0);if((p|0)==53){r=v}do{if((v|0)==(s|0)){p=q|0;q=0}else{w=zq(w<<3)|0;q=w;if((w|0)!=0){p=q;s=v;break}Lq();p=q;s=c[o>>2]|0}}while(0);Ei(d,f);ql(s,r,u,p,k,l,d);Dh(c[d>>2]|0);v=e|0;ll(m,c[v>>2]|0,p,c[k>>2]|0,c[l>>2]|0,f,g);w=c[m>>2]|0;c[v>>2]=w;c[b>>2]=w;if((q|0)!=0){Aq(q)}if((t|0)==0){i=n;return}Aq(t);i=n;return}function sl(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+208|0;o=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[o>>2];o=k|0;d=k+24|0;j=k+48|0;q=k+200|0;m=k+16|0;a[m]=a[20336]|0;a[m+1|0]=a[20337]|0;a[m+2|0]=a[20338]|0;a[m+3|0]=a[20339]|0;a[m+4|0]=a[20340]|0;a[m+5|0]=a[20341]|0;l=d|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);m=Xk(l,20,c[277746]|0,m,(n=i,i=i+8|0,c[n>>2]=h,n)|0)|0;i=n;h=d+m|0;n=c[f+4>>2]&176;do{if((n|0)==32){n=h}else if((n|0)==16){n=a[l]|0;if((n<<24>>24|0)==45|(n<<24>>24|0)==43){n=d+1|0;break}if(!((m|0)>1&n<<24>>24==48)){p=12;break}n=a[d+1|0]|0;if(!((n<<24>>24|0)==120|(n<<24>>24|0)==88)){p=12;break}n=d+2|0}else{p=12}}while(0);if((p|0)==12){n=l}Ei(q,f);p=c[q>>2]|0;if(!((c[278102]|0)==-1)){c[o>>2]=1112408;c[o+4>>2]=14;c[o+8>>2]=0;Wh(1112408,o)}o=(c[278103]|0)-1|0;q=c[p+8>>2]|0;do{if((c[p+12>>2]|0)-q>>2>>>0>o>>>0){o=c[q+(o<<2)>>2]|0;if((o|0)==0){break}Dh(p|0);p=j|0;Cc[c[(c[o>>2]|0)+48>>2]&15](o,l,h,p)|0;l=j+(m<<2)|0;if((n|0)==(h|0)){q=l;o=e|0;o=c[o>>2]|0;ll(b,o,p,q,l,f,g);i=k;return}q=j+(n-d<<2)|0;o=e|0;o=c[o>>2]|0;ll(b,o,p,q,l,f,g);i=k;return}}while(0);q=ec(4)|0;eq(q);Ab(q|0,26088,180)}function tl(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,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;o=i;i=i+48|0;s=o|0;t=o+16|0;r=o+24|0;p=o+32|0;q=o+40|0;Ei(t,h);t=c[t>>2]|0;if(!((c[278104]|0)==-1)){c[s>>2]=1112416;c[s+4>>2]=14;c[s+8>>2]=0;Wh(1112416,s)}s=(c[278105]|0)-1|0;u=c[t+8>>2]|0;do{if((c[t+12>>2]|0)-u>>2>>>0>s>>>0){v=c[u+(s<<2)>>2]|0;if((v|0)==0){break}s=v;Dh(t|0);c[j>>2]=0;a:do{if((l|0)!=(m|0)){u=v;t=v;z=v+8|0;y=e;x=p|0;v=q|0;w=r|0;A=0;b:while(1){while(1){if((A|0)!=0){break a}do{if((f|0)==0){f=0}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){break}F=(uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1;f=F?0:f}}while(0);A=(f|0)==0;do{if((g|0)==0){n=18}else{if((c[g+12>>2]|0)==(c[g+16>>2]|0)){if((uc[c[(c[g>>2]|0)+36>>2]&127](g)|0)==-1){n=18;break}}if(!A){n=19;break b}}}while(0);if((n|0)==18){n=0;if(A){g=0;n=19;break b}else{g=0}}if((vc[c[(c[u>>2]|0)+36>>2]&63](s,a[l]|0,0)|0)<<24>>24==37){n=22;break}B=a[l]|0;if(!(B<<24>>24<0)){A=c[z>>2]|0;if(!((b[A+(B<<24>>24<<1)>>1]&8192)==0)){n=33;break}}B=f+12|0;C=c[B>>2]|0;A=f+16|0;if((C|0)==(c[A>>2]|0)){C=(uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)&255}else{C=a[C]|0}F=rc[c[(c[t>>2]|0)+12>>2]&31](s,C)|0;if(F<<24>>24==(rc[c[(c[t>>2]|0)+12>>2]&31](s,a[l]|0)|0)<<24>>24){n=58;break}c[j>>2]=4;A=4}c:do{if((n|0)==22){n=0;B=l+1|0;if((B|0)==(m|0)){n=23;break b}A=vc[c[(c[u>>2]|0)+36>>2]&63](s,a[B]|0,0)|0;if((A<<24>>24|0)==69|(A<<24>>24|0)==48){B=l+2|0;if((B|0)==(m|0)){n=26;break b}l=A;A=vc[c[(c[u>>2]|0)+36>>2]&63](s,a[B]|0,0)|0}else{l=0}F=c[(c[y>>2]|0)+36>>2]|0;c[x>>2]=f;c[v>>2]=g;Ac[F&7](r,e,p,q,h,j,k,A,l);l=B+1|0;f=c[w>>2]|0}else if((n|0)==33){while(1){n=0;l=l+1|0;if((l|0)==(m|0)){l=m;break}B=a[l]|0;if(B<<24>>24<0){break}if((b[A+(B<<24>>24<<1)>>1]&8192)==0){break}else{n=33}}A=f;B=g;C=g;while(1){do{if((A|0)==0){A=0}else{if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){break}D=(uc[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1;A=D?0:A;f=D?0:f}}while(0);D=(A|0)==0;do{if((B|0)==0){n=44}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){if(D){break}else{break c}}if((uc[c[(c[B>>2]|0)+36>>2]&127](B)|0)==-1){C=0;g=0;n=44;break}if(D^(C|0)==0){B=C}else{break c}}}while(0);if((n|0)==44){n=0;if(D){break c}else{B=0}}E=A+12|0;F=c[E>>2]|0;D=A+16|0;if((F|0)==(c[D>>2]|0)){F=(uc[c[(c[A>>2]|0)+36>>2]&127](A)|0)&255}else{F=a[F]|0}if(F<<24>>24<0){break c}if((b[(c[z>>2]|0)+(F<<24>>24<<1)>>1]&8192)==0){break c}F=c[E>>2]|0;if((F|0)==(c[D>>2]|0)){uc[c[(c[A>>2]|0)+40>>2]&127](A)|0;continue}else{c[E>>2]=F+1;continue}}}else if((n|0)==58){n=0;C=c[B>>2]|0;if((C|0)==(c[A>>2]|0)){uc[c[(c[f>>2]|0)+40>>2]&127](f)|0}else{c[B>>2]=C+1}l=l+1|0}}while(0);if((l|0)==(m|0)){break a}A=c[j>>2]|0}if((n|0)==19){c[j>>2]=4;break}else if((n|0)==23){c[j>>2]=4;break}else if((n|0)==26){c[j>>2]=4;break}}}while(0);do{if((f|0)==0){f=0}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){break}F=(uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1;f=F?0:f}}while(0);k=(f|0)==0;do{if((g|0)==0){n=70}else{if((c[g+12>>2]|0)==(c[g+16>>2]|0)){if((uc[c[(c[g>>2]|0)+36>>2]&127](g)|0)==-1){n=70;break}}if(!k){break}F=d|0;c[F>>2]=f;i=o;return}}while(0);do{if((n|0)==70){if(k){break}F=d|0;c[F>>2]=f;i=o;return}}while(0);c[j>>2]=c[j>>2]|2;F=d|0;c[F>>2]=f;i=o;return}}while(0);F=ec(4)|0;eq(F);Ab(F|0,26088,180)}function ul(a){a=a|0;Gq(a);return}function vl(a){a=a|0;return}function wl(a){a=a|0;return 2}function xl(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 j=0,k=0,l=0;j=i;l=d;k=i;i=i+4|0;i=i+7&-8;c[k>>2]=c[l>>2];l=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[l>>2];tl(a,b,c[k>>2]|0,c[d>>2]|0,f,g,h,20320,20328);i=j;return}function yl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0;k=i;l=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[l>>2];l=d+8|0;l=uc[c[(c[l>>2]|0)+20>>2]&127](l)|0;m=a[l]|0;if((m&1)==0){m=(m&255)>>>1;l=l+1|0}else{m=c[l+4>>2]|0;l=c[l+8>>2]|0}tl(b,d,c[e>>2]|0,c[f>>2]|0,g,h,j,l,l+m|0);i=k;return}function zl(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 j=0,k=0,l=0;j=i;i=i+24|0;k=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;Ei(l,f);f=c[l>>2]|0;if(!((c[278104]|0)==-1)){c[k>>2]=1112416;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112416,k)}k=(c[278105]|0)-1|0;l=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-l>>2>>>0>k>>>0){k=c[l+(k<<2)>>2]|0;if((k|0)==0){break}Dh(f|0);l=c[e>>2]|0;b=b+8|0;b=uc[c[c[b>>2]>>2]&127](b)|0;b=(Vj(d,l,b,b+168|0,k,g,0)|0)-b|0;if((b|0)>=168){k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}c[h+24>>2]=((b|0)/12|0|0)%7|0;k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}function Al(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 j=0,k=0,l=0;j=i;i=i+24|0;k=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;Ei(l,f);f=c[l>>2]|0;if(!((c[278104]|0)==-1)){c[k>>2]=1112416;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112416,k)}k=(c[278105]|0)-1|0;l=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-l>>2>>>0>k>>>0){k=c[l+(k<<2)>>2]|0;if((k|0)==0){break}Dh(f|0);l=c[e>>2]|0;b=b+8|0;b=uc[c[(c[b>>2]|0)+4>>2]&127](b)|0;b=(Vj(d,l,b,b+288|0,k,g,0)|0)-b|0;if((b|0)>=288){k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}c[h+16>>2]=((b|0)/12|0|0)%12|0;k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}function Bl(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 j=0,k=0;b=i;i=i+24|0;j=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[j>>2];j=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[j>>2];j=b|0;k=b+16|0;Ei(k,f);f=c[k>>2]|0;if(!((c[278104]|0)==-1)){c[j>>2]=1112416;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112416,j)}j=(c[278105]|0)-1|0;k=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-k>>2>>>0>j>>>0){j=c[k+(j<<2)>>2]|0;if((j|0)==0){break}Dh(f|0);e=Gl(d,c[e>>2]|0,g,j,4)|0;if((c[g>>2]&4|0)!=0){j=d|0;j=c[j>>2]|0;k=a|0;c[k>>2]=j;i=b;return}if((e|0)<69){g=e+2e3|0}else{g=(e-69|0)>>>0<31>>>0?e+1900|0:e}c[h+20>>2]=g-1900;j=d|0;j=c[j>>2]|0;k=a|0;c[k>>2]=j;i=b;return}}while(0);k=ec(4)|0;eq(k);Ab(k|0,26088,180)}function Cl(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;l=i;i=i+96|0;w=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[w>>2];w=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[w>>2];w=l|0;s=l+16|0;m=l+24|0;p=l+32|0;t=l+40|0;r=l+48|0;q=l+56|0;u=l+64|0;o=l+72|0;v=l+80|0;n=l+88|0;c[h>>2]=0;Ei(s,g);s=c[s>>2]|0;if(!((c[278104]|0)==-1)){c[w>>2]=1112416;c[w+4>>2]=14;c[w+8>>2]=0;Wh(1112416,w)}w=(c[278105]|0)-1|0;x=c[s+8>>2]|0;do{if((c[s+12>>2]|0)-x>>2>>>0>w>>>0){w=c[x+(w<<2)>>2]|0;if((w|0)==0){break}Dh(s|0);a:do{switch(k<<24>>24|0){case 84:{x=e|0;tl(u,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20272,20280);c[x>>2]=c[u>>2];break};case 119:{f=Gl(e,c[f>>2]|0,h,w,1)|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<7){c[j+24>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 120:{x=c[(c[d>>2]|0)+20>>2]|0;c[o>>2]=c[e>>2];c[v>>2]=c[f>>2];oc[x&127](b,d,o,v,g,h,j);i=l;return};case 110:case 116:{Dl(e,c[f>>2]|0,h,w);break};case 114:{x=e|0;tl(r,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20288,20299);c[x>>2]=c[r>>2];break};case 82:{x=e|0;tl(q,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20280,20285);c[x>>2]=c[q>>2];break};case 83:{f=Gl(e,c[f>>2]|0,h,w,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<61){c[j>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 77:{f=Gl(e,c[f>>2]|0,h,w,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<60){c[j+4>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 106:{f=Gl(e,c[f>>2]|0,h,w,3)|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<366){c[j+28>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 73:{j=j+8|0;d=Gl(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;do{if((f&4|0)==0){if(!((d-1|0)>>>0<12>>>0)){break}c[j>>2]=d;break a}}while(0);c[h>>2]=f|4;break};case 89:{f=Gl(e,c[f>>2]|0,h,w,4)|0;if((c[h>>2]&4|0)!=0){break a}c[j+20>>2]=f-1900;break};case 70:{x=e|0;tl(t,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20304,20312);c[x>>2]=c[t>>2];break};case 72:{f=Gl(e,c[f>>2]|0,h,w,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<24){c[j+8>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 100:case 101:{j=j+12|0;d=Gl(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;do{if((f&4|0)==0){if(!((d-1|0)>>>0<31>>>0)){break}c[j>>2]=d;break a}}while(0);c[h>>2]=f|4;break};case 97:case 65:{v=c[f>>2]|0;x=d+8|0;x=uc[c[c[x>>2]>>2]&127](x)|0;h=(Vj(e,v,x,x+168|0,w,h,0)|0)-x|0;if((h|0)>=168){break a}c[j+24>>2]=((h|0)/12|0|0)%7|0;break};case 99:{o=d+8|0;o=uc[c[(c[o>>2]|0)+12>>2]&127](o)|0;n=e|0;k=a[o]|0;if((k&1)==0){k=(k&255)>>>1;o=o+1|0}else{k=c[o+4>>2]|0;o=c[o+8>>2]|0}tl(m,d,c[n>>2]|0,c[f>>2]|0,g,h,j,o,o+k|0);c[n>>2]=c[m>>2];break};case 98:case 66:case 104:{v=c[f>>2]|0;x=d+8|0;x=uc[c[(c[x>>2]|0)+4>>2]&127](x)|0;h=(Vj(e,v,x,x+288|0,w,h,0)|0)-x|0;if((h|0)>=288){break a}c[j+16>>2]=((h|0)/12|0|0)%12|0;break};case 68:{x=e|0;tl(p,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20312,20320);c[x>>2]=c[p>>2];break};case 88:{o=d+8|0;o=uc[c[(c[o>>2]|0)+24>>2]&127](o)|0;m=e|0;k=a[o]|0;if((k&1)==0){k=(k&255)>>>1;o=o+1|0}else{k=c[o+4>>2]|0;o=c[o+8>>2]|0}tl(n,d,c[m>>2]|0,c[f>>2]|0,g,h,j,o,o+k|0);c[m>>2]=c[n>>2];break};case 109:{f=(Gl(e,c[f>>2]|0,h,w,2)|0)-1|0;d=c[h>>2]|0;if((d&4|0)==0&(f|0)<12){c[j+16>>2]=f;break a}else{c[h>>2]=d|4;break a}};case 121:{f=Gl(e,c[f>>2]|0,h,w,4)|0;if((c[h>>2]&4|0)!=0){break a}if((f|0)<69){h=f+2e3|0}else{h=(f-69|0)>>>0<31>>>0?f+1900|0:f}c[j+20>>2]=h-1900;break};case 112:{El(d,j+8|0,e,c[f>>2]|0,h,w);break};case 37:{Fl(e,c[f>>2]|0,h,w);break};default:{c[h>>2]=c[h>>2]|4}}}while(0);c[b>>2]=c[e>>2];i=l;return}}while(0);x=ec(4)|0;eq(x);Ab(x|0,26088,180)}function Dl(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;d=d|0;g=g+8|0;a:while(1){i=c[d>>2]|0;do{if((i|0)==0){i=0}else{if((c[i+12>>2]|0)!=(c[i+16>>2]|0)){break}if((uc[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1){c[d>>2]=0;i=0;break}else{i=c[d>>2]|0;break}}}while(0);i=(i|0)==0;do{if((e|0)==0){h=11}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(i){break}else{break a}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){h=11;break}if(!i){break a}}}while(0);if((h|0)==11){h=0;if(i){e=0;break}else{e=0}}i=c[d>>2]|0;j=c[i+12>>2]|0;if((j|0)==(c[i+16>>2]|0)){i=(uc[c[(c[i>>2]|0)+36>>2]&127](i)|0)&255}else{i=a[j]|0}if(i<<24>>24<0){break}if((b[(c[g>>2]|0)+(i<<24>>24<<1)>>1]&8192)==0){break}j=c[d>>2]|0;k=j+12|0;i=c[k>>2]|0;if((i|0)==(c[j+16>>2]|0)){uc[c[(c[j>>2]|0)+40>>2]&127](j)|0;continue}else{c[k>>2]=i+1;continue}}g=c[d>>2]|0;do{if((g|0)==0){g=0}else{if((c[g+12>>2]|0)!=(c[g+16>>2]|0)){break}if((uc[c[(c[g>>2]|0)+36>>2]&127](g)|0)==-1){c[d>>2]=0;g=0;break}else{g=c[d>>2]|0;break}}}while(0);d=(g|0)==0;do{if((e|0)==0){h=30}else{if((c[e+12>>2]|0)==(c[e+16>>2]|0)){if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){h=30;break}}if(!d){break}return}}while(0);do{if((h|0)==30){if(d){break}return}}while(0);c[f>>2]=c[f>>2]|2;return}function El(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;b=b+8|0;b=uc[c[(c[b>>2]|0)+8>>2]&127](b)|0;i=a[b]|0;if((i&1)==0){i=(i&255)>>>1}else{i=c[b+4>>2]|0}j=a[b+12|0]|0;if((j&1)==0){j=(j&255)>>>1}else{j=c[b+16>>2]|0}if((i|0)==(-j|0)){c[g>>2]=c[g>>2]|4;return}j=Vj(e,f,b,b+24|0,h,g,0)|0;h=j-b|0;do{if((j|0)==(b|0)){if((c[d>>2]|0)!=12){break}c[d>>2]=0;return}}while(0);if((h|0)!=12){return}h=c[d>>2]|0;if((h|0)>=12){return}c[d>>2]=h+12;return}function Fl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;b=b|0;h=c[b>>2]|0;do{if((h|0)==0){h=0}else{if((c[h+12>>2]|0)!=(c[h+16>>2]|0)){break}if((uc[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[b>>2]=0;h=0;break}else{h=c[b>>2]|0;break}}}while(0);h=(h|0)==0;do{if((d|0)==0){g=10}else{if((c[d+12>>2]|0)==(c[d+16>>2]|0)){if((uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1){g=10;break}}if(!h){g=11}}}while(0);if((g|0)==10){if(h){g=11}else{d=0}}if((g|0)==11){c[e>>2]=c[e>>2]|6;return}h=c[b>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0)){h=(uc[c[(c[h>>2]|0)+36>>2]&127](h)|0)&255}else{h=a[i]|0}if(!((vc[c[(c[f>>2]|0)+36>>2]&63](f,h,0)|0)<<24>>24==37)){c[e>>2]=c[e>>2]|4;return}h=c[b>>2]|0;i=h+12|0;f=c[i>>2]|0;if((f|0)==(c[h+16>>2]|0)){uc[c[(c[h>>2]|0)+40>>2]&127](h)|0}else{c[i>>2]=f+1}f=c[b>>2]|0;do{if((f|0)==0){f=0}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){break}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){c[b>>2]=0;f=0;break}else{f=c[b>>2]|0;break}}}while(0);b=(f|0)==0;do{if((d|0)==0){g=29}else{if((c[d+12>>2]|0)==(c[d+16>>2]|0)){if((uc[c[(c[d>>2]|0)+36>>2]&127](d)|0)==-1){g=29;break}}if(!b){break}return}}while(0);do{if((g|0)==29){if(b){break}return}}while(0);c[e>>2]=c[e>>2]|2;return}function Gl(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,l=0,m=0,n=0,o=0;d=d|0;j=c[d>>2]|0;do{if((j|0)==0){j=0}else{if((c[j+12>>2]|0)!=(c[j+16>>2]|0)){break}if((uc[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[d>>2]=0;j=0;break}else{j=c[d>>2]|0;break}}}while(0);j=(j|0)==0;do{if((e|0)==0){i=10}else{if((c[e+12>>2]|0)==(c[e+16>>2]|0)){if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){i=10;break}}if(!j){i=11}}}while(0);if((i|0)==10){if(j){i=11}else{e=0}}if((i|0)==11){c[f>>2]=c[f>>2]|6;o=0;return o|0}j=c[d>>2]|0;i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0)){k=(uc[c[(c[j>>2]|0)+36>>2]&127](j)|0)&255}else{k=a[i]|0}do{if(!(k<<24>>24<0)){j=g+8|0;if((b[(c[j>>2]|0)+(k<<24>>24<<1)>>1]&2048)==0){break}i=g;k=(vc[c[(c[i>>2]|0)+36>>2]&63](g,k,0)|0)<<24>>24;n=c[d>>2]|0;m=n+12|0;l=c[m>>2]|0;if((l|0)==(c[n+16>>2]|0)){uc[c[(c[n>>2]|0)+40>>2]&127](n)|0;l=e}else{c[m>>2]=l+1;l=e}while(1){k=k-48|0;h=h-1|0;m=c[d>>2]|0;do{if((m|0)==0){m=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){break}if((uc[c[(c[m>>2]|0)+36>>2]&127](m)|0)==-1){c[d>>2]=0;m=0;break}else{m=c[d>>2]|0;break}}}while(0);n=(m|0)==0;do{if((l|0)==0){l=0}else{if((c[l+12>>2]|0)!=(c[l+16>>2]|0)){break}o=(uc[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1;e=o?0:e;l=e}}while(0);m=c[d>>2]|0;if(!((n^(l|0)==0)&(h|0)>0)){i=38;break}n=c[m+12>>2]|0;if((n|0)==(c[m+16>>2]|0)){m=(uc[c[(c[m>>2]|0)+36>>2]&127](m)|0)&255}else{m=a[n]|0}if(m<<24>>24<0){i=49;break}if((b[(c[j>>2]|0)+(m<<24>>24<<1)>>1]&2048)==0){i=49;break}k=((vc[c[(c[i>>2]|0)+36>>2]&63](g,m,0)|0)<<24>>24)+(k*10|0)|0;n=c[d>>2]|0;m=n+12|0;o=c[m>>2]|0;if((o|0)==(c[n+16>>2]|0)){uc[c[(c[n>>2]|0)+40>>2]&127](n)|0;continue}else{c[m>>2]=o+1;continue}}if((i|0)==38){do{if((m|0)==0){m=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){break}if((uc[c[(c[m>>2]|0)+36>>2]&127](m)|0)==-1){c[d>>2]=0;m=0;break}else{m=c[d>>2]|0;break}}}while(0);g=(m|0)==0;do{if((e|0)==0){i=47}else{if((c[e+12>>2]|0)==(c[e+16>>2]|0)){if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){i=47;break}}if(!g){break}return k|0}}while(0);do{if((i|0)==47){if(g){break}return k|0}}while(0);c[f>>2]=c[f>>2]|2;o=k;return o|0}else if((i|0)==49){return k|0}}}while(0);c[f>>2]=c[f>>2]|4;o=0;return o|0}function Hl(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;m=i;i=i+48|0;q=m|0;r=m+16|0;o=m+24|0;p=m+32|0;n=m+40|0;Ei(r,f);r=c[r>>2]|0;if(!((c[278102]|0)==-1)){c[q>>2]=1112408;c[q+4>>2]=14;c[q+8>>2]=0;Wh(1112408,q)}s=(c[278103]|0)-1|0;q=c[r+8>>2]|0;do{if((c[r+12>>2]|0)-q>>2>>>0>s>>>0){t=c[q+(s<<2)>>2]|0;if((t|0)==0){break}q=t;Dh(r|0);c[g>>2]=0;a:do{if((j|0)!=(k|0)){r=t;s=t;w=t;u=b;v=p|0;t=n|0;x=o|0;y=0;b:while(1){while(1){if((y|0)!=0){break a}if((d|0)==0){y=1;d=0}else{y=c[d+12>>2]|0;if((y|0)==(c[d+16>>2]|0)){y=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{y=c[y>>2]|0}z=(y|0)==-1;y=z?1:0;d=z?0:d}do{if((e|0)==0){l=21}else{z=c[e+12>>2]|0;if((z|0)==(c[e+16>>2]|0)){z=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{z=c[z>>2]|0}if((z|0)==-1){l=21;break}if(!y){l=23;break b}}}while(0);if((l|0)==21){l=0;if(y){e=0;l=23;break b}else{e=0}}if((vc[c[(c[r>>2]|0)+52>>2]&63](q,c[j>>2]|0,0)|0)<<24>>24==37){l=26;break}if(vc[c[(c[s>>2]|0)+12>>2]&63](q,8192,c[j>>2]|0)|0){l=36;break}y=d+12|0;A=c[y>>2]|0;z=d+16|0;if((A|0)==(c[z>>2]|0)){A=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{A=c[A>>2]|0}D=rc[c[(c[w>>2]|0)+28>>2]&31](q,A)|0;if((D|0)==(rc[c[(c[w>>2]|0)+28>>2]&31](q,c[j>>2]|0)|0)){l=62;break}c[g>>2]=4;y=4}c:do{if((l|0)==26){l=0;z=j+4|0;if((z|0)==(k|0)){l=27;break b}y=vc[c[(c[r>>2]|0)+52>>2]&63](q,c[z>>2]|0,0)|0;if((y<<24>>24|0)==69|(y<<24>>24|0)==48){z=j+8|0;if((z|0)==(k|0)){l=30;break b}j=y;y=vc[c[(c[r>>2]|0)+52>>2]&63](q,c[z>>2]|0,0)|0}else{j=0}D=c[(c[u>>2]|0)+36>>2]|0;c[v>>2]=d;c[t>>2]=e;Ac[D&7](o,b,p,n,f,g,h,y,j);j=z+4|0;d=c[x>>2]|0}else if((l|0)==36){while(1){l=0;j=j+4|0;if((j|0)==(k|0)){j=k;break}if(vc[c[(c[s>>2]|0)+12>>2]&63](q,8192,c[j>>2]|0)|0){l=36}else{break}}y=d;A=e;z=e;while(1){if((y|0)==0){B=1;y=0}else{B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=uc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}C=(B|0)==-1;B=C?1:0;y=C?0:y;d=C?0:d}do{if((A|0)==0){l=49}else{C=c[A+12>>2]|0;if((C|0)==(c[A+16>>2]|0)){A=uc[c[(c[A>>2]|0)+36>>2]&127](A)|0}else{A=c[C>>2]|0}if((A|0)==-1){z=0;e=0;l=49;break}if(B^(z|0)==0){A=z}else{break c}}}while(0);if((l|0)==49){l=0;if(B){break c}else{A=0}}B=y+12|0;D=c[B>>2]|0;C=y+16|0;if((D|0)==(c[C>>2]|0)){D=uc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{D=c[D>>2]|0}if(!(vc[c[(c[s>>2]|0)+12>>2]&63](q,8192,D)|0)){break c}D=c[B>>2]|0;if((D|0)==(c[C>>2]|0)){uc[c[(c[y>>2]|0)+40>>2]&127](y)|0;continue}else{c[B>>2]=D+4;continue}}}else if((l|0)==62){l=0;A=c[y>>2]|0;if((A|0)==(c[z>>2]|0)){uc[c[(c[d>>2]|0)+40>>2]&127](d)|0}else{c[y>>2]=A+4}j=j+4|0}}while(0);if((j|0)==(k|0)){break a}y=c[g>>2]|0}if((l|0)==23){c[g>>2]=4;break}else if((l|0)==27){c[g>>2]=4;break}else if((l|0)==30){c[g>>2]=4;break}}}while(0);if((d|0)==0){k=1;b=0}else{k=c[d+12>>2]|0;if((k|0)==(c[d+16>>2]|0)){k=uc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{k=c[k>>2]|0}b=(k|0)==-1;k=b?1:0;b=b?0:d}do{if((e|0)==0){l=77}else{f=c[e+12>>2]|0;if((f|0)==(c[e+16>>2]|0)){f=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{f=c[f>>2]|0}if((f|0)==-1){l=77;break}if(!k){break}D=a|0;c[D>>2]=b;i=m;return}}while(0);do{if((l|0)==77){if(k){break}D=a|0;c[D>>2]=b;i=m;return}}while(0);c[g>>2]=c[g>>2]|2;D=a|0;c[D>>2]=b;i=m;return}}while(0);D=ec(4)|0;eq(D);Ab(D|0,26088,180)}function Il(a){a=a|0;Gq(a);return}function Jl(a){a=a|0;return}function Kl(a){a=a|0;return 2}function Ll(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 j=0,k=0,l=0;j=i;l=d;k=i;i=i+4|0;i=i+7&-8;c[k>>2]=c[l>>2];l=e;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[l>>2];Hl(a,b,c[k>>2]|0,c[d>>2]|0,f,g,h,20240,20272);i=j;return}function Ml(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0;k=i;l=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[l>>2];l=d+8|0;l=uc[c[(c[l>>2]|0)+20>>2]&127](l)|0;m=a[l]|0;if((m&1)==0){m=(m&255)>>>1;l=l+4|0}else{m=c[l+4>>2]|0;l=c[l+8>>2]|0}Hl(b,d,c[e>>2]|0,c[f>>2]|0,g,h,j,l,l+(m<<2)|0);i=k;return}function Nl(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 j=0,k=0,l=0;j=i;i=i+24|0;k=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;Ei(l,f);f=c[l>>2]|0;if(!((c[278102]|0)==-1)){c[k>>2]=1112408;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112408,k)}k=(c[278103]|0)-1|0;l=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-l>>2>>>0>k>>>0){k=c[l+(k<<2)>>2]|0;if((k|0)==0){break}Dh(f|0);l=c[e>>2]|0;b=b+8|0;b=uc[c[c[b>>2]>>2]&127](b)|0;b=(sk(d,l,b,b+168|0,k,g,0)|0)-b|0;if((b|0)>=168){k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}c[h+24>>2]=((b|0)/12|0|0)%7|0;k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}function Ol(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 j=0,k=0,l=0;j=i;i=i+24|0;k=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;Ei(l,f);f=c[l>>2]|0;if(!((c[278102]|0)==-1)){c[k>>2]=1112408;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112408,k)}k=(c[278103]|0)-1|0;l=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-l>>2>>>0>k>>>0){k=c[l+(k<<2)>>2]|0;if((k|0)==0){break}Dh(f|0);l=c[e>>2]|0;b=b+8|0;b=uc[c[(c[b>>2]|0)+4>>2]&127](b)|0;b=(sk(d,l,b,b+288|0,k,g,0)|0)-b|0;if((b|0)>=288){k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}c[h+16>>2]=((b|0)/12|0|0)%12|0;k=d|0;k=c[k>>2]|0;l=a|0;c[l>>2]=k;i=j;return}}while(0);l=ec(4)|0;eq(l);Ab(l|0,26088,180)}function Pl(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 j=0,k=0;b=i;i=i+24|0;j=d;d=i;i=i+4|0;i=i+7&-8;c[d>>2]=c[j>>2];j=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[j>>2];j=b|0;k=b+16|0;Ei(k,f);f=c[k>>2]|0;if(!((c[278102]|0)==-1)){c[j>>2]=1112408;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112408,j)}j=(c[278103]|0)-1|0;k=c[f+8>>2]|0;do{if((c[f+12>>2]|0)-k>>2>>>0>j>>>0){j=c[k+(j<<2)>>2]|0;if((j|0)==0){break}Dh(f|0);e=Ul(d,c[e>>2]|0,g,j,4)|0;if((c[g>>2]&4|0)!=0){j=d|0;j=c[j>>2]|0;k=a|0;c[k>>2]=j;i=b;return}if((e|0)<69){g=e+2e3|0}else{g=(e-69|0)>>>0<31>>>0?e+1900|0:e}c[h+20>>2]=g-1900;j=d|0;j=c[j>>2]|0;k=a|0;c[k>>2]=j;i=b;return}}while(0);k=ec(4)|0;eq(k);Ab(k|0,26088,180)}function Ql(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;l=i;i=i+96|0;w=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[w>>2];w=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[w>>2];w=l|0;u=l+16|0;n=l+24|0;t=l+32|0;s=l+40|0;r=l+48|0;v=l+56|0;q=l+64|0;p=l+72|0;o=l+80|0;m=l+88|0;c[h>>2]=0;Ei(u,g);u=c[u>>2]|0;if(!((c[278102]|0)==-1)){c[w>>2]=1112408;c[w+4>>2]=14;c[w+8>>2]=0;Wh(1112408,w)}w=(c[278103]|0)-1|0;x=c[u+8>>2]|0;do{if((c[u+12>>2]|0)-x>>2>>>0>w>>>0){w=c[x+(w<<2)>>2]|0;if((w|0)==0){break}Dh(u|0);a:do{switch(k<<24>>24|0){case 100:case 101:{j=j+12|0;g=Ul(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;do{if((f&4|0)==0){if(!((g-1|0)>>>0<31>>>0)){break}c[j>>2]=g;break a}}while(0);c[h>>2]=f|4;break};case 112:{Sl(d,j+8|0,e,c[f>>2]|0,h,w);break};case 114:{x=e|0;Hl(r,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20160,20204);c[x>>2]=c[r>>2];break};case 72:{f=Ul(e,c[f>>2]|0,h,w,2)|0;g=c[h>>2]|0;if((g&4|0)==0&(f|0)<24){c[j+8>>2]=f;break a}else{c[h>>2]=g|4;break a}};case 82:{x=e|0;Hl(v,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20136,20156);c[x>>2]=c[v>>2];break};case 83:{g=Ul(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;if((f&4|0)==0&(g|0)<61){c[j>>2]=g;break a}else{c[h>>2]=f|4;break a}};case 70:{x=e|0;Hl(s,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20072,20104);c[x>>2]=c[s>>2];break};case 68:{x=e|0;Hl(t,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20208,20240);c[x>>2]=c[t>>2];break};case 84:{x=e|0;Hl(q,d,c[x>>2]|0,c[f>>2]|0,g,h,j,20104,20136);c[x>>2]=c[q>>2];break};case 120:{x=c[(c[d>>2]|0)+20>>2]|0;c[p>>2]=c[e>>2];c[o>>2]=c[f>>2];oc[x&127](b,d,p,o,g,h,j);i=l;return};case 88:{k=d+8|0;k=uc[c[(c[k>>2]|0)+24>>2]&127](k)|0;n=e|0;o=a[k]|0;if((o&1)==0){o=(o&255)>>>1;k=k+4|0}else{o=c[k+4>>2]|0;k=c[k+8>>2]|0}Hl(m,d,c[n>>2]|0,c[f>>2]|0,g,h,j,k,k+(o<<2)|0);c[n>>2]=c[m>>2];break};case 110:case 116:{Rl(e,c[f>>2]|0,h,w);break};case 98:case 66:case 104:{v=c[f>>2]|0;x=d+8|0;x=uc[c[(c[x>>2]|0)+4>>2]&127](x)|0;h=(sk(e,v,x,x+288|0,w,h,0)|0)-x|0;if((h|0)>=288){break a}c[j+16>>2]=((h|0)/12|0|0)%12|0;break};case 109:{f=(Ul(e,c[f>>2]|0,h,w,2)|0)-1|0;g=c[h>>2]|0;if((g&4|0)==0&(f|0)<12){c[j+16>>2]=f;break a}else{c[h>>2]=g|4;break a}};case 106:{f=Ul(e,c[f>>2]|0,h,w,3)|0;g=c[h>>2]|0;if((g&4|0)==0&(f|0)<366){c[j+28>>2]=f;break a}else{c[h>>2]=g|4;break a}};case 89:{f=Ul(e,c[f>>2]|0,h,w,4)|0;if((c[h>>2]&4|0)!=0){break a}c[j+20>>2]=f-1900;break};case 97:case 65:{v=c[f>>2]|0;x=d+8|0;x=uc[c[c[x>>2]>>2]&127](x)|0;h=(sk(e,v,x,x+168|0,w,h,0)|0)-x|0;if((h|0)>=168){break a}c[j+24>>2]=((h|0)/12|0|0)%7|0;break};case 73:{j=j+8|0;g=Ul(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;do{if((f&4|0)==0){if(!((g-1|0)>>>0<12>>>0)){break}c[j>>2]=g;break a}}while(0);c[h>>2]=f|4;break};case 119:{g=Ul(e,c[f>>2]|0,h,w,1)|0;f=c[h>>2]|0;if((f&4|0)==0&(g|0)<7){c[j+24>>2]=g;break a}else{c[h>>2]=f|4;break a}};case 121:{f=Ul(e,c[f>>2]|0,h,w,4)|0;if((c[h>>2]&4|0)!=0){break a}if((f|0)<69){h=f+2e3|0}else{h=(f-69|0)>>>0<31>>>0?f+1900|0:f}c[j+20>>2]=h-1900;break};case 37:{Tl(e,c[f>>2]|0,h,w);break};case 99:{k=d+8|0;k=uc[c[(c[k>>2]|0)+12>>2]&127](k)|0;m=e|0;o=a[k]|0;if((o&1)==0){o=(o&255)>>>1;k=k+4|0}else{o=c[k+4>>2]|0;k=c[k+8>>2]|0}Hl(n,d,c[m>>2]|0,c[f>>2]|0,g,h,j,k,k+(o<<2)|0);c[m>>2]=c[n>>2];break};case 77:{g=Ul(e,c[f>>2]|0,h,w,2)|0;f=c[h>>2]|0;if((f&4|0)==0&(g|0)<60){c[j+4>>2]=g;break a}else{c[h>>2]=f|4;break a}};default:{c[h>>2]=c[h>>2]|4}}}while(0);c[b>>2]=c[e>>2];i=l;return}}while(0);x=ec(4)|0;eq(x);Ab(x|0,26088,180)}function Rl(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;a=a|0;g=e;a:while(1){i=c[a>>2]|0;do{if((i|0)==0){h=1}else{h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0)){h=uc[c[(c[i>>2]|0)+36>>2]&127](i)|0}else{h=c[h>>2]|0}if((h|0)==-1){c[a>>2]=0;h=1;break}else{h=(c[a>>2]|0)==0;break}}}while(0);do{if((b|0)==0){f=14}else{i=c[b+12>>2]|0;if((i|0)==(c[b+16>>2]|0)){i=uc[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{i=c[i>>2]|0}if((i|0)==-1){f=14;break}if(!h){break a}}}while(0);if((f|0)==14){f=0;if(h){b=0;break}else{b=0}}h=c[a>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0)){h=uc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{h=c[i>>2]|0}if(!(vc[c[(c[g>>2]|0)+12>>2]&63](e,8192,h)|0)){break}j=c[a>>2]|0;i=j+12|0;h=c[i>>2]|0;if((h|0)==(c[j+16>>2]|0)){uc[c[(c[j>>2]|0)+40>>2]&127](j)|0;continue}else{c[i>>2]=h+4;continue}}e=c[a>>2]|0;do{if((e|0)==0){a=1}else{g=c[e+12>>2]|0;if((g|0)==(c[e+16>>2]|0)){e=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{e=c[g>>2]|0}if((e|0)==-1){c[a>>2]=0;a=1;break}else{a=(c[a>>2]|0)==0;break}}}while(0);do{if((b|0)==0){f=35}else{e=c[b+12>>2]|0;if((e|0)==(c[b+16>>2]|0)){e=uc[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{e=c[e>>2]|0}if((e|0)==-1){f=35;break}if(!a){break}return}}while(0);do{if((f|0)==35){if(a){break}return}}while(0);c[d>>2]=c[d>>2]|2;return}function Sl(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;b=b+8|0;b=uc[c[(c[b>>2]|0)+8>>2]&127](b)|0;i=a[b]|0;if((i&1)==0){i=(i&255)>>>1}else{i=c[b+4>>2]|0}j=a[b+12|0]|0;if((j&1)==0){j=(j&255)>>>1}else{j=c[b+16>>2]|0}if((i|0)==(-j|0)){c[g>>2]=c[g>>2]|4;return}j=sk(e,f,b,b+24|0,h,g,0)|0;h=j-b|0;do{if((j|0)==(b|0)){if((c[d>>2]|0)!=12){break}c[d>>2]=0;return}}while(0);if((h|0)!=12){return}h=c[d>>2]|0;if((h|0)>=12){return}c[d>>2]=h+12;return}function Tl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a=a|0;g=c[a>>2]|0;do{if((g|0)==0){g=1}else{h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){g=uc[c[(c[g>>2]|0)+36>>2]&127](g)|0}else{g=c[h>>2]|0}if((g|0)==-1){c[a>>2]=0;g=1;break}else{g=(c[a>>2]|0)==0;break}}}while(0);do{if((b|0)==0){f=13}else{h=c[b+12>>2]|0;if((h|0)==(c[b+16>>2]|0)){h=uc[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{h=c[h>>2]|0}if((h|0)==-1){f=13;break}if(!g){f=15}}}while(0);if((f|0)==13){if(g){f=15}else{b=0}}if((f|0)==15){c[d>>2]=c[d>>2]|6;return}g=c[a>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){g=uc[c[(c[g>>2]|0)+36>>2]&127](g)|0}else{g=c[h>>2]|0}if(!((vc[c[(c[e>>2]|0)+52>>2]&63](e,g,0)|0)<<24>>24==37)){c[d>>2]=c[d>>2]|4;return}h=c[a>>2]|0;e=h+12|0;g=c[e>>2]|0;if((g|0)==(c[h+16>>2]|0)){uc[c[(c[h>>2]|0)+40>>2]&127](h)|0}else{c[e>>2]=g+4}e=c[a>>2]|0;do{if((e|0)==0){a=1}else{g=c[e+12>>2]|0;if((g|0)==(c[e+16>>2]|0)){e=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{e=c[g>>2]|0}if((e|0)==-1){c[a>>2]=0;a=1;break}else{a=(c[a>>2]|0)==0;break}}}while(0);do{if((b|0)==0){f=36}else{e=c[b+12>>2]|0;if((e|0)==(c[b+16>>2]|0)){e=uc[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{e=c[e>>2]|0}if((e|0)==-1){f=36;break}if(!a){break}return}}while(0);do{if((f|0)==36){if(a){break}return}}while(0);c[d>>2]=c[d>>2]|2;return}function Ul(a,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;a=a|0;h=c[a>>2]|0;do{if((h|0)==0){h=1}else{i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0)){h=uc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{h=c[i>>2]|0}if((h|0)==-1){c[a>>2]=0;h=1;break}else{h=(c[a>>2]|0)==0;break}}}while(0);do{if((b|0)==0){g=13}else{i=c[b+12>>2]|0;if((i|0)==(c[b+16>>2]|0)){i=uc[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{i=c[i>>2]|0}if((i|0)==-1){g=13;break}if(!h){g=15}}}while(0);if((g|0)==13){if(h){g=15}else{b=0}}if((g|0)==15){c[d>>2]=c[d>>2]|6;n=0;return n|0}h=c[a>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0)){j=uc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{j=c[i>>2]|0}h=e;if(!(vc[c[(c[h>>2]|0)+12>>2]&63](e,2048,j)|0)){c[d>>2]=c[d>>2]|4;n=0;return n|0}i=e;l=(vc[c[(c[i>>2]|0)+52>>2]&63](e,j,0)|0)<<24>>24;k=c[a>>2]|0;m=k+12|0;j=c[m>>2]|0;if((j|0)==(c[k+16>>2]|0)){uc[c[(c[k>>2]|0)+40>>2]&127](k)|0;k=b;j=b}else{c[m>>2]=j+4;k=b;j=b}while(1){b=l-48|0;f=f-1|0;l=c[a>>2]|0;do{if((l|0)==0){l=1}else{m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){l=uc[c[(c[l>>2]|0)+36>>2]&127](l)|0}else{l=c[m>>2]|0}if((l|0)==-1){c[a>>2]=0;l=1;break}else{l=(c[a>>2]|0)==0;break}}}while(0);if((k|0)==0){n=1;k=0}else{m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0)){k=uc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{k=c[m>>2]|0}k=(k|0)==-1;m=k?0:j;n=k?1:(j|0)==0;k=m;j=m}m=c[a>>2]|0;if(!((l^n)&(f|0)>0)){break}l=c[m+12>>2]|0;if((l|0)==(c[m+16>>2]|0)){l=uc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{l=c[l>>2]|0}if(!(vc[c[(c[h>>2]|0)+12>>2]&63](e,2048,l)|0)){g=59;break}l=((vc[c[(c[i>>2]|0)+52>>2]&63](e,l,0)|0)<<24>>24)+(b*10|0)|0;n=c[a>>2]|0;m=n+12|0;b=c[m>>2]|0;if((b|0)==(c[n+16>>2]|0)){uc[c[(c[n>>2]|0)+40>>2]&127](n)|0;continue}else{c[m>>2]=b+4;continue}}if((g|0)==59){return b|0}do{if((m|0)==0){a=1}else{e=c[m+12>>2]|0;if((e|0)==(c[m+16>>2]|0)){e=uc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{e=c[e>>2]|0}if((e|0)==-1){c[a>>2]=0;a=1;break}else{a=(c[a>>2]|0)==0;break}}}while(0);do{if((j|0)==0){g=56}else{e=c[j+12>>2]|0;if((e|0)==(c[j+16>>2]|0)){e=uc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{e=c[e>>2]|0}if((e|0)==-1){g=56;break}if(!a){break}return b|0}}while(0);do{if((g|0)==56){if(a){break}return b|0}}while(0);c[d>>2]=c[d>>2]|2;n=b;return n|0}function Vl(b){b=b|0;var d=0,e=0;d=b+8|0;e=c[d>>2]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((e|0)==(c[277746]|0)){e=b;Gq(e);return}kb(c[d>>2]|0);e=b;Gq(e);return}function Wl(b){b=b|0;var d=0;b=b+8|0;d=c[b>>2]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((d|0)==(c[277746]|0)){return}kb(c[b>>2]|0);return}function Xl(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;f=i;i=i+112|0;p=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[p>>2];p=f|0;l=f+8|0;g=l|0;n=p|0;a[n]=37;m=p+1|0;a[m]=j;o=p+2|0;a[o]=k;a[p+3|0]=0;if(!(k<<24>>24==0)){a[m]=k;a[o]=j}p=Xb(g|0,100,n|0,h|0,c[d+8>>2]|0)|0;d=l+p|0;k=c[e>>2]|0;if((p|0)==0){o=k;p=b|0;c[p>>2]=o;i=f;return}else{e=k}do{j=a[g]|0;do{if((e|0)==0){e=0}else{l=e+24|0;h=c[l>>2]|0;if((h|0)==(c[e+28>>2]|0)){j=(rc[c[(c[e>>2]|0)+52>>2]&31](e,j&255)|0)==-1;e=j?0:e;k=j?0:k;break}else{c[l>>2]=h+1;a[h]=j;break}}}while(0);g=g+1|0;}while((g|0)!=(d|0));p=b|0;c[p>>2]=k;i=f;return}function Yl(b){b=b|0;var d=0,e=0;d=b+8|0;e=c[d>>2]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((e|0)==(c[277746]|0)){e=b;Gq(e);return}kb(c[d>>2]|0);e=b;Gq(e);return}function Zl(b){b=b|0;var d=0;b=b+8|0;d=c[b>>2]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((d|0)==(c[277746]|0)){return}kb(c[b>>2]|0);return}function _l(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;f=i;i=i+408|0;l=d;k=i;i=i+4|0;i=i+7&-8;c[k>>2]=c[l>>2];l=f|0;e=f+400|0;d=l|0;c[e>>2]=l+400;$l(b+8|0,d,e,g,h,j);h=c[e>>2]|0;b=c[k>>2]|0;if((d|0)==(h|0)){k=b;l=a|0;c[l>>2]=k;i=f;return}else{g=b}do{k=c[d>>2]|0;if((g|0)==0){g=0}else{j=g+24|0;e=c[j>>2]|0;if((e|0)==(c[g+28>>2]|0)){k=rc[c[(c[g>>2]|0)+52>>2]&31](g,k)|0}else{c[j>>2]=e+4;c[e>>2]=k}j=(k|0)==-1;g=j?0:g;b=j?0:b}d=d+4|0;}while((d|0)!=(h|0));l=a|0;c[l>>2]=b;i=f;return}function $l(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+120|0;q=j|0;k=j+112|0;l=i;i=i+4|0;i=i+7&-8;m=j+8|0;o=q|0;a[o]=37;p=q+1|0;a[p]=g;n=q+2|0;a[n]=h;a[q+3|0]=0;if(!(h<<24>>24==0)){a[p]=h;a[n]=g}g=b|0;Xb(m|0,100,o|0,f|0,c[g>>2]|0)|0;c[k>>2]=0;c[k+4>>2]=0;c[l>>2]=m;q=(c[e>>2]|0)-d>>2;m=Sb(c[g>>2]|0)|0;k=Xp(d,l,q,k)|0;if((m|0)!=0){Sb(m|0)|0}if((k|0)==-1){Xm(9264)}else{c[e>>2]=d+(k<<2);i=j;return}}function am(a){a=a|0;Gq(a);return}function bm(a){a=a|0;return}function cm(a){a=a|0;return 127}function dm(a){a=a|0;return 127}function em(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function fm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function gm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function hm(a,b){a=a|0;b=b|0;bi(a,1,45);return}function im(a){a=a|0;return 0}function jm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function km(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function lm(a){a=a|0;Gq(a);return}function mm(a){a=a|0;return}function nm(a){a=a|0;return 127}function om(a){a=a|0;return 127}function pm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function qm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function rm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function sm(a,b){a=a|0;b=b|0;bi(a,1,45);return}function tm(a){a=a|0;return 0}function um(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function vm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function wm(a){a=a|0;Gq(a);return}function xm(a){a=a|0;return}function ym(a){a=a|0;return 2147483647}function zm(a){a=a|0;return 2147483647}function Am(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Bm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Cm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Dm(a,b){a=a|0;b=b|0;ui(a,1,45);return}function Em(a){a=a|0;return 0}function Fm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function Gm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function Hm(a){a=a|0;Gq(a);return}function Im(a){a=a|0;return}function Jm(a){a=a|0;return 2147483647}function Km(a){a=a|0;return 2147483647}function Lm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Mm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Nm(a,b){a=a|0;b=b|0;Xq(a|0,0,12)|0;return}function Om(a,b){a=a|0;b=b|0;ui(a,1,45);return}function Pm(a){a=a|0;return 0}function Qm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function Rm(b,c){b=b|0;c=c|0;c=b;B=67109634;a[c]=B;B=B>>8;a[c+1|0]=B;B=B>>8;a[c+2|0]=B;B=B>>8;a[c+3|0]=B;return}function Sm(a){a=a|0;Gq(a);return}function Tm(a){a=a|0;return}function Um(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var 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;l=i;i=i+272|0;x=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[x>>2];x=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[x>>2];x=l|0;t=l+16|0;v=l+120|0;p=l+128|0;u=l+136|0;r=l+144|0;q=l+152|0;s=l+168|0;d=v|0;c[d>>2]=t;m=v+4|0;c[m>>2]=150;t=t+100|0;Ei(u,h);o=u|0;w=c[o>>2]|0;if(!((c[278104]|0)==-1)){c[x>>2]=1112416;c[x+4>>2]=14;c[x+8>>2]=0;Wh(1112416,x)}y=(c[278105]|0)-1|0;x=c[w+8>>2]|0;do{if((c[w+12>>2]|0)-x>>2>>>0>y>>>0){w=c[x+(y<<2)>>2]|0;if((w|0)==0){break}x=w;a[r]=0;f=f|0;do{if(Wm(e,c[f>>2]|0,g,u,c[h+4>>2]|0,j,r,x,v,p,t)|0){g=q|0;Cc[c[(c[w>>2]|0)+32>>2]&15](x,20056,20066,g)|0;s=s|0;v=c[p>>2]|0;t=c[d>>2]|0;h=v-t|0;do{if((h|0)>98){h=zq(h+2|0)|0;if((h|0)!=0){u=h;break}Lq();u=0;h=0}else{u=s;h=0}}while(0);if((a[r]|0)!=0){a[u]=45;u=u+1|0}if(t>>>0<v>>>0){r=q+10|0;do{v=g;while(1){if((v|0)==(r|0)){v=r;break}if((a[v]|0)==(a[t]|0)){break}else{v=v+1|0}}a[u]=a[20056+(v-q)|0]|0;t=t+1|0;u=u+1|0;}while(t>>>0<(c[p>>2]|0)>>>0)}a[u]=0;y=Ub(s|0,17720,(x=i,i=i+8|0,c[x>>2]=k,x)|0)|0;i=x;if((y|0)==1){if((h|0)==0){break}Aq(h);break}y=ec(8)|0;Jh(y,17312);Ab(y|0,26104,64)}}while(0);k=e|0;p=c[k>>2]|0;do{if((p|0)==0){p=0}else{if((c[p+12>>2]|0)!=(c[p+16>>2]|0)){break}if(!((uc[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1)){break}c[k>>2]=0;p=0}}while(0);k=(p|0)==0;e=c[f>>2]|0;do{if((e|0)==0){n=43}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(k){break}else{n=45;break}}if((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1){c[f>>2]=0;n=43;break}else{if(k){break}else{n=45;break}}}}while(0);if((n|0)==43){if(k){n=45}}if((n|0)==45){c[j>>2]=c[j>>2]|2}c[b>>2]=p;Dh(c[o>>2]|0);j=c[d>>2]|0;c[d>>2]=0;if((j|0)==0){i=l;return}pc[c[m>>2]&255](j);i=l;return}}while(0);y=ec(4)|0;eq(y);Ab(y|0,26088,180)}function Vm(a){a=a|0;return}
-
-
-
-function Wm(e,f,g,h,j,k,l,m,n,o,p){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,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;u=i;i=i+520|0;_=u|0;C=u+400|0;F=u+408|0;E=u+416|0;r=u+424|0;q=u+440|0;v=u+456|0;s=u+472|0;t=u+488|0;G=u+504|0;w=u+512|0;Z=_|0;A=r;Xq(A|0,0,12)|0;B=q;Xq(B|0,0,12)|0;y=v;Xq(y|0,0,12)|0;z=s;Xq(z|0,0,12)|0;D=t;Xq(D|0,0,12)|0;_m(g,h,C,F,E,r,q,v,s,G);g=n|0;c[o>>2]=c[g>>2];e=e|0;m=m+8|0;K=s+1|0;H=s+4|0;L=s+8|0;I=v+1|0;J=v+4|0;h=v+8|0;M=(j&512|0)!=0;T=q+1|0;S=q+8|0;N=q+4|0;P=t;O=P+1|0;Q=t+8|0;U=t+4|0;R=C+3|0;j=r+4|0;n=n+4|0;X=150;Y=Z;_=_+400|0;V=0;W=0;a:while(1){$=c[e>>2]|0;do{if(($|0)==0){$=0}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){break}if((uc[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1){c[e>>2]=0;$=0;break}else{$=c[e>>2]|0;break}}}while(0);$=($|0)==0;do{if((f|0)==0){x=14}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if($){break}else{x=304;break a}}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){x=14;break}if(!$){x=304;break a}}}while(0);if((x|0)==14){x=0;if($){f=0;x=304;break}else{f=0}}b:do{switch(a[C+V|0]|0){case 0:{x=42;break};case 3:{$=a[y]|0;ba=($&1)==0;if(ba){da=($&255)>>>1}else{da=c[J>>2]|0}aa=a[z]|0;ca=(aa&1)==0;if(ca){ea=(aa&255)>>>1}else{ea=c[H>>2]|0}if((da|0)==(-ea|0)){break b}if(ba){da=($&255)>>>1}else{da=c[J>>2]|0}do{if((da|0)!=0){if(ca){ca=(aa&255)>>>1}else{ca=c[H>>2]|0}if((ca|0)==0){break}ba=c[e>>2]|0;da=c[ba+12>>2]|0;ca=c[ba+16>>2]|0;if((da|0)==(ca|0)){aa=(uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)&255;ca=c[e>>2]|0;$=a[y]|0;ba=ca;da=c[ca+12>>2]|0;ca=c[ca+16>>2]|0}else{aa=a[da]|0}ea=ba+12|0;ca=(da|0)==(ca|0);if(aa<<24>>24==(a[($&1)==0?I:c[h>>2]|0]|0)){if(ca){uc[c[(c[ba>>2]|0)+40>>2]&127](ba)|0}else{c[ea>>2]=da+1}$=a[y]|0;if(($&1)==0){$=($&255)>>>1}else{$=c[J>>2]|0}W=$>>>0>1>>>0?v:W;break b}if(ca){$=(uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)&255}else{$=a[da]|0}if(!($<<24>>24==(a[(a[z]&1)==0?K:c[L>>2]|0]|0))){x=135;break a}$=c[e>>2]|0;aa=$+12|0;ba=c[aa>>2]|0;if((ba|0)==(c[$+16>>2]|0)){uc[c[(c[$>>2]|0)+40>>2]&127]($)|0}else{c[aa>>2]=ba+1}a[l]=1;$=a[z]|0;if(($&1)==0){$=($&255)>>>1}else{$=c[H>>2]|0}W=$>>>0>1>>>0?s:W;break b}}while(0);if(ba){ba=($&255)>>>1}else{ba=c[J>>2]|0}ca=c[e>>2]|0;da=c[ca+12>>2]|0;ea=(da|0)==(c[ca+16>>2]|0);if((ba|0)==0){if(ea){$=(uc[c[(c[ca>>2]|0)+36>>2]&127](ca)|0)&255;aa=a[z]|0}else{$=a[da]|0}if(!($<<24>>24==(a[(aa&1)==0?K:c[L>>2]|0]|0))){break b}$=c[e>>2]|0;aa=$+12|0;ba=c[aa>>2]|0;if((ba|0)==(c[$+16>>2]|0)){uc[c[(c[$>>2]|0)+40>>2]&127]($)|0}else{c[aa>>2]=ba+1}a[l]=1;$=a[z]|0;if(($&1)==0){$=($&255)>>>1}else{$=c[H>>2]|0}W=$>>>0>1>>>0?s:W;break b}if(ea){aa=(uc[c[(c[ca>>2]|0)+36>>2]&127](ca)|0)&255;$=a[y]|0}else{aa=a[da]|0}if(!(aa<<24>>24==(a[($&1)==0?I:c[h>>2]|0]|0))){a[l]=1;break b}$=c[e>>2]|0;aa=$+12|0;ba=c[aa>>2]|0;if((ba|0)==(c[$+16>>2]|0)){uc[c[(c[$>>2]|0)+40>>2]&127]($)|0}else{c[aa>>2]=ba+1}$=a[y]|0;if(($&1)==0){$=($&255)>>>1}else{$=c[J>>2]|0}W=$>>>0>1>>>0?v:W;break};case 4:{aa=a[E]|0;$=0;c:while(1){ba=c[e>>2]|0;do{if((ba|0)==0){ba=0}else{if((c[ba+12>>2]|0)!=(c[ba+16>>2]|0)){break}if((uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)==-1){c[e>>2]=0;ba=0;break}else{ba=c[e>>2]|0;break}}}while(0);ba=(ba|0)==0;do{if((f|0)==0){x=199}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if(ba){break}else{break c}}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){x=199;break}if(!ba){break c}}}while(0);if((x|0)==199){x=0;if(ba){f=0;break}else{f=0}}ba=c[e>>2]|0;ca=c[ba+12>>2]|0;if((ca|0)==(c[ba+16>>2]|0)){ba=(uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)&255}else{ba=a[ca]|0}do{if(ba<<24>>24<0){x=218}else{if((b[(c[m>>2]|0)+(ba<<24>>24<<1)>>1]&2048)==0){x=218;break}ca=c[o>>2]|0;if((ca|0)==(p|0)){da=(c[n>>2]|0)!=150;ea=c[g>>2]|0;ca=p-ea|0;p=ca>>>0<2147483647>>>0?ca<<1:-1;ea=Bq(da?ea:0,p)|0;if((ea|0)==0){Lq()}do{if(da){c[g>>2]=ea}else{da=c[g>>2]|0;c[g>>2]=ea;if((da|0)==0){break}pc[c[n>>2]&255](da);ea=c[g>>2]|0}}while(0);c[n>>2]=74;ca=ea+ca|0;c[o>>2]=ca;p=(c[g>>2]|0)+p|0}c[o>>2]=ca+1;a[ca]=ba;$=$+1|0}}while(0);if((x|0)==218){x=0;ca=a[A]|0;if((ca&1)==0){ca=(ca&255)>>>1}else{ca=c[j>>2]|0}if(!((((ca|0)==0|($|0)==0)^1)&ba<<24>>24==aa<<24>>24)){break}if((Z|0)==(_|0)){Z=Z-Y|0;_=Z>>>0<2147483647>>>0?Z<<1:-1;if((X|0)==150){Y=0}else{}fa=Bq(Y,_)|0;Y=fa;if((fa|0)==0){Lq()}_=Y+(_>>>2<<2)|0;Z=Y+(Z>>2<<2)|0;X=74}c[Z>>2]=$;$=0;Z=Z+4|0}da=c[e>>2]|0;ca=da+12|0;ba=c[ca>>2]|0;if((ba|0)==(c[da+16>>2]|0)){uc[c[(c[da>>2]|0)+40>>2]&127](da)|0;continue}else{c[ca>>2]=ba+1;continue}}if(!((Y|0)==(Z|0)|($|0)==0)){if((Z|0)==(_|0)){Z=Z-Y|0;_=Z>>>0<2147483647>>>0?Z<<1:-1;if((X|0)==150){Y=0}else{}fa=Bq(Y,_)|0;Y=fa;if((fa|0)==0){Lq()}_=Y+(_>>>2<<2)|0;Z=Y+(Z>>2<<2)|0;X=74}c[Z>>2]=$;Z=Z+4|0}if((c[G>>2]|0)>0){$=c[e>>2]|0;do{if(($|0)==0){$=0}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){break}if((uc[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1){c[e>>2]=0;$=0;break}else{$=c[e>>2]|0;break}}}while(0);$=($|0)==0;do{if((f|0)==0){x=252}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if($){break}else{x=259;break a}}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){x=252;break}if(!$){x=259;break a}}}while(0);if((x|0)==252){x=0;if($){x=259;break a}else{f=0}}$=c[e>>2]|0;aa=c[$+12>>2]|0;if((aa|0)==(c[$+16>>2]|0)){$=(uc[c[(c[$>>2]|0)+36>>2]&127]($)|0)&255}else{$=a[aa]|0}if(!($<<24>>24==(a[F]|0))){x=259;break a}ba=c[e>>2]|0;aa=ba+12|0;$=c[aa>>2]|0;if(($|0)==(c[ba+16>>2]|0)){uc[c[(c[ba>>2]|0)+40>>2]&127](ba)|0;aa=f;ba=f}else{c[aa>>2]=$+1;aa=f;ba=f}while(1){$=c[e>>2]|0;do{if(($|0)==0){$=0}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){break}if((uc[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1){c[e>>2]=0;$=0;break}else{$=c[e>>2]|0;break}}}while(0);ca=($|0)==0;do{if((aa|0)==0){$=ba;x=274}else{if((c[aa+12>>2]|0)!=(c[aa+16>>2]|0)){if(ca){$=ba;break}else{x=282;break a}}if((uc[c[(c[aa>>2]|0)+36>>2]&127](aa)|0)==-1){$=0;f=0;x=274;break}if(ca^(ba|0)==0){$=ba;aa=ba}else{x=282;break a}}}while(0);if((x|0)==274){x=0;if(ca){x=282;break a}else{aa=0}}ba=c[e>>2]|0;ca=c[ba+12>>2]|0;if((ca|0)==(c[ba+16>>2]|0)){ba=(uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)&255}else{ba=a[ca]|0}if(ba<<24>>24<0){x=282;break a}if((b[(c[m>>2]|0)+(ba<<24>>24<<1)>>1]&2048)==0){x=282;break a}ba=c[o>>2]|0;if((ba|0)==(p|0)){ca=(c[n>>2]|0)!=150;da=c[g>>2]|0;p=p-da|0;ba=p>>>0<2147483647>>>0?p<<1:-1;da=Bq(ca?da:0,ba)|0;if((da|0)==0){Lq()}do{if(ca){c[g>>2]=da}else{ca=c[g>>2]|0;c[g>>2]=da;if((ca|0)==0){break}pc[c[n>>2]&255](ca);da=c[g>>2]|0}}while(0);c[n>>2]=74;fa=da+p|0;c[o>>2]=fa;p=(c[g>>2]|0)+ba|0;ba=fa}ca=c[e>>2]|0;da=c[ca+12>>2]|0;if((da|0)==(c[ca+16>>2]|0)){ca=(uc[c[(c[ca>>2]|0)+36>>2]&127](ca)|0)&255;ba=c[o>>2]|0}else{ca=a[da]|0}c[o>>2]=ba+1;a[ba]=ca;ba=(c[G>>2]|0)-1|0;c[G>>2]=ba;ca=c[e>>2]|0;da=ca+12|0;ea=c[da>>2]|0;if((ea|0)==(c[ca+16>>2]|0)){uc[c[(c[ca>>2]|0)+40>>2]&127](ca)|0}else{c[da>>2]=ea+1}if((ba|0)>0){ba=$}else{break}}}if((c[o>>2]|0)==(c[g>>2]|0)){x=302;break a}break};case 1:{if((V|0)==3){x=304;break a}x=c[e>>2]|0;$=c[x+12>>2]|0;if(($|0)==(c[x+16>>2]|0)){x=(uc[c[(c[x>>2]|0)+36>>2]&127](x)|0)&255}else{x=a[$]|0}if(x<<24>>24<0){x=41;break a}if((b[(c[m>>2]|0)+(x<<24>>24<<1)>>1]&8192)==0){x=41;break a}aa=c[e>>2]|0;$=aa+12|0;x=c[$>>2]|0;if((x|0)==(c[aa+16>>2]|0)){x=(uc[c[(c[aa>>2]|0)+40>>2]&127](aa)|0)&255}else{c[$>>2]=x+1;x=a[x]|0}ni(t,x);x=42;break};case 2:{if(!((W|0)!=0|V>>>0<2>>>0)){if((V|0)==2){$=(a[R]|0)!=0}else{$=0}if(!(M|$)){W=0;break b}}aa=a[B]|0;ba=(aa&1)==0;$=ba?T:c[S>>2]|0;d:do{if((V|0)==0){ba=f;ca=f}else{if(!((d[C+(V-1)|0]|0)>>>0<2>>>0)){ba=f;ca=f;break}ba=$+(ba?(aa&255)>>>1:c[N>>2]|0)|0;da=$;while(1){if((da|0)==(ba|0)){break}ca=a[da]|0;if(ca<<24>>24<0){ba=da;break}if((b[(c[m>>2]|0)+(ca<<24>>24<<1)>>1]&8192)==0){ba=da;break}else{da=da+1|0}}ca=ba-$|0;da=a[D]|0;ea=(da&1)==0;if(ea){fa=(da&255)>>>1}else{fa=c[U>>2]|0}if(ca>>>0>fa>>>0){ba=f;ca=f;break}if(ea){fa=(da&255)>>>1;da=fa;ea=O;fa=fa-ca+(P+1)|0}else{ga=c[Q>>2]|0;fa=c[U>>2]|0;da=fa;ea=ga;fa=ga+(fa-ca)|0}ca=ea+da|0;if((fa|0)==(ca|0)){$=ba;ba=f;ca=f;break}else{da=$}while(1){if((a[fa]|0)!=(a[da]|0)){ba=f;ca=f;break d}fa=fa+1|0;if((fa|0)==(ca|0)){$=ba;ba=f;ca=f;break}else{da=da+1|0}}}}while(0);e:while(1){if((aa&1)==0){aa=(aa&255)>>>1;da=T}else{aa=c[N>>2]|0;da=c[S>>2]|0}if(($|0)==(da+aa|0)){break}aa=c[e>>2]|0;do{if((aa|0)==0){aa=0}else{if((c[aa+12>>2]|0)!=(c[aa+16>>2]|0)){break}if((uc[c[(c[aa>>2]|0)+36>>2]&127](aa)|0)==-1){c[e>>2]=0;aa=0;break}else{aa=c[e>>2]|0;break}}}while(0);aa=(aa|0)==0;do{if((ba|0)==0){x=171}else{if((c[ba+12>>2]|0)!=(c[ba+16>>2]|0)){if(aa){break}else{break e}}if((uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)==-1){ca=0;f=0;x=171;break}if(aa^(ca|0)==0){ba=ca}else{break e}}}while(0);if((x|0)==171){x=0;if(aa){break}else{ba=0}}aa=c[e>>2]|0;da=c[aa+12>>2]|0;if((da|0)==(c[aa+16>>2]|0)){aa=(uc[c[(c[aa>>2]|0)+36>>2]&127](aa)|0)&255}else{aa=a[da]|0}if(!(aa<<24>>24==(a[$]|0))){break}ea=c[e>>2]|0;da=ea+12|0;aa=c[da>>2]|0;if((aa|0)==(c[ea+16>>2]|0)){uc[c[(c[ea>>2]|0)+40>>2]&127](ea)|0}else{c[da>>2]=aa+1}$=$+1|0;aa=a[B]|0}if(!M){break b}aa=a[B]|0;if((aa&1)==0){ba=(aa&255)>>>1;aa=T}else{ba=c[N>>2]|0;aa=c[S>>2]|0}if(($|0)!=(aa+ba|0)){x=187;break a}break};default:{}}}while(0);f:do{if((x|0)==42){x=0;if((V|0)==3){x=304;break a}else{$=f;aa=f}while(1){ba=c[e>>2]|0;do{if((ba|0)==0){ba=0}else{if((c[ba+12>>2]|0)!=(c[ba+16>>2]|0)){break}if((uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)==-1){c[e>>2]=0;ba=0;break}else{ba=c[e>>2]|0;break}}}while(0);ba=(ba|0)==0;do{if(($|0)==0){x=54}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){if(ba){break}else{break f}}if((uc[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1){aa=0;f=0;x=54;break}if(ba^(aa|0)==0){$=aa}else{break f}}}while(0);if((x|0)==54){x=0;if(ba){break f}else{$=0}}ba=c[e>>2]|0;ca=c[ba+12>>2]|0;if((ca|0)==(c[ba+16>>2]|0)){ba=(uc[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)&255}else{ba=a[ca]|0}if(ba<<24>>24<0){break f}if((b[(c[m>>2]|0)+(ba<<24>>24<<1)>>1]&8192)==0){break f}ba=c[e>>2]|0;da=ba+12|0;ca=c[da>>2]|0;if((ca|0)==(c[ba+16>>2]|0)){ba=(uc[c[(c[ba>>2]|0)+40>>2]&127](ba)|0)&255}else{c[da>>2]=ca+1;ba=a[ca]|0}ni(t,ba)}}}while(0);V=V+1|0;if(!(V>>>0<4>>>0)){x=304;break}}g:do{if((x|0)==41){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==135){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==187){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==259){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==282){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==302){c[k>>2]=c[k>>2]|4;k=0}else if((x|0)==304){h:do{if((W|0)!=0){o=W;l=W+1|0;y=W+8|0;z=W+4|0;A=1;i:while(1){B=a[o]|0;if((B&1)==0){B=(B&255)>>>1}else{B=c[z>>2]|0}if(!(A>>>0<B>>>0)){break h}B=c[e>>2]|0;do{if((B|0)==0){B=0}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){break}if((uc[c[(c[B>>2]|0)+36>>2]&127](B)|0)==-1){c[e>>2]=0;B=0;break}else{B=c[e>>2]|0;break}}}while(0);B=(B|0)==0;do{if((f|0)==0){x=321}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){if(B){break}else{break i}}if((uc[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1){x=321;break}if(!B){break i}}}while(0);if((x|0)==321){x=0;if(B){break}else{f=0}}C=c[e>>2]|0;B=c[C+12>>2]|0;if((B|0)==(c[C+16>>2]|0)){B=(uc[c[(c[C>>2]|0)+36>>2]&127](C)|0)&255}else{B=a[B]|0}if((a[o]&1)==0){C=l}else{C=c[y>>2]|0}if(!(B<<24>>24==(a[C+A|0]|0))){break}A=A+1|0;D=c[e>>2]|0;C=D+12|0;B=c[C>>2]|0;if((B|0)==(c[D+16>>2]|0)){uc[c[(c[D>>2]|0)+40>>2]&127](D)|0;continue}else{c[C>>2]=B+1;continue}}c[k>>2]=c[k>>2]|4;k=0;break g}}while(0);if((Y|0)==(Z|0)){k=1;Y=Z;break}c[w>>2]=0;$m(r,Y,Z,w);if((c[w>>2]|0)==0){k=1;break}c[k>>2]=c[k>>2]|4;k=0}}while(0);di(t);di(s);di(v);di(q);di(r);if((Y|0)==0){i=u;return k|0}pc[X&255](Y);i=u;return k|0}function Xm(a){a=a|0;var b=0;b=ec(8)|0;Jh(b,a);Ab(b|0,26104,64)}function Ym(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+152|0;v=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[v>>2];v=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[v>>2];v=l|0;u=l+16|0;s=l+120|0;q=l+128|0;t=l+136|0;r=l+144|0;d=s|0;c[d>>2]=u;m=s+4|0;c[m>>2]=150;u=u+100|0;Ei(t,h);o=t|0;p=c[o>>2]|0;if(!((c[278104]|0)==-1)){c[v>>2]=1112416;c[v+4>>2]=14;c[v+8>>2]=0;Wh(1112416,v)}w=(c[278105]|0)-1|0;v=c[p+8>>2]|0;do{if((c[p+12>>2]|0)-v>>2>>>0>w>>>0){w=c[v+(w<<2)>>2]|0;if((w|0)==0){break}v=w;a[r]=0;f=f|0;p=c[f>>2]|0;if(Wm(e,p,g,t,c[h+4>>2]|0,j,r,v,s,q,u)|0){g=k;if((a[g]&1)==0){a[k+1|0]=0;a[g]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}if((a[r]|0)!=0){ni(k,rc[c[(c[w>>2]|0)+28>>2]&31](v,45)|0)}r=rc[c[(c[w>>2]|0)+28>>2]&31](v,48)|0;g=c[q>>2]|0;h=g-1|0;q=c[d>>2]|0;while(1){if(!(q>>>0<h>>>0)){break}if((a[q]|0)==r<<24>>24){q=q+1|0}else{break}}Zm(k,q,g)}k=e|0;e=c[k>>2]|0;do{if((e|0)==0){e=0}else{if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){break}if(!((uc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1)){break}c[k>>2]=0;e=0}}while(0);k=(e|0)==0;do{if((p|0)==0){n=31}else{if((c[p+12>>2]|0)!=(c[p+16>>2]|0)){if(k){break}else{n=33;break}}if((uc[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1){c[f>>2]=0;n=31;break}else{if(k){break}else{n=33;break}}}}while(0);if((n|0)==31){if(k){n=33}}if((n|0)==33){c[j>>2]=c[j>>2]|2}c[b>>2]=e;Dh(c[o>>2]|0);b=c[d>>2]|0;c[d>>2]=0;if((b|0)==0){i=l;return}pc[c[m>>2]&255](b);i=l;return}}while(0);w=ec(4)|0;eq(w);Ab(w|0,26088,180)}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;f=b;i=d;g=a[f]|0;if((g&1)==0){k=10;j=g;g=(g&255)>>>1}else{j=c[b>>2]|0;k=(j&-2)-1|0;j=j&255;g=c[b+4>>2]|0}h=e-i|0;if((e|0)==(d|0)){return}if((k-g|0)>>>0<h>>>0){qi(b,k,g+h-k|0,g,g,0);j=a[f]|0}if((j&1)==0){j=b+1|0}else{j=c[b+8>>2]|0}i=e+(g-i)|0;k=j+g|0;while(1){a[k]=a[d]|0;d=d+1|0;if((d|0)==(e|0)){break}else{k=k+1|0}}a[j+i|0]=0;e=g+h|0;if((a[f]&1)==0){a[f]=e<<1;return}else{c[b+4>>2]=e;return}}function _m(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;n=i;i=i+176|0;y=n|0;z=n+16|0;x=n+32|0;u=n+40|0;t=n+56|0;r=n+72|0;o=n+88|0;w=n+104|0;v=n+112|0;s=n+128|0;q=n+144|0;p=n+160|0;if(b){p=c[d>>2]|0;if(!((c[278222]|0)==-1)){c[z>>2]=1112888;c[z+4>>2]=14;c[z+8>>2]=0;Wh(1112888,z)}s=(c[278223]|0)-1|0;q=c[p+8>>2]|0;if(!((c[p+12>>2]|0)-q>>2>>>0>s>>>0)){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}p=c[q+(s<<2)>>2]|0;if((p|0)==0){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}q=p;qc[c[(c[p>>2]|0)+44>>2]&127](x,q);B=c[x>>2]|0;a[e]=B;B=B>>8;a[e+1|0]=B;B=B>>8;a[e+2|0]=B;B=B>>8;a[e+3|0]=B;e=p;qc[c[(c[e>>2]|0)+32>>2]&127](u,q);s=l;if((a[s]&1)==0){a[l+1|0]=0;a[s]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);l=u;c[s>>2]=c[l>>2];c[s+4>>2]=c[l+4>>2];c[s+8>>2]=c[l+8>>2];Xq(l|0,0,12)|0;di(u);qc[c[(c[e>>2]|0)+28>>2]&127](t,q);l=k;if((a[l]&1)==0){a[k+1|0]=0;a[l]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hi(k);b=t;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;di(t);b=p;a[f]=uc[c[(c[b>>2]|0)+12>>2]&127](q)|0;a[g]=uc[c[(c[b>>2]|0)+16>>2]&127](q)|0;qc[c[(c[e>>2]|0)+20>>2]&127](r,q);g=h;if((a[g]&1)==0){a[h+1|0]=0;a[g]=0}else{a[c[h+8>>2]|0]=0;c[h+4>>2]=0}hi(h);h=r;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];Xq(h|0,0,12)|0;di(r);qc[c[(c[e>>2]|0)+24>>2]&127](o,q);h=j;if((a[h]&1)==0){a[j+1|0]=0;a[h]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);b=o;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;di(o);b=uc[c[(c[p>>2]|0)+36>>2]&127](q)|0;c[m>>2]=b;i=n;return}else{o=c[d>>2]|0;if(!((c[278224]|0)==-1)){c[y>>2]=1112896;c[y+4>>2]=14;c[y+8>>2]=0;Wh(1112896,y)}t=(c[278225]|0)-1|0;r=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-r>>2>>>0>t>>>0)){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}r=c[r+(t<<2)>>2]|0;if((r|0)==0){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}o=r;qc[c[(c[r>>2]|0)+44>>2]&127](w,o);B=c[w>>2]|0;a[e]=B;B=B>>8;a[e+1|0]=B;B=B>>8;a[e+2|0]=B;B=B>>8;a[e+3|0]=B;e=r;qc[c[(c[e>>2]|0)+32>>2]&127](v,o);t=l;if((a[t]&1)==0){a[l+1|0]=0;a[t]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);l=v;c[t>>2]=c[l>>2];c[t+4>>2]=c[l+4>>2];c[t+8>>2]=c[l+8>>2];Xq(l|0,0,12)|0;di(v);qc[c[(c[e>>2]|0)+28>>2]&127](s,o);l=k;if((a[l]&1)==0){a[k+1|0]=0;a[l]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hi(k);b=s;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;di(s);b=r;a[f]=uc[c[(c[b>>2]|0)+12>>2]&127](o)|0;a[g]=uc[c[(c[b>>2]|0)+16>>2]&127](o)|0;qc[c[(c[e>>2]|0)+20>>2]&127](q,o);g=h;if((a[g]&1)==0){a[h+1|0]=0;a[g]=0}else{a[c[h+8>>2]|0]=0;c[h+4>>2]=0}hi(h);h=q;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];Xq(h|0,0,12)|0;di(q);qc[c[(c[e>>2]|0)+24>>2]&127](p,o);h=j;if((a[h]&1)==0){a[j+1|0]=0;a[h]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);b=p;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;di(p);b=uc[c[(c[r>>2]|0)+36>>2]&127](o)|0;c[m>>2]=b;i=n;return}}function $m(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;g=b;h=a[g]|0;if((h&1)==0){i=(h&255)>>>1}else{i=c[b+4>>2]|0}if((i|0)==0){return}do{if((d|0)!=(e|0)){i=e-4|0;if(i>>>0>d>>>0){h=d}else{break}do{j=c[h>>2]|0;c[h>>2]=c[i>>2];c[i>>2]=j;h=h+4|0;i=i-4|0;}while(h>>>0<i>>>0);h=a[g]|0}}while(0);if((h&1)==0){j=(h&255)>>>1;g=b+1|0}else{j=c[b+4>>2]|0;g=c[b+8>>2]|0}e=e-4|0;i=a[g]|0;h=i<<24>>24<1|i<<24>>24==127;a:do{if(e>>>0>d>>>0){b=g+j|0;while(1){if(!h){if((i<<24>>24|0)!=(c[d>>2]|0)){break}}g=(b-g|0)>1?g+1|0:g;d=d+4|0;i=a[g]|0;h=i<<24>>24<1|i<<24>>24==127;if(!(d>>>0<e>>>0)){break a}}c[f>>2]=4;return}}while(0);if(h){return}j=c[e>>2]|0;if(!(i<<24>>24>>>0<j>>>0|(j|0)==0)){return}c[f>>2]=4;return}function an(a){a=a|0;Gq(a);return}function bn(a){a=a|0;return}function cn(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var 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;d=i;i=i+592|0;x=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[x>>2];x=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[x>>2];x=d|0;v=d+16|0;u=d+416|0;p=d+424|0;t=d+432|0;r=d+440|0;q=d+448|0;s=d+488|0;l=u|0;c[l>>2]=v;m=u+4|0;c[m>>2]=150;v=v+400|0;Ei(t,h);o=t|0;w=c[o>>2]|0;if(!((c[278102]|0)==-1)){c[x>>2]=1112408;c[x+4>>2]=14;c[x+8>>2]=0;Wh(1112408,x)}x=(c[278103]|0)-1|0;y=c[w+8>>2]|0;do{if((c[w+12>>2]|0)-y>>2>>>0>x>>>0){w=c[y+(x<<2)>>2]|0;if((w|0)==0){break}x=w;a[r]=0;f=f|0;do{if(dn(e,c[f>>2]|0,g,t,c[h+4>>2]|0,j,r,x,u,p,v)|0){h=q|0;Cc[c[(c[w>>2]|0)+48>>2]&15](x,20040,20050,h)|0;s=s|0;v=c[p>>2]|0;t=c[l>>2]|0;g=v-t|0;do{if((g|0)>392){g=zq((g>>2)+2|0)|0;if((g|0)!=0){u=g;break}Lq();u=0;g=0}else{u=s;g=0}}while(0);if((a[r]|0)!=0){a[u]=45;u=u+1|0}if(t>>>0<v>>>0){r=q+40|0;do{v=h;while(1){if((v|0)==(r|0)){v=r;break}if((c[v>>2]|0)==(c[t>>2]|0)){break}else{v=v+4|0}}a[u]=a[20040+(v-q>>2)|0]|0;t=t+4|0;u=u+1|0;}while(t>>>0<(c[p>>2]|0)>>>0)}a[u]=0;y=Ub(s|0,17720,(x=i,i=i+8|0,c[x>>2]=k,x)|0)|0;i=x;if((y|0)==1){if((g|0)==0){break}Aq(g);break}y=ec(8)|0;Jh(y,17312);Ab(y|0,26104,64)}}while(0);e=e|0;k=c[e>>2]|0;do{if((k|0)==0){e=1;k=0}else{p=c[k+12>>2]|0;if((p|0)==(c[k+16>>2]|0)){p=uc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{p=c[p>>2]|0}if(!((p|0)==-1)){e=0;break}c[e>>2]=0;e=1;k=0}}while(0);p=c[f>>2]|0;do{if((p|0)==0){n=44}else{q=c[p+12>>2]|0;if((q|0)==(c[p+16>>2]|0)){p=uc[c[(c[p>>2]|0)+36>>2]&127](p)|0}else{p=c[q>>2]|0}if((p|0)==-1){c[f>>2]=0;n=44;break}else{if(e){break}else{n=46;break}}}}while(0);if((n|0)==44){if(e){n=46}}if((n|0)==46){c[j>>2]=c[j>>2]|2}c[b>>2]=k;Dh(c[o>>2]|0);j=c[l>>2]|0;c[l>>2]=0;if((j|0)==0){i=d;return}pc[c[m>>2]&255](j);i=d;return}}while(0);y=ec(4)|0;eq(y);Ab(y|0,26088,180)}function dn(b,e,f,g,h,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,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;p=i;i=i+528|0;A=p|0;V=p+8|0;x=p+408|0;z=p+416|0;B=p+424|0;r=p+432|0;q=p+448|0;u=p+464|0;s=p+480|0;t=p+496|0;y=p+512|0;v=p+520|0;c[A>>2]=o;U=V|0;D=r;Xq(D|0,0,12)|0;E=q;Xq(E|0,0,12)|0;o=u;Xq(o|0,0,12)|0;C=s;Xq(C|0,0,12)|0;F=t;Xq(F|0,0,12)|0;gn(f,g,x,z,B,r,q,u,s,y);g=m|0;c[n>>2]=c[g>>2];b=b|0;H=l;f=s+4|0;I=s+8|0;J=u+4|0;G=u+8|0;L=(h&512|0)!=0;O=q+4|0;P=q+8|0;K=t+4|0;N=t+8|0;M=x+3|0;h=r+4|0;S=150;T=U;V=V+400|0;Q=0;R=0;a:while(1){W=c[b>>2]|0;do{if((W|0)==0){W=1}else{X=c[W+12>>2]|0;if((X|0)==(c[W+16>>2]|0)){W=uc[c[(c[W>>2]|0)+36>>2]&127](W)|0}else{W=c[X>>2]|0}if((W|0)==-1){c[b>>2]=0;W=1;break}else{W=(c[b>>2]|0)==0;break}}}while(0);do{if((e|0)==0){w=15}else{X=c[e+12>>2]|0;if((X|0)==(c[e+16>>2]|0)){X=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{X=c[X>>2]|0}if((X|0)==-1){w=15;break}if(!W){w=291;break a}}}while(0);if((w|0)==15){w=0;if(W){e=0;w=291;break}else{e=0}}b:do{switch(a[x+Q|0]|0){case 4:{X=c[B>>2]|0;W=0;c:while(1){Y=c[b>>2]|0;do{if((Y|0)==0){Y=1}else{Z=c[Y+12>>2]|0;if((Z|0)==(c[Y+16>>2]|0)){Y=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{Y=c[Z>>2]|0}if((Y|0)==-1){c[b>>2]=0;Y=1;break}else{Y=(c[b>>2]|0)==0;break}}}while(0);do{if((e|0)==0){w=203}else{Z=c[e+12>>2]|0;if((Z|0)==(c[e+16>>2]|0)){Z=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{Z=c[Z>>2]|0}if((Z|0)==-1){w=203;break}if(!Y){break c}}}while(0);if((w|0)==203){w=0;if(Y){e=0;break}else{e=0}}Z=c[b>>2]|0;Y=c[Z+12>>2]|0;if((Y|0)==(c[Z+16>>2]|0)){Y=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0}else{Y=c[Y>>2]|0}if(vc[c[(c[H>>2]|0)+12>>2]&63](l,2048,Y)|0){Z=c[n>>2]|0;if((Z|0)==(c[A>>2]|0)){hn(m,n,A);Z=c[n>>2]|0}c[n>>2]=Z+4;c[Z>>2]=Y;W=W+1|0}else{Z=a[D]|0;if((Z&1)==0){Z=(Z&255)>>>1}else{Z=c[h>>2]|0}if(!((((Z|0)==0|(W|0)==0)^1)&(Y|0)==(X|0))){break}if((U|0)==(V|0)){U=U-T|0;V=U>>>0<2147483647>>>0?U<<1:-1;if((S|0)==150){T=0}else{}aa=Bq(T,V)|0;T=aa;if((aa|0)==0){Lq()}V=T+(V>>>2<<2)|0;U=T+(U>>2<<2)|0;S=74}c[U>>2]=W;W=0;U=U+4|0}_=c[b>>2]|0;Z=_+12|0;Y=c[Z>>2]|0;if((Y|0)==(c[_+16>>2]|0)){uc[c[(c[_>>2]|0)+40>>2]&127](_)|0;continue}else{c[Z>>2]=Y+4;continue}}if(!((T|0)==(U|0)|(W|0)==0)){if((U|0)==(V|0)){U=U-T|0;V=U>>>0<2147483647>>>0?U<<1:-1;if((S|0)==150){T=0}else{}aa=Bq(T,V)|0;T=aa;if((aa|0)==0){Lq()}V=T+(V>>>2<<2)|0;U=T+(U>>2<<2)|0;S=74}c[U>>2]=W;U=U+4|0}W=c[y>>2]|0;if((W|0)>0){X=c[b>>2]|0;do{if((X|0)==0){X=1}else{Y=c[X+12>>2]|0;if((Y|0)==(c[X+16>>2]|0)){X=uc[c[(c[X>>2]|0)+36>>2]&127](X)|0}else{X=c[Y>>2]|0}if((X|0)==-1){c[b>>2]=0;X=1;break}else{X=(c[b>>2]|0)==0;break}}}while(0);do{if((e|0)==0){w=249}else{Y=c[e+12>>2]|0;if((Y|0)==(c[e+16>>2]|0)){Y=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{Y=c[Y>>2]|0}if((Y|0)==-1){w=249;break}if(!X){w=255;break a}}}while(0);if((w|0)==249){w=0;if(X){w=255;break a}else{e=0}}Y=c[b>>2]|0;X=c[Y+12>>2]|0;if((X|0)==(c[Y+16>>2]|0)){X=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{X=c[X>>2]|0}if((X|0)!=(c[z>>2]|0)){w=255;break a}X=c[b>>2]|0;Y=X+12|0;Z=c[Y>>2]|0;if((Z|0)==(c[X+16>>2]|0)){uc[c[(c[X>>2]|0)+40>>2]&127](X)|0;Y=e;Z=e}else{c[Y>>2]=Z+4;Y=e;Z=e}while(1){_=c[b>>2]|0;do{if((_|0)==0){_=1}else{X=c[_+12>>2]|0;if((X|0)==(c[_+16>>2]|0)){X=uc[c[(c[_>>2]|0)+36>>2]&127](_)|0}else{X=c[X>>2]|0}if((X|0)==-1){c[b>>2]=0;_=1;break}else{_=(c[b>>2]|0)==0;break}}}while(0);do{if((Y|0)==0){X=Z;w=271}else{X=c[Y+12>>2]|0;if((X|0)==(c[Y+16>>2]|0)){X=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{X=c[X>>2]|0}if((X|0)==-1){X=0;e=0;w=271;break}if(_^(Z|0)==0){X=Z;Y=Z}else{w=278;break a}}}while(0);if((w|0)==271){w=0;if(_){w=278;break a}else{Y=0}}Z=c[b>>2]|0;_=c[Z+12>>2]|0;if((_|0)==(c[Z+16>>2]|0)){Z=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0}else{Z=c[_>>2]|0}if(!(vc[c[(c[H>>2]|0)+12>>2]&63](l,2048,Z)|0)){w=278;break a}if((c[n>>2]|0)==(c[A>>2]|0)){hn(m,n,A)}_=c[b>>2]|0;Z=c[_+12>>2]|0;if((Z|0)==(c[_+16>>2]|0)){Z=uc[c[(c[_>>2]|0)+36>>2]&127](_)|0}else{Z=c[Z>>2]|0}_=c[n>>2]|0;c[n>>2]=_+4;c[_>>2]=Z;W=W-1|0;c[y>>2]=W;Z=c[b>>2]|0;_=Z+12|0;$=c[_>>2]|0;if(($|0)==(c[Z+16>>2]|0)){uc[c[(c[Z>>2]|0)+40>>2]&127](Z)|0}else{c[_>>2]=$+4}if((W|0)>0){Z=X}else{break}}}if((c[n>>2]|0)==(c[g>>2]|0)){w=289;break a}break};case 1:{if((Q|0)==3){w=291;break a}w=c[b>>2]|0;W=c[w+12>>2]|0;if((W|0)==(c[w+16>>2]|0)){w=uc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{w=c[W>>2]|0}if(!(vc[c[(c[H>>2]|0)+12>>2]&63](l,8192,w)|0)){w=41;break a}w=c[b>>2]|0;X=w+12|0;W=c[X>>2]|0;if((W|0)==(c[w+16>>2]|0)){w=uc[c[(c[w>>2]|0)+40>>2]&127](w)|0}else{c[X>>2]=W+4;w=c[W>>2]|0}zi(t,w);w=42;break};case 0:{w=42;break};case 3:{W=a[o]|0;Y=(W&1)==0;if(Y){_=(W&255)>>>1}else{_=c[J>>2]|0}X=a[C]|0;Z=(X&1)==0;if(Z){$=(X&255)>>>1}else{$=c[f>>2]|0}if((_|0)==(-$|0)){break b}if(Y){_=(W&255)>>>1}else{_=c[J>>2]|0}do{if((_|0)!=0){if(Z){Z=(X&255)>>>1}else{Z=c[f>>2]|0}if((Z|0)==0){break}Y=c[b>>2]|0;_=c[Y+12>>2]|0;Z=c[Y+16>>2]|0;if((_|0)==(Z|0)){X=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0;Z=c[b>>2]|0;W=a[o]|0;Y=Z;_=c[Z+12>>2]|0;Z=c[Z+16>>2]|0}else{X=c[_>>2]|0}$=Y+12|0;Z=(_|0)==(Z|0);if((X|0)==(c[((W&1)==0?J:c[G>>2]|0)>>2]|0)){if(Z){uc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[$>>2]=_+4}W=a[o]|0;if((W&1)==0){W=(W&255)>>>1}else{W=c[J>>2]|0}R=W>>>0>1>>>0?u:R;break b}if(Z){W=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{W=c[_>>2]|0}if((W|0)!=(c[((a[C]&1)==0?f:c[I>>2]|0)>>2]|0)){w=133;break a}Y=c[b>>2]|0;X=Y+12|0;W=c[X>>2]|0;if((W|0)==(c[Y+16>>2]|0)){uc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[X>>2]=W+4}a[k]=1;W=a[C]|0;if((W&1)==0){W=(W&255)>>>1}else{W=c[f>>2]|0}R=W>>>0>1>>>0?s:R;break b}}while(0);if(Y){_=(W&255)>>>1}else{_=c[J>>2]|0}Z=c[b>>2]|0;Y=c[Z+12>>2]|0;$=(Y|0)==(c[Z+16>>2]|0);if((_|0)==0){if($){W=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0;X=a[C]|0}else{W=c[Y>>2]|0}if((W|0)!=(c[((X&1)==0?f:c[I>>2]|0)>>2]|0)){break b}Y=c[b>>2]|0;X=Y+12|0;W=c[X>>2]|0;if((W|0)==(c[Y+16>>2]|0)){uc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[X>>2]=W+4}a[k]=1;W=a[C]|0;if((W&1)==0){W=(W&255)>>>1}else{W=c[f>>2]|0}R=W>>>0>1>>>0?s:R;break b}if($){X=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0;W=a[o]|0}else{X=c[Y>>2]|0}if((X|0)!=(c[((W&1)==0?J:c[G>>2]|0)>>2]|0)){a[k]=1;break b}Y=c[b>>2]|0;X=Y+12|0;W=c[X>>2]|0;if((W|0)==(c[Y+16>>2]|0)){uc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[X>>2]=W+4}W=a[o]|0;if((W&1)==0){W=(W&255)>>>1}else{W=c[J>>2]|0}R=W>>>0>1>>>0?u:R;break};case 2:{if(!((R|0)!=0|Q>>>0<2>>>0)){if((Q|0)==2){W=(a[M]|0)!=0}else{W=0}if(!(L|W)){R=0;break b}}X=a[E]|0;W=(X&1)==0?O:c[P>>2]|0;d:do{if((Q|0)==0){Z=X;Y=e;X=e}else{if(!((d[x+(Q-1)|0]|0)>>>0<2>>>0)){Z=X;Y=e;X=e;break}while(1){if((X&1)==0){Z=(X&255)>>>1;Y=O}else{Z=c[O>>2]|0;Y=c[P>>2]|0}if((W|0)==(Y+(Z<<2)|0)){break}if(!(vc[c[(c[H>>2]|0)+12>>2]&63](l,8192,c[W>>2]|0)|0)){w=147;break}W=W+4|0;X=a[E]|0}if((w|0)==147){w=0;X=a[E]|0}Y=(X&1)==0?O:c[P>>2]|0;Z=W-Y>>2;_=a[F]|0;$=(_&1)==0;if($){aa=(_&255)>>>1}else{aa=c[K>>2]|0}if(Z>>>0>aa>>>0){W=Y;Z=X;Y=e;X=e;break}if($){$=(_&255)>>>1;_=$;aa=K;$=K+($-Z<<2)|0}else{ba=c[N>>2]|0;$=c[K>>2]|0;_=$;aa=ba;$=ba+($-Z<<2)|0}Z=aa+(_<<2)|0;if(($|0)==(Z|0)){Z=X;Y=e;X=e;break}else{_=Y}while(1){if((c[$>>2]|0)!=(c[_>>2]|0)){W=Y;Z=X;Y=e;X=e;break d}$=$+4|0;if(($|0)==(Z|0)){Z=X;Y=e;X=e;break d}_=_+4|0}}}while(0);e:while(1){if((Z&1)==0){Z=(Z&255)>>>1;_=O}else{Z=c[O>>2]|0;_=c[P>>2]|0}if((W|0)==(_+(Z<<2)|0)){break}Z=c[b>>2]|0;do{if((Z|0)==0){Z=1}else{_=c[Z+12>>2]|0;if((_|0)==(c[Z+16>>2]|0)){Z=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0}else{Z=c[_>>2]|0}if((Z|0)==-1){c[b>>2]=0;Z=1;break}else{Z=(c[b>>2]|0)==0;break}}}while(0);do{if((Y|0)==0){w=175}else{_=c[Y+12>>2]|0;if((_|0)==(c[Y+16>>2]|0)){Y=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{Y=c[_>>2]|0}if((Y|0)==-1){X=0;e=0;w=175;break}if(Z^(X|0)==0){Y=X}else{break e}}}while(0);if((w|0)==175){w=0;if(Z){break}else{Y=0}}_=c[b>>2]|0;Z=c[_+12>>2]|0;if((Z|0)==(c[_+16>>2]|0)){Z=uc[c[(c[_>>2]|0)+36>>2]&127](_)|0}else{Z=c[Z>>2]|0}if((Z|0)!=(c[W>>2]|0)){break}$=c[b>>2]|0;_=$+12|0;Z=c[_>>2]|0;if((Z|0)==(c[$+16>>2]|0)){uc[c[(c[$>>2]|0)+40>>2]&127]($)|0}else{c[_>>2]=Z+4}W=W+4|0;Z=a[E]|0}if(!L){break b}X=a[E]|0;if((X&1)==0){X=(X&255)>>>1;Y=O}else{X=c[O>>2]|0;Y=c[P>>2]|0}if((W|0)!=(Y+(X<<2)|0)){w=190;break a}break};default:{}}}while(0);f:do{if((w|0)==42){w=0;if((Q|0)==3){w=291;break a}else{W=e;X=e}while(1){Y=c[b>>2]|0;do{if((Y|0)==0){Y=1}else{Z=c[Y+12>>2]|0;if((Z|0)==(c[Y+16>>2]|0)){Y=uc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0}else{Y=c[Z>>2]|0}if((Y|0)==-1){c[b>>2]=0;Y=1;break}else{Y=(c[b>>2]|0)==0;break}}}while(0);do{if((W|0)==0){w=55}else{Z=c[W+12>>2]|0;if((Z|0)==(c[W+16>>2]|0)){W=uc[c[(c[W>>2]|0)+36>>2]&127](W)|0}else{W=c[Z>>2]|0}if((W|0)==-1){X=0;e=0;w=55;break}if(Y^(X|0)==0){W=X}else{break f}}}while(0);if((w|0)==55){w=0;if(Y){break f}else{W=0}}Z=c[b>>2]|0;Y=c[Z+12>>2]|0;if((Y|0)==(c[Z+16>>2]|0)){Y=uc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0}else{Y=c[Y>>2]|0}if(!(vc[c[(c[H>>2]|0)+12>>2]&63](l,8192,Y)|0)){break f}Y=c[b>>2]|0;_=Y+12|0;Z=c[_>>2]|0;if((Z|0)==(c[Y+16>>2]|0)){Y=uc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[_>>2]=Z+4;Y=c[Z>>2]|0}zi(t,Y)}}}while(0);Q=Q+1|0;if(!(Q>>>0<4>>>0)){w=291;break}}g:do{if((w|0)==41){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==133){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==190){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==255){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==278){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==289){c[j>>2]=c[j>>2]|4;v=0}else if((w|0)==291){h:do{if((R|0)!=0){n=R;k=R+4|0;x=R+8|0;y=1;i:while(1){z=a[n]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[k>>2]|0}if(!(y>>>0<z>>>0)){break h}A=c[b>>2]|0;do{if((A|0)==0){z=1}else{z=c[A+12>>2]|0;if((z|0)==(c[A+16>>2]|0)){z=uc[c[(c[A>>2]|0)+36>>2]&127](A)|0}else{z=c[z>>2]|0}if((z|0)==-1){c[b>>2]=0;z=1;break}else{z=(c[b>>2]|0)==0;break}}}while(0);do{if((e|0)==0){w=309}else{A=c[e+12>>2]|0;if((A|0)==(c[e+16>>2]|0)){A=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{A=c[A>>2]|0}if((A|0)==-1){w=309;break}if(!z){break i}}}while(0);if((w|0)==309){w=0;if(z){break}else{e=0}}z=c[b>>2]|0;A=c[z+12>>2]|0;if((A|0)==(c[z+16>>2]|0)){z=uc[c[(c[z>>2]|0)+36>>2]&127](z)|0}else{z=c[A>>2]|0}if((a[n]&1)==0){A=k}else{A=c[x>>2]|0}if((z|0)!=(c[A+(y<<2)>>2]|0)){break}y=y+1|0;m=c[b>>2]|0;A=m+12|0;z=c[A>>2]|0;if((z|0)==(c[m+16>>2]|0)){uc[c[(c[m>>2]|0)+40>>2]&127](m)|0;continue}else{c[A>>2]=z+4;continue}}c[j>>2]=c[j>>2]|4;v=0;break g}}while(0);if((T|0)==(U|0)){v=1;T=U;break}c[v>>2]=0;$m(r,T,U,v);if((c[v>>2]|0)==0){v=1;break}c[j>>2]=c[j>>2]|4;v=0}}while(0);vi(t);vi(s);vi(u);vi(q);di(r);if((T|0)==0){i=p;return v|0}pc[S&255](T);i=p;return v|0}function en(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+448|0;v=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[v>>2];v=f;f=i;i=i+4|0;i=i+7&-8;c[f>>2]=c[v>>2];v=m|0;t=m+16|0;s=m+416|0;q=m+424|0;u=m+432|0;r=m+440|0;d=s|0;c[d>>2]=t;n=s+4|0;c[n>>2]=150;t=t+400|0;Ei(u,h);o=u|0;p=c[o>>2]|0;if(!((c[278102]|0)==-1)){c[v>>2]=1112408;c[v+4>>2]=14;c[v+8>>2]=0;Wh(1112408,v)}v=(c[278103]|0)-1|0;w=c[p+8>>2]|0;do{if((c[p+12>>2]|0)-w>>2>>>0>v>>>0){w=c[w+(v<<2)>>2]|0;if((w|0)==0){break}v=w;a[r]=0;f=f|0;p=c[f>>2]|0;if(dn(e,p,g,u,c[h+4>>2]|0,j,r,v,s,q,t)|0){g=k;if((a[g]&1)==0){c[k+4>>2]=0;a[g]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}if((a[r]|0)!=0){zi(k,rc[c[(c[w>>2]|0)+44>>2]&31](v,45)|0)}r=rc[c[(c[w>>2]|0)+44>>2]&31](v,48)|0;g=c[q>>2]|0;h=g-4|0;q=c[d>>2]|0;while(1){if(!(q>>>0<h>>>0)){break}if((c[q>>2]|0)==(r|0)){q=q+4|0}else{break}}fn(k,q,g)}k=e|0;e=c[k>>2]|0;do{if((e|0)==0){k=1;e=0}else{q=c[e+12>>2]|0;if((q|0)==(c[e+16>>2]|0)){q=uc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{q=c[q>>2]|0}if(!((q|0)==-1)){k=0;break}c[k>>2]=0;k=1;e=0}}while(0);do{if((p|0)==0){l=32}else{q=c[p+12>>2]|0;if((q|0)==(c[p+16>>2]|0)){p=uc[c[(c[p>>2]|0)+36>>2]&127](p)|0}else{p=c[q>>2]|0}if((p|0)==-1){c[f>>2]=0;l=32;break}else{if(k){break}else{l=34;break}}}}while(0);if((l|0)==32){if(k){l=34}}if((l|0)==34){c[j>>2]=c[j>>2]|2}c[b>>2]=e;Dh(c[o>>2]|0);l=c[d>>2]|0;c[d>>2]=0;if((l|0)==0){i=m;return}pc[c[n>>2]&255](l);i=m;return}}while(0);w=ec(4)|0;eq(w);Ab(w|0,26088,180)}function fn(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;f=b;i=d;g=a[f]|0;if((g&1)==0){k=1;j=g;h=(g&255)>>>1}else{j=c[b>>2]|0;k=(j&-2)-1|0;j=j&255;h=c[b+4>>2]|0}g=e-i>>2;if((g|0)==0){return}if((k-h|0)>>>0<g>>>0){Bi(b,k,h+g-k|0,h,h,0,0);j=a[f]|0}if((j&1)==0){j=b+4|0}else{j=c[b+8>>2]|0}k=j+(h<<2)|0;if((d|0)!=(e|0)){i=h+((e-4+(-i|0)|0)>>>2)+1|0;while(1){c[k>>2]=c[d>>2];d=d+4|0;if((d|0)==(e|0)){break}else{k=k+4|0}}k=j+(i<<2)|0}c[k>>2]=0;g=h+g|0;if((a[f]&1)==0){a[f]=g<<1;return}else{c[b+4>>2]=g;return}}function gn(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;n=i;i=i+176|0;z=n|0;y=n+16|0;x=n+32|0;v=n+40|0;t=n+56|0;r=n+72|0;o=n+88|0;w=n+104|0;u=n+112|0;s=n+128|0;q=n+144|0;p=n+160|0;if(b){p=c[d>>2]|0;if(!((c[278218]|0)==-1)){c[y>>2]=1112872;c[y+4>>2]=14;c[y+8>>2]=0;Wh(1112872,y)}s=(c[278219]|0)-1|0;q=c[p+8>>2]|0;if(!((c[p+12>>2]|0)-q>>2>>>0>s>>>0)){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}q=c[q+(s<<2)>>2]|0;if((q|0)==0){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}p=q;qc[c[(c[q>>2]|0)+44>>2]&127](x,p);B=c[x>>2]|0;a[e]=B;B=B>>8;a[e+1|0]=B;B=B>>8;a[e+2|0]=B;B=B>>8;a[e+3|0]=B;e=q;qc[c[(c[e>>2]|0)+32>>2]&127](v,p);s=l;if((a[s]&1)==0){c[l+4>>2]=0;a[s]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);l=v;c[s>>2]=c[l>>2];c[s+4>>2]=c[l+4>>2];c[s+8>>2]=c[l+8>>2];Xq(l|0,0,12)|0;vi(v);qc[c[(c[e>>2]|0)+28>>2]&127](t,p);l=k;if((a[l]&1)==0){c[k+4>>2]=0;a[l]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}yi(k);k=t;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];Xq(k|0,0,12)|0;vi(t);k=q;c[f>>2]=uc[c[(c[k>>2]|0)+12>>2]&127](p)|0;c[g>>2]=uc[c[(c[k>>2]|0)+16>>2]&127](p)|0;qc[c[(c[q>>2]|0)+20>>2]&127](r,p);g=h;if((a[g]&1)==0){a[h+1|0]=0;a[g]=0}else{a[c[h+8>>2]|0]=0;c[h+4>>2]=0}hi(h);h=r;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];Xq(h|0,0,12)|0;di(r);qc[c[(c[e>>2]|0)+24>>2]&127](o,p);h=j;if((a[h]&1)==0){c[j+4>>2]=0;a[h]=0}else{c[c[j+8>>2]>>2]=0;c[j+4>>2]=0}yi(j);b=o;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;vi(o);b=uc[c[(c[k>>2]|0)+36>>2]&127](p)|0;c[m>>2]=b;i=n;return}else{o=c[d>>2]|0;if(!((c[278220]|0)==-1)){c[z>>2]=1112880;c[z+4>>2]=14;c[z+8>>2]=0;Wh(1112880,z)}t=(c[278221]|0)-1|0;r=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-r>>2>>>0>t>>>0)){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}r=c[r+(t<<2)>>2]|0;if((r|0)==0){b=ec(4)|0;d=b;eq(d);Ab(b|0,26088,180)}o=r;qc[c[(c[r>>2]|0)+44>>2]&127](w,o);B=c[w>>2]|0;a[e]=B;B=B>>8;a[e+1|0]=B;B=B>>8;a[e+2|0]=B;B=B>>8;a[e+3|0]=B;e=r;qc[c[(c[e>>2]|0)+32>>2]&127](u,o);t=l;if((a[t]&1)==0){c[l+4>>2]=0;a[t]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);l=u;c[t>>2]=c[l>>2];c[t+4>>2]=c[l+4>>2];c[t+8>>2]=c[l+8>>2];Xq(l|0,0,12)|0;vi(u);qc[c[(c[e>>2]|0)+28>>2]&127](s,o);l=k;if((a[l]&1)==0){c[k+4>>2]=0;a[l]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}yi(k);k=s;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];Xq(k|0,0,12)|0;vi(s);k=r;c[f>>2]=uc[c[(c[k>>2]|0)+12>>2]&127](o)|0;c[g>>2]=uc[c[(c[k>>2]|0)+16>>2]&127](o)|0;qc[c[(c[r>>2]|0)+20>>2]&127](q,o);g=h;if((a[g]&1)==0){a[h+1|0]=0;a[g]=0}else{a[c[h+8>>2]|0]=0;c[h+4>>2]=0}hi(h);h=q;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];Xq(h|0,0,12)|0;di(q);qc[c[(c[e>>2]|0)+24>>2]&127](p,o);h=j;if((a[h]&1)==0){c[j+4>>2]=0;a[h]=0}else{c[c[j+8>>2]>>2]=0;c[j+4>>2]=0}yi(j);b=p;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];Xq(b|0,0,12)|0;vi(p);b=uc[c[(c[k>>2]|0)+36>>2]&127](o)|0;c[m>>2]=b;i=n;return}}function hn(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;e=a+4|0;f=(c[e>>2]|0)!=150;a=a|0;i=c[a>>2]|0;h=i;g=(c[d>>2]|0)-h|0;g=g>>>0<2147483647>>>0?g<<1:-1;h=(c[b>>2]|0)-h>>2;if(f){}else{i=0}j=Bq(i,g)|0;i=j;if((j|0)==0){Lq()}do{if(f){c[a>>2]=i}else{f=c[a>>2]|0;c[a>>2]=i;if((f|0)==0){break}pc[c[e>>2]&255](f);i=c[a>>2]|0}}while(0);c[e>>2]=74;c[b>>2]=i+(h<<2);c[d>>2]=(c[a>>2]|0)+(g>>>2<<2);return}function jn(a){a=a|0;Gq(a);return}function kn(a){a=a|0;return}function ln(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=+k;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;l=i;i=i+440|0;y=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[y>>2];y=l|0;z=l+120|0;x=l+232|0;q=l+240|0;m=l+248|0;n=l+256|0;r=l+264|0;o=l+280|0;p=l+296|0;A=l+312|0;B=l+320|0;s=l+424|0;d=l+432|0;D=l+16|0;c[z>>2]=D;t=l+128|0;u=_a(D|0,100,16968,(D=i,i=i+8|0,h[D>>3]=k,D)|0)|0;i=D;do{if(u>>>0>99>>>0){do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);u=cl(z,c[277746]|0,16968,(w=i,i=i+8|0,h[w>>3]=k,w)|0)|0;i=w;w=c[z>>2]|0;if((w|0)==0){Lq();w=c[z>>2]|0}v=zq(u)|0;if((v|0)!=0){t=v;break}Lq();t=0;v=0}else{v=0;w=0}}while(0);Ei(x,g);x=c[x>>2]|0;if(!((c[278104]|0)==-1)){c[y>>2]=1112416;c[y+4>>2]=14;c[y+8>>2]=0;Wh(1112416,y)}y=(c[278105]|0)-1|0;C=c[x+8>>2]|0;do{if((c[x+12>>2]|0)-C>>2>>>0>y>>>0){C=c[C+(y<<2)>>2]|0;if((C|0)==0){break}y=C;D=c[z>>2]|0;Cc[c[(c[C>>2]|0)+32>>2]&15](y,D,D+u|0,t)|0;if((u|0)==0){z=0}else{z=(a[c[z>>2]|0]|0)==45}Xq(r|0,0,12)|0;C=o;Xq(C|0,0,12)|0;D=p;Xq(D|0,0,12)|0;mn(f,z,x,q,m,n,r,o,p,A);B=B|0;f=c[A>>2]|0;if((u|0)>(f|0)){A=a[D]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[p+4>>2]|0}C=a[C]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[o+4>>2]|0}A=A+(u-f<<1|1)+C|0}else{A=a[D]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[p+4>>2]|0}C=a[C]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[o+4>>2]|0}A=A+2+C|0}A=A+f|0;do{if(A>>>0>100>>>0){A=zq(A)|0;if((A|0)!=0){B=A;break}Lq();B=0;A=0}else{A=0}}while(0);nn(B,s,d,c[g+4>>2]|0,t,t+u|0,y,z,q,a[m]|0,a[n]|0,r,o,p,f);Zk(b,c[e>>2]|0,B,c[s>>2]|0,c[d>>2]|0,g,j);if((A|0)!=0){Aq(A)}di(p);di(o);di(r);Dh(x|0);if((v|0)!=0){Aq(v)}if((w|0)==0){i=l;return}Aq(w);i=l;return}}while(0);D=ec(4)|0;eq(D);Ab(D|0,26088,180)}function mn(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,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;n=i;i=i+40|0;F=n|0;G=n+16|0;C=n+32|0;E=C;t=i;i=i+12|0;i=i+7&-8;y=i;i=i+4|0;i=i+7&-8;z=y;u=i;i=i+12|0;i=i+7&-8;r=i;i=i+12|0;i=i+7&-8;o=i;i=i+12|0;i=i+7&-8;A=i;i=i+4|0;i=i+7&-8;x=A;v=i;i=i+12|0;i=i+7&-8;w=i;i=i+4|0;i=i+7&-8;D=w;s=i;i=i+12|0;i=i+7&-8;q=i;i=i+12|0;i=i+7&-8;p=i;i=i+12|0;i=i+7&-8;if(b){if(!((c[278222]|0)==-1)){c[G>>2]=1112888;c[G+4>>2]=14;c[G+8>>2]=0;Wh(1112888,G)}q=(c[278223]|0)-1|0;p=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-p>>2>>>0>q>>>0)){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}p=c[p+(q<<2)>>2]|0;if((p|0)==0){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}q=p;s=c[p>>2]|0;if(d){qc[c[s+44>>2]&127](E,q);B=c[C>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[p>>2]|0)+32>>2]&127](t,q);f=l;if((a[f]&1)==0){a[l+1|0]=0;a[f]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);G=t;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(t)}else{qc[c[s+40>>2]&127](z,q);B=c[y>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[p>>2]|0)+28>>2]&127](u,q);f=l;if((a[f]&1)==0){a[l+1|0]=0;a[f]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);G=u;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(u)}l=p;a[g]=uc[c[(c[l>>2]|0)+12>>2]&127](q)|0;a[h]=uc[c[(c[l>>2]|0)+16>>2]&127](q)|0;l=p;qc[c[(c[l>>2]|0)+20>>2]&127](r,q);h=j;if((a[h]&1)==0){a[j+1|0]=0;a[h]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);j=r;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];Xq(j|0,0,12)|0;di(r);qc[c[(c[l>>2]|0)+24>>2]&127](o,q);j=k;if((a[j]&1)==0){a[k+1|0]=0;a[j]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hi(k);G=o;c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(o);G=uc[c[(c[p>>2]|0)+36>>2]&127](q)|0;c[m>>2]=G;i=n;return}else{if(!((c[278224]|0)==-1)){c[F>>2]=1112896;c[F+4>>2]=14;c[F+8>>2]=0;Wh(1112896,F)}o=(c[278225]|0)-1|0;r=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-r>>2>>>0>o>>>0)){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}r=c[r+(o<<2)>>2]|0;if((r|0)==0){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}o=r;t=c[r>>2]|0;if(d){qc[c[t+44>>2]&127](x,o);B=c[A>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[r>>2]|0)+32>>2]&127](v,o);f=l;if((a[f]&1)==0){a[l+1|0]=0;a[f]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);G=v;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(v)}else{qc[c[t+40>>2]&127](D,o);B=c[w>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[r>>2]|0)+28>>2]&127](s,o);f=l;if((a[f]&1)==0){a[l+1|0]=0;a[f]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hi(l);G=s;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(s)}l=r;a[g]=uc[c[(c[l>>2]|0)+12>>2]&127](o)|0;a[h]=uc[c[(c[l>>2]|0)+16>>2]&127](o)|0;h=r;qc[c[(c[h>>2]|0)+20>>2]&127](q,o);l=j;if((a[l]&1)==0){a[j+1|0]=0;a[l]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);j=q;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];Xq(j|0,0,12)|0;di(q);qc[c[(c[h>>2]|0)+24>>2]&127](p,o);j=k;if((a[j]&1)==0){a[k+1|0]=0;a[j]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hi(k);G=p;c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;di(p);G=uc[c[(c[r>>2]|0)+36>>2]&127](o)|0;c[m>>2]=G;i=n;return}}function nn(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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;c[f>>2]=d;w=j;v=q;s=q+1|0;t=q+8|0;q=q+4|0;A=p;z=(g&512|0)==0;y=p+1|0;x=p+8|0;D=p+4|0;E=j+8|0;F=(r|0)>0;p=o;C=o+1|0;B=o+8|0;o=o+4|0;G=-r|0;H=0;do{a:do{switch(a[l+H|0]|0){case 2:{I=a[A]|0;J=(I&1)==0;if(J){K=(I&255)>>>1}else{K=c[D>>2]|0}if((K|0)==0|z){break a}if(J){I=(I&255)>>>1;J=y}else{I=c[D>>2]|0;J=c[x>>2]|0}I=J+I|0;K=c[f>>2]|0;if((J|0)!=(I|0)){do{a[K]=a[J]|0;J=J+1|0;K=K+1|0;}while((J|0)!=(I|0))}c[f>>2]=K;break};case 0:{c[e>>2]=c[f>>2];break};case 1:{c[e>>2]=c[f>>2];N=rc[c[(c[w>>2]|0)+28>>2]&31](j,32)|0;O=c[f>>2]|0;c[f>>2]=O+1;a[O]=N;break};case 3:{J=a[v]|0;I=(J&1)==0;if(I){J=(J&255)>>>1}else{J=c[q>>2]|0}if((J|0)==0){break a}if(I){I=s}else{I=c[t>>2]|0}N=a[I]|0;O=c[f>>2]|0;c[f>>2]=O+1;a[O]=N;break};case 4:{I=c[f>>2]|0;h=k?h+1|0:h;J=h;while(1){if(!(J>>>0<i>>>0)){break}K=a[J]|0;if(K<<24>>24<0){break}if((b[(c[E>>2]|0)+(K<<24>>24<<1)>>1]&2048)==0){break}else{J=J+1|0}}K=J;if(F){if(J>>>0>h>>>0){K=h+(-K|0)|0;K=K>>>0<G>>>0?G:K;L=K+r|0;M=J;O=r;N=I;while(1){M=M-1|0;P=a[M]|0;c[f>>2]=N+1;a[N]=P;O=O-1|0;N=(O|0)>0;if(!(M>>>0>h>>>0&N)){break}N=c[f>>2]|0}J=J+K|0;if(N){u=32}else{K=0}}else{L=r;u=32}if((u|0)==32){u=0;K=rc[c[(c[w>>2]|0)+28>>2]&31](j,48)|0}M=c[f>>2]|0;c[f>>2]=M+1;if((L|0)>0){do{a[M]=K;L=L-1|0;M=c[f>>2]|0;c[f>>2]=M+1}while((L|0)>0)}a[M]=m}if((J|0)==(h|0)){O=rc[c[(c[w>>2]|0)+28>>2]&31](j,48)|0;P=c[f>>2]|0;c[f>>2]=P+1;a[P]=O}else{L=a[p]|0;K=(L&1)==0;if(K){L=(L&255)>>>1}else{L=c[o>>2]|0}if((L|0)==0){M=0;K=0;L=-1}else{if(K){L=C}else{L=c[B>>2]|0}M=0;K=0;L=a[L]|0}while(1){do{if((M|0)==(L|0)){N=c[f>>2]|0;c[f>>2]=N+1;a[N]=n;K=K+1|0;N=a[p]|0;M=(N&1)==0;if(M){N=(N&255)>>>1}else{N=c[o>>2]|0}if(!(K>>>0<N>>>0)){M=0;break}if(M){L=C}else{L=c[B>>2]|0}if((a[L+K|0]|0)==127){L=-1;M=0;break}if(M){L=C}else{L=c[B>>2]|0}L=a[L+K|0]|0;M=0}}while(0);J=J-1|0;O=a[J]|0;P=c[f>>2]|0;c[f>>2]=P+1;a[P]=O;if((J|0)==(h|0)){break}else{M=M+1|0}}}J=c[f>>2]|0;if((I|0)==(J|0)){break a}J=J-1|0;if(!(J>>>0>I>>>0)){break a}do{P=a[I]|0;a[I]=a[J]|0;a[J]=P;I=I+1|0;J=J-1|0;}while(I>>>0<J>>>0);break};default:{}}}while(0);H=H+1|0;}while(H>>>0<4>>>0);u=a[v]|0;v=(u&1)==0;if(v){l=(u&255)>>>1}else{l=c[q>>2]|0}if(l>>>0>1>>>0){if(v){q=(u&255)>>>1}else{q=c[q>>2]|0;s=c[t>>2]|0}t=s+1|0;s=s+q|0;q=c[f>>2]|0;if((t|0)!=(s|0)){do{a[q]=a[t]|0;t=t+1|0;q=q+1|0;}while((t|0)!=(s|0))}c[f>>2]=q}g=g&176;if((g|0)==32){c[e>>2]=c[f>>2];return}else if((g|0)==16){return}else{c[e>>2]=d;return}}function on(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;n=i;i=i+224|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;m=n+16|0;r=n+24|0;q=n+32|0;s=n+40|0;d=n+48|0;k=n+64|0;l=n+80|0;w=n+96|0;x=n+104|0;o=n+208|0;p=n+216|0;Ei(m,g);m=c[m>>2]|0;if(!((c[278104]|0)==-1)){c[t>>2]=1112416;c[t+4>>2]=14;c[t+8>>2]=0;Wh(1112416,t)}t=(c[278105]|0)-1|0;u=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-u>>2>>>0>t>>>0){v=c[u+(t<<2)>>2]|0;if((v|0)==0){break}t=v;u=j;z=a[u]|0;y=(z&1)==0;if(y){z=(z&255)>>>1}else{z=c[j+4>>2]|0}if((z|0)==0){v=0}else{if(y){y=j+1|0}else{y=c[j+8>>2]|0}B=a[y]|0;v=B<<24>>24==(rc[c[(c[v>>2]|0)+28>>2]&31](t,45)|0)<<24>>24}Xq(d|0,0,12)|0;y=k;Xq(y|0,0,12)|0;z=l;Xq(z|0,0,12)|0;mn(f,v,m,r,q,s,d,k,l,w);x=x|0;f=a[u]|0;A=(f&1)==0;if(A){B=(f&255)>>>1}else{B=c[j+4>>2]|0}w=c[w>>2]|0;if((B|0)>(w|0)){if(A){A=(f&255)>>>1}else{A=c[j+4>>2]|0}z=a[z]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[l+4>>2]|0}y=a[y]|0;if((y&1)==0){y=(y&255)>>>1}else{y=c[k+4>>2]|0}y=z+(A-w<<1|1)+y|0}else{z=a[z]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[l+4>>2]|0}y=a[y]|0;if((y&1)==0){y=(y&255)>>>1}else{y=c[k+4>>2]|0}y=z+2+y|0}y=y+w|0;do{if(y>>>0>100>>>0){y=zq(y)|0;if((y|0)!=0){x=y;break}Lq();x=0;y=0;f=a[u]|0}else{y=0}}while(0);if((f&1)==0){u=(f&255)>>>1;j=j+1|0}else{u=c[j+4>>2]|0;j=c[j+8>>2]|0}nn(x,o,p,c[g+4>>2]|0,j,j+u|0,t,v,r,a[q]|0,a[s]|0,d,k,l,w);Zk(b,c[e>>2]|0,x,c[o>>2]|0,c[p>>2]|0,g,h);if((y|0)==0){di(l);di(k);di(d);B=m|0;Dh(B);i=n;return}Aq(y);di(l);di(k);di(d);B=m|0;Dh(B);i=n;return}}while(0);B=ec(4)|0;eq(B);Ab(B|0,26088,180)}function pn(a){a=a|0;Gq(a);return}function qn(a){a=a|0;return}function rn(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=+k;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;l=i;i=i+1032|0;y=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[y>>2];y=l|0;z=l+120|0;x=l+528|0;q=l+536|0;m=l+544|0;n=l+552|0;r=l+560|0;o=l+576|0;p=l+592|0;A=l+608|0;B=l+616|0;s=l+1016|0;d=l+1024|0;D=l+16|0;c[z>>2]=D;t=l+128|0;u=_a(D|0,100,16968,(D=i,i=i+8|0,h[D>>3]=k,D)|0)|0;i=D;do{if(u>>>0>99>>>0){do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);u=cl(z,c[277746]|0,16968,(w=i,i=i+8|0,h[w>>3]=k,w)|0)|0;i=w;w=c[z>>2]|0;if((w|0)==0){Lq();w=c[z>>2]|0}D=zq(u<<2)|0;v=D;if((D|0)!=0){t=v;break}Lq();t=0;v=0}else{v=0;w=0}}while(0);Ei(x,g);x=c[x>>2]|0;if(!((c[278102]|0)==-1)){c[y>>2]=1112408;c[y+4>>2]=14;c[y+8>>2]=0;Wh(1112408,y)}y=(c[278103]|0)-1|0;C=c[x+8>>2]|0;do{if((c[x+12>>2]|0)-C>>2>>>0>y>>>0){C=c[C+(y<<2)>>2]|0;if((C|0)==0){break}y=C;D=c[z>>2]|0;Cc[c[(c[C>>2]|0)+48>>2]&15](y,D,D+u|0,t)|0;if((u|0)==0){z=0}else{z=(a[c[z>>2]|0]|0)==45}Xq(r|0,0,12)|0;C=o;Xq(C|0,0,12)|0;D=p;Xq(D|0,0,12)|0;sn(f,z,x,q,m,n,r,o,p,A);B=B|0;f=c[A>>2]|0;if((u|0)>(f|0)){A=a[D]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[p+4>>2]|0}C=a[C]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[o+4>>2]|0}A=A+(u-f<<1|1)+C|0}else{A=a[D]|0;if((A&1)==0){A=(A&255)>>>1}else{A=c[p+4>>2]|0}C=a[C]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[o+4>>2]|0}A=A+2+C|0}A=A+f|0;do{if(A>>>0>100>>>0){D=zq(A<<2)|0;A=D;if((D|0)!=0){B=A;break}Lq();B=0;A=0}else{A=0}}while(0);tn(B,s,d,c[g+4>>2]|0,t,t+(u<<2)|0,y,z,q,c[m>>2]|0,c[n>>2]|0,r,o,p,f);ll(b,c[e>>2]|0,B,c[s>>2]|0,c[d>>2]|0,g,j);if((A|0)!=0){Aq(A)}vi(p);vi(o);di(r);Dh(x|0);if((v|0)!=0){Aq(v)}if((w|0)==0){i=l;return}Aq(w);i=l;return}}while(0);D=ec(4)|0;eq(D);Ab(D|0,26088,180)}function sn(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,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;n=i;i=i+40|0;F=n|0;G=n+16|0;C=n+32|0;E=C;t=i;i=i+12|0;i=i+7&-8;y=i;i=i+4|0;i=i+7&-8;z=y;u=i;i=i+12|0;i=i+7&-8;r=i;i=i+12|0;i=i+7&-8;o=i;i=i+12|0;i=i+7&-8;A=i;i=i+4|0;i=i+7&-8;x=A;v=i;i=i+12|0;i=i+7&-8;w=i;i=i+4|0;i=i+7&-8;D=w;s=i;i=i+12|0;i=i+7&-8;q=i;i=i+12|0;i=i+7&-8;p=i;i=i+12|0;i=i+7&-8;if(b){if(!((c[278218]|0)==-1)){c[G>>2]=1112872;c[G+4>>2]=14;c[G+8>>2]=0;Wh(1112872,G)}q=(c[278219]|0)-1|0;p=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-p>>2>>>0>q>>>0)){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}q=c[p+(q<<2)>>2]|0;if((q|0)==0){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}p=q;s=c[q>>2]|0;if(d){qc[c[s+44>>2]&127](E,p);B=c[C>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[q>>2]|0)+32>>2]&127](t,p);f=l;if((a[f]&1)==0){c[l+4>>2]=0;a[f]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);G=t;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(t)}else{qc[c[s+40>>2]&127](z,p);B=c[y>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[q>>2]|0)+28>>2]&127](u,p);f=l;if((a[f]&1)==0){c[l+4>>2]=0;a[f]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);G=u;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(u)}l=q;c[g>>2]=uc[c[(c[l>>2]|0)+12>>2]&127](p)|0;c[h>>2]=uc[c[(c[l>>2]|0)+16>>2]&127](p)|0;qc[c[(c[q>>2]|0)+20>>2]&127](r,p);h=j;if((a[h]&1)==0){a[j+1|0]=0;a[h]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);j=r;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];Xq(j|0,0,12)|0;di(r);qc[c[(c[q>>2]|0)+24>>2]&127](o,p);j=k;if((a[j]&1)==0){c[k+4>>2]=0;a[j]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}yi(k);G=o;c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(o);G=uc[c[(c[l>>2]|0)+36>>2]&127](p)|0;c[m>>2]=G;i=n;return}else{if(!((c[278220]|0)==-1)){c[F>>2]=1112880;c[F+4>>2]=14;c[F+8>>2]=0;Wh(1112880,F)}o=(c[278221]|0)-1|0;r=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-r>>2>>>0>o>>>0)){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}r=c[r+(o<<2)>>2]|0;if((r|0)==0){G=ec(4)|0;b=G;eq(b);Ab(G|0,26088,180)}o=r;t=c[r>>2]|0;if(d){qc[c[t+44>>2]&127](x,o);B=c[A>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[r>>2]|0)+32>>2]&127](v,o);f=l;if((a[f]&1)==0){c[l+4>>2]=0;a[f]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);G=v;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(v)}else{qc[c[t+40>>2]&127](D,o);B=c[w>>2]|0;a[f]=B;B=B>>8;a[f+1|0]=B;B=B>>8;a[f+2|0]=B;B=B>>8;a[f+3|0]=B;qc[c[(c[r>>2]|0)+28>>2]&127](s,o);f=l;if((a[f]&1)==0){c[l+4>>2]=0;a[f]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}yi(l);G=s;c[f>>2]=c[G>>2];c[f+4>>2]=c[G+4>>2];c[f+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(s)}l=r;c[g>>2]=uc[c[(c[l>>2]|0)+12>>2]&127](o)|0;c[h>>2]=uc[c[(c[l>>2]|0)+16>>2]&127](o)|0;qc[c[(c[r>>2]|0)+20>>2]&127](q,o);h=j;if((a[h]&1)==0){a[j+1|0]=0;a[h]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hi(j);j=q;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];Xq(j|0,0,12)|0;di(q);qc[c[(c[r>>2]|0)+24>>2]&127](p,o);j=k;if((a[j]&1)==0){c[k+4>>2]=0;a[j]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}yi(k);G=p;c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];Xq(G|0,0,12)|0;vi(p);G=uc[c[(c[l>>2]|0)+36>>2]&127](o)|0;c[m>>2]=G;i=n;return}}function tn(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var 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;c[e>>2]=b;u=i;s=p;r=p+4|0;p=p+8|0;x=o;w=(f&512|0)==0;v=o+4|0;z=o+8|0;y=i;o=(q|0)>0;C=n;B=n+1|0;A=n+8|0;n=n+4|0;D=0;do{a:do{switch(a[k+D|0]|0){case 0:{c[d>>2]=c[e>>2];break};case 4:{E=c[e>>2]|0;g=j?g+4|0:g;F=g;while(1){if(!(F>>>0<h>>>0)){break}if(vc[c[(c[y>>2]|0)+12>>2]&63](i,2048,c[F>>2]|0)|0){F=F+4|0}else{break}}if(o){do{if(F>>>0>g>>>0){G=q;H=c[e>>2]|0;while(1){F=F-4|0;I=H+4|0;c[H>>2]=c[F>>2];G=G-1|0;J=(G|0)>0;if(F>>>0>g>>>0&J){H=I}else{break}}c[e>>2]=I;if(J){t=34;break}c[e>>2]=H+8}else{G=q;t=34}}while(0);do{if((t|0)==34){t=0;H=rc[c[(c[u>>2]|0)+44>>2]&31](i,48)|0;I=c[e>>2]|0;J=I+4|0;c[e>>2]=J;if((G|0)>0){K=G;L=I}else{break}while(1){c[L>>2]=H;K=K-1|0;if((K|0)>0){L=J;J=J+4|0}else{break}}c[e>>2]=I+(G+1<<2);I=I+(G<<2)|0}}while(0);c[I>>2]=l}if((F|0)==(g|0)){K=rc[c[(c[u>>2]|0)+44>>2]&31](i,48)|0;L=c[e>>2]|0;F=L+4|0;c[e>>2]=F;c[L>>2]=K}else{H=a[C]|0;G=(H&1)==0;if(G){H=(H&255)>>>1}else{H=c[n>>2]|0}if((H|0)==0){I=0;G=0;H=-1}else{if(G){H=B}else{H=c[A>>2]|0}I=0;G=0;H=a[H]|0}while(1){do{if((I|0)==(H|0)){J=c[e>>2]|0;c[e>>2]=J+4;c[J>>2]=m;G=G+1|0;J=a[C]|0;I=(J&1)==0;if(I){J=(J&255)>>>1}else{J=c[n>>2]|0}if(!(G>>>0<J>>>0)){I=0;break}if(I){H=B}else{H=c[A>>2]|0}if((a[H+G|0]|0)==127){H=-1;I=0;break}if(I){H=B}else{H=c[A>>2]|0}H=a[H+G|0]|0;I=0}}while(0);F=F-4|0;K=c[F>>2]|0;L=c[e>>2]|0;c[e>>2]=L+4;c[L>>2]=K;if((F|0)==(g|0)){break}else{I=I+1|0}}F=c[e>>2]|0}if((E|0)==(F|0)){break a}F=F-4|0;if(!(F>>>0>E>>>0)){break a}do{L=c[E>>2]|0;c[E>>2]=c[F>>2];c[F>>2]=L;E=E+4|0;F=F-4|0;}while(E>>>0<F>>>0);break};case 2:{E=a[x]|0;F=(E&1)==0;if(F){G=(E&255)>>>1}else{G=c[v>>2]|0}if((G|0)==0|w){break a}if(F){G=(E&255)>>>1;I=v}else{G=c[v>>2]|0;I=c[z>>2]|0}E=I+(G<<2)|0;F=c[e>>2]|0;if((I|0)!=(E|0)){H=(I+(G-1<<2)+(-I|0)|0)>>>2;G=F;while(1){c[G>>2]=c[I>>2];I=I+4|0;if((I|0)==(E|0)){break}G=G+4|0}F=F+(H+1<<2)|0}c[e>>2]=F;break};case 1:{c[d>>2]=c[e>>2];K=rc[c[(c[u>>2]|0)+44>>2]&31](i,32)|0;L=c[e>>2]|0;c[e>>2]=L+4;c[L>>2]=K;break};case 3:{F=a[s]|0;E=(F&1)==0;if(E){F=(F&255)>>>1}else{F=c[r>>2]|0}if((F|0)==0){break a}if(E){E=r}else{E=c[p>>2]|0}K=c[E>>2]|0;L=c[e>>2]|0;c[e>>2]=L+4;c[L>>2]=K;break};default:{}}}while(0);D=D+1|0;}while(D>>>0<4>>>0);h=a[s]|0;j=(h&1)==0;if(j){q=(h&255)>>>1}else{q=c[r>>2]|0}if(q>>>0>1>>>0){if(j){h=(h&255)>>>1}else{h=c[r>>2]|0;r=c[p>>2]|0}q=r+4|0;j=r+(h<<2)|0;p=c[e>>2]|0;if((q|0)!=(j|0)){h=(r+(h-1<<2)+(-q|0)|0)>>>2;r=p;while(1){c[r>>2]=c[q>>2];q=q+4|0;if((q|0)==(j|0)){break}else{r=r+4|0}}p=p+(h+1<<2)|0}c[e>>2]=p}f=f&176;if((f|0)==32){c[d>>2]=c[e>>2];return}else if((f|0)==16){return}else{c[d>>2]=b;return}}function un(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;n=i;i=i+520|0;t=e;e=i;i=i+4|0;i=i+7&-8;c[e>>2]=c[t>>2];t=n|0;m=n+16|0;r=n+24|0;q=n+32|0;s=n+40|0;d=n+48|0;k=n+64|0;l=n+80|0;w=n+96|0;x=n+104|0;o=n+504|0;p=n+512|0;Ei(m,g);m=c[m>>2]|0;if(!((c[278102]|0)==-1)){c[t>>2]=1112408;c[t+4>>2]=14;c[t+8>>2]=0;Wh(1112408,t)}t=(c[278103]|0)-1|0;u=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-u>>2>>>0>t>>>0){v=c[u+(t<<2)>>2]|0;if((v|0)==0){break}t=v;u=j;z=a[u]|0;y=(z&1)==0;if(y){z=(z&255)>>>1}else{z=c[j+4>>2]|0}if((z|0)==0){v=0}else{if(y){y=j+4|0}else{y=c[j+8>>2]|0}B=c[y>>2]|0;v=(B|0)==(rc[c[(c[v>>2]|0)+44>>2]&31](t,45)|0)}Xq(d|0,0,12)|0;y=k;Xq(y|0,0,12)|0;z=l;Xq(z|0,0,12)|0;sn(f,v,m,r,q,s,d,k,l,w);x=x|0;f=a[u]|0;A=(f&1)==0;if(A){B=(f&255)>>>1}else{B=c[j+4>>2]|0}w=c[w>>2]|0;if((B|0)>(w|0)){if(A){A=(f&255)>>>1}else{A=c[j+4>>2]|0}z=a[z]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[l+4>>2]|0}y=a[y]|0;if((y&1)==0){y=(y&255)>>>1}else{y=c[k+4>>2]|0}y=z+(A-w<<1|1)+y|0}else{z=a[z]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[l+4>>2]|0}y=a[y]|0;if((y&1)==0){y=(y&255)>>>1}else{y=c[k+4>>2]|0}y=z+2+y|0}y=y+w|0;do{if(y>>>0>100>>>0){B=zq(y<<2)|0;y=B;if((B|0)!=0){x=y;break}Lq();x=0;y=0;f=a[u]|0}else{y=0}}while(0);if((f&1)==0){u=(f&255)>>>1;j=j+4|0}else{u=c[j+4>>2]|0;j=c[j+8>>2]|0}tn(x,o,p,c[g+4>>2]|0,j,j+(u<<2)|0,t,v,r,c[q>>2]|0,c[s>>2]|0,d,k,l,w);ll(b,c[e>>2]|0,x,c[o>>2]|0,c[p>>2]|0,g,h);if((y|0)==0){vi(l);vi(k);di(d);B=m|0;Dh(B);i=n;return}Aq(y);vi(l);vi(k);di(d);B=m|0;Dh(B);i=n;return}}while(0);B=ec(4)|0;eq(B);Ab(B|0,26088,180)}function vn(a){a=a|0;Gq(a);return}function wn(a){a=a|0;return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;if((a[d]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}e=gc(d|0,1)|0;return e>>>(((e|0)!=-1|0)>>>0)|0}function yn(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 j=0,k=0,l=0,m=0;d=i;i=i+16|0;j=d|0;l=j;Xq(l|0,0,12)|0;m=a[h]|0;if((m&1)==0){m=(m&255)>>>1;h=h+1|0}else{m=c[h+4>>2]|0;h=c[h+8>>2]|0}m=h+m|0;do{if(h>>>0<m>>>0){do{ni(j,a[h]|0);h=h+1|0;}while(h>>>0<m>>>0);e=(e|0)==-1?-1:e<<1;if((a[l]&1)==0){k=10;break}l=c[j+8>>2]|0}else{e=(e|0)==-1?-1:e<<1;k=10}}while(0);if((k|0)==10){l=j+1|0}g=lb(e|0,f|0,g|0,l|0)|0;Xq(b|0,0,12)|0;m=Zq(g|0)|0;f=g+m|0;if((m|0)<=0){di(j);i=d;return}do{ni(b,a[g]|0);g=g+1|0;}while(g>>>0<f>>>0);di(j);i=d;return}function zn(a,b){a=a|0;b=b|0;Ob(((b|0)==-1?-1:b<<1)|0)|0;return}function An(a){a=a|0;Gq(a);return}function Bn(a){a=a|0;return}function Cn(b,d,e){b=b|0;d=d|0;e=e|0;if((a[d]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}e=gc(d|0,1)|0;return e>>>(((e|0)!=-1|0)>>>0)|0}function Dn(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;n=i;i=i+240|0;r=n|0;y=n+8|0;s=n+40|0;u=n+48|0;l=n+56|0;o=n+64|0;k=n+192|0;d=n+200|0;m=n+208|0;x=n+224|0;p=n+232|0;t=m;Xq(t|0,0,12)|0;c[x+4>>2]=0;c[x>>2]=22064;v=a[h]|0;if((v&1)==0){v=(v&255)>>>1;z=h+4|0}else{v=c[h+4>>2]|0;z=c[h+8>>2]|0}v=z+(v<<2)|0;h=y|0;do{if(z>>>0<v>>>0){w=x|0;y=y+32|0;A=22064;while(1){c[u>>2]=z;B=(zc[c[A+12>>2]&31](w,r,z,v,u,h,y,s)|0)==2;A=c[u>>2]|0;if(B|(A|0)==(z|0)){break}if(h>>>0<(c[s>>2]|0)>>>0){z=h;do{ni(m,a[z]|0);z=z+1|0;}while(z>>>0<(c[s>>2]|0)>>>0);z=c[u>>2]|0}else{z=A}if(!(z>>>0<v>>>0)){j=16;break}A=c[x>>2]|0}if((j|0)==16){q=(a[t]&1)==0;break}Xm(9264)}else{q=1}}while(0);if(q){q=m+1|0}else{q=c[m+8>>2]|0}r=lb(((e|0)==-1?-1:e<<1)|0,f|0,g|0,q|0)|0;Xq(b|0,0,12)|0;c[p+4>>2]=0;c[p>>2]=22008;B=Zq(r|0)|0;e=r+B|0;if((B|0)<=0){di(m);i=n;return}g=p|0;q=e;f=o|0;o=o+128|0;s=22008;while(1){c[d>>2]=r;B=(zc[c[s+16>>2]&31](g,l,r,(q-r|0)>32?r+32|0:e,d,f,o,k)|0)==2;s=c[d>>2]|0;if(B|(s|0)==(r|0)){break}if(f>>>0<(c[k>>2]|0)>>>0){r=f;do{zi(b,c[r>>2]|0);r=r+4|0;}while(r>>>0<(c[k>>2]|0)>>>0);r=c[d>>2]|0}else{r=s}if(!(r>>>0<e>>>0)){j=38;break}s=c[p>>2]|0}if((j|0)==38){di(m);i=n;return}Xm(9264)}function En(a,b){a=a|0;b=b|0;Ob(((b|0)==-1?-1:b<<1)|0)|0;return}function Fn(b){b=b|0;var d=0;c[b>>2]=21528;b=b+8|0;d=c[b>>2]|0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);if((d|0)==(c[277746]|0)){return}kb(c[b>>2]|0);return}function Gn(){var a=0;a=ec(8)|0;Eh(a,16608);c[a>>2]=20464;Ab(a|0,26120,88)}function Hn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,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;C=i;i=i+448|0;f=C|0;x=C+16|0;g=C+32|0;j=C+48|0;k=C+64|0;l=C+80|0;m=C+96|0;n=C+112|0;o=C+128|0;p=C+144|0;q=C+160|0;r=C+176|0;s=C+192|0;t=C+208|0;u=C+224|0;v=C+240|0;w=C+256|0;e=C+272|0;y=C+288|0;z=C+304|0;A=C+320|0;B=C+336|0;D=C+352|0;E=C+368|0;F=C+384|0;G=C+400|0;H=C+416|0;h=C+432|0;c[b+4>>2]=d-1;c[b>>2]=21784;I=b+8|0;d=b+12|0;J=b+136|0;a[J]=1;K=b+24|0;c[d>>2]=K;c[I>>2]=K;c[b+16>>2]=J;J=28;do{if((K|0)==0){K=0}else{c[K>>2]=0;K=c[d>>2]|0}K=K+4|0;c[d>>2]=K;J=J-1|0;}while((J|0)!=0);_h(b+144|0,16280,1);I=c[I>>2]|0;J=c[d>>2]|0;if((J|0)!=(I|0)){c[d>>2]=J+(~((J-4+(-I|0)|0)>>>2)<<2)}c[277779]=0;c[277778]=21488;if(!((c[278024]|0)==-1)){c[H>>2]=1112096;c[H+4>>2]=14;c[H+8>>2]=0;Wh(1112096,H)}In(b,1111112,(c[278025]|0)-1|0);c[277777]=0;c[277776]=21448;if(!((c[278022]|0)==-1)){c[G>>2]=1112088;c[G+4>>2]=14;c[G+8>>2]=0;Wh(1112088,G)}In(b,1111104,(c[278023]|0)-1|0);c[277829]=0;c[277828]=21896;c[277830]=0;a[1111324]=0;c[277830]=c[(jb()|0)>>2];if(!((c[278104]|0)==-1)){c[F>>2]=1112416;c[F+4>>2]=14;c[F+8>>2]=0;Wh(1112416,F)}In(b,1111312,(c[278105]|0)-1|0);c[277827]=0;c[277826]=21816;if(!((c[278102]|0)==-1)){c[E>>2]=1112408;c[E+4>>2]=14;c[E+8>>2]=0;Wh(1112408,E)}In(b,1111304,(c[278103]|0)-1|0);c[277781]=0;c[277780]=21584;if(!((c[278028]|0)==-1)){c[D>>2]=1112112;c[D+4>>2]=14;c[D+8>>2]=0;Wh(1112112,D)}In(b,1111120,(c[278029]|0)-1|0);c[5007]=0;c[5006]=21528;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);c[5008]=c[277746];if(!((c[278026]|0)==-1)){c[B>>2]=1112104;c[B+4>>2]=14;c[B+8>>2]=0;Wh(1112104,B)}In(b,20024,(c[278027]|0)-1|0);c[277783]=0;c[277782]=21640;if(!((c[278030]|0)==-1)){c[A>>2]=1112120;c[A+4>>2]=14;c[A+8>>2]=0;Wh(1112120,A)}In(b,1111128,(c[278031]|0)-1|0);c[277785]=0;c[277784]=21696;if(!((c[278032]|0)==-1)){c[z>>2]=1112128;c[z+4>>2]=14;c[z+8>>2]=0;Wh(1112128,z)}In(b,1111136,(c[278033]|0)-1|0);c[277759]=0;c[277758]=20992;a[1111040]=46;a[1111041]=44;Xq(1111044,0,12)|0;if(!((c[278008]|0)==-1)){c[y>>2]=1112032;c[y+4>>2]=14;c[y+8>>2]=0;Wh(1112032,y)}In(b,1111032,(c[278009]|0)-1|0);c[4999]=0;c[4998]=20944;c[5e3]=46;c[5001]=44;Xq(20008,0,12)|0;if(!((c[278006]|0)==-1)){c[e>>2]=1112024;c[e+4>>2]=14;c[e+8>>2]=0;Wh(1112024,e)}In(b,19992,(c[278007]|0)-1|0);c[277775]=0;c[277774]=21376;if(!((c[278020]|0)==-1)){c[w>>2]=1112080;c[w+4>>2]=14;c[w+8>>2]=0;Wh(1112080,w)}In(b,1111096,(c[278021]|0)-1|0);c[277773]=0;c[277772]=21304;if(!((c[278018]|0)==-1)){c[v>>2]=1112072;c[v+4>>2]=14;c[v+8>>2]=0;Wh(1112072,v)}In(b,1111088,(c[278019]|0)-1|0);c[277771]=0;c[277770]=21240;if(!((c[278016]|0)==-1)){c[u>>2]=1112064;c[u+4>>2]=14;c[u+8>>2]=0;Wh(1112064,u)}In(b,1111080,(c[278017]|0)-1|0);c[277769]=0;c[277768]=21176;if(!((c[278014]|0)==-1)){c[t>>2]=1112056;c[t+4>>2]=14;c[t+8>>2]=0;Wh(1112056,t)}In(b,1111072,(c[278015]|0)-1|0);c[277839]=0;c[277838]=22824;if(!((c[278224]|0)==-1)){c[s>>2]=1112896;c[s+4>>2]=14;c[s+8>>2]=0;Wh(1112896,s)}In(b,1111352,(c[278225]|0)-1|0);c[277837]=0;c[277836]=22760;if(!((c[278222]|0)==-1)){c[r>>2]=1112888;c[r+4>>2]=14;c[r+8>>2]=0;Wh(1112888,r)}In(b,1111344,(c[278223]|0)-1|0);c[277835]=0;c[277834]=22696;if(!((c[278220]|0)==-1)){c[q>>2]=1112880;c[q+4>>2]=14;c[q+8>>2]=0;Wh(1112880,q)}In(b,1111336,(c[278221]|0)-1|0);c[277833]=0;c[277832]=22632;if(!((c[278218]|0)==-1)){c[p>>2]=1112872;c[p+4>>2]=14;c[p+8>>2]=0;Wh(1112872,p)}In(b,1111328,(c[278219]|0)-1|0);c[277757]=0;c[277756]=20648;if(!((c[277996]|0)==-1)){c[o>>2]=1111984;c[o+4>>2]=14;c[o+8>>2]=0;Wh(1111984,o)}In(b,1111024,(c[277997]|0)-1|0);c[277755]=0;c[277754]=20608;if(!((c[277994]|0)==-1)){c[n>>2]=1111976;c[n+4>>2]=14;c[n+8>>2]=0;Wh(1111976,n)}In(b,1111016,(c[277995]|0)-1|0);c[277753]=0;c[277752]=20568;if(!((c[277992]|0)==-1)){c[m>>2]=1111968;c[m+4>>2]=14;c[m+8>>2]=0;Wh(1111968,m)}In(b,1111008,(c[277993]|0)-1|0);c[277751]=0;c[277750]=20528;if(!((c[277990]|0)==-1)){c[l>>2]=1111960;c[l+4>>2]=14;c[l+8>>2]=0;Wh(1111960,l)}In(b,1111e3,(c[277991]|0)-1|0);c[4995]=0;c[4994]=20848;c[4996]=20896;if(!((c[278004]|0)==-1)){c[k>>2]=1112016;c[k+4>>2]=14;c[k+8>>2]=0;Wh(1112016,k)}In(b,19976,(c[278005]|0)-1|0);c[4991]=0;c[4990]=20752;c[4992]=20800;if(!((c[278002]|0)==-1)){c[j>>2]=1112008;c[j+4>>2]=14;c[j+8>>2]=0;Wh(1112008,j)}In(b,19960,(c[278003]|0)-1|0);c[4987]=0;c[4986]=21752;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);c[4988]=c[277746];c[4986]=20720;if(!((c[278e3]|0)==-1)){c[g>>2]=1112e3;c[g+4>>2]=14;c[g+8>>2]=0;Wh(1112e3,g)}In(b,19944,(c[278001]|0)-1|0);c[4983]=0;c[4982]=21752;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);c[4984]=c[277746];c[4982]=20688;if(!((c[277998]|0)==-1)){c[x>>2]=1111992;c[x+4>>2]=14;c[x+8>>2]=0;Wh(1111992,x)}In(b,19928,(c[277999]|0)-1|0);c[277767]=0;c[277766]=21080;if(!((c[278012]|0)==-1)){c[f>>2]=1112048;c[f+4>>2]=14;c[f+8>>2]=0;Wh(1112048,f)}In(b,1111064,(c[278013]|0)-1|0);c[277765]=0;c[277764]=21040;if(!((c[278010]|0)==-1)){c[h>>2]=1112040;c[h+4>>2]=14;c[h+8>>2]=0;Wh(1112040,h)}In(b,1111056,(c[278011]|0)-1|0);i=C;return}function In(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;Ch(b|0);f=a+8|0;e=a+12|0;g=c[e>>2]|0;a=f|0;h=c[a>>2]|0;i=g-h>>2;do{if(!(i>>>0>d>>>0)){j=d+1|0;if(i>>>0<j>>>0){Np(f,j-i|0);h=c[a>>2]|0;break}if(!(i>>>0>j>>>0)){break}f=h+(j<<2)|0;if((g|0)==(f|0)){break}c[e>>2]=g+(~((g-4+(-f|0)|0)>>>2)<<2)}}while(0);e=c[h+(d<<2)>>2]|0;if((e|0)==0){j=h;j=j+(d<<2)|0;c[j>>2]=b;return}Dh(e|0);j=c[a>>2]|0;j=j+(d<<2)|0;c[j>>2]=b;return}function Jn(a){a=a|0;Kn(a);Gq(a);return}function Kn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[b>>2]=21784;d=b+12|0;h=c[d>>2]|0;e=b+8|0;g=c[e>>2]|0;if((h|0)!=(g|0)){f=0;do{i=c[g+(f<<2)>>2]|0;if((i|0)!=0){Dh(i|0);h=c[d>>2]|0;g=c[e>>2]|0}f=f+1|0;}while(f>>>0<h-g>>2>>>0)}di(b+144|0);e=c[e>>2]|0;if((e|0)==0){return}f=c[d>>2]|0;if((f|0)!=(e|0)){c[d>>2]=f+(~((f-4+(-e|0)|0)>>>2)<<2)}if((b+24|0)==(e|0)){a[b+136|0]=0;return}else{Gq(e);return}}function Ln(){var b=0;do{if((a[1113048]|0)==0){if((pb(1113048)|0)==0){break}do{if((a[1113056]|0)==0){if((pb(1113056)|0)==0){break}Hn(1111144,1);c[277742]=1111144}}while(0);b=c[277742]|0;c[277744]=b;Ch(b|0);c[277740]=1110976}}while(0);return c[277740]|0}function Mn(a){a=a|0;var b=0;b=c[(Ln()|0)>>2]|0;c[a>>2]=b;Ch(b|0);return}function Nn(a,b){a=a|0;b=b|0;c[a>>2]=b;Ch(b|0);return}function On(a){a=a|0;Dh(a|0);return}function Pn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d|0;f=b|0;if(!((c[f>>2]|0)==-1)){c[e>>2]=b;c[e+4>>2]=14;c[e+8>>2]=0;Wh(f,e)}e=(c[b+4>>2]|0)-1|0;b=c[a+8>>2]|0;if(!((c[a+12>>2]|0)-b>>2>>>0>e>>>0)){f=ec(4)|0;e=f;eq(e);Ab(f|0,26088,180)}a=c[b+(e<<2)>>2]|0;if((a|0)==0){f=ec(4)|0;e=f;eq(e);Ab(f|0,26088,180)}else{i=d;return a|0}return 0}function Qn(a){a=a|0;Gq(a);return}function Rn(a){a=a|0;if((a|0)==0){return}pc[c[(c[a>>2]|0)+4>>2]&255](a);return}function Sn(a){a=a|0;c[a+4>>2]=(H=c[278034]|0,c[278034]=H+1,H)+1;return}function Tn(a){a=a|0;Gq(a);return}function Un(a,d,e){a=a|0;d=d|0;e=e|0;if(!(e>>>0<128>>>0)){a=0;return a|0}a=(b[(c[(jb()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16!=0;return a|0}function Vn(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;if((d|0)==(e|0)){a=d;return a|0}while(1){a=c[d>>2]|0;if(a>>>0<128>>>0){a=b[(c[(jb()|0)>>2]|0)+(a<<1)>>1]|0}else{a=0}b[f>>1]=a;d=d+4|0;if((d|0)==(e|0)){break}else{f=f+2|0}}return e|0}function Wn(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;if((e|0)==(f|0)){a=e;return a|0}while(1){a=c[e>>2]|0;if(a>>>0<128>>>0){if(!((b[(c[(jb()|0)>>2]|0)+(a<<1)>>1]&d)<<16>>16==0)){f=e;d=7;break}}e=e+4|0;if((e|0)==(f|0)){d=7;break}}if((d|0)==7){return f|0}return 0}function Xn(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;while(1){if((e|0)==(f|0)){d=7;break}a=c[e>>2]|0;if(!(a>>>0<128>>>0)){f=e;d=7;break}if((b[(c[(jb()|0)>>2]|0)+(a<<1)>>1]&d)<<16>>16==0){f=e;d=7;break}else{e=e+4|0}}if((d|0)==7){return f|0}return 0}function Yn(a,b){a=a|0;b=b|0;if(!(b>>>0<128>>>0)){a=b;return a|0}a=c[(c[(hc()|0)>>2]|0)+(b<<2)>>2]|0;return a|0}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;if((b|0)==(d|0)){a=b;return a|0}do{a=c[b>>2]|0;if(a>>>0<128>>>0){a=c[(c[(hc()|0)>>2]|0)+(a<<2)>>2]|0}c[b>>2]=a;b=b+4|0;}while((b|0)!=(d|0));return d|0}function _n(a,b){a=a|0;b=b|0;if(!(b>>>0<128>>>0)){a=b;return a|0}a=c[(c[(ic()|0)>>2]|0)+(b<<2)>>2]|0;return a|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;if((b|0)==(d|0)){a=b;return a|0}do{a=c[b>>2]|0;if(a>>>0<128>>>0){a=c[(c[(ic()|0)>>2]|0)+(a<<2)>>2]|0}c[b>>2]=a;b=b+4|0;}while((b|0)!=(d|0));return d|0}function ao(a,b){a=a|0;b=b|0;return b<<24>>24|0}function bo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;if((d|0)==(e|0)){b=d;return b|0}while(1){c[f>>2]=a[d]|0;d=d+1|0;if((d|0)==(e|0)){break}else{f=f+4|0}}return e|0}function co(a,b,c){a=a|0;b=b|0;c=c|0;return(b>>>0<128>>>0?b&255:c)|0}function eo(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;if((d|0)==(e|0)){i=d;return i|0}b=((e-4+(-d|0)|0)>>>2)+1|0;h=d;while(1){i=c[h>>2]|0;a[g]=i>>>0<128>>>0?i&255:f;h=h+4|0;if((h|0)==(e|0)){break}else{g=g+1|0}}i=d+(b<<2)|0;return i|0}function fo(b){b=b|0;var d=0;c[b>>2]=21896;d=c[b+8>>2]|0;do{if((d|0)!=0){if((a[b+12|0]|0)==0){break}Hq(d)}}while(0);Gq(b);return}function go(b){b=b|0;var d=0;c[b>>2]=21896;d=c[b+8>>2]|0;if((d|0)==0){return}if((a[b+12|0]|0)==0){return}Hq(d);return}function ho(a,b){a=a|0;b=b|0;if(b<<24>>24<0){a=b;return a|0}a=c[(c[(hc()|0)>>2]|0)+((b&255)<<2)>>2]&255;return a|0}function io(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)==(e|0)){b=d;return b|0}do{b=a[d]|0;if(!(b<<24>>24<0)){b=c[(c[(hc()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255}a[d]=b;d=d+1|0;}while((d|0)!=(e|0));return e|0}function jo(a,b){a=a|0;b=b|0;if(b<<24>>24<0){a=b;return a|0}a=c[(c[(ic()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255;return a|0}function ko(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)==(e|0)){b=d;return b|0}do{b=a[d]|0;if(!(b<<24>>24<0)){b=c[(c[(ic()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255}a[d]=b;d=d+1|0;}while((d|0)!=(e|0));return e|0}function lo(a,b){a=a|0;b=b|0;return b|0}function mo(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if((c|0)==(d|0)){b=c;return b|0}while(1){a[e]=a[c]|0;c=c+1|0;if((c|0)==(d|0)){break}else{e=e+1|0}}return d|0}function no(a,b,c){a=a|0;b=b|0;c=c|0;return(b<<24>>24<0?c:b)|0}function oo(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((c|0)==(d|0)){b=c;return b|0}while(1){b=a[c]|0;a[f]=b<<24>>24<0?e:b;c=c+1|0;if((c|0)==(d|0)){break}else{f=f+1|0}}return d|0}function po(a){a=a|0;Gq(a);return}function qo(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;c[f>>2]=d;c[i>>2]=g;return 3}function ro(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;c[f>>2]=d;c[i>>2]=g;return 3}function so(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function to(a){a=a|0;return 1}function uo(a){a=a|0;return 1}function vo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=d-c|0;return(c>>>0<e>>>0?c:e)|0}function wo(a){a=a|0;return 1}function xo(a){a=a|0;Fn(a);Gq(a);return}function yo(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;d=i;i=i+8|0;m=d|0;n=e;while(1){if((n|0)==(f|0)){n=f;break}if((c[n>>2]|0)==0){break}else{n=n+4|0}}c[k>>2]=h;c[g>>2]=e;a:do{if(!((e|0)==(f|0)|(h|0)==(j|0))){l=j;b=b+8|0;m=m|0;while(1){o=Sb(c[b>>2]|0)|0;p=_p(h,g,n-e>>2,l-h|0)|0;if((o|0)!=0){Sb(o|0)|0}if((p|0)==0){g=1;j=35;break}else if((p|0)==(-1|0)){j=10;break}h=(c[k>>2]|0)+p|0;c[k>>2]=h;if((h|0)==(j|0)){j=33;break}if((n|0)==(f|0)){n=f;e=c[g>>2]|0}else{h=Sb(c[b>>2]|0)|0;n=Zp(m,0)|0;if((h|0)!=0){Sb(h|0)|0}if((n|0)==-1){g=2;j=35;break}e=c[k>>2]|0;if(n>>>0>(l-e|0)>>>0){g=1;j=35;break}b:do{if((n|0)!=0){h=m;while(1){p=a[h]|0;c[k>>2]=e+1;a[e]=p;n=n-1|0;if((n|0)==0){break b}h=h+1|0;e=c[k>>2]|0}}}while(0);e=(c[g>>2]|0)+4|0;c[g>>2]=e;n=e;while(1){if((n|0)==(f|0)){n=f;break}if((c[n>>2]|0)==0){break}else{n=n+4|0}}h=c[k>>2]|0}if((e|0)==(f|0)|(h|0)==(j|0)){break a}}if((j|0)==10){c[k>>2]=h;c:do{if((e|0)!=(c[g>>2]|0)){do{j=c[e>>2]|0;f=Sb(c[b>>2]|0)|0;j=Zp(h,j)|0;if((f|0)!=0){Sb(f|0)|0}if((j|0)==-1){break c}h=(c[k>>2]|0)+j|0;c[k>>2]=h;e=e+4|0;}while((e|0)!=(c[g>>2]|0))}}while(0);c[g>>2]=e;p=2;i=d;return p|0}else if((j|0)==33){e=c[g>>2]|0;break}else if((j|0)==35){i=d;return g|0}}}while(0);p=(e|0)!=(f|0)|0;i=d;return p|0}function zo(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+8|0;n=l|0;m=n;r=e;while(1){if((r|0)==(f|0)){r=f;break}if((a[r]|0)==0){break}else{r=r+1|0}}c[k>>2]=h;c[g>>2]=e;a:do{if(!((e|0)==(f|0)|(h|0)==(j|0))){p=d;o=j;b=b+8|0;while(1){q=c[p+4>>2]|0;c[n>>2]=c[p>>2];c[n+4>>2]=q;q=r;s=Sb(c[b>>2]|0)|0;t=Wp(h,g,q-e|0,o-h>>2,d)|0;if((s|0)!=0){Sb(s|0)|0}if((t|0)==(-1|0)){n=10;break}else if((t|0)==0){f=2;n=34;break}h=(c[k>>2]|0)+(t<<2)|0;c[k>>2]=h;if((h|0)==(j|0)){n=32;break}e=c[g>>2]|0;if((r|0)==(f|0)){q=f}else{q=Sb(c[b>>2]|0)|0;h=Vp(h,e,1,d)|0;if((q|0)!=0){Sb(q|0)|0}if((h|0)!=0){f=2;n=34;break}c[k>>2]=(c[k>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;q=e;while(1){if((q|0)==(f|0)){q=f;break}if((a[q]|0)==0){break}else{q=q+1|0}}h=c[k>>2]|0}if((e|0)==(f|0)|(h|0)==(j|0)){break a}else{r=q}}if((n|0)==10){c[k>>2]=h;b:do{if((e|0)!=(c[g>>2]|0)){while(1){n=Sb(c[b>>2]|0)|0;j=Vp(h,e,q-e|0,m)|0;if((n|0)!=0){Sb(n|0)|0}if((j|0)==(-2|0)){n=17;break}else if((j|0)==0){e=e+1|0}else if((j|0)==(-1|0)){n=16;break}else{e=e+j|0}h=(c[k>>2]|0)+4|0;c[k>>2]=h;if((e|0)==(c[g>>2]|0)){break b}}if((n|0)==16){c[g>>2]=e;t=2;i=l;return t|0}else if((n|0)==17){c[g>>2]=e;t=1;i=l;return t|0}}}while(0);c[g>>2]=e;t=(e|0)!=(f|0)|0;i=l;return t|0}else if((n|0)==32){e=c[g>>2]|0;break}else if((n|0)==34){i=l;return f|0}}}while(0);t=(e|0)!=(f|0)|0;i=l;return t|0}function Ao(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;d=i;i=i+8|0;c[g>>2]=e;e=d|0;b=Sb(c[b+8>>2]|0)|0;h=Zp(e,0)|0;if((b|0)!=0){Sb(b|0)|0}if((h|0)==(-1|0)|(h|0)==0){h=2;i=d;return h|0}h=h-1|0;b=c[g>>2]|0;if(h>>>0>(f-b|0)>>>0){h=1;i=d;return h|0}if((h|0)==0){h=0;i=d;return h|0}else{f=h}while(1){h=a[e]|0;c[g>>2]=b+1;a[b]=h;f=f-1|0;if((f|0)==0){g=0;break}e=e+1|0;b=c[g>>2]|0}i=d;return g|0}function Bo(a){a=a|0;var b=0,d=0;a=a+8|0;d=Sb(c[a>>2]|0)|0;b=Yp(0,0)|0;if((d|0)!=0){Sb(d|0)|0}if((b|0)!=0){d=-1;return d|0}a=c[a>>2]|0;if((a|0)==0){d=1;return d|0}a=Sb(a|0)|0;if((a|0)==0){d=0;return d|0}Sb(a|0)|0;d=0;return d|0}function Co(a){a=a|0;return 0}function Do(a,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;if((f|0)==0|(d|0)==(e|0)){k=0;return k|0}g=e;a=a+8|0;h=0;i=0;while(1){k=Sb(c[a>>2]|0)|0;j=Up(d,g-d|0,b)|0;if((k|0)!=0){Sb(k|0)|0}if((j|0)==(-1|0)|(j|0)==(-2|0)){f=10;break}else if((j|0)==0){k=1;d=d+1|0}else{k=j;d=d+j|0}h=k+h|0;i=i+1|0;if(i>>>0>=f>>>0|(d|0)==(e|0)){f=10;break}}if((f|0)==10){return h|0}return 0}function Eo(a){a=a|0;a=c[a+8>>2]|0;do{if((a|0)==0){a=1}else{a=Sb(a|0)|0;if((a|0)==0){a=4;break}Sb(a|0)|0;a=4}}while(0);return a|0}function Fo(a){a=a|0;Gq(a);return}function Go(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a|0;k=a+8|0;c[l>>2]=d;c[k>>2]=g;b=Ho(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d>>1<<1);c[j>>2]=g+((c[k>>2]|0)-g);i=a;return b|0}function Ho(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;c[g>>2]=d;c[j>>2]=h;do{if((l&2|0)!=0){if((i-h|0)<3){n=1;return n|0}else{c[j>>2]=h+1;a[h]=-17;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=-69;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=-65;break}}}while(0);h=f;m=c[g>>2]|0;if(!(m>>>0<f>>>0)){n=0;return n|0}a:while(1){d=b[m>>1]|0;l=d&65535;if(l>>>0>k>>>0){f=2;k=26;break}do{if((d&65535)>>>0<128>>>0){l=c[j>>2]|0;if((i-l|0)<1){f=1;k=26;break a}c[j>>2]=l+1;a[l]=d}else{if((d&65535)>>>0<2048>>>0){d=c[j>>2]|0;if((i-d|0)<2){f=1;k=26;break a}c[j>>2]=d+1;a[d]=l>>>6|192;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=l&63|128;break}if((d&65535)>>>0<55296>>>0){d=c[j>>2]|0;if((i-d|0)<3){f=1;k=26;break a}c[j>>2]=d+1;a[d]=l>>>12|224;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=l>>>6&63|128;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=l&63|128;break}if(!((d&65535)>>>0<56320>>>0)){if((d&65535)>>>0<57344>>>0){f=2;k=26;break a}d=c[j>>2]|0;if((i-d|0)<3){f=1;k=26;break a}c[j>>2]=d+1;a[d]=l>>>12|224;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=l>>>6&63|128;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=l&63|128;break}if((h-m|0)<4){f=1;k=26;break a}d=m+2|0;n=e[d>>1]|0;if((n&64512|0)!=56320){f=2;k=26;break a}if((i-(c[j>>2]|0)|0)<4){f=1;k=26;break a}m=l&960;if(((m<<10)+65536|l<<10&64512|n&1023)>>>0>k>>>0){f=2;k=26;break a}c[g>>2]=d;d=(m>>>6)+1|0;m=c[j>>2]|0;c[j>>2]=m+1;a[m]=d>>>2|240;m=c[j>>2]|0;c[j>>2]=m+1;a[m]=l>>>2&15|d<<4&48|128;m=c[j>>2]|0;c[j>>2]=m+1;a[m]=l<<4&48|n>>>6&15|128;m=c[j>>2]|0;c[j>>2]=m+1;a[m]=n&63|128}}while(0);m=(c[g>>2]|0)+2|0;c[g>>2]=m;if(!(m>>>0<f>>>0)){f=0;k=26;break}}if((k|0)==26){return f|0}return 0}function Io(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a|0;k=a+8|0;c[l>>2]=d;c[k>>2]=g;b=Jo(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d);c[j>>2]=g+((c[k>>2]|0)-g>>1<<1);i=a;return b|0}function Jo(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0;c[g>>2]=e;c[j>>2]=h;n=c[g>>2]|0;do{if((l&4|0)!=0){if((f-n|0)<=2){break}if(!((a[n]|0)==-17)){break}if(!((a[n+1|0]|0)==-69)){break}if(!((a[n+2|0]|0)==-65)){break}n=n+3|0;c[g>>2]=n}}while(0);a:do{if(n>>>0<f>>>0){e=f;l=i;h=c[j>>2]|0;b:while(1){if(!(h>>>0<i>>>0)){break a}o=a[n]|0;m=o&255;if(m>>>0>k>>>0){f=2;k=41;break}do{if(o<<24>>24>-1){b[h>>1]=o&255;c[g>>2]=n+1}else{if((o&255)>>>0<194>>>0){f=2;k=41;break b}if((o&255)>>>0<224>>>0){if((e-n|0)<2){f=1;k=41;break b}o=d[n+1|0]|0;if((o&192|0)!=128){f=2;k=41;break b}m=o&63|m<<6&1984;if(m>>>0>k>>>0){f=2;k=41;break b}b[h>>1]=m;c[g>>2]=n+2;break}if((o&255)>>>0<240>>>0){if((e-n|0)<3){f=1;k=41;break b}o=a[n+1|0]|0;p=a[n+2|0]|0;if((m|0)==224){if(!((o&-32)<<24>>24==-96)){f=2;k=41;break b}}else if((m|0)==237){if(!((o&-32)<<24>>24==-128)){f=2;k=41;break b}}else{if(!((o&-64)<<24>>24==-128)){f=2;k=41;break b}}p=p&255;if((p&192|0)!=128){f=2;k=41;break b}m=(o&255)<<6&4032|m<<12|p&63;if((m&65535)>>>0>k>>>0){f=2;k=41;break b}b[h>>1]=m;c[g>>2]=n+3;break}if(!((o&255)>>>0<245>>>0)){f=2;k=41;break b}if((e-n|0)<4){f=1;k=41;break b}o=a[n+1|0]|0;p=a[n+2|0]|0;q=a[n+3|0]|0;if((m|0)==240){if(!((o+112&255)>>>0<48>>>0)){f=2;k=41;break b}}else if((m|0)==244){if(!((o&-16)<<24>>24==-128)){f=2;k=41;break b}}else{if(!((o&-64)<<24>>24==-128)){f=2;k=41;break b}}n=p&255;if((n&192|0)!=128){f=2;k=41;break b}p=q&255;if((p&192|0)!=128){f=2;k=41;break b}if((l-h|0)<4){f=1;k=41;break b}m=m&7;q=o&255;o=n<<6;p=p&63;if((q<<12&258048|m<<18|o&4032|p)>>>0>k>>>0){f=2;k=41;break b}b[h>>1]=q<<2&60|n>>>4&3|((q>>>4&3|m<<2)<<6)+16320|55296;q=h+2|0;c[j>>2]=q;b[q>>1]=p|o&960|56320;c[g>>2]=(c[g>>2]|0)+4}}while(0);h=(c[j>>2]|0)+2|0;c[j>>2]=h;n=c[g>>2]|0;if(!(n>>>0<f>>>0)){break a}}if((k|0)==41){return f|0}}}while(0);q=n>>>0<f>>>0|0;return q|0}function Ko(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Lo(a){a=a|0;return 0}function Mo(a){a=a|0;return 0}function No(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Oo(c,d,e,1114111,0)|0}function Oo(b,c,e,f,g){b=b|0;c=c|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;do{if((g&4|0)==0){i=b}else{if((c-b|0)<=2){i=b;break}if(!((a[b]|0)==-17)){i=b;break}if(!((a[b+1|0]|0)==-69)){i=b;break}i=(a[b+2|0]|0)==-65?b+3|0:b}}while(0);a:do{if(i>>>0<c>>>0&(e|0)!=0){g=c;h=0;b:while(1){k=a[i]|0;j=k&255;if(j>>>0>f>>>0){break a}do{if(k<<24>>24>-1){i=i+1|0}else{if((k&255)>>>0<194>>>0){break a}if((k&255)>>>0<224>>>0){if((g-i|0)<2){break a}k=d[i+1|0]|0;if((k&192|0)!=128){break a}if((k&63|j<<6&1984)>>>0>f>>>0){break a}i=i+2|0;break}if((k&255)>>>0<240>>>0){l=i;if((g-l|0)<3){break a}k=a[i+1|0]|0;m=a[i+2|0]|0;if((j|0)==224){if(!((k&-32)<<24>>24==-96)){f=21;break b}}else if((j|0)==237){if(!((k&-32)<<24>>24==-128)){f=23;break b}}else{if(!((k&-64)<<24>>24==-128)){f=25;break b}}l=m&255;if((l&192|0)!=128){break a}if(((k&255)<<6&4032|j<<12&61440|l&63)>>>0>f>>>0){break a}i=i+3|0;break}if(!((k&255)>>>0<245>>>0)){break a}m=i;if((g-m|0)<4){break a}if((e-h|0)>>>0<2>>>0){break a}k=a[i+1|0]|0;n=a[i+2|0]|0;l=a[i+3|0]|0;if((j|0)==240){if(!((k+112&255)>>>0<48>>>0)){f=34;break b}}else if((j|0)==244){if(!((k&-16)<<24>>24==-128)){f=36;break b}}else{if(!((k&-64)<<24>>24==-128)){f=38;break b}}m=n&255;if((m&192|0)!=128){break a}l=l&255;if((l&192|0)!=128){break a}if(((k&255)<<12&258048|j<<18&1835008|m<<6&4032|l&63)>>>0>f>>>0){break a}i=i+4|0;h=h+1|0}}while(0);h=h+1|0;if(!(i>>>0<c>>>0&h>>>0<e>>>0)){break a}}if((f|0)==21){n=l-b|0;return n|0}else if((f|0)==23){n=l-b|0;return n|0}else if((f|0)==25){n=l-b|0;return n|0}else if((f|0)==34){n=m-b|0;return n|0}else if((f|0)==36){n=m-b|0;return n|0}else if((f|0)==38){n=m-b|0;return n|0}}}while(0);n=i-b|0;return n|0}function Po(a){a=a|0;return 4}function Qo(a){a=a|0;Gq(a);return}function Ro(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a|0;k=a+8|0;c[l>>2]=d;c[k>>2]=g;b=So(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d>>2<<2);c[j>>2]=g+((c[k>>2]|0)-g);i=a;return b|0}function So(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;c[e>>2]=b;c[h>>2]=f;do{if((j&2|0)!=0){if((g-f|0)<3){b=1;return b|0}else{c[h>>2]=f+1;a[f]=-17;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=-69;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=-65;break}}}while(0);j=c[e>>2]|0;if(!(j>>>0<d>>>0)){b=0;return b|0}a:while(1){j=c[j>>2]|0;if((j&-2048|0)==55296|j>>>0>i>>>0){i=2;e=19;break}do{if(j>>>0<128>>>0){f=c[h>>2]|0;if((g-f|0)<1){i=1;e=19;break a}c[h>>2]=f+1;a[f]=j}else{if(j>>>0<2048>>>0){f=c[h>>2]|0;if((g-f|0)<2){i=1;e=19;break a}c[h>>2]=f+1;a[f]=j>>>6|192;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j&63|128;break}f=c[h>>2]|0;b=g-f|0;if(j>>>0<65536>>>0){if((b|0)<3){i=1;e=19;break a}c[h>>2]=f+1;a[f]=j>>>12|224;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j>>>6&63|128;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j&63|128;break}else{if((b|0)<4){i=1;e=19;break a}c[h>>2]=f+1;a[f]=j>>>18|240;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j>>>12&63|128;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j>>>6&63|128;b=c[h>>2]|0;c[h>>2]=b+1;a[b]=j&63|128;break}}}while(0);j=(c[e>>2]|0)+4|0;c[e>>2]=j;if(!(j>>>0<d>>>0)){i=0;e=19;break}}if((e|0)==19){return i|0}return 0}function To(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a|0;k=a+8|0;c[l>>2]=d;c[k>>2]=g;b=Uo(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d);c[j>>2]=g+((c[k>>2]|0)-g>>2<<2);i=a;return b|0}function Uo(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;c[f>>2]=b;c[i>>2]=g;g=c[f>>2]|0;do{if((k&4|0)!=0){if((e-g|0)<=2){break}if(!((a[g]|0)==-17)){break}if(!((a[g+1|0]|0)==-69)){break}if(!((a[g+2|0]|0)==-65)){break}g=g+3|0;c[f>>2]=g}}while(0);a:do{if(g>>>0<e>>>0){k=e;b=c[i>>2]|0;b:while(1){if(!(b>>>0<h>>>0)){break a}m=a[g]|0;l=m&255;do{if(m<<24>>24>-1){if(l>>>0>j>>>0){e=2;f=40;break b}c[b>>2]=l;c[f>>2]=g+1}else{if((m&255)>>>0<194>>>0){e=2;f=40;break b}if((m&255)>>>0<224>>>0){if((k-g|0)<2){e=1;f=40;break b}m=d[g+1|0]|0;if((m&192|0)!=128){e=2;f=40;break b}l=m&63|l<<6&1984;if(l>>>0>j>>>0){e=2;f=40;break b}c[b>>2]=l;c[f>>2]=g+2;break}if((m&255)>>>0<240>>>0){if((k-g|0)<3){e=1;f=40;break b}m=a[g+1|0]|0;n=a[g+2|0]|0;if((l|0)==224){if(!((m&-32)<<24>>24==-96)){e=2;f=40;break b}}else if((l|0)==237){if(!((m&-32)<<24>>24==-128)){e=2;f=40;break b}}else{if(!((m&-64)<<24>>24==-128)){e=2;f=40;break b}}n=n&255;if((n&192|0)!=128){e=2;f=40;break b}l=(m&255)<<6&4032|l<<12&61440|n&63;if(l>>>0>j>>>0){e=2;f=40;break b}c[b>>2]=l;c[f>>2]=g+3;break}if(!((m&255)>>>0<245>>>0)){e=2;f=40;break b}if((k-g|0)<4){e=1;f=40;break b}m=a[g+1|0]|0;n=a[g+2|0]|0;o=a[g+3|0]|0;if((l|0)==240){if(!((m+112&255)>>>0<48>>>0)){e=2;f=40;break b}}else if((l|0)==244){if(!((m&-16)<<24>>24==-128)){e=2;f=40;break b}}else{if(!((m&-64)<<24>>24==-128)){e=2;f=40;break b}}n=n&255;if((n&192|0)!=128){e=2;f=40;break b}o=o&255;if((o&192|0)!=128){e=2;f=40;break b}l=(m&255)<<12&258048|l<<18&1835008|n<<6&4032|o&63;if(l>>>0>j>>>0){e=2;f=40;break b}c[b>>2]=l;c[f>>2]=g+4}}while(0);b=(c[i>>2]|0)+4|0;c[i>>2]=b;g=c[f>>2]|0;if(!(g>>>0<e>>>0)){break a}}if((f|0)==40){return e|0}}}while(0);o=g>>>0<e>>>0|0;return o|0}function Vo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Wo(a){a=a|0;return 0}function Xo(a){a=a|0;return 0}function Yo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Zo(c,d,e,1114111,0)|0}function Zo(b,c,e,f,g){b=b|0;c=c|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;do{if((g&4|0)==0){i=b}else{if((c-b|0)<=2){i=b;break}if(!((a[b]|0)==-17)){i=b;break}if(!((a[b+1|0]|0)==-69)){i=b;break}i=(a[b+2|0]|0)==-65?b+3|0:b}}while(0);a:do{if(i>>>0<c>>>0&(e|0)!=0){h=c;g=1;b:while(1){k=a[i]|0;j=k&255;do{if(k<<24>>24>-1){if(j>>>0>f>>>0){break a}i=i+1|0}else{if((k&255)>>>0<194>>>0){break a}if((k&255)>>>0<224>>>0){if((h-i|0)<2){break a}k=d[i+1|0]|0;if((k&192|0)!=128){break a}if((k&63|j<<6&1984)>>>0>f>>>0){break a}i=i+2|0;break}if((k&255)>>>0<240>>>0){k=i;if((h-k|0)<3){break a}l=a[i+1|0]|0;m=a[i+2|0]|0;if((j|0)==224){if(!((l&-32)<<24>>24==-96)){f=21;break b}}else if((j|0)==237){if(!((l&-32)<<24>>24==-128)){f=23;break b}}else{if(!((l&-64)<<24>>24==-128)){f=25;break b}}k=m&255;if((k&192|0)!=128){break a}if(((l&255)<<6&4032|j<<12&61440|k&63)>>>0>f>>>0){break a}i=i+3|0;break}if(!((k&255)>>>0<245>>>0)){break a}m=i;if((h-m|0)<4){break a}k=a[i+1|0]|0;n=a[i+2|0]|0;l=a[i+3|0]|0;if((j|0)==240){if(!((k+112&255)>>>0<48>>>0)){f=33;break b}}else if((j|0)==244){if(!((k&-16)<<24>>24==-128)){f=35;break b}}else{if(!((k&-64)<<24>>24==-128)){f=37;break b}}m=n&255;if((m&192|0)!=128){break a}l=l&255;if((l&192|0)!=128){break a}if(((k&255)<<12&258048|j<<18&1835008|m<<6&4032|l&63)>>>0>f>>>0){break a}i=i+4|0}}while(0);if(!(i>>>0<c>>>0&g>>>0<e>>>0)){break a}g=g+1|0}if((f|0)==21){n=k-b|0;return n|0}else if((f|0)==23){n=k-b|0;return n|0}else if((f|0)==25){n=k-b|0;return n|0}else if((f|0)==33){n=m-b|0;return n|0}else if((f|0)==35){n=m-b|0;return n|0}else if((f|0)==37){n=m-b|0;return n|0}}}while(0);n=i-b|0;return n|0}function _o(a){a=a|0;return 4}function $o(a){a=a|0;Gq(a);return}function ap(a){a=a|0;Gq(a);return}function bp(a){a=a|0;c[a>>2]=20992;di(a+12|0);Gq(a);return}function cp(a){a=a|0;c[a>>2]=20992;di(a+12|0);return}function dp(a){a=a|0;c[a>>2]=20944;di(a+16|0);Gq(a);return}function ep(a){a=a|0;c[a>>2]=20944;di(a+16|0);return}function fp(b){b=b|0;return a[b+8|0]|0}function gp(a){a=a|0;return c[a+8>>2]|0}function hp(b){b=b|0;return a[b+9|0]|0}function ip(a){a=a|0;return c[a+12>>2]|0}function jp(a,b){a=a|0;b=b|0;Zh(a,b+12|0);return}function kp(a,b){a=a|0;b=b|0;Zh(a,b+16|0);return}function lp(a,b){a=a|0;b=b|0;_h(a,12440,4);return}function mp(a,b){a=a|0;b=b|0;ti(a,12128,aq(12128)|0);return}function np(a,b){a=a|0;b=b|0;_h(a,11912,5);return}function op(a,b){a=a|0;b=b|0;ti(a,11704,aq(11704)|0);return}function pp(b){b=b|0;if((a[1113144]|0)!=0){b=c[277864]|0;return b|0}if((pb(1113144)|0)==0){b=c[277864]|0;return b|0}do{if((a[1113032]|0)==0){if((pb(1113032)|0)==0){break}Xq(1110504,0,168)|0;bb(244,0,p|0)|0}}while(0);ei(1110504,18368);ei(1110516,18296);ei(1110528,18240);ei(1110540,18200);ei(1110552,18160);ei(1110564,18128);ei(1110576,18072);ei(1110588,18040);ei(1110600,18e3);ei(1110612,17936);ei(1110624,17904);ei(1110636,17768);ei(1110648,17728);ei(1110660,17680);c[277864]=1110504;b=c[277864]|0;return b|0}function qp(b){b=b|0;if((a[1113088]|0)!=0){b=c[277842]|0;return b|0}if((pb(1113088)|0)==0){b=c[277842]|0;return b|0}do{if((a[1113008]|0)==0){if((pb(1113008)|0)==0){break}Xq(1109760,0,168)|0;bb(136,0,p|0)|0}}while(0);wi(1109760,19416);wi(1109772,19336);wi(1109784,19272);wi(1109796,19200);wi(1109808,19112);wi(1109820,19048);wi(1109832,18920);wi(1109844,18864);wi(1109856,18816);wi(1109868,18768);wi(1109880,18728);wi(1109892,18672);wi(1109904,18632);wi(1109916,18480);c[277842]=1109760;b=c[277842]|0;return b|0}function rp(b){b=b|0;if((a[1113136]|0)!=0){b=c[277862]|0;return b|0}if((pb(1113136)|0)==0){b=c[277862]|0;return b|0}do{if((a[1113024]|0)==0){if((pb(1113024)|0)==0){break}Xq(1110216,0,288)|0;bb(154,0,p|0)|0}}while(0);ei(1110216,1304);ei(1110228,1192);ei(1110240,1080);ei(1110252,976);ei(1110264,872);ei(1110276,744);ei(1110288,640);ei(1110300,512);ei(1110312,432);ei(1110324,408);ei(1110336,304);ei(1110348,272);ei(1110360,248);ei(1110372,224);ei(1110384,184);ei(1110396,136);ei(1110408,872);ei(1110420,96);ei(1110432,64);ei(1110444,19680);ei(1110456,19640);ei(1110468,19584);ei(1110480,19544);ei(1110492,19504);c[277862]=1110216;b=c[277862]|0;return b|0}function sp(b){b=b|0;if((a[1113080]|0)!=0){b=c[277840]|0;return b|0}if((pb(1113080)|0)==0){b=c[277840]|0;return b|0}do{if((a[1113e3]|0)==0){if((pb(1113e3)|0)==0){break}Xq(1109472,0,288)|0;bb(114,0,p|0)|0}}while(0);wi(1109472,4920);wi(1109484,4672);wi(1109496,4456);wi(1109508,4224);wi(1109520,2384);wi(1109532,3872);wi(1109544,3728);wi(1109556,3592);wi(1109568,3448);wi(1109580,3312);wi(1109592,3152);wi(1109604,3008);wi(1109616,2880);wi(1109628,2768);wi(1109640,2648);wi(1109652,2504);wi(1109664,2384);wi(1109676,2256);wi(1109688,2136);wi(1109700,2008);wi(1109712,1880);wi(1109724,1768);wi(1109736,1648);wi(1109748,1520);c[277840]=1109472;b=c[277840]|0;return b|0}function tp(b){b=b|0;if((a[1113152]|0)!=0){b=c[277866]|0;return b|0}if((pb(1113152)|0)==0){b=c[277866]|0;return b|0}do{if((a[1113040]|0)==0){if((pb(1113040)|0)==0){break}Xq(1110672,0,288)|0;bb(112,0,p|0)|0}}while(0);ei(1110672,5768);ei(1110684,5512);c[277866]=1110672;b=c[277866]|0;return b|0}function up(b){b=b|0;if((a[1113096]|0)!=0){b=c[277844]|0;return b|0}if((pb(1113096)|0)==0){b=c[277844]|0;return b|0}do{if((a[1113016]|0)==0){if((pb(1113016)|0)==0){break}Xq(1109928,0,288)|0;bb(218,0,p|0)|0}}while(0);wi(1109928,6608);wi(1109940,6304);c[277844]=1109928;b=c[277844]|0;return b|0}function vp(b){b=b|0;if((a[1113160]|0)!=0){return 1111472}if((pb(1113160)|0)==0){return 1111472}_h(1111472,11312,8);bb(236,1111472,p|0)|0;return 1111472}function wp(b){b=b|0;if((a[1113104]|0)!=0){return 1111384}if((pb(1113104)|0)==0){return 1111384}ti(1111384,11112,aq(11112)|0);bb(178,1111384,p|0)|0;return 1111384}function xp(b){b=b|0;if((a[1113184]|0)!=0){return 1111520}if((pb(1113184)|0)==0){return 1111520}_h(1111520,10832,8);bb(236,1111520,p|0)|0;return 1111520}function yp(b){b=b|0;if((a[1113128]|0)!=0){return 1111432}if((pb(1113128)|0)==0){return 1111432}ti(1111432,10576,aq(10576)|0);bb(178,1111432,p|0)|0;return 1111432}function zp(b){b=b|0;if((a[1113176]|0)!=0){return 1111504}if((pb(1113176)|0)==0){return 1111504}_h(1111504,10408,20);bb(236,1111504,p|0)|0;return 1111504}function Ap(b){b=b|0;if((a[1113120]|0)!=0){return 1111416}if((pb(1113120)|0)==0){return 1111416}ti(1111416,10184,aq(10184)|0);bb(178,1111416,p|0)|0;return 1111416}function Bp(b){b=b|0;if((a[1113168]|0)!=0){return 1111488}if((pb(1113168)|0)==0){return 1111488}_h(1111488,9984,11);bb(236,1111488,p|0)|0;return 1111488}function Cp(b){b=b|0;if((a[1113112]|0)!=0){return 1111400}if((pb(1113112)|0)==0){return 1111400}ti(1111400,9680,aq(9680)|0);bb(178,1111400,p|0)|0;return 1111400}function Dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0.0;f=i;i=i+8|0;g=f|0;if((b|0)==(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}j=Mb()|0;h=c[j>>2]|0;c[j>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);k=+Uq(b,g);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}if((b|0)!=34){i=f;return+k}c[e>>2]=4;i=f;return+k}function Ep(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0.0;f=i;i=i+8|0;g=f|0;if((b|0)==(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}j=Mb()|0;h=c[j>>2]|0;c[j>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);k=+Uq(b,g);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}if((b|0)!=34){i=f;return+k}c[e>>2]=4;i=f;return+k}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0.0;f=i;i=i+8|0;g=f|0;if((b|0)==(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}j=Mb()|0;h=c[j>>2]|0;c[j>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);k=+Uq(b,g);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0.0;i=f;return+k}if((b|0)==34){c[e>>2]=4}i=f;return+k}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+8|0;h=g|0;do{if((b|0)==(d|0)){c[e>>2]=4;e=0;f=0}else{if((a[b]|0)==45){c[e>>2]=4;e=0;f=0;break}k=Mb()|0;j=c[k>>2]|0;c[k>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);f=Cb(b|0,h|0,f|0,c[277746]|0)|0;b=c[k>>2]|0;if((b|0)==0){c[k>>2]=j}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;e=0;f=0;break}if((b|0)!=34){e=J;break}c[e>>2]=4;e=-1;f=-1}}while(0);i=g;return(J=e,f)|0}function Hp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+8|0;g=k|0;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=k;return l|0}if((a[b]|0)==45){c[e>>2]=4;l=0;i=k;return l|0}h=Mb()|0;j=c[h>>2]|0;c[h>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);l=Cb(b|0,g|0,f|0,c[277746]|0)|0;b=J;f=c[h>>2]|0;if((f|0)==0){c[h>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=k;return l|0}j=0;if((f|0)==34|(b>>>0>j>>>0|b>>>0==j>>>0&l>>>0>-1>>>0)){c[e>>2]=4;l=-1;i=k;return l|0}else{i=k;return l|0}return 0}function Ip(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+8|0;g=k|0;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=k;return l|0}if((a[b]|0)==45){c[e>>2]=4;l=0;i=k;return l|0}h=Mb()|0;j=c[h>>2]|0;c[h>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);l=Cb(b|0,g|0,f|0,c[277746]|0)|0;b=J;f=c[h>>2]|0;if((f|0)==0){c[h>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=k;return l|0}j=0;if((f|0)==34|(b>>>0>j>>>0|b>>>0==j>>>0&l>>>0>-1>>>0)){c[e>>2]=4;l=-1;i=k;return l|0}else{i=k;return l|0}return 0}function Jp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+8|0;g=k|0;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=k;return l|0}if((a[b]|0)==45){c[e>>2]=4;l=0;i=k;return l|0}h=Mb()|0;j=c[h>>2]|0;c[h>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);l=Cb(b|0,g|0,f|0,c[277746]|0)|0;b=J;f=c[h>>2]|0;if((f|0)==0){c[h>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=k;return l|0}j=0;if((f|0)==34|(b>>>0>j>>>0|b>>>0==j>>>0&l>>>0>65535>>>0)){c[e>>2]=4;l=-1;i=k;return l|0}else{l=l&65535;i=k;return l|0}return 0}function Kp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+8|0;j=g|0;if((b|0)==(d|0)){c[e>>2]=4;b=0;l=0;i=g;return(J=b,l)|0}k=Mb()|0;h=c[k>>2]|0;c[k>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);b=Eb(b|0,j|0,f|0,c[277746]|0)|0;f=J;l=c[k>>2]|0;if((l|0)==0){c[k>>2]=h}if((c[j>>2]|0)!=(d|0)){c[e>>2]=4;b=0;l=0;i=g;return(J=b,l)|0}if((l|0)==34){c[e>>2]=4;h=0;h=(f|0)>(h|0)|(f|0)==(h|0)&b>>>0>0>>>0;i=g;return(J=h?2147483647:-2147483648,h?-1:0)|0}else{l=b;i=g;return(J=f,l)|0}return 0}function Lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+8|0;j=g|0;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=g;return l|0}k=Mb()|0;h=c[k>>2]|0;c[k>>2]=0;do{if((a[1113064]|0)==0){if((pb(1113064)|0)==0){break}c[277746]=Ra(2147483647,16280,0)|0}}while(0);b=Eb(b|0,j|0,f|0,c[277746]|0)|0;f=J;l=c[k>>2]|0;if((l|0)==0){c[k>>2]=h}if((c[j>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=g;return l|0}do{if((l|0)==34){c[e>>2]=4;l=0;if((f|0)>(l|0)|(f|0)==(l|0)&b>>>0>0>>>0){h=2147483647}else{break}i=g;return h|0}else{l=-1;if((f|0)<(l|0)|(f|0)==(l|0)&b>>>0<-2147483648>>>0){c[e>>2]=4;break}l=0;if((f|0)>(l|0)|(f|0)==(l|0)&b>>>0>2147483647>>>0){c[e>>2]=4;l=2147483647;i=g;return l|0}else{l=b;i=g;return l|0}}}while(0);l=-2147483648;i=g;return l|0}function Mp(a){a=a|0;var b=0,d=0;b=a+4|0;d=(c[a>>2]|0)+(c[b+4>>2]|0)|0;a=d;b=c[b>>2]|0;if((b&1|0)==0){d=b;pc[d&255](a);return}else{d=c[(c[d>>2]|0)+(b-1)>>2]|0;pc[d&255](a);return}}function Np(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=b+8|0;e=b+4|0;g=c[e>>2]|0;k=c[f>>2]|0;i=g;if(!(k-i>>2>>>0<d>>>0)){do{if((g|0)==0){b=0}else{c[g>>2]=0;b=c[e>>2]|0}g=b+4|0;c[e>>2]=g;d=d-1|0;}while((d|0)!=0);return}g=b+16|0;h=b|0;m=c[h>>2]|0;i=i-m>>2;l=i+d|0;if(l>>>0>1073741823>>>0){Gn()}k=k-m|0;do{if(k>>2>>>0<536870911>>>0){k=k>>1;l=k>>>0<l>>>0?l:k;if((l|0)==0){k=0;l=0;break}k=b+128|0;if(!((a[k]|0)==0&l>>>0<29>>>0)){j=11;break}a[k]=1;k=g}else{l=1073741823;j=11}}while(0);if((j|0)==11){k=Eq(l<<2)|0}j=k+(i<<2)|0;do{if((j|0)==0){j=0}else{c[j>>2]=0}j=j+4|0;d=d-1|0;}while((d|0)!=0);d=c[h>>2]|0;n=(c[e>>2]|0)-d|0;m=k+(i-(n>>2)<<2)|0;i=d;Yq(m|0,i|0,n)|0;c[h>>2]=m;c[e>>2]=j;c[f>>2]=k+(l<<2);if((d|0)==0){return}if((g|0)==(d|0)){a[b+128|0]=0;return}else{Gq(i);return}}function Op(a){a=a|0;vi(1110204);vi(1110192);vi(1110180);vi(1110168);vi(1110156);vi(1110144);vi(1110132);vi(1110120);vi(1110108);vi(1110096);vi(1110084);vi(1110072);vi(1110060);vi(1110048);vi(1110036);vi(1110024);vi(1110012);vi(111e4);vi(1109988);vi(1109976);vi(1109964);vi(1109952);vi(1109940);vi(1109928);return}function Pp(a){a=a|0;di(1110948);di(1110936);di(1110924);di(1110912);di(1110900);di(1110888);di(1110876);di(1110864);di(1110852);di(1110840);di(1110828);di(1110816);di(1110804);di(1110792);di(1110780);di(1110768);di(1110756);di(1110744);di(1110732);di(1110720);di(1110708);di(1110696);di(1110684);di(1110672);return}function Qp(a){a=a|0;vi(1109748);vi(1109736);vi(1109724);vi(1109712);vi(1109700);vi(1109688);vi(1109676);vi(1109664);vi(1109652);vi(1109640);vi(1109628);vi(1109616);vi(1109604);vi(1109592);vi(1109580);vi(1109568);vi(1109556);vi(1109544);vi(1109532);vi(1109520);vi(1109508);vi(1109496);vi(1109484);vi(1109472);return}function Rp(a){a=a|0;di(1110492);di(1110480);di(1110468);di(1110456);di(1110444);di(1110432);di(1110420);di(1110408);di(1110396);di(1110384);di(1110372);di(1110360);di(1110348);di(1110336);di(1110324);di(1110312);di(1110300);di(1110288);di(1110276);di(1110264);di(1110252);di(1110240);di(1110228);di(1110216);return}function Sp(a){a=a|0;vi(1109916);vi(1109904);vi(1109892);vi(1109880);vi(1109868);vi(1109856);vi(1109844);vi(1109832);vi(1109820);vi(1109808);vi(1109796);vi(1109784);vi(1109772);vi(1109760);return}function Tp(a){a=a|0;di(1110660);di(1110648);di(1110636);di(1110624);di(1110612);di(1110600);di(1110588);di(1110576);di(1110564);di(1110552);di(1110540);di(1110528);di(1110516);di(1110504);return}function Up(a,b,c){a=a|0;b=b|0;c=c|0;return Vp(0,a,b,(c|0)!=0?c:1108976)|0}function Vp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+8|0;h=g|0;c[h>>2]=b;f=((f|0)==0?1108968:f)|0;k=c[f>>2]|0;a:do{if((d|0)==0){if((k|0)==0){e=0}else{break}i=g;return e|0}else{if((b|0)==0){j=h;c[h>>2]=j;h=j}else{h=b}if((e|0)==0){k=-2;i=g;return k|0}do{if((k|0)==0){b=a[d]|0;j=b&255;if(b<<24>>24>-1){c[h>>2]=j;k=b<<24>>24!=0|0;i=g;return k|0}else{b=j-194|0;if(b>>>0>50>>>0){break a}d=d+1|0;k=c[19720+(b<<2)>>2]|0;j=e-1|0;break}}else{j=e}}while(0);b:do{if((j|0)!=0){b=a[d]|0;l=(b&255)>>>3;if((l-16|l+(k>>26))>>>0>7>>>0){break a}while(1){d=d+1|0;k=(b&255)-128|k<<6;j=j-1|0;if((k|0)>=0){break}if((j|0)==0){break b}b=a[d]|0;if(((b&255)-128|0)>>>0>63>>>0){break a}}c[f>>2]=0;c[h>>2]=k;l=e-j|0;i=g;return l|0}}while(0);c[f>>2]=k;l=-2;i=g;return l|0}}while(0);c[f>>2]=0;c[(Mb()|0)>>2]=84;l=-1;i=g;return l|0}function Wp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+1032|0;j=h+1024|0;l=c[b>>2]|0;c[j>>2]=l;g=(a|0)!=0;k=h|0;e=g?e:256;a=g?a:k;a:do{if((l|0)==0|(e|0)==0){k=0}else{m=0;while(1){o=d>>>2;n=o>>>0>=e>>>0;if(!(n|d>>>0>131>>>0)){k=m;break a}l=n?e:o;d=d-l|0;l=Xp(a,j,l,f)|0;if((l|0)==-1){break}if((a|0)==(k|0)){a=k}else{a=a+(l<<2)|0;e=e-l|0}m=l+m|0;l=c[j>>2]|0;if((l|0)==0|(e|0)==0){k=m;break a}}k=-1;e=0;l=c[j>>2]|0}}while(0);b:do{if((l|0)==0){l=0}else{if((e|0)==0|(d|0)==0){break}while(1){m=Vp(a,l,d,f)|0;if((m+2|0)>>>0<3>>>0){break}l=l+m|0;c[j>>2]=l;e=e-1|0;k=k+1|0;if((e|0)==0|(d|0)==(m|0)){break b}else{d=d-m|0;a=a+4|0}}if((m|0)==0){c[j>>2]=0;l=0;break}else if((m|0)==(-1|0)){k=-1;break}else{c[f>>2]=0;break}}}while(0);if(!g){i=h;return k|0}c[b>>2]=l;i=h;return k|0}function Xp(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=c[e>>2]|0;do{if((g|0)==0){g=5}else{g=g|0;j=c[g>>2]|0;if((j|0)==0){g=5;break}if((b|0)==0){h=f;g=15;break}c[g>>2]=0;h=f;g=34}}while(0);if((g|0)==5){if((b|0)==0){h=f;g=7}else{h=f;g=6}}a:while(1){if((g|0)==6){if((h|0)==0){g=52;break}else{g=i}while(1){j=a[g]|0;b:do{if(((j&255)-1|0)>>>0<127>>>0){if(!((g&3|0)==0&h>>>0>3>>>0)){break}while(1){i=c[g>>2]|0;if(((i-16843009|i)&-2139062144|0)!=0){j=i&255;break b}c[b>>2]=i&255;c[b+4>>2]=d[g+1|0]|0;c[b+8>>2]=d[g+2|0]|0;i=g+4|0;j=b+16|0;c[b+12>>2]=d[g+3|0]|0;h=h-4|0;if(h>>>0>3>>>0){b=j;g=i}else{break}}g=i;b=j;j=a[i]|0}}while(0);i=j&255;if(!((i-1|0)>>>0<127>>>0)){break}c[b>>2]=i;h=h-1|0;if((h|0)==0){g=52;break a}else{b=b+4|0;g=g+1|0}}i=i-194|0;if(i>>>0>50>>>0){i=g;g=46;break}j=c[19720+(i<<2)>>2]|0;i=g+1|0;g=34;continue}else if((g|0)==7){j=a[i]|0;do{if(((j&255)-1|0)>>>0<127>>>0){if((i&3|0)!=0){break}g=c[i>>2]|0;if(((g-16843009|g)&-2139062144|0)!=0){j=g&255;break}while(1){i=i+4|0;h=h-4|0;g=c[i>>2]|0;if(((g-16843009|g)&-2139062144|0)!=0){j=g&255;break}}}}while(0);g=j&255;if((g-1|0)>>>0<127>>>0){i=i+1|0;h=h-1|0;g=7;continue}g=g-194|0;if(g>>>0>50>>>0){g=46;break}j=c[19720+(g<<2)>>2]|0;i=i+1|0;g=15;continue}else if((g|0)==15){k=(d[i]|0)>>>3;if((k-16|k+(j>>26))>>>0>7>>>0){g=16;break}g=i+1|0;do{if((j&33554432|0)==0){i=g}else{if(((d[g]|0)-128|0)>>>0>63>>>0){g=19;break a}g=i+2|0;if((j&524288|0)==0){i=g;break}if(((d[g]|0)-128|0)>>>0>63>>>0){g=22;break a}i=i+3|0}}while(0);h=h-1|0;g=7;continue}else if((g|0)==34){k=d[i]|0;g=k>>>3;if((g-16|g+(j>>26))>>>0>7>>>0){g=35;break}g=i+1|0;k=k-128|j<<6;do{if((k|0)<0){j=(d[g]|0)-128|0;if(j>>>0>63>>>0){g=38;break a}g=i+2|0;k=j|k<<6;if((k|0)>=0){i=g;break}g=(d[g]|0)-128|0;if(g>>>0>63>>>0){g=41;break a}k=g|k<<6;i=i+3|0}else{i=g}}while(0);c[b>>2]=k;b=b+4|0;h=h-1|0;g=6;continue}}if((g|0)==16){k=j;j=i-1|0;g=44}else if((g|0)==19){k=j;j=i-1|0;g=44}else if((g|0)==22){k=j;j=i-1|0;g=44}else if((g|0)==35){k=j;j=i-1|0;g=44}else if((g|0)==38){j=i-1|0;g=44}else if((g|0)==41){j=i-1|0;g=44}else if((g|0)==52){return f|0}do{if((g|0)==44){if((k|0)!=0){i=j;break}i=j;j=a[j]|0;g=46}}while(0);do{if((g|0)==46){if(!(j<<24>>24==0)){break}if((b|0)!=0){c[b>>2]=0;c[e>>2]=0}k=f-h|0;return k|0}}while(0);c[(Mb()|0)>>2]=84;if((b|0)==0){k=-1;return k|0}c[e>>2]=i;k=-1;return k|0}function Yp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+8|0;g=f|0;c[g>>2]=b;if((e|0)==0){h=0;i=f;return h|0}if((b|0)==0){h=g;c[g>>2]=h;g=h}else{g=b}b=a[e]|0;h=b&255;if(b<<24>>24>-1){c[g>>2]=h;h=b<<24>>24!=0|0;i=f;return h|0}b=h-194|0;do{if(!(b>>>0>50>>>0)){h=c[19720+(b<<2)>>2]|0;b=d[e+1|0]|0;j=b>>>3;if((j-16|j+(h>>26))>>>0>7>>>0){break}b=b-128|h<<6;if((b|0)>=0){c[g>>2]=b;j=2;i=f;return j|0}h=(d[e+2|0]|0)-128|0;if(h>>>0>63>>>0){break}b=h|b<<6;if((b|0)>=0){c[g>>2]=b;j=3;i=f;return j|0}e=(d[e+3|0]|0)-128|0;if(e>>>0>63>>>0){break}c[g>>2]=e|b<<6;j=4;i=f;return j|0}}while(0);c[(Mb()|0)>>2]=84;j=-1;i=f;return j|0}function Zp(b,d){b=b|0;d=d|0;if((b|0)==0){b=1;return b|0}if(d>>>0<128>>>0){a[b]=d;b=1;return b|0}if(d>>>0<2048>>>0){a[b]=d>>>6|192;a[b+1|0]=d&63|128;b=2;return b|0}if(d>>>0<55296>>>0|(d-57344|0)>>>0<8192>>>0){a[b]=d>>>12|224;a[b+1|0]=d>>>6&63|128;a[b+2|0]=d&63|128;b=3;return b|0}if((d-65536|0)>>>0<1048576>>>0){a[b]=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;return b|0}else{c[(Mb()|0)>>2]=84;b=-1;return b|0}return 0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+264|0;h=g+256|0;k=c[b>>2]|0;c[h>>2]=k;f=(a|0)!=0;j=g|0;e=f?e:256;a=f?a:j;a:do{if((k|0)==0|(e|0)==0){j=0}else{l=0;while(1){m=d>>>0>=e>>>0;if(!(m|d>>>0>32>>>0)){j=l;break a}k=m?e:d;d=d-k|0;k=$p(a,h,k)|0;if((k|0)==-1){break}if((a|0)==(j|0)){a=j}else{a=a+k|0;e=e-k|0}l=k+l|0;k=c[h>>2]|0;if((k|0)==0|(e|0)==0){j=l;break a}}j=-1;e=0;k=c[h>>2]|0}}while(0);b:do{if((k|0)==0){k=0}else{if((e|0)==0|(d|0)==0){break}while(1){l=Zp(a,c[k>>2]|0)|0;if((l+1|0)>>>0<2>>>0){break}k=k+4|0;c[h>>2]=k;d=d-1|0;j=j+1|0;if((e|0)==(l|0)|(d|0)==0){break b}else{e=e-l|0;a=a+l|0}}if((l|0)!=0){j=-1;break}c[h>>2]=0;k=0}}while(0);if(!f){i=g;return j|0}c[b>>2]=k;i=g;return j|0}function $p(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+8|0;h=g|0;if((b|0)==0){l=c[d>>2]|0;k=h|0;m=c[l>>2]|0;if((m|0)==0){m=0;i=g;return m|0}else{j=0}while(1){if(m>>>0>127>>>0){m=Zp(k,m)|0;if((m|0)==-1){j=-1;l=26;break}}else{m=1}j=m+j|0;l=l+4|0;m=c[l>>2]|0;if((m|0)==0){l=26;break}}if((l|0)==26){i=g;return j|0}}a:do{if(e>>>0>3>>>0){k=e;l=c[d>>2]|0;while(1){m=c[l>>2]|0;if((m|0)==0){break a}if(m>>>0>127>>>0){m=Zp(b,m)|0;if((m|0)==-1){j=-1;break}b=b+m|0;k=k-m|0}else{a[b]=m;b=b+1|0;k=k-1|0;l=c[d>>2]|0}l=l+4|0;c[d>>2]=l;if(!(k>>>0>3>>>0)){break a}}i=g;return j|0}else{k=e}}while(0);b:do{if((k|0)==0){f=0}else{h=h|0;l=c[d>>2]|0;while(1){m=c[l>>2]|0;if((m|0)==0){l=24;break}if(m>>>0>127>>>0){m=Zp(h,m)|0;if((m|0)==-1){j=-1;l=26;break}if(m>>>0>k>>>0){l=20;break}Zp(b,c[l>>2]|0)|0;b=b+m|0;k=k-m|0}else{a[b]=m;b=b+1|0;k=k-1|0;l=c[d>>2]|0}l=l+4|0;c[d>>2]=l;if((k|0)==0){f=0;break b}}if((l|0)==20){m=e-k|0;i=g;return m|0}else if((l|0)==24){a[b]=0;f=k;break}else if((l|0)==26){i=g;return j|0}}}while(0);c[d>>2]=0;m=e-f|0;i=g;return m|0}function aq(a){a=a|0;var b=0;b=a;while(1){if((c[b>>2]|0)==0){break}else{b=b+4|0}}return b-a>>2|0}function bq(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)==0){return}while(1){d=d-1|0;c[a>>2]=c[b>>2];if((d|0)==0){break}else{b=b+4|0;a=a+4|0}}return}function cq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(d|0)==0;if(a-b>>2>>>0<d>>>0){if(e){return}do{d=d-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2];}while((d|0)!=0);return}else{if(e){return}while(1){d=d-1|0;c[a>>2]=c[b>>2];if((d|0)==0){break}else{b=b+4|0;a=a+4|0}}return}}function dq(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)==0){return}while(1){d=d-1|0;c[a>>2]=b;if((d|0)==0){break}else{a=a+4|0}}return}function eq(a){a=a|0;c[a>>2]=20400;return}function fq(a){a=a|0;Gq(a);return}function gq(a){a=a|0;return}function hq(a){a=a|0;return 12792}function iq(a){a=a|0;return}function jq(a){a=a|0;return}function kq(a){a=a|0;return}function lq(a){a=a|0;Gq(a);return}function mq(a){a=a|0;Gq(a);return}function nq(a){a=a|0;Gq(a);return}function oq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+56|0;f=e|0;if((a|0)==(b|0)){g=1;i=e;return g|0}if((b|0)==0){g=0;i=e;return g|0}g=sq(b,27600)|0;b=g;if((g|0)==0){g=0;i=e;return g|0}Xq(f|0,0,56)|0;c[f>>2]=b;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ec[c[(c[g>>2]|0)+28>>2]&15](b,f,c[d>>2]|0,1);if((c[f+24>>2]|0)!=1){g=0;i=e;return g|0}c[d>>2]=c[f+16>>2];g=1;i=e;return g|0}function pq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((c[d+8>>2]|0)!=(b|0)){return}b=d+16|0;g=c[b>>2]|0;if((g|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((g|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}e=d+24|0;if((c[e>>2]|0)!=2){return}c[e>>2]=f;return}function qq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((b|0)!=(c[d+8>>2]|0)){g=c[b+8>>2]|0;Ec[c[(c[g>>2]|0)+28>>2]&15](g,d,e,f);return}b=d+16|0;g=c[b>>2]|0;if((g|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((g|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}e=d+24|0;if((c[e>>2]|0)!=2){return}c[e>>2]=f;return}function rq(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;if((b|0)==(c[d+8>>2]|0)){h=d+16|0;g=c[h>>2]|0;if((g|0)==0){c[h>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((g|0)!=(e|0)){k=d+36|0;c[k>>2]=(c[k>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}e=d+24|0;if((c[e>>2]|0)!=2){return}c[e>>2]=f;return}h=c[b+12>>2]|0;g=b+16+(h<<3)|0;i=c[b+20>>2]|0;j=i>>8;if((i&1|0)!=0){j=c[(c[e>>2]|0)+j>>2]|0}k=c[b+16>>2]|0;Ec[c[(c[k>>2]|0)+28>>2]&15](k,d,e+j|0,(i&2|0)!=0?f:2);if((h|0)<=1){return}i=d+54|0;h=e;b=b+24|0;while(1){j=c[b+4>>2]|0;k=j>>8;if((j&1|0)!=0){k=c[(c[h>>2]|0)+k>>2]|0}l=c[b>>2]|0;Ec[c[(c[l>>2]|0)+28>>2]&15](l,d,e+k|0,(j&2|0)!=0?f:2);if((a[i]|0)!=0){f=16;break}b=b+8|0;if(!(b>>>0<g>>>0)){f=16;break}}if((f|0)==16){return}}function sq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+56|0;f=d|0;h=c[a>>2]|0;j=a+(c[h-8>>2]|0)|0;h=c[h-4>>2]|0;g=h;c[f>>2]=b;c[f+4>>2]=a;c[f+8>>2]=27616;c[f+12>>2]=-1;a=f+16|0;n=f+20|0;e=f+24|0;l=f+28|0;k=f+32|0;m=f+40|0;Xq(a|0,0,39)|0;if((h|0)==(b|0)){c[f+48>>2]=1;Bc[c[(c[h>>2]|0)+20>>2]&31](g,f,j,j,1,0);i=d;return((c[e>>2]|0)==1?j:0)|0}nc[c[(c[h>>2]|0)+24>>2]&7](g,f,j,1,0);b=c[f+36>>2]|0;if((b|0)==1){do{if((c[e>>2]|0)!=1){if((c[m>>2]|0)!=0){n=0;i=d;return n|0}if((c[l>>2]|0)!=1){n=0;i=d;return n|0}if((c[k>>2]|0)==1){break}else{a=0}i=d;return a|0}}while(0);n=c[a>>2]|0;i=d;return n|0}else if((b|0)==0){if((c[m>>2]|0)!=1){n=0;i=d;return n|0}if((c[l>>2]|0)!=1){n=0;i=d;return n|0}n=(c[k>>2]|0)==1?c[n>>2]|0:0;i=d;return n|0}else{n=0;i=d;return n|0}return 0}function tq(b,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,r=0,s=0,t=0,u=0,v=0,w=0;j=b|0;if((j|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){return}e=d+28|0;if((c[e>>2]|0)==1){return}c[e>>2]=f;return}if((j|0)==(c[d>>2]|0)){do{if((c[d+16>>2]|0)!=(e|0)){j=d+20|0;if((c[j>>2]|0)==(e|0)){break}c[d+32>>2]=f;k=d+44|0;if((c[k>>2]|0)==4){return}v=c[b+12>>2]|0;m=b+16+(v<<3)|0;a:do{if((v|0)>0){q=d+52|0;r=d+53|0;s=d+54|0;p=b+8|0;l=d+24|0;n=e;o=0;b=b+16|0;t=0;b:do{a[q]=0;a[r]=0;u=c[b+4>>2]|0;v=u>>8;if((u&1|0)!=0){v=c[(c[n>>2]|0)+v>>2]|0}w=c[b>>2]|0;Bc[c[(c[w>>2]|0)+20>>2]&31](w,d,e,e+v|0,2-(u>>>1&1)|0,g);if((a[s]|0)!=0){break}do{if((a[r]|0)!=0){if((a[q]|0)==0){if((c[p>>2]&1|0)==0){t=1;break b}else{t=1;break}}if((c[l>>2]|0)==1){l=27;break a}if((c[p>>2]&2|0)==0){l=27;break a}else{t=1;o=1}}}while(0);b=b+8|0;}while(b>>>0<m>>>0);if(o){i=t;l=26}else{h=t;l=23}}else{h=0;l=23}}while(0);do{if((l|0)==23){c[j>>2]=e;w=d+40|0;c[w>>2]=(c[w>>2]|0)+1;if((c[d+36>>2]|0)!=1){i=h;l=26;break}if((c[d+24>>2]|0)!=2){i=h;l=26;break}a[d+54|0]=1;if(h){l=27}else{l=28}}}while(0);if((l|0)==26){if(i){l=27}else{l=28}}if((l|0)==27){c[k>>2]=3;return}else if((l|0)==28){c[k>>2]=4;return}}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}j=c[b+12>>2]|0;h=b+16+(j<<3)|0;i=c[b+20>>2]|0;k=i>>8;if((i&1|0)!=0){k=c[(c[e>>2]|0)+k>>2]|0}w=c[b+16>>2]|0;nc[c[(c[w>>2]|0)+24>>2]&7](w,d,e+k|0,(i&2|0)!=0?f:2,g);i=b+24|0;if((j|0)<=1){return}k=c[b+8>>2]|0;do{if((k&2|0)==0){j=d+36|0;if((c[j>>2]|0)==1){break}if((k&1|0)==0){l=d+54|0;k=e;n=i;while(1){if((a[l]|0)!=0){l=53;break}if((c[j>>2]|0)==1){l=53;break}m=c[n+4>>2]|0;o=m>>8;if((m&1|0)!=0){o=c[(c[k>>2]|0)+o>>2]|0}w=c[n>>2]|0;nc[c[(c[w>>2]|0)+24>>2]&7](w,d,e+o|0,(m&2|0)!=0?f:2,g);n=n+8|0;if(!(n>>>0<h>>>0)){l=53;break}}if((l|0)==53){return}}m=d+24|0;l=d+54|0;k=e;o=i;while(1){if((a[l]|0)!=0){l=53;break}if((c[j>>2]|0)==1){if((c[m>>2]|0)==1){l=53;break}}n=c[o+4>>2]|0;p=n>>8;if((n&1|0)!=0){p=c[(c[k>>2]|0)+p>>2]|0}w=c[o>>2]|0;nc[c[(c[w>>2]|0)+24>>2]&7](w,d,e+p|0,(n&2|0)!=0?f:2,g);o=o+8|0;if(!(o>>>0<h>>>0)){l=53;break}}if((l|0)==53){return}}}while(0);j=d+54|0;k=e;while(1){if((a[j]|0)!=0){l=53;break}l=c[i+4>>2]|0;m=l>>8;if((l&1|0)!=0){m=c[(c[k>>2]|0)+m>>2]|0}w=c[i>>2]|0;nc[c[(c[w>>2]|0)+24>>2]&7](w,d,e+m|0,(l&2|0)!=0?f:2,g);i=i+8|0;if(!(i>>>0<h>>>0)){l=53;break}}if((l|0)==53){return}}function uq(b,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;i=b|0;if((i|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){return}h=d+28|0;if((c[h>>2]|0)==1){return}c[h>>2]=f;return}if((i|0)!=(c[d>>2]|0)){j=c[b+8>>2]|0;nc[c[(c[j>>2]|0)+24>>2]&7](j,d,e,f,g);return}do{if((c[d+16>>2]|0)!=(e|0)){i=d+20|0;if((c[i>>2]|0)==(e|0)){break}c[d+32>>2]=f;f=d+44|0;if((c[f>>2]|0)==4){return}j=d+52|0;a[j]=0;k=d+53|0;a[k]=0;b=c[b+8>>2]|0;Bc[c[(c[b>>2]|0)+20>>2]&31](b,d,e,e,1,g);if((a[k]|0)==0){b=0;h=13}else{if((a[j]|0)==0){b=1;h=13}}a:do{if((h|0)==13){c[i>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;do{if((c[d+36>>2]|0)==1){if((c[d+24>>2]|0)!=2){h=16;break}a[d+54|0]=1;if(b){break a}}else{h=16}}while(0);if((h|0)==16){if(b){break}}c[f>>2]=4;return}}while(0);c[f>>2]=3;return}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}function vq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((c[d+8>>2]|0)==(b|0)){if((c[d+4>>2]|0)!=(e|0)){return}d=d+28|0;if((c[d>>2]|0)==1){return}c[d>>2]=f;return}if((c[d>>2]|0)!=(b|0)){return}do{if((c[d+16>>2]|0)!=(e|0)){b=d+20|0;if((c[b>>2]|0)==(e|0)){break}c[d+32>>2]=f;c[b>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;do{if((c[d+36>>2]|0)==1){if((c[d+24>>2]|0)!=2){break}a[d+54|0]=1}}while(0);c[d+44>>2]=4;return}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}function wq(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,q=0,r=0,s=0,t=0;if((b|0)!=(c[d+8>>2]|0)){k=d+52|0;j=a[k]|0;m=d+53|0;l=a[m]|0;o=c[b+12>>2]|0;i=b+16+(o<<3)|0;a[k]=0;a[m]=0;n=c[b+20>>2]|0;p=n>>8;if((n&1|0)!=0){p=c[(c[f>>2]|0)+p>>2]|0}s=c[b+16>>2]|0;Bc[c[(c[s>>2]|0)+20>>2]&31](s,d,e,f+p|0,(n&2|0)!=0?g:2,h);a:do{if((o|0)>1){p=d+24|0;o=b+8|0;q=d+54|0;n=f;b=b+24|0;do{if((a[q]|0)!=0){break a}do{if((a[k]|0)==0){if((a[m]|0)==0){break}if((c[o>>2]&1|0)==0){break a}}else{if((c[p>>2]|0)==1){break a}if((c[o>>2]&2|0)==0){break a}}}while(0);a[k]=0;a[m]=0;r=c[b+4>>2]|0;s=r>>8;if((r&1|0)!=0){s=c[(c[n>>2]|0)+s>>2]|0}t=c[b>>2]|0;Bc[c[(c[t>>2]|0)+20>>2]&31](t,d,e,f+s|0,(r&2|0)!=0?g:2,h);b=b+8|0;}while(b>>>0<i>>>0)}}while(0);a[k]=j;a[m]=l;return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;i=d+16|0;j=c[i>>2]|0;if((j|0)==0){c[i>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((j|0)!=(e|0)){t=d+36|0;c[t>>2]=(c[t>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;i=c[e>>2]|0;if((i|0)==2){c[e>>2]=g}else{g=i}if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}function xq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;if((b|0)!=(c[d+8>>2]|0)){b=c[b+8>>2]|0;Bc[c[(c[b>>2]|0)+20>>2]&31](b,d,e,f,g,h);return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;b=d+16|0;f=c[b>>2]|0;if((f|0)==0){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((f|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;b=c[e>>2]|0;if((b|0)==2){c[e>>2]=g}else{g=b}if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}function yq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;if((c[d+8>>2]|0)!=(b|0)){return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;f=d+16|0;b=c[f>>2]|0;if((b|0)==0){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((b|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;f=c[e>>2]|0;if((f|0)==2){c[e>>2]=g}else{g=f}if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}
-
-
-
-function zq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;do{if(a>>>0<245>>>0){if(a>>>0<11>>>0){a=16}else{a=a+11&-8}f=a>>>3;d=c[277250]|0;e=d>>>(f>>>0);if((e&3|0)!=0){h=(e&1^1)+f|0;b=h<<1;e=1109040+(b<<2)|0;b=1109040+(b+2<<2)|0;g=c[b>>2]|0;f=g+8|0;a=c[f>>2]|0;do{if((e|0)==(a|0)){c[277250]=d&~(1<<h)}else{if(a>>>0<(c[277254]|0)>>>0){Yb();return 0}d=a+12|0;if((c[d>>2]|0)==(g|0)){c[d>>2]=e;c[b>>2]=a;break}else{Yb();return 0}}}while(0);r=h<<3;c[g+4>>2]=r|3;r=g+(r|4)|0;c[r>>2]=c[r>>2]|1;r=f;return r|0}if(!(a>>>0>(c[277252]|0)>>>0)){break}if((e|0)!=0){i=2<<f;i=e<<f&(i|-i);i=(i&-i)-1|0;b=i>>>12&16;i=i>>>(b>>>0);h=i>>>5&8;i=i>>>(h>>>0);e=i>>>2&4;i=i>>>(e>>>0);g=i>>>1&2;i=i>>>(g>>>0);f=i>>>1&1;f=(h|b|e|g|f)+(i>>>(f>>>0))|0;i=f<<1;g=1109040+(i<<2)|0;i=1109040+(i+2<<2)|0;e=c[i>>2]|0;b=e+8|0;h=c[b>>2]|0;do{if((g|0)==(h|0)){c[277250]=d&~(1<<f)}else{if(h>>>0<(c[277254]|0)>>>0){Yb();return 0}d=h+12|0;if((c[d>>2]|0)==(e|0)){c[d>>2]=g;c[i>>2]=h;break}else{Yb();return 0}}}while(0);f=f<<3;d=f-a|0;c[e+4>>2]=a|3;r=e;e=r+a|0;c[r+(a|4)>>2]=d|1;c[r+f>>2]=d;f=c[277252]|0;if((f|0)!=0){a=c[277255]|0;g=f>>>3;h=g<<1;f=1109040+(h<<2)|0;i=c[277250]|0;g=1<<g;do{if((i&g|0)==0){c[277250]=i|g;g=f;h=1109040+(h+2<<2)|0}else{h=1109040+(h+2<<2)|0;g=c[h>>2]|0;if(!(g>>>0<(c[277254]|0)>>>0)){break}Yb();return 0}}while(0);c[h>>2]=a;c[g+12>>2]=a;c[a+8>>2]=g;c[a+12>>2]=f}c[277252]=d;c[277255]=e;r=b;return r|0}d=c[277251]|0;if((d|0)==0){break}f=(d&-d)-1|0;q=f>>>12&16;f=f>>>(q>>>0);p=f>>>5&8;f=f>>>(p>>>0);r=f>>>2&4;f=f>>>(r>>>0);d=f>>>1&2;f=f>>>(d>>>0);e=f>>>1&1;e=c[1109304+((p|q|r|d|e)+(f>>>(e>>>0))<<2)>>2]|0;f=e;d=e;e=(c[e+4>>2]&-8)-a|0;while(1){h=c[f+16>>2]|0;if((h|0)==0){h=c[f+20>>2]|0;if((h|0)==0){break}}i=(c[h+4>>2]&-8)-a|0;g=i>>>0<e>>>0;f=h;d=g?h:d;e=g?i:e}g=d;i=c[277254]|0;if(g>>>0<i>>>0){Yb();return 0}r=g+a|0;f=r;if(!(g>>>0<r>>>0)){Yb();return 0}h=c[d+24>>2]|0;j=c[d+12>>2]|0;do{if((j|0)==(d|0)){k=d+20|0;j=c[k>>2]|0;if((j|0)==0){k=d+16|0;j=c[k>>2]|0;if((j|0)==0){j=0;break}}while(1){l=j+20|0;m=c[l>>2]|0;if((m|0)!=0){j=m;k=l;continue}m=j+16|0;l=c[m>>2]|0;if((l|0)==0){break}else{j=l;k=m}}if(k>>>0<i>>>0){Yb();return 0}else{c[k>>2]=0;break}}else{k=c[d+8>>2]|0;if(k>>>0<i>>>0){Yb();return 0}l=k+12|0;if((c[l>>2]|0)!=(d|0)){Yb();return 0}i=j+8|0;if((c[i>>2]|0)==(d|0)){c[l>>2]=j;c[i>>2]=k;break}else{Yb();return 0}}}while(0);a:do{if((h|0)!=0){k=c[d+28>>2]|0;i=1109304+(k<<2)|0;do{if((d|0)==(c[i>>2]|0)){c[i>>2]=j;if((j|0)!=0){break}c[277251]=c[277251]&~(1<<k);break a}else{if(h>>>0<(c[277254]|0)>>>0){Yb();return 0}i=h+16|0;if((c[i>>2]|0)==(d|0)){c[i>>2]=j}else{c[h+20>>2]=j}if((j|0)==0){break a}}}while(0);if(j>>>0<(c[277254]|0)>>>0){Yb();return 0}c[j+24>>2]=h;h=c[d+16>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[j+16>>2]=h;c[h+24>>2]=j;break}}}while(0);h=c[d+20>>2]|0;if((h|0)==0){break}if(h>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[j+20>>2]=h;c[h+24>>2]=j;break}}}while(0);if(e>>>0<16>>>0){r=e+a|0;c[d+4>>2]=r|3;r=g+(r+4)|0;c[r>>2]=c[r>>2]|1}else{c[d+4>>2]=a|3;c[g+(a|4)>>2]=e|1;c[g+(e+a)>>2]=e;h=c[277252]|0;if((h|0)!=0){g=c[277255]|0;k=h>>>3;i=k<<1;h=1109040+(i<<2)|0;j=c[277250]|0;k=1<<k;do{if((j&k|0)==0){c[277250]=j|k;j=h;i=1109040+(i+2<<2)|0}else{i=1109040+(i+2<<2)|0;j=c[i>>2]|0;if(!(j>>>0<(c[277254]|0)>>>0)){break}Yb();return 0}}while(0);c[i>>2]=g;c[j+12>>2]=g;c[g+8>>2]=j;c[g+12>>2]=h}c[277252]=e;c[277255]=f}d=d+8|0;if((d|0)==0){break}return d|0}else{if(a>>>0>4294967231>>>0){a=-1;break}d=a+11|0;a=d&-8;e=c[277251]|0;if((e|0)==0){break}f=-a|0;d=d>>>8;do{if((d|0)==0){g=0}else{if(a>>>0>16777215>>>0){g=31;break}q=(d+1048320|0)>>>16&8;r=d<<q;p=(r+520192|0)>>>16&4;r=r<<p;g=(r+245760|0)>>>16&2;g=14-(p|q|g)+(r<<g>>>15)|0;g=a>>>((g+7|0)>>>0)&1|g<<1}}while(0);h=c[1109304+(g<<2)>>2]|0;b:do{if((h|0)==0){d=0;j=0}else{if((g|0)==31){i=0}else{i=25-(g>>>1)|0}d=0;i=a<<i;j=0;while(1){l=c[h+4>>2]&-8;k=l-a|0;if(k>>>0<f>>>0){if((l|0)==(a|0)){d=h;f=k;j=h;break b}else{d=h;f=k}}k=c[h+20>>2]|0;h=c[h+16+(i>>>31<<2)>>2]|0;j=(k|0)==0|(k|0)==(h|0)?j:k;if((h|0)==0){break}else{i=i<<1}}}}while(0);if((j|0)==0&(d|0)==0){r=2<<g;e=e&(r|-r);if((e|0)==0){break}r=(e&-e)-1|0;o=r>>>12&16;r=r>>>(o>>>0);n=r>>>5&8;r=r>>>(n>>>0);p=r>>>2&4;r=r>>>(p>>>0);q=r>>>1&2;r=r>>>(q>>>0);j=r>>>1&1;j=c[1109304+((n|o|p|q|j)+(r>>>(j>>>0))<<2)>>2]|0}if((j|0)!=0){while(1){g=(c[j+4>>2]&-8)-a|0;e=g>>>0<f>>>0;f=e?g:f;d=e?j:d;e=c[j+16>>2]|0;if((e|0)!=0){j=e;continue}j=c[j+20>>2]|0;if((j|0)==0){break}}}if((d|0)==0){break}if(!(f>>>0<((c[277252]|0)-a|0)>>>0)){break}e=d;j=c[277254]|0;if(e>>>0<j>>>0){Yb();return 0}h=e+a|0;g=h;if(!(e>>>0<h>>>0)){Yb();return 0}i=c[d+24>>2]|0;k=c[d+12>>2]|0;do{if((k|0)==(d|0)){l=d+20|0;k=c[l>>2]|0;if((k|0)==0){l=d+16|0;k=c[l>>2]|0;if((k|0)==0){k=0;break}}while(1){m=k+20|0;n=c[m>>2]|0;if((n|0)!=0){k=n;l=m;continue}m=k+16|0;n=c[m>>2]|0;if((n|0)==0){break}else{k=n;l=m}}if(l>>>0<j>>>0){Yb();return 0}else{c[l>>2]=0;break}}else{l=c[d+8>>2]|0;if(l>>>0<j>>>0){Yb();return 0}j=l+12|0;if((c[j>>2]|0)!=(d|0)){Yb();return 0}m=k+8|0;if((c[m>>2]|0)==(d|0)){c[j>>2]=k;c[m>>2]=l;break}else{Yb();return 0}}}while(0);c:do{if((i|0)!=0){l=c[d+28>>2]|0;j=1109304+(l<<2)|0;do{if((d|0)==(c[j>>2]|0)){c[j>>2]=k;if((k|0)!=0){break}c[277251]=c[277251]&~(1<<l);break c}else{if(i>>>0<(c[277254]|0)>>>0){Yb();return 0}j=i+16|0;if((c[j>>2]|0)==(d|0)){c[j>>2]=k}else{c[i+20>>2]=k}if((k|0)==0){break c}}}while(0);if(k>>>0<(c[277254]|0)>>>0){Yb();return 0}c[k+24>>2]=i;i=c[d+16>>2]|0;do{if((i|0)!=0){if(i>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[k+16>>2]=i;c[i+24>>2]=k;break}}}while(0);i=c[d+20>>2]|0;if((i|0)==0){break}if(i>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[k+20>>2]=i;c[i+24>>2]=k;break}}}while(0);do{if(f>>>0<16>>>0){r=f+a|0;c[d+4>>2]=r|3;r=e+(r+4)|0;c[r>>2]=c[r>>2]|1}else{c[d+4>>2]=a|3;c[e+(a|4)>>2]=f|1;c[e+(f+a)>>2]=f;i=f>>>3;if(f>>>0<256>>>0){h=i<<1;f=1109040+(h<<2)|0;j=c[277250]|0;i=1<<i;do{if((j&i|0)==0){c[277250]=j|i;i=f;h=1109040+(h+2<<2)|0}else{h=1109040+(h+2<<2)|0;i=c[h>>2]|0;if(!(i>>>0<(c[277254]|0)>>>0)){break}Yb();return 0}}while(0);c[h>>2]=g;c[i+12>>2]=g;c[e+(a+8)>>2]=i;c[e+(a+12)>>2]=f;break}g=f>>>8;do{if((g|0)==0){k=0}else{if(f>>>0>16777215>>>0){k=31;break}q=(g+1048320|0)>>>16&8;r=g<<q;p=(r+520192|0)>>>16&4;r=r<<p;k=(r+245760|0)>>>16&2;k=14-(p|q|k)+(r<<k>>>15)|0;k=f>>>((k+7|0)>>>0)&1|k<<1}}while(0);g=1109304+(k<<2)|0;c[e+(a+28)>>2]=k;c[e+(a+20)>>2]=0;c[e+(a+16)>>2]=0;j=c[277251]|0;i=1<<k;if((j&i|0)==0){c[277251]=j|i;c[g>>2]=h;c[e+(a+24)>>2]=g;c[e+(a+12)>>2]=h;c[e+(a+8)>>2]=h;break}if((k|0)==31){i=0}else{i=25-(k>>>1)|0}i=f<<i;g=c[g>>2]|0;while(1){if((c[g+4>>2]&-8|0)==(f|0)){break}j=g+16+(i>>>31<<2)|0;k=c[j>>2]|0;if((k|0)==0){b=151;break}else{i=i<<1;g=k}}if((b|0)==151){if(j>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[j>>2]=h;c[e+(a+24)>>2]=g;c[e+(a+12)>>2]=h;c[e+(a+8)>>2]=h;break}}i=g+8|0;j=c[i>>2]|0;f=c[277254]|0;if(g>>>0<f>>>0){Yb();return 0}if(j>>>0<f>>>0){Yb();return 0}else{c[j+12>>2]=h;c[i>>2]=h;c[e+(a+8)>>2]=j;c[e+(a+12)>>2]=g;c[e+(a+24)>>2]=0;break}}}while(0);d=d+8|0;if((d|0)==0){break}return d|0}}while(0);d=c[277252]|0;if(!(a>>>0>d>>>0)){b=d-a|0;e=c[277255]|0;if(b>>>0>15>>>0){r=e;c[277255]=r+a;c[277252]=b;c[r+(a+4)>>2]=b|1;c[r+d>>2]=b;c[e+4>>2]=a|3}else{c[277252]=0;c[277255]=0;c[e+4>>2]=d|3;r=e+(d+4)|0;c[r>>2]=c[r>>2]|1}r=e+8|0;return r|0}d=c[277253]|0;if(a>>>0<d>>>0){p=d-a|0;c[277253]=p;r=c[277256]|0;q=r;c[277256]=q+a;c[q+(a+4)>>2]=p|1;c[r+4>>2]=a|3;r=r+8|0;return r|0}do{if((c[277236]|0)==0){d=Vb(30)|0;if((d-1&d|0)==0){c[277238]=d;c[277237]=d;c[277239]=-1;c[277240]=-1;c[277241]=0;c[277361]=0;c[277236]=(lc(0)|0)&-16^1431655768;break}else{Yb();return 0}}}while(0);h=a+48|0;e=c[277238]|0;g=a+47|0;d=e+g|0;e=-e|0;f=d&e;if(!(f>>>0>a>>>0)){r=0;return r|0}i=c[277360]|0;do{if((i|0)!=0){q=c[277358]|0;r=q+f|0;if(r>>>0<=q>>>0|r>>>0>i>>>0){d=0}else{break}return d|0}}while(0);d:do{if((c[277361]&4|0)==0){i=c[277256]|0;e:do{if((i|0)==0){b=181}else{m=1109448;while(1){l=m|0;j=c[l>>2]|0;if(!(j>>>0>i>>>0)){k=m+4|0;if((j+(c[k>>2]|0)|0)>>>0>i>>>0){break}}m=c[m+8>>2]|0;if((m|0)==0){b=181;break e}}if((m|0)==0){b=181;break}i=d-(c[277253]|0)&e;if(!(i>>>0<2147483647>>>0)){e=0;break}j=Lb(i|0)|0;b=(j|0)==((c[l>>2]|0)+(c[k>>2]|0)|0);d=b?j:-1;e=b?i:0;b=190}}while(0);do{if((b|0)==181){d=Lb(0)|0;if((d|0)==-1){e=0;break}i=d;j=c[277237]|0;e=j-1|0;if((e&i|0)==0){i=f}else{i=f-i+(e+i&-j)|0}j=c[277358]|0;e=j+i|0;if(!(i>>>0>a>>>0&i>>>0<2147483647>>>0)){e=0;break}k=c[277360]|0;if((k|0)!=0){if(e>>>0<=j>>>0|e>>>0>k>>>0){e=0;break}}j=Lb(i|0)|0;b=(j|0)==(d|0);d=b?d:-1;e=b?i:0;b=190}}while(0);f:do{if((b|0)==190){b=-i|0;if(!((d|0)==-1)){b=201;break d}do{if((j|0)!=-1&i>>>0<2147483647>>>0&i>>>0<h>>>0){d=c[277238]|0;d=g-i+d&-d;if(!(d>>>0<2147483647>>>0)){break}if((Lb(d|0)|0)==-1){Lb(b|0)|0;break f}else{i=d+i|0;break}}}while(0);if(!((j|0)==-1)){e=i;d=j;b=201;break d}}}while(0);c[277361]=c[277361]|4;b=198}else{e=0;b=198}}while(0);do{if((b|0)==198){if(!(f>>>0<2147483647>>>0)){break}d=Lb(f|0)|0;f=Lb(0)|0;if(!((f|0)!=-1&(d|0)!=-1&d>>>0<f>>>0)){break}f=f-d|0;g=f>>>0>(a+40|0)>>>0;d=g?d:-1;if(!((d|0)==-1)){e=g?f:e;b=201}}}while(0);do{if((b|0)==201){f=(c[277358]|0)+e|0;c[277358]=f;if(f>>>0>(c[277359]|0)>>>0){c[277359]=f}f=c[277256]|0;g:do{if((f|0)==0){r=c[277254]|0;if((r|0)==0|d>>>0<r>>>0){c[277254]=d}c[277362]=d;c[277363]=e;c[277365]=0;c[277259]=c[277236];c[277258]=-1;b=0;do{r=b<<1;q=1109040+(r<<2)|0;c[1109040+(r+3<<2)>>2]=q;c[1109040+(r+2<<2)>>2]=q;b=b+1|0;}while(b>>>0<32>>>0);b=d+8|0;if((b&7|0)==0){b=0}else{b=-b&7}r=e-40-b|0;c[277256]=d+b;c[277253]=r;c[d+(b+4)>>2]=r|1;c[d+(e-36)>>2]=40;c[277257]=c[277240]}else{g=1109448;do{h=c[g>>2]|0;i=g+4|0;j=c[i>>2]|0;if((d|0)==(h+j|0)){b=213;break}g=c[g+8>>2]|0;}while((g|0)!=0);do{if((b|0)==213){if((c[g+12>>2]&8|0)!=0){break}g=f;if(!(g>>>0>=h>>>0&g>>>0<d>>>0)){break}c[i>>2]=j+e;b=(c[277253]|0)+e|0;d=f+8|0;if((d&7|0)==0){d=0}else{d=-d&7}r=b-d|0;c[277256]=g+d;c[277253]=r;c[g+(d+4)>>2]=r|1;c[g+(b+4)>>2]=40;c[277257]=c[277240];break g}}while(0);if(d>>>0<(c[277254]|0)>>>0){c[277254]=d}g=d+e|0;i=1109448;do{h=i|0;if((c[h>>2]|0)==(g|0)){b=223;break}i=c[i+8>>2]|0;}while((i|0)!=0);do{if((b|0)==223){if((c[i+12>>2]&8|0)!=0){break}c[h>>2]=d;f=i+4|0;c[f>>2]=(c[f>>2]|0)+e;f=d+8|0;if((f&7|0)==0){f=0}else{f=-f&7}g=d+(e+8)|0;if((g&7|0)==0){k=0}else{k=-g&7}n=d+(k+e)|0;m=n;g=f+a|0;i=d+g|0;h=i;j=n-(d+f)-a|0;c[d+(f+4)>>2]=a|3;do{if((m|0)==(c[277256]|0)){r=(c[277253]|0)+j|0;c[277253]=r;c[277256]=h;c[d+(g+4)>>2]=r|1}else{if((m|0)==(c[277255]|0)){r=(c[277252]|0)+j|0;c[277252]=r;c[277255]=h;c[d+(g+4)>>2]=r|1;c[d+(r+g)>>2]=r;break}l=e+4|0;p=c[d+(l+k)>>2]|0;if((p&3|0)==1){a=p&-8;o=p>>>3;h:do{if(p>>>0<256>>>0){l=c[d+((k|8)+e)>>2]|0;n=c[d+(e+12+k)>>2]|0;p=1109040+(o<<1<<2)|0;do{if((l|0)!=(p|0)){if(l>>>0<(c[277254]|0)>>>0){Yb();return 0}if((c[l+12>>2]|0)==(m|0)){break}Yb();return 0}}while(0);if((n|0)==(l|0)){c[277250]=c[277250]&~(1<<o);break}do{if((n|0)==(p|0)){o=n+8|0}else{if(n>>>0<(c[277254]|0)>>>0){Yb();return 0}o=n+8|0;if((c[o>>2]|0)==(m|0)){break}Yb();return 0}}while(0);c[l+12>>2]=n;c[o>>2]=l}else{m=c[d+((k|24)+e)>>2]|0;o=c[d+(e+12+k)>>2]|0;do{if((o|0)==(n|0)){q=k|16;p=d+(l+q)|0;o=c[p>>2]|0;if((o|0)==0){p=d+(q+e)|0;o=c[p>>2]|0;if((o|0)==0){o=0;break}}while(1){q=o+20|0;r=c[q>>2]|0;if((r|0)!=0){o=r;p=q;continue}q=o+16|0;r=c[q>>2]|0;if((r|0)==0){break}else{o=r;p=q}}if(p>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[p>>2]=0;break}}else{q=c[d+((k|8)+e)>>2]|0;if(q>>>0<(c[277254]|0)>>>0){Yb();return 0}r=q+12|0;if((c[r>>2]|0)!=(n|0)){Yb();return 0}p=o+8|0;if((c[p>>2]|0)==(n|0)){c[r>>2]=o;c[p>>2]=q;break}else{Yb();return 0}}}while(0);if((m|0)==0){break}p=c[d+(e+28+k)>>2]|0;q=1109304+(p<<2)|0;do{if((n|0)==(c[q>>2]|0)){c[q>>2]=o;if((o|0)!=0){break}c[277251]=c[277251]&~(1<<p);break h}else{if(m>>>0<(c[277254]|0)>>>0){Yb();return 0}p=m+16|0;if((c[p>>2]|0)==(n|0)){c[p>>2]=o}else{c[m+20>>2]=o}if((o|0)==0){break h}}}while(0);if(o>>>0<(c[277254]|0)>>>0){Yb();return 0}c[o+24>>2]=m;n=k|16;m=c[d+(n+e)>>2]|0;do{if((m|0)!=0){if(m>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[o+16>>2]=m;c[m+24>>2]=o;break}}}while(0);l=c[d+(l+n)>>2]|0;if((l|0)==0){break}if(l>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[o+20>>2]=l;c[l+24>>2]=o;break}}}while(0);m=d+((a|k)+e)|0;j=a+j|0}a=m+4|0;c[a>>2]=c[a>>2]&-2;c[d+(g+4)>>2]=j|1;c[d+(j+g)>>2]=j;a=j>>>3;if(j>>>0<256>>>0){e=a<<1;b=1109040+(e<<2)|0;i=c[277250]|0;a=1<<a;do{if((i&a|0)==0){c[277250]=i|a;a=b;e=1109040+(e+2<<2)|0}else{e=1109040+(e+2<<2)|0;a=c[e>>2]|0;if(!(a>>>0<(c[277254]|0)>>>0)){break}Yb();return 0}}while(0);c[e>>2]=h;c[a+12>>2]=h;c[d+(g+8)>>2]=a;c[d+(g+12)>>2]=b;break}a=j>>>8;do{if((a|0)==0){e=0}else{if(j>>>0>16777215>>>0){e=31;break}q=(a+1048320|0)>>>16&8;r=a<<q;p=(r+520192|0)>>>16&4;r=r<<p;e=(r+245760|0)>>>16&2;e=14-(p|q|e)+(r<<e>>>15)|0;e=j>>>((e+7|0)>>>0)&1|e<<1}}while(0);a=1109304+(e<<2)|0;c[d+(g+28)>>2]=e;c[d+(g+20)>>2]=0;c[d+(g+16)>>2]=0;h=c[277251]|0;k=1<<e;if((h&k|0)==0){c[277251]=h|k;c[a>>2]=i;c[d+(g+24)>>2]=a;c[d+(g+12)>>2]=i;c[d+(g+8)>>2]=i;break}if((e|0)==31){e=0}else{e=25-(e>>>1)|0}e=j<<e;a=c[a>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(j|0)){break}k=a+16+(e>>>31<<2)|0;h=c[k>>2]|0;if((h|0)==0){b=296;break}else{e=e<<1;a=h}}if((b|0)==296){if(k>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[k>>2]=i;c[d+(g+24)>>2]=a;c[d+(g+12)>>2]=i;c[d+(g+8)>>2]=i;break}}b=a+8|0;e=c[b>>2]|0;h=c[277254]|0;if(a>>>0<h>>>0){Yb();return 0}if(e>>>0<h>>>0){Yb();return 0}else{c[e+12>>2]=i;c[b>>2]=i;c[d+(g+8)>>2]=e;c[d+(g+12)>>2]=a;c[d+(g+24)>>2]=0;break}}}while(0);r=d+(f|8)|0;return r|0}}while(0);g=f;k=1109448;while(1){j=c[k>>2]|0;if(!(j>>>0>g>>>0)){i=c[k+4>>2]|0;h=j+i|0;if(h>>>0>g>>>0){break}}k=c[k+8>>2]|0}k=j+(i-39)|0;if((k&7|0)==0){k=0}else{k=-k&7}i=j+(i-47+k)|0;i=i>>>0<(f+16|0)>>>0?g:i;j=i+8|0;k=d+8|0;if((k&7|0)==0){k=0}else{k=-k&7}r=e-40-k|0;c[277256]=d+k;c[277253]=r;c[d+(k+4)>>2]=r|1;c[d+(e-36)>>2]=40;c[277257]=c[277240];c[i+4>>2]=27;c[j>>2]=c[277362];c[j+4>>2]=c[277363];c[j+8>>2]=c[277364];c[j+12>>2]=c[277365];c[277362]=d;c[277363]=e;c[277365]=0;c[277364]=j;d=i+28|0;c[d>>2]=7;if((i+32|0)>>>0<h>>>0){while(1){e=d+4|0;c[e>>2]=7;if((d+8|0)>>>0<h>>>0){d=e}else{break}}}if((i|0)==(g|0)){break}e=i-f|0;r=g+(e+4)|0;c[r>>2]=c[r>>2]&-2;c[f+4>>2]=e|1;c[g+e>>2]=e;g=e>>>3;if(e>>>0<256>>>0){d=g<<1;b=1109040+(d<<2)|0;e=c[277250]|0;g=1<<g;do{if((e&g|0)==0){c[277250]=e|g;e=b;d=1109040+(d+2<<2)|0}else{d=1109040+(d+2<<2)|0;e=c[d>>2]|0;if(!(e>>>0<(c[277254]|0)>>>0)){break}Yb();return 0}}while(0);c[d>>2]=f;c[e+12>>2]=f;c[f+8>>2]=e;c[f+12>>2]=b;break}d=f;g=e>>>8;do{if((g|0)==0){i=0}else{if(e>>>0>16777215>>>0){i=31;break}q=(g+1048320|0)>>>16&8;r=g<<q;p=(r+520192|0)>>>16&4;r=r<<p;i=(r+245760|0)>>>16&2;i=14-(p|q|i)+(r<<i>>>15)|0;i=e>>>((i+7|0)>>>0)&1|i<<1}}while(0);g=1109304+(i<<2)|0;c[f+28>>2]=i;c[f+20>>2]=0;c[f+16>>2]=0;j=c[277251]|0;h=1<<i;if((j&h|0)==0){c[277251]=j|h;c[g>>2]=d;c[f+24>>2]=g;c[f+12>>2]=f;c[f+8>>2]=f;break}if((i|0)==31){h=0}else{h=25-(i>>>1)|0}h=e<<h;g=c[g>>2]|0;while(1){if((c[g+4>>2]&-8|0)==(e|0)){break}j=g+16+(h>>>31<<2)|0;i=c[j>>2]|0;if((i|0)==0){b=331;break}else{h=h<<1;g=i}}if((b|0)==331){if(j>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[j>>2]=d;c[f+24>>2]=g;c[f+12>>2]=f;c[f+8>>2]=f;break}}h=g+8|0;e=c[h>>2]|0;b=c[277254]|0;if(g>>>0<b>>>0){Yb();return 0}if(e>>>0<b>>>0){Yb();return 0}else{c[e+12>>2]=d;c[h>>2]=d;c[f+8>>2]=e;c[f+12>>2]=g;c[f+24>>2]=0;break}}}while(0);b=c[277253]|0;if(!(b>>>0>a>>>0)){break}p=b-a|0;c[277253]=p;r=c[277256]|0;q=r;c[277256]=q+a;c[q+(a+4)>>2]=p|1;c[r+4>>2]=a|3;r=r+8|0;return r|0}}while(0);c[(Mb()|0)>>2]=12;r=0;return r|0}function Aq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((a|0)==0){return}p=a-8|0;s=p;q=c[277254]|0;if(p>>>0<q>>>0){Yb()}n=c[a-4>>2]|0;m=n&3;if((m|0)==1){Yb()}h=n&-8;k=a+(h-8)|0;j=k;a:do{if((n&1|0)==0){u=c[p>>2]|0;if((m|0)==0){return}p=-8-u|0;s=a+p|0;m=s;n=u+h|0;if(s>>>0<q>>>0){Yb()}if((m|0)==(c[277255]|0)){b=a+(h-4)|0;if((c[b>>2]&3|0)!=3){b=m;l=n;break}c[277252]=n;c[b>>2]=c[b>>2]&-2;c[a+(p+4)>>2]=n|1;c[k>>2]=n;return}t=u>>>3;if(u>>>0<256>>>0){b=c[a+(p+8)>>2]|0;l=c[a+(p+12)>>2]|0;o=1109040+(t<<1<<2)|0;do{if((b|0)!=(o|0)){if(b>>>0<q>>>0){Yb()}if((c[b+12>>2]|0)==(m|0)){break}Yb()}}while(0);if((l|0)==(b|0)){c[277250]=c[277250]&~(1<<t);b=m;l=n;break}do{if((l|0)==(o|0)){r=l+8|0}else{if(l>>>0<q>>>0){Yb()}o=l+8|0;if((c[o>>2]|0)==(m|0)){r=o;break}Yb()}}while(0);c[b+12>>2]=l;c[r>>2]=b;b=m;l=n;break}r=c[a+(p+24)>>2]|0;u=c[a+(p+12)>>2]|0;do{if((u|0)==(s|0)){u=a+(p+20)|0;t=c[u>>2]|0;if((t|0)==0){u=a+(p+16)|0;t=c[u>>2]|0;if((t|0)==0){o=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}v=t+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{t=w;u=v}}if(u>>>0<q>>>0){Yb()}else{c[u>>2]=0;o=t;break}}else{t=c[a+(p+8)>>2]|0;if(t>>>0<q>>>0){Yb()}q=t+12|0;if((c[q>>2]|0)!=(s|0)){Yb()}v=u+8|0;if((c[v>>2]|0)==(s|0)){c[q>>2]=u;c[v>>2]=t;o=u;break}else{Yb()}}}while(0);if((r|0)==0){b=m;l=n;break}q=c[a+(p+28)>>2]|0;t=1109304+(q<<2)|0;do{if((s|0)==(c[t>>2]|0)){c[t>>2]=o;if((o|0)!=0){break}c[277251]=c[277251]&~(1<<q);b=m;l=n;break a}else{if(r>>>0<(c[277254]|0)>>>0){Yb()}q=r+16|0;if((c[q>>2]|0)==(s|0)){c[q>>2]=o}else{c[r+20>>2]=o}if((o|0)==0){b=m;l=n;break a}}}while(0);if(o>>>0<(c[277254]|0)>>>0){Yb()}c[o+24>>2]=r;q=c[a+(p+16)>>2]|0;do{if((q|0)!=0){if(q>>>0<(c[277254]|0)>>>0){Yb()}else{c[o+16>>2]=q;c[q+24>>2]=o;break}}}while(0);p=c[a+(p+20)>>2]|0;if((p|0)==0){b=m;l=n;break}if(p>>>0<(c[277254]|0)>>>0){Yb()}else{c[o+20>>2]=p;c[p+24>>2]=o;b=m;l=n;break}}else{b=s;l=h}}while(0);m=b;if(!(m>>>0<k>>>0)){Yb()}n=a+(h-4)|0;o=c[n>>2]|0;if((o&1|0)==0){Yb()}do{if((o&2|0)==0){if((j|0)==(c[277256]|0)){w=(c[277253]|0)+l|0;c[277253]=w;c[277256]=b;c[b+4>>2]=w|1;if((b|0)!=(c[277255]|0)){return}c[277255]=0;c[277252]=0;return}if((j|0)==(c[277255]|0)){w=(c[277252]|0)+l|0;c[277252]=w;c[277255]=b;c[b+4>>2]=w|1;c[m+w>>2]=w;return}l=(o&-8)+l|0;n=o>>>3;b:do{if(o>>>0<256>>>0){g=c[a+h>>2]|0;h=c[a+(h|4)>>2]|0;a=1109040+(n<<1<<2)|0;do{if((g|0)!=(a|0)){if(g>>>0<(c[277254]|0)>>>0){Yb()}if((c[g+12>>2]|0)==(j|0)){break}Yb()}}while(0);if((h|0)==(g|0)){c[277250]=c[277250]&~(1<<n);break}do{if((h|0)==(a|0)){i=h+8|0}else{if(h>>>0<(c[277254]|0)>>>0){Yb()}a=h+8|0;if((c[a>>2]|0)==(j|0)){i=a;break}Yb()}}while(0);c[g+12>>2]=h;c[i>>2]=g}else{i=c[a+(h+16)>>2]|0;n=c[a+(h|4)>>2]|0;do{if((n|0)==(k|0)){n=a+(h+12)|0;j=c[n>>2]|0;if((j|0)==0){n=a+(h+8)|0;j=c[n>>2]|0;if((j|0)==0){g=0;break}}while(1){p=j+20|0;o=c[p>>2]|0;if((o|0)!=0){j=o;n=p;continue}o=j+16|0;p=c[o>>2]|0;if((p|0)==0){break}else{j=p;n=o}}if(n>>>0<(c[277254]|0)>>>0){Yb()}else{c[n>>2]=0;g=j;break}}else{o=c[a+h>>2]|0;if(o>>>0<(c[277254]|0)>>>0){Yb()}p=o+12|0;if((c[p>>2]|0)!=(k|0)){Yb()}j=n+8|0;if((c[j>>2]|0)==(k|0)){c[p>>2]=n;c[j>>2]=o;g=n;break}else{Yb()}}}while(0);if((i|0)==0){break}n=c[a+(h+20)>>2]|0;j=1109304+(n<<2)|0;do{if((k|0)==(c[j>>2]|0)){c[j>>2]=g;if((g|0)!=0){break}c[277251]=c[277251]&~(1<<n);break b}else{if(i>>>0<(c[277254]|0)>>>0){Yb()}j=i+16|0;if((c[j>>2]|0)==(k|0)){c[j>>2]=g}else{c[i+20>>2]=g}if((g|0)==0){break b}}}while(0);if(g>>>0<(c[277254]|0)>>>0){Yb()}c[g+24>>2]=i;i=c[a+(h+8)>>2]|0;do{if((i|0)!=0){if(i>>>0<(c[277254]|0)>>>0){Yb()}else{c[g+16>>2]=i;c[i+24>>2]=g;break}}}while(0);h=c[a+(h+12)>>2]|0;if((h|0)==0){break}if(h>>>0<(c[277254]|0)>>>0){Yb()}else{c[g+20>>2]=h;c[h+24>>2]=g;break}}}while(0);c[b+4>>2]=l|1;c[m+l>>2]=l;if((b|0)!=(c[277255]|0)){break}c[277252]=l;return}else{c[n>>2]=o&-2;c[b+4>>2]=l|1;c[m+l>>2]=l}}while(0);g=l>>>3;if(l>>>0<256>>>0){a=g<<1;d=1109040+(a<<2)|0;h=c[277250]|0;g=1<<g;do{if((h&g|0)==0){c[277250]=h|g;f=d;e=1109040+(a+2<<2)|0}else{h=1109040+(a+2<<2)|0;g=c[h>>2]|0;if(!(g>>>0<(c[277254]|0)>>>0)){f=g;e=h;break}Yb()}}while(0);c[e>>2]=b;c[f+12>>2]=b;c[b+8>>2]=f;c[b+12>>2]=d;return}e=b;f=l>>>8;do{if((f|0)==0){a=0}else{if(l>>>0>16777215>>>0){a=31;break}v=(f+1048320|0)>>>16&8;w=f<<v;u=(w+520192|0)>>>16&4;w=w<<u;a=(w+245760|0)>>>16&2;a=14-(u|v|a)+(w<<a>>>15)|0;a=l>>>((a+7|0)>>>0)&1|a<<1}}while(0);f=1109304+(a<<2)|0;c[b+28>>2]=a;c[b+20>>2]=0;c[b+16>>2]=0;h=c[277251]|0;g=1<<a;do{if((h&g|0)==0){c[277251]=h|g;c[f>>2]=e;c[b+24>>2]=f;c[b+12>>2]=b;c[b+8>>2]=b}else{if((a|0)==31){g=0}else{g=25-(a>>>1)|0}g=l<<g;f=c[f>>2]|0;while(1){if((c[f+4>>2]&-8|0)==(l|0)){break}h=f+16+(g>>>31<<2)|0;a=c[h>>2]|0;if((a|0)==0){d=129;break}else{g=g<<1;f=a}}if((d|0)==129){if(h>>>0<(c[277254]|0)>>>0){Yb()}else{c[h>>2]=e;c[b+24>>2]=f;c[b+12>>2]=b;c[b+8>>2]=b;break}}h=f+8|0;g=c[h>>2]|0;d=c[277254]|0;if(f>>>0<d>>>0){Yb()}if(g>>>0<d>>>0){Yb()}else{c[g+12>>2]=e;c[h>>2]=e;c[b+8>>2]=g;c[b+12>>2]=f;c[b+24>>2]=0;break}}}while(0);w=(c[277258]|0)-1|0;c[277258]=w;if((w|0)==0){b=1109456}else{return}while(1){b=c[b>>2]|0;if((b|0)==0){break}else{b=b+8|0}}c[277258]=-1;return}function Bq(a,b){a=a|0;b=b|0;var d=0,e=0;if((a|0)==0){e=zq(b)|0;return e|0}if(b>>>0>4294967231>>>0){c[(Mb()|0)>>2]=12;e=0;return e|0}if(b>>>0<11>>>0){d=16}else{d=b+11&-8}d=Cq(a-8|0,d)|0;if((d|0)!=0){e=d+8|0;return e|0}d=zq(b)|0;if((d|0)==0){e=0;return e|0}e=c[a-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Yq(d|0,a|0,e>>>0<b>>>0?e:b)|0;Aq(a);e=d;return e|0}function Cq(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,n=0,o=0;d=a+4|0;f=c[d>>2]|0;h=f&-8;e=a;j=e+h|0;k=j;i=c[277254]|0;if(e>>>0<i>>>0){Yb();return 0}m=f&3;if(!((m|0)!=1&e>>>0<j>>>0)){Yb();return 0}g=e+(h|4)|0;l=c[g>>2]|0;if((l&1|0)==0){Yb();return 0}if((m|0)==0){if(b>>>0<256>>>0){o=0;return o|0}do{if(!(h>>>0<(b+4|0)>>>0)){if((h-b|0)>>>0>c[277238]<<1>>>0){break}return a|0}}while(0);o=0;return o|0}if(!(h>>>0<b>>>0)){h=h-b|0;if(!(h>>>0>15>>>0)){o=a;return o|0}c[d>>2]=f&1|b|2;c[e+(b+4)>>2]=h|3;c[g>>2]=c[g>>2]|1;Dq(e+b|0,h);o=a;return o|0}if((k|0)==(c[277256]|0)){g=(c[277253]|0)+h|0;if(!(g>>>0>b>>>0)){o=0;return o|0}o=g-b|0;c[d>>2]=f&1|b|2;c[e+(b+4)>>2]=o|1;c[277256]=e+b;c[277253]=o;o=a;return o|0}if((k|0)==(c[277255]|0)){h=(c[277252]|0)+h|0;if(h>>>0<b>>>0){o=0;return o|0}g=h-b|0;if(g>>>0>15>>>0){c[d>>2]=f&1|b|2;c[e+(b+4)>>2]=g|1;c[e+h>>2]=g;d=e+(h+4)|0;c[d>>2]=c[d>>2]&-2;d=e+b|0}else{c[d>>2]=f&1|h|2;d=e+(h+4)|0;c[d>>2]=c[d>>2]|1;d=0;g=0}c[277252]=g;c[277255]=d;o=a;return o|0}if((l&2|0)!=0){o=0;return o|0}g=(l&-8)+h|0;if(g>>>0<b>>>0){o=0;return o|0}f=g-b|0;m=l>>>3;a:do{if(l>>>0<256>>>0){j=c[e+(h+8)>>2]|0;h=c[e+(h+12)>>2]|0;l=1109040+(m<<1<<2)|0;do{if((j|0)!=(l|0)){if(j>>>0<i>>>0){Yb();return 0}if((c[j+12>>2]|0)==(k|0)){break}Yb();return 0}}while(0);if((h|0)==(j|0)){c[277250]=c[277250]&~(1<<m);break}do{if((h|0)==(l|0)){i=h+8|0}else{if(h>>>0<i>>>0){Yb();return 0}i=h+8|0;if((c[i>>2]|0)==(k|0)){break}Yb();return 0}}while(0);c[j+12>>2]=h;c[i>>2]=j}else{k=c[e+(h+24)>>2]|0;l=c[e+(h+12)>>2]|0;do{if((l|0)==(j|0)){m=e+(h+20)|0;l=c[m>>2]|0;if((l|0)==0){m=e+(h+16)|0;l=c[m>>2]|0;if((l|0)==0){l=0;break}}while(1){o=l+20|0;n=c[o>>2]|0;if((n|0)!=0){l=n;m=o;continue}o=l+16|0;n=c[o>>2]|0;if((n|0)==0){break}else{l=n;m=o}}if(m>>>0<i>>>0){Yb();return 0}else{c[m>>2]=0;break}}else{m=c[e+(h+8)>>2]|0;if(m>>>0<i>>>0){Yb();return 0}n=m+12|0;if((c[n>>2]|0)!=(j|0)){Yb();return 0}i=l+8|0;if((c[i>>2]|0)==(j|0)){c[n>>2]=l;c[i>>2]=m;break}else{Yb();return 0}}}while(0);if((k|0)==0){break}m=c[e+(h+28)>>2]|0;i=1109304+(m<<2)|0;do{if((j|0)==(c[i>>2]|0)){c[i>>2]=l;if((l|0)!=0){break}c[277251]=c[277251]&~(1<<m);break a}else{if(k>>>0<(c[277254]|0)>>>0){Yb();return 0}i=k+16|0;if((c[i>>2]|0)==(j|0)){c[i>>2]=l}else{c[k+20>>2]=l}if((l|0)==0){break a}}}while(0);if(l>>>0<(c[277254]|0)>>>0){Yb();return 0}c[l+24>>2]=k;i=c[e+(h+16)>>2]|0;do{if((i|0)!=0){if(i>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[l+16>>2]=i;c[i+24>>2]=l;break}}}while(0);h=c[e+(h+20)>>2]|0;if((h|0)==0){break}if(h>>>0<(c[277254]|0)>>>0){Yb();return 0}else{c[l+20>>2]=h;c[h+24>>2]=l;break}}}while(0);if(f>>>0<16>>>0){c[d>>2]=g|c[d>>2]&1|2;o=e+(g|4)|0;c[o>>2]=c[o>>2]|1;o=a;return o|0}else{c[d>>2]=c[d>>2]&1|b|2;c[e+(b+4)>>2]=f|3;o=e+(g|4)|0;c[o>>2]=c[o>>2]|1;Dq(e+b|0,f);o=a;return o|0}return 0}function Dq(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;i=a;l=i+b|0;k=l;m=c[a+4>>2]|0;a:do{if((m&1|0)==0){p=c[a>>2]|0;if((m&3|0)==0){return}r=i+(-p|0)|0;m=r;a=p+b|0;q=c[277254]|0;if(r>>>0<q>>>0){Yb()}if((m|0)==(c[277255]|0)){d=i+(b+4)|0;if((c[d>>2]&3|0)!=3){d=m;n=a;break}c[277252]=a;c[d>>2]=c[d>>2]&-2;c[i+(4-p)>>2]=a|1;c[l>>2]=a;return}t=p>>>3;if(p>>>0<256>>>0){d=c[i+(8-p)>>2]|0;n=c[i+(12-p)>>2]|0;o=1109040+(t<<1<<2)|0;do{if((d|0)!=(o|0)){if(d>>>0<q>>>0){Yb()}if((c[d+12>>2]|0)==(m|0)){break}Yb()}}while(0);if((n|0)==(d|0)){c[277250]=c[277250]&~(1<<t);d=m;n=a;break}do{if((n|0)==(o|0)){s=n+8|0}else{if(n>>>0<q>>>0){Yb()}o=n+8|0;if((c[o>>2]|0)==(m|0)){s=o;break}Yb()}}while(0);c[d+12>>2]=n;c[s>>2]=d;d=m;n=a;break}s=c[i+(24-p)>>2]|0;t=c[i+(12-p)>>2]|0;do{if((t|0)==(r|0)){v=16-p|0;u=i+(v+4)|0;t=c[u>>2]|0;if((t|0)==0){u=i+v|0;t=c[u>>2]|0;if((t|0)==0){o=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}w=t+16|0;v=c[w>>2]|0;if((v|0)==0){break}else{t=v;u=w}}if(u>>>0<q>>>0){Yb()}else{c[u>>2]=0;o=t;break}}else{u=c[i+(8-p)>>2]|0;if(u>>>0<q>>>0){Yb()}q=u+12|0;if((c[q>>2]|0)!=(r|0)){Yb()}v=t+8|0;if((c[v>>2]|0)==(r|0)){c[q>>2]=t;c[v>>2]=u;o=t;break}else{Yb()}}}while(0);if((s|0)==0){d=m;n=a;break}t=c[i+(28-p)>>2]|0;q=1109304+(t<<2)|0;do{if((r|0)==(c[q>>2]|0)){c[q>>2]=o;if((o|0)!=0){break}c[277251]=c[277251]&~(1<<t);d=m;n=a;break a}else{if(s>>>0<(c[277254]|0)>>>0){Yb()}q=s+16|0;if((c[q>>2]|0)==(r|0)){c[q>>2]=o}else{c[s+20>>2]=o}if((o|0)==0){d=m;n=a;break a}}}while(0);if(o>>>0<(c[277254]|0)>>>0){Yb()}c[o+24>>2]=s;p=16-p|0;q=c[i+p>>2]|0;do{if((q|0)!=0){if(q>>>0<(c[277254]|0)>>>0){Yb()}else{c[o+16>>2]=q;c[q+24>>2]=o;break}}}while(0);p=c[i+(p+4)>>2]|0;if((p|0)==0){d=m;n=a;break}if(p>>>0<(c[277254]|0)>>>0){Yb()}else{c[o+20>>2]=p;c[p+24>>2]=o;d=m;n=a;break}}else{d=a;n=b}}while(0);m=c[277254]|0;if(l>>>0<m>>>0){Yb()}a=i+(b+4)|0;o=c[a>>2]|0;do{if((o&2|0)==0){if((k|0)==(c[277256]|0)){w=(c[277253]|0)+n|0;c[277253]=w;c[277256]=d;c[d+4>>2]=w|1;if((d|0)!=(c[277255]|0)){return}c[277255]=0;c[277252]=0;return}if((k|0)==(c[277255]|0)){w=(c[277252]|0)+n|0;c[277252]=w;c[277255]=d;c[d+4>>2]=w|1;c[d+w>>2]=w;return}n=(o&-8)+n|0;a=o>>>3;b:do{if(o>>>0<256>>>0){h=c[i+(b+8)>>2]|0;b=c[i+(b+12)>>2]|0;i=1109040+(a<<1<<2)|0;do{if((h|0)!=(i|0)){if(h>>>0<m>>>0){Yb()}if((c[h+12>>2]|0)==(k|0)){break}Yb()}}while(0);if((b|0)==(h|0)){c[277250]=c[277250]&~(1<<a);break}do{if((b|0)==(i|0)){j=b+8|0}else{if(b>>>0<m>>>0){Yb()}i=b+8|0;if((c[i>>2]|0)==(k|0)){j=i;break}Yb()}}while(0);c[h+12>>2]=b;c[j>>2]=h}else{j=c[i+(b+24)>>2]|0;k=c[i+(b+12)>>2]|0;do{if((k|0)==(l|0)){a=i+(b+20)|0;k=c[a>>2]|0;if((k|0)==0){a=i+(b+16)|0;k=c[a>>2]|0;if((k|0)==0){h=0;break}}while(1){o=k+20|0;p=c[o>>2]|0;if((p|0)!=0){k=p;a=o;continue}o=k+16|0;p=c[o>>2]|0;if((p|0)==0){break}else{k=p;a=o}}if(a>>>0<m>>>0){Yb()}else{c[a>>2]=0;h=k;break}}else{a=c[i+(b+8)>>2]|0;if(a>>>0<m>>>0){Yb()}m=a+12|0;if((c[m>>2]|0)!=(l|0)){Yb()}o=k+8|0;if((c[o>>2]|0)==(l|0)){c[m>>2]=k;c[o>>2]=a;h=k;break}else{Yb()}}}while(0);if((j|0)==0){break}k=c[i+(b+28)>>2]|0;m=1109304+(k<<2)|0;do{if((l|0)==(c[m>>2]|0)){c[m>>2]=h;if((h|0)!=0){break}c[277251]=c[277251]&~(1<<k);break b}else{if(j>>>0<(c[277254]|0)>>>0){Yb()}k=j+16|0;if((c[k>>2]|0)==(l|0)){c[k>>2]=h}else{c[j+20>>2]=h}if((h|0)==0){break b}}}while(0);if(h>>>0<(c[277254]|0)>>>0){Yb()}c[h+24>>2]=j;j=c[i+(b+16)>>2]|0;do{if((j|0)!=0){if(j>>>0<(c[277254]|0)>>>0){Yb()}else{c[h+16>>2]=j;c[j+24>>2]=h;break}}}while(0);b=c[i+(b+20)>>2]|0;if((b|0)==0){break}if(b>>>0<(c[277254]|0)>>>0){Yb()}else{c[h+20>>2]=b;c[b+24>>2]=h;break}}}while(0);c[d+4>>2]=n|1;c[d+n>>2]=n;if((d|0)!=(c[277255]|0)){break}c[277252]=n;return}else{c[a>>2]=o&-2;c[d+4>>2]=n|1;c[d+n>>2]=n}}while(0);b=n>>>3;if(n>>>0<256>>>0){i=b<<1;e=1109040+(i<<2)|0;h=c[277250]|0;b=1<<b;do{if((h&b|0)==0){c[277250]=h|b;g=e;f=1109040+(i+2<<2)|0}else{b=1109040+(i+2<<2)|0;h=c[b>>2]|0;if(!(h>>>0<(c[277254]|0)>>>0)){g=h;f=b;break}Yb()}}while(0);c[f>>2]=d;c[g+12>>2]=d;c[d+8>>2]=g;c[d+12>>2]=e;return}f=d;g=n>>>8;do{if((g|0)==0){i=0}else{if(n>>>0>16777215>>>0){i=31;break}v=(g+1048320|0)>>>16&8;w=g<<v;u=(w+520192|0)>>>16&4;w=w<<u;i=(w+245760|0)>>>16&2;i=14-(u|v|i)+(w<<i>>>15)|0;i=n>>>((i+7|0)>>>0)&1|i<<1}}while(0);g=1109304+(i<<2)|0;c[d+28>>2]=i;c[d+20>>2]=0;c[d+16>>2]=0;h=c[277251]|0;b=1<<i;if((h&b|0)==0){c[277251]=h|b;c[g>>2]=f;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d;return}if((i|0)==31){b=0}else{b=25-(i>>>1)|0}b=n<<b;g=c[g>>2]|0;while(1){if((c[g+4>>2]&-8|0)==(n|0)){break}h=g+16+(b>>>31<<2)|0;i=c[h>>2]|0;if((i|0)==0){e=126;break}else{b=b<<1;g=i}}if((e|0)==126){if(h>>>0<(c[277254]|0)>>>0){Yb()}c[h>>2]=f;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d;return}b=g+8|0;h=c[b>>2]|0;e=c[277254]|0;if(g>>>0<e>>>0){Yb()}if(h>>>0<e>>>0){Yb()}c[h+12>>2]=f;c[b>>2]=f;c[d+8>>2]=h;c[d+12>>2]=g;c[d+24>>2]=0;return}function Eq(a){a=a|0;var b=0,d=0;a=(a|0)==0?1:a;while(1){d=zq(a)|0;if((d|0)!=0){b=10;break}d=(H=c[278248]|0,c[278248]=H+0,H);if((d|0)==0){break}yc[d&1]()}if((b|0)==10){return d|0}d=ec(4)|0;c[d>>2]=20368;Ab(d|0,26072,32);return 0}function Fq(a){a=a|0;return Eq(a)|0}function Gq(a){a=a|0;if((a|0)==0){return}Aq(a);return}function Hq(a){a=a|0;Gq(a);return}function Iq(a){a=a|0;Gq(a);return}function Jq(a){a=a|0;return}function Kq(a){a=a|0;return 10704}function Lq(){var a=0;a=ec(4)|0;c[a>>2]=20368;Ab(a|0,26072,32)}function Mq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,K=0.0,L=0.0,M=0.0,N=0.0;f=i;i=i+512|0;j=f|0;if((e|0)==0){h=-149;g=24}else if((e|0)==2){h=-1074;g=53}else if((e|0)==1){h=-1074;g=53}else{L=0.0;i=f;return+L}m=b+4|0;n=b+100|0;do{e=c[m>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[m>>2]=e+1;A=d[e]|0}else{A=Pq(b)|0}}while((Ma(A|0)|0)!=0);do{if((A|0)==45|(A|0)==43){e=1-(((A|0)==45)<<1)|0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[m>>2]=k+1;A=d[k]|0;break}else{A=Pq(b)|0;break}}else{e=1}}while(0);k=0;do{if((A|32|0)!=(a[3824+k|0]|0)){break}do{if(k>>>0<7>>>0){l=c[m>>2]|0;if(l>>>0<(c[n>>2]|0)>>>0){c[m>>2]=l+1;A=d[l]|0;break}else{A=Pq(b)|0;break}}}while(0);k=k+1|0;}while(k>>>0<8>>>0);do{if((k|0)==3){o=23}else if((k|0)!=8){if(!(k>>>0<4>>>0)){if((k|0)==8){break}else{o=23;break}}do{if((k|0)==0){if((A|32|0)==110){e=c[m>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[m>>2]=e+1;e=d[e]|0}else{e=Pq(b)|0}if((e|32|0)!=97){break}e=c[m>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[m>>2]=e+1;e=d[e]|0}else{e=Pq(b)|0}if((e|32|0)!=110){break}e=c[m>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[m>>2]=e+1;e=d[e]|0}else{e=Pq(b)|0}if((e|0)==40){e=1}else{if((c[n>>2]|0)==0){L=+u;i=f;return+L}c[m>>2]=(c[m>>2]|0)-1;L=+u;i=f;return+L}while(1){g=c[m>>2]|0;if(g>>>0<(c[n>>2]|0)>>>0){c[m>>2]=g+1;g=d[g]|0}else{g=Pq(b)|0}if(!((g-48|0)>>>0<10>>>0|(g-65|0)>>>0<26>>>0)){if(!((g-97|0)>>>0<26>>>0|(g|0)==95)){break}}e=e+1|0}if((g|0)==41){L=+u;i=f;return+L}if((c[n>>2]|0)==0){L=+u;i=f;return+L}g=(c[m>>2]|0)-1|0;c[m>>2]=g;if((e|0)==0){L=+u;i=f;return+L}do{e=e-1|0;g=g-1|0;}while((e|0)!=0);c[m>>2]=g;L=+u;i=f;return+L}do{if((A|0)==48){k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[m>>2]=k+1;k=d[k]|0}else{k=Pq(b)|0}if((k|32|0)!=120){if((c[n>>2]|0)==0){A=48;break}c[m>>2]=(c[m>>2]|0)-1;A=48;break}j=c[m>>2]|0;if(j>>>0<(c[n>>2]|0)>>>0){c[m>>2]=j+1;t=d[j]|0;y=0}else{t=Pq(b)|0;y=0}while(1){if((t|0)==46){o=65;break}else if((t|0)!=48){k=0;j=0;l=0;r=0;s=0;z=0;G=1.0;q=0.0;p=0;break}j=c[m>>2]|0;if(j>>>0<(c[n>>2]|0)>>>0){c[m>>2]=j+1;t=d[j]|0;y=1;continue}else{t=Pq(b)|0;y=1;continue}}a:do{if((o|0)==65){j=c[m>>2]|0;if(j>>>0<(c[n>>2]|0)>>>0){c[m>>2]=j+1;t=d[j]|0}else{t=Pq(b)|0}if((t|0)==48){l=-1;r=-1}else{k=0;j=0;l=0;r=0;s=1;z=0;G=1.0;q=0.0;p=0;break}while(1){j=c[m>>2]|0;if(j>>>0<(c[n>>2]|0)>>>0){c[m>>2]=j+1;t=d[j]|0}else{t=Pq(b)|0}if((t|0)!=48){k=0;j=0;y=1;s=1;z=0;G=1.0;q=0.0;p=0;break a}I=ar(r,l,-1,-1)|0;l=J;r=I}}}while(0);b:while(1){x=t-48|0;do{if(x>>>0<10>>>0){o=79}else{w=t|32;A=(t|0)==46;if(!((w-97|0)>>>0<6>>>0|A)){break b}if(A){if((s|0)==0){x=k;w=j;l=k;r=j;s=1;break}else{t=46;break b}}else{x=(t|0)>57?w-87|0:x;o=79;break}}}while(0);if((o|0)==79){o=0;I=0;do{if((k|0)<(I|0)|(k|0)==(I|0)&j>>>0<8>>>0){K=G;p=x+(p<<4)|0}else{I=0;if((k|0)<(I|0)|(k|0)==(I|0)&j>>>0<14>>>0){L=G*.0625;K=L;q=q+L*+(x|0);break}if(!((x|0)!=0&(z|0)==0)){K=G;break}z=1;K=G;q=q+G*.5}}while(0);w=ar(j,k,1,0)|0;x=J;y=1;G=K}j=c[m>>2]|0;if(j>>>0<(c[n>>2]|0)>>>0){c[m>>2]=j+1;t=d[j]|0;k=x;j=w;continue}else{t=Pq(b)|0;k=x;j=w;continue}}if((y|0)==0){do{if((c[n>>2]|0)!=0){g=c[m>>2]|0;c[m>>2]=g-2;if((s|0)==0){break}c[m>>2]=g-3}}while(0);L=+(e|0)*0.0;i=f;return+L}s=(s|0)==0;o=s?j:r;l=s?k:l;I=0;if((k|0)<(I|0)|(k|0)==(I|0)&j>>>0<8>>>0){do{p=p<<4;j=ar(j,k,1,0)|0;k=J;I=0;}while((k|0)<(I|0)|(k|0)==(I|0)&j>>>0<8>>>0)}do{if((t|32|0)==112){j=Nq(b)|0;k=J;if(!((j|0)==0&(k|0)==(-2147483648|0))){break}if((c[n>>2]|0)==0){k=0;j=0;break}c[m>>2]=(c[m>>2]|0)-1;k=0;j=0}else{if((c[n>>2]|0)==0){k=0;j=0;break}c[m>>2]=(c[m>>2]|0)-1;k=0;j=0}}while(0);I=ar(o<<2|0>>>30,l<<2|o>>>30,-32,-1)|0;j=ar(I,J,j,k)|0;k=J;if((p|0)==0){L=+(e|0)*0.0;i=f;return+L}I=0;if((k|0)>(I|0)|(k|0)==(I|0)&j>>>0>(-h|0)>>>0){c[(Mb()|0)>>2]=34;L=+(e|0)*1.7976931348623157e+308*1.7976931348623157e+308;i=f;return+L}l=h-106|0;I=(l|0)<0|0?-1:0;if((k|0)<(I|0)|(k|0)==(I|0)&j>>>0<l>>>0){c[(Mb()|0)>>2]=34;L=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;i=f;return+L}if((p|0)>-1){do{p=p<<1;if(q<.5){G=q}else{G=q+-1.0;p=p|1}q=q+G;j=ar(j,k,-1,-1)|0;k=J;}while((p|0)>-1)}l=0;h=br(32,0,h,(h|0)<0|0?-1:0)|0;h=ar(j,k,h,J)|0;I=J;if((l|0)>(I|0)|(l|0)==(I|0)&g>>>0>h>>>0){g=(h|0)<0?0:h}do{if((g|0)<53){G=+(e|0);K=+xb(+(+Qq(1.0,84-g|0)),+G);if(!((g|0)<32&q!=0.0)){break}e=p&1;q=(e|0)==0?0.0:q;p=(e^1)+p|0}else{K=0.0;G=+(e|0)}}while(0);q=G*q+(K+G*+(p>>>0>>>0))-K;if(!(q!=0.0)){c[(Mb()|0)>>2]=34}L=+Rq(q,j);i=f;return+L}}while(0);l=h+g|0;k=3-l|0;B=0;while(1){if((A|0)==46){o=128;break}else if((A|0)!=48){D=0;t=0;s=0;break}p=c[m>>2]|0;if(p>>>0<(c[n>>2]|0)>>>0){c[m>>2]=p+1;A=d[p]|0;B=1;continue}else{A=Pq(b)|0;B=1;continue}}c:do{if((o|0)==128){p=c[m>>2]|0;if(p>>>0<(c[n>>2]|0)>>>0){c[m>>2]=p+1;A=d[p]|0}else{A=Pq(b)|0}if((A|0)==48){t=-1;s=-1}else{D=1;t=0;s=0;break}while(1){p=c[m>>2]|0;if(p>>>0<(c[n>>2]|0)>>>0){c[m>>2]=p+1;A=d[p]|0}else{A=Pq(b)|0}if((A|0)!=48){D=1;B=1;break c}I=ar(s,t,-1,-1)|0;t=J;s=I}}}while(0);p=j|0;c[p>>2]=0;F=A-48|0;E=(A|0)==46;d:do{if(F>>>0<10>>>0|E){r=j+496|0;C=0;z=0;w=0;y=0;x=0;while(1){do{if(E){if((D|0)==0){D=1;I=C;H=z;t=C;s=z}else{break d}}else{z=ar(z,C,1,0)|0;C=J;E=(A|0)!=48;if((y|0)>=125){if(!E){I=C;H=z;break}c[r>>2]=c[r>>2]|1;I=C;H=z;break}B=j+(y<<2)|0;if((x|0)!=0){F=A-48+((c[B>>2]|0)*10|0)|0}c[B>>2]=F;x=x+1|0;A=(x|0)==9;x=A?0:x;y=(A&1)+y|0;B=1;w=E?z:w;I=C;H=z}}while(0);z=c[m>>2]|0;if(z>>>0<(c[n>>2]|0)>>>0){c[m>>2]=z+1;A=d[z]|0}else{A=Pq(b)|0}F=A-48|0;E=(A|0)==46;if(F>>>0<10>>>0|E){C=I;z=H}else{C=I;z=H;o=151;break}}}else{C=0;z=0;w=0;y=0;x=0;o=151}}while(0);if((o|0)==151){r=(D|0)==0;t=r?C:t;s=r?z:s}r=(B|0)!=0;do{if(r){if((A|32|0)!=101){o=158;break}A=Nq(b)|0;B=J;do{if((A|0)==0&(B|0)==(-2147483648|0)){if((c[n>>2]|0)==0){B=0;A=0;break}c[m>>2]=(c[m>>2]|0)-1;B=0;A=0}}while(0);s=ar(A,B,s,t)|0;t=J}else{o=158}}while(0);do{if((o|0)==158){if(!((A|0)>-1)){break}if((c[n>>2]|0)==0){break}c[m>>2]=(c[m>>2]|0)-1}}while(0);if(!r){c[(Mb()|0)>>2]=22;Oq(b);L=0.0;i=f;return+L}m=c[p>>2]|0;if((m|0)==0){L=+(e|0)*0.0;i=f;return+L}I=0;do{if((s|0)==(z|0)&(t|0)==(C|0)&((C|0)<(I|0)|(C|0)==(I|0)&z>>>0<10>>>0)){if(!(g>>>0>30>>>0)){if((m>>>(g>>>0)|0)!=0){break}}L=+(e|0)*+(m>>>0>>>0);i=f;return+L}}while(0);m=(h|0)/-2|0;I=(m|0)<0|0?-1:0;if((t|0)>(I|0)|(t|0)==(I|0)&s>>>0>m>>>0){c[(Mb()|0)>>2]=34;L=+(e|0)*1.7976931348623157e+308*1.7976931348623157e+308;i=f;return+L}m=h-106|0;I=(m|0)<0|0?-1:0;if((t|0)<(I|0)|(t|0)==(I|0)&s>>>0<m>>>0){c[(Mb()|0)>>2]=34;L=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;i=f;return+L}if((x|0)!=0){if((x|0)<9){m=j+(y<<2)|0;b=c[m>>2]|0;do{b=b*10|0;x=x+1|0;}while((x|0)<9);c[m>>2]=b}y=y+1|0}do{if((w|0)<9){if(!((w|0)<=(s|0)&(s|0)<18)){break}if((s|0)==9){L=+(e|0)*+((c[p>>2]|0)>>>0>>>0);i=f;return+L}if((s|0)<9){L=+(e|0)*+((c[p>>2]|0)>>>0>>>0)/+(c[16+(8-s<<2)>>2]|0);i=f;return+L}m=g+27+(s*-3|0)|0;b=c[p>>2]|0;if((m|0)<=30){if((b>>>(m>>>0)|0)!=0){break}}L=+(e|0)*+(b>>>0>>>0)*+(c[16+(s-10<<2)>>2]|0);i=f;return+L}}while(0);m=(s|0)%9|0;if((m|0)==0){m=0;b=0}else{n=(s|0)>-1?m:m+9|0;o=c[16+(8-n<<2)>>2]|0;do{if((y|0)==0){y=0;m=0}else{b=1e9/(o|0)|0;m=0;t=0;r=0;while(1){H=j+(t<<2)|0;p=c[H>>2]|0;I=((p>>>0)/(o>>>0)|0)+r|0;c[H>>2]=I;r=fa((p>>>0)%(o>>>0)|0,b)|0;p=t+1|0;if((t|0)==(m|0)&(I|0)==0){m=p&127;s=s-9|0}if((p|0)==(y|0)){break}else{t=p}}if((r|0)==0){break}c[j+(y<<2)>>2]=r;y=y+1|0}}while(0);b=0;s=9-n+s|0}e:while(1){n=j+(m<<2)|0;if((s|0)<18){do{o=0;n=y+127|0;while(1){n=n&127;p=j+(n<<2)|0;r=c[p>>2]|0;r=ar(r<<29|0>>>3,0<<29|r>>>3,o,0)|0;o=J;I=0;if(o>>>0>I>>>0|o>>>0==I>>>0&r>>>0>1e9>>>0){I=lr(r,o,1e9,0)|0;r=mr(r,o,1e9,0)|0;o=I}else{o=0}c[p>>2]=r;p=(n|0)==(m|0);if(!((n|0)!=(y+127&127|0)|p)){y=(r|0)==0?n:y}if(p){break}else{n=n-1|0}}b=b-29|0;}while((o|0)==0)}else{if((s|0)!=18){break}do{if(!((c[n>>2]|0)>>>0<9007199>>>0)){s=18;break e}o=0;p=y+127|0;while(1){p=p&127;r=j+(p<<2)|0;t=c[r>>2]|0;t=ar(t<<29|0>>>3,0<<29|t>>>3,o,0)|0;o=J;I=0;if(o>>>0>I>>>0|o>>>0==I>>>0&t>>>0>1e9>>>0){I=lr(t,o,1e9,0)|0;t=mr(t,o,1e9,0)|0;o=I}else{o=0}c[r>>2]=t;r=(p|0)==(m|0);if(!((p|0)!=(y+127&127|0)|r)){y=(t|0)==0?p:y}if(r){break}else{p=p-1|0}}b=b-29|0;}while((o|0)==0)}m=m+127&127;if((m|0)==(y|0)){I=y+127&127;y=j+((y+126&127)<<2)|0;c[y>>2]=c[y>>2]|c[j+(I<<2)>>2];y=I}c[j+(m<<2)>>2]=o;s=s+9|0}f:while(1){n=y+1&127;o=j+((y+127&127)<<2)|0;while(1){r=(s|0)==18;p=(s|0)>27?9:1;while(1){t=0;while(1){if((t|0)>=2){break}w=t+m&127;if((w|0)==(y|0)){t=2;break}w=c[j+(w<<2)>>2]|0;x=c[8+(t<<2)>>2]|0;if(w>>>0<x>>>0){t=2;break}if(w>>>0>x>>>0){break}else{t=t+1|0}}if((t|0)==2&r){break f}b=p+b|0;if((m|0)==(y|0)){m=y}else{break}}r=(1<<p)-1|0;t=1e9>>>(p>>>0);w=m;x=m;m=0;do{H=j+(x<<2)|0;I=c[H>>2]|0;z=(I>>>(p>>>0))+m|0;c[H>>2]=z;m=fa(I&r,t)|0;z=(x|0)==(w|0)&(z|0)==0;x=x+1&127;s=z?s-9|0:s;w=z?x:w;}while((x|0)!=(y|0));if((m|0)==0){m=w;continue}if((n|0)!=(w|0)){break}c[o>>2]=c[o>>2]|1;m=w}c[j+(y<<2)>>2]=m;m=w;y=n}o=m&127;if((o|0)==(y|0)){c[j+(n-1<<2)>>2]=0;y=n}G=+((c[j+(o<<2)>>2]|0)>>>0>>>0);n=m+1&127;if((n|0)==(y|0)){y=y+1&127;c[j+(y-1<<2)>>2]=0}q=+(e|0);K=q*(G*1.0e9+ +((c[j+(n<<2)>>2]|0)>>>0>>>0));e=b+53|0;h=e-h|0;if((h|0)<(g|0)){g=(h|0)<0?0:h;n=1}else{n=0}if((g|0)<53){N=+xb(+(+Qq(1.0,105-g|0)),+K);M=+Va(+K,+(+Qq(1.0,53-g|0)));G=N;L=M;K=N+(K-M)}else{G=0.0;L=0.0}o=m+2&127;do{if((o|0)!=(y|0)){j=c[j+(o<<2)>>2]|0;do{if(j>>>0<5e8>>>0){if((j|0)==0){if((m+3&127|0)==(y|0)){break}}L=q*.25+L}else{if(j>>>0>5e8>>>0){L=q*.75+L;break}if((m+3&127|0)==(y|0)){L=q*.5+L;break}else{L=q*.75+L;break}}}while(0);if((53-g|0)<=1){break}if(+Va(+L,+1.0)!=0.0){break}L=L+1.0}}while(0);q=K+L-G;do{if((e&2147483647|0)>(-2-l|0)){if(!(+U(+q)<9007199254740992.0)){q=q*.5;n=(n|0)!=0&(g|0)==(h|0)?0:n;b=b+1|0}if((b+53|0)<=(k|0)){if(!((n|0)!=0&L!=0.0)){break}}c[(Mb()|0)>>2]=34}}while(0);N=+Rq(q,b);i=f;return+N}}while(0);if((c[n>>2]|0)!=0){c[m>>2]=(c[m>>2]|0)-1}c[(Mb()|0)>>2]=22;Oq(b);N=0.0;i=f;return+N}}while(0);do{if((o|0)==23){if((c[n>>2]|0)==0){break}g=(c[m>>2]|0)-1|0;c[m>>2]=g;if(k>>>0<4>>>0){break}do{g=g-1|0;k=k-1|0;}while(k>>>0>3>>>0);c[m>>2]=g}}while(0);N=+(e|0)*v;i=f;return+N}function Nq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;e=a+4|0;f=c[e>>2]|0;b=a+100|0;if(f>>>0<(c[b>>2]|0)>>>0){c[e>>2]=f+1;h=d[f]|0}else{h=Pq(a)|0}do{if((h|0)==45|(h|0)==43){f=(h|0)==45|0;g=c[e>>2]|0;if(g>>>0<(c[b>>2]|0)>>>0){c[e>>2]=g+1;h=d[g]|0}else{h=Pq(a)|0}if((h-48|0)>>>0<10>>>0){break}if((c[b>>2]|0)==0){break}c[e>>2]=(c[e>>2]|0)-1}else{f=0}}while(0);if((h-48|0)>>>0>9>>>0){if((c[b>>2]|0)==0){i=-2147483648;j=0;return(J=i,j)|0}c[e>>2]=(c[e>>2]|0)-1;i=-2147483648;j=0;return(J=i,j)|0}else{g=0}while(1){g=h-48+g|0;h=c[e>>2]|0;if(h>>>0<(c[b>>2]|0)>>>0){c[e>>2]=h+1;h=d[h]|0}else{h=Pq(a)|0}j=(h-48|0)>>>0<10>>>0;if(!(j&(g|0)<214748364)){break}g=g*10|0}i=g;g=(g|0)<0|0?-1:0;if(j){do{g=kr(i,g,10,0)|0;i=J;h=ar(h,(h|0)<0|0?-1:0,-48,-1)|0;i=ar(h,J,g,i)|0;g=J;h=c[e>>2]|0;if(h>>>0<(c[b>>2]|0)>>>0){c[e>>2]=h+1;h=d[h]|0}else{h=Pq(a)|0}j=21474836;}while((h-48|0)>>>0<10>>>0&((g|0)<(j|0)|(g|0)==(j|0)&i>>>0<2061584302>>>0))}if((h-48|0)>>>0<10>>>0){do{h=c[e>>2]|0;if(h>>>0<(c[b>>2]|0)>>>0){c[e>>2]=h+1;h=d[h]|0}else{h=Pq(a)|0}}while((h-48|0)>>>0<10>>>0)}if((c[b>>2]|0)!=0){c[e>>2]=(c[e>>2]|0)-1}b=(f|0)!=0;a=br(0,0,i,g)|0;e=b?J:g;j=b?a:i;return(J=e,j)|0}function Oq(a){a=a|0;var b=0;c[a+104>>2]=0;b=c[a+8>>2]|0;c[a+108>>2]=b-(c[a+4>>2]|0);c[a+100>>2]=b;return}function Pq(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;g=b+104|0;f=c[g>>2]|0;if((f|0)==0){e=3}else{if((c[b+108>>2]|0)<(f|0)){e=3}}do{if((e|0)==3){f=Tq(b)|0;if((f|0)<0){break}i=c[g>>2]|0;g=c[b+8>>2]|0;h=c[b+4>>2]|0;do{if((i|0)==0){e=8}else{i=i-(c[b+108>>2]|0)-1|0;if((g-h|0)<=(i|0)){e=8;break}c[b+100>>2]=h+i}}while(0);if((e|0)==8){c[b+100>>2]=g}if((g|0)!=0){i=b+108|0;c[i>>2]=g+1-h+(c[i>>2]|0)}b=h-1|0;if((d[b]|0|0)==(f|0)){i=f;return i|0}a[b]=f;i=f;return i|0}}while(0);c[b+100>>2]=0;i=-1;return i|0}function Qq(a,b){a=+a;b=b|0;var d=0;do{if((b|0)>1023){a=a*8.98846567431158e+307;d=b-1023|0;if((d|0)<=1023){b=d;break}b=b-2046|0;a=a*8.98846567431158e+307;b=(b|0)>1023?1023:b}else{if(!((b|0)<-1022)){break}a=a*2.2250738585072014e-308;d=b+1022|0;if(!((d|0)<-1022)){b=d;break}b=b+2044|0;a=a*2.2250738585072014e-308;b=(b|0)<-1022?-1022:b}}while(0);return+(a*(c[k>>2]=0<<20|0>>>12,c[k+4>>2]=b+1023<<20|0>>>12,+h[k>>3]))}function Rq(a,b){a=+a;b=b|0;return+(+Qq(a,b))}function Sq(b){b=b|0;var d=0,e=0,f=0;e=b+74|0;d=a[e]|0;a[e]=d-1&255|d;e=b+20|0;d=b+44|0;if((c[e>>2]|0)>>>0>(c[d>>2]|0)>>>0){vc[c[b+36>>2]&63](b,0,0)|0}c[b+16>>2]=0;c[b+28>>2]=0;c[e>>2]=0;f=b|0;e=c[f>>2]|0;if((e&20|0)==0){f=c[d>>2]|0;c[b+8>>2]=f;c[b+4>>2]=f;f=0;return f|0}if((e&4|0)==0){f=-1;return f|0}c[f>>2]=e|32;f=-1;return f|0}function Tq(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+8|0;f=b|0;if((c[a+8>>2]|0)==0){if((Sq(a)|0)==0){e=3}else{a=-1}}else{e=3}do{if((e|0)==3){if((vc[c[a+32>>2]&63](a,f,1)|0)!=1){a=-1;break}a=d[f]|0}}while(0);i=b;return a|0}function Uq(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,h=0;e=i;i=i+112|0;f=e|0;Xq(f|0,0,112)|0;h=f+4|0;c[h>>2]=a;g=f+8|0;c[g>>2]=-1;c[f+44>>2]=a;c[f+76>>2]=-1;Oq(f);d=+Mq(f,2);f=(c[h>>2]|0)-(c[g>>2]|0)+(c[f+108>>2]|0)|0;if((b|0)==0){i=e;return+d}if((f|0)!=0){a=a+f|0}c[b>>2]=a;i=e;return+d}function Vq(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;e=10;d=6440;while(1){f=a[b]|0;g=a[d]|0;if(!(f<<24>>24==g<<24>>24)){break}e=e-1|0;if((e|0)==0){b=0;c=5;break}else{b=b+1|0;d=d+1|0}}if((c|0)==5){return b|0}g=(f&255)-(g&255)|0;return g|0}function Wq(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b]|0;d=a[c]|0;if(e<<24>>24!=d<<24>>24|e<<24>>24==0|d<<24>>24==0){c=e;e=d;d=c&255;e=e&255;e=d-e|0;return e|0}do{b=b+1|0;c=c+1|0;e=a[b]|0;d=a[c]|0;}while(!(e<<24>>24!=d<<24>>24|e<<24>>24==0|d<<24>>24==0));c=e&255;e=d&255;e=c-e|0;return e|0}function Xq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;i=b&3;h=d|d<<8|d<<16|d<<24;g=f&~3;if(i){i=b+4-i|0;while((b|0)<(i|0)){a[b]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b]=d;b=b+1|0}return b-e|0}function Yq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return rb(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b]=a[d]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b]=a[d]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Zq(b){b=b|0;var c=0;c=b;while(a[c]|0){c=c+1|0}return c-b|0}function _q(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;while((e|0)<(d|0)){a[b+e|0]=f?0:a[c+e|0]|0;f=f?1:(a[c+e|0]|0)==0;e=e+1|0}return b|0}function $q(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]=a[c]|0}b=e}else{Yq(b,c,d)|0}return b|0}function ar(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return(J=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function br(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=b-d-(c>>>0>a>>>0|0)>>>0;return(J=b,a-c>>>0|0)|0}function cr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){J=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}J=a<<c-32;return 0}function dr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){J=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}J=0;return b>>>c-32|0}function er(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){J=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}J=(b|0)<0?-1:0;return b>>c-32|0}function fr(b){b=b|0;var c=0;c=a[n+(b>>>24)|0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)|0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)|0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)|0]|0)+24|0}function gr(b){b=b|0;var c=0;c=a[m+(b&255)|0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)|0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)|0]|0;if((c|0)<8)return c+16|0;return(a[m+(b>>>24)|0]|0)+24|0}function hr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;d=b&65535;c=fa(d,f)|0;e=a>>>16;d=(c>>>16)+(fa(d,e)|0)|0;b=b>>>16;a=fa(b,f)|0;return(J=(d>>>16)+(fa(b,e)|0)+(((d&65535)+a|0)>>>16)|0,d+a<<16|c&65535|0)|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,h=0;e=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;g=d>>31|((d|0)<0?-1:0)<<1;h=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=br(e^a,f^b,e,f)|0;b=J;e=g^e;f=h^f;g=br((nr(a,b,br(g^c,h^d,g,h)|0,J,0)|0)^e,J^f,e,f)|0;return(J=J,g)|0}function jr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+8|0;f=g|0;h=b>>31|((b|0)<0?-1:0)<<1;j=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;l=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=br(h^a,j^b,h,j)|0;b=J;nr(a,b,br(k^d,l^e,k,l)|0,J,f)|0;k=br(c[f>>2]^h,c[f+4>>2]^j,h,j)|0;j=J;i=g;return(J=j,k)|0}function kr(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;a=hr(e,f)|0;c=J;return(J=(fa(b,f)|0)+(fa(d,e)|0)+c|c&0,a|0|0)|0}function lr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=nr(a,b,c,d,0)|0;return(J=J,a)|0}function mr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+8|0;f=g|0;nr(a,b,d,e,f)|0;i=g;return(J=c[f+4>>2]|0,c[f>>2]|0)|0}function nr(a,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;h=a;j=b;i=j;k=d;g=e;l=g;if((i|0)==0){d=(f|0)!=0;if((l|0)==0){if(d){c[f>>2]=(h>>>0)%(k>>>0);c[f+4>>2]=0}l=0;m=(h>>>0)/(k>>>0)>>>0;return(J=l,m)|0}else{if(!d){l=0;m=0;return(J=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;l=0;m=0;return(J=l,m)|0}}m=(l|0)==0;do{if((k|0)==0){if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(k>>>0);c[f+4>>2]=0}l=0;m=(i>>>0)/(k>>>0)>>>0;return(J=l,m)|0}if((h|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}k=0;m=(i>>>0)/(l>>>0)>>>0;return(J=k,m)|0}k=l-1|0;if((k&l|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=k&i|b&0}k=0;m=i>>>((gr(l|0)|0)>>>0);return(J=k,m)|0}k=(fr(l|0)|0)-(fr(i|0)|0)|0;if(k>>>0<=30){b=k+1|0;m=31-k|0;j=b;a=i<<m|h>>>(b>>>0);b=i>>>(b>>>0);l=0;i=h<<m;break}if((f|0)==0){l=0;m=0;return(J=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(J=l,m)|0}else{if(!m){k=(fr(l|0)|0)-(fr(i|0)|0)|0;if(k>>>0<=31){l=k+1|0;m=31-k|0;b=k-31>>31;j=l;a=h>>>(l>>>0)&b|i<<m;b=i>>>(l>>>0)&b;l=0;i=h<<m;break}if((f|0)==0){l=0;m=0;return(J=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(J=l,m)|0}l=k-1|0;if((l&k|0)!=0){m=(fr(k|0)|0)+33-(fr(i|0)|0)|0;p=64-m|0;k=32-m|0;n=k>>31;o=m-32|0;b=o>>31;j=m;a=k-1>>31&i>>>(o>>>0)|(i<<k|h>>>(m>>>0))&b;b=b&i>>>(m>>>0);l=h<<p&n;i=(i<<p|h>>>(o>>>0))&n|h<<k&m-33>>31;break}if((f|0)!=0){c[f>>2]=l&h;c[f+4>>2]=0}if((k|0)==1){o=j|b&0;p=a|0|0;return(J=o,p)|0}else{p=gr(k|0)|0;o=i>>>(p>>>0)|0;p=i<<32-p|h>>>(p>>>0)|0;return(J=o,p)|0}}}while(0);if((j|0)==0){m=a;d=0;a=0}else{d=d|0|0;g=g|e&0;e=ar(d,g,-1,-1)|0;h=J;k=b;m=a;a=0;while(1){b=l>>>31|i<<1;l=a|l<<1;i=m<<1|i>>>31|0;k=m>>>31|k<<1|0;br(e,h,i,k)|0;m=J;p=m>>31|((m|0)<0?-1:0)<<1;a=p&1;m=br(i,k,p&d,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&g)|0;k=J;j=j-1|0;if((j|0)==0){break}else{i=b}}i=b;b=k;d=0}g=0;if((f|0)!=0){c[f>>2]=m;c[f+4>>2]=b}o=(l|0)>>>31|(i|g)<<1|(g<<1|l>>>31)&0|d;p=(l<<1|0>>>31)&-2|a;return(J=o,p)|0}function or(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;nc[a&7](b|0,c|0,d|0,e|0,f|0)}function pr(a,b,c,d,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;oc[a&127](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qr(a,b){a=a|0;b=b|0;pc[a&255](b|0)}function rr(a,b,c){a=a|0;b=b|0;c=c|0;qc[a&127](b|0,c|0)}function sr(a,b,c){a=a|0;b=b|0;c=c|0;return rc[a&31](b|0,c|0)|0}function tr(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 sc[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ur(a,b,c,d,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;tc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function vr(a,b){a=a|0;b=b|0;return uc[a&127](b|0)|0}function wr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vc[a&63](b|0,c|0,d|0)|0}function xr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wc[a&7](b|0,c|0,d|0)}function yr(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;xc[a&15](b|0,c|0,d|0,e|0,f|0,+g)}function zr(a){a=a|0;yc[a&1]()}function Ar(a,b,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 zc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Br(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;Ac[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Cr(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Bc[a&31](b|0,c|0,d|0,e|0,f|0,g|0)}function Dr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Cc[a&15](b|0,c|0,d|0,e|0)|0}function Er(a,b,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;Dc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Fr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ec[a&15](b|0,c|0,d|0,e|0)}function Gr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ga(0)}function Hr(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;ga(1)}function Ir(a){a=a|0;ga(2)}function Jr(a,b){a=a|0;b=b|0;ga(3)}function Kr(a,b){a=a|0;b=b|0;ga(4);return 0}function Lr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ga(5);return 0}function Mr(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;ga(6)}function Nr(a){a=a|0;ga(7);return 0}function Or(a,b,c){a=a|0;b=b|0;c=c|0;ga(8);return 0}function Pr(a,b,c){a=a|0;b=b|0;c=c|0;ga(9)}function Qr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ga(10)}function Rr(){ga(11)}function Sr(a,b,c,d,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;ga(12);return 0}function Tr(a,b,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;ga(13)}function Ur(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ga(14)}function Vr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ga(15);return 0}function Wr(a,b,c,d,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;ga(16)}function Xr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ga(17)}
-
-
-
-
-// EMSCRIPTEN_END_FUNCS
-var nc=[Gr,Gr,uq,Gr,vq,Gr,tq,Gr];var oc=[Hr,Hr,Bl,Hr,Ll,Hr,Nl,Hr,un,Hr,ol,Hr,ml,Hr,on,Hr,xl,Hr,Al,Hr,Ol,Hr,al,Hr,Lk,Hr,zl,Hr,gk,Hr,zk,Hr,Ml,Hr,_k,Hr,Dk,Hr,vk,Hr,xk,Hr,mk,Hr,Bk,Hr,tk,Hr,rk,Hr,Jk,Hr,Hk,Hr,Fk,Hr,Pl,Hr,ak,Hr,yl,Hr,ek,Hr,Yj,Hr,_j,Hr,ck,Hr,Wj,Hr,kk,Hr,ik,Hr,Uj,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr,Hr];var pc=[Ir,Ir,An,Ir,Sj,Ir,hl,Ir,Nh,Ir,Hi,Ir,Fn,Ir,Sn,Ir,uh,Ir,hh,Ir,Tk,Ir,Fh,Ir,Fo,Ir,pk,Ir,Ij,Ir,Ej,Ir,Jq,Ir,Qn,Ir,fo,Ir,Jl,Ir,qk,Ir,wj,Ir,wn,Ir,Rn,Ir,ij,Ir,Tj,Ir,wm,Ir,Kn,Ir,cp,Ir,jq,Ir,bp,Ir,Cj,Ir,Lh,Ir,Oj,Ir,bm,Ir,ep,Ir,Tn,Ir,Aq,Ir,pn,Ir,ap,Ir,mj,Ir,gh,Ir,Nj,Ir,Yl,Ir,Gh,Ir,Uk,Ir,Qo,Ir,xm,Ir,hj,Ir,tj,Ir,Vl,Ir,Il,Ir,Fj,Ir,lm,Ir,Iq,Ir,Gi,Ir,Pp,Ir,Qp,Ir,xj,Ir,Vi,Ir,mq,Ir,po,Ir,jj,Ir,Dj,Ir,Sm,Ir,_g,Ir,Hm,Ir,yj,Ir,Sp,Ir,kq,Ir,nh,Ir,Jn,Ir,Wl,Ir,bn,Ir,fq,Ir,Vm,Ir,qn,Ir,Rp,Ir,am,Ir,gl,Ir,Hj,Ir,oh,Ir,Jj,Ir,oj,Ir,Uh,Ir,xo,Ir,jn,Ir,an,Ir,dp,Ir,vi,Ir,gq,Ir,nq,Ir,sj,Ir,Vh,Ir,gj,Ir,vj,Ir,vn,Ir,Di,Ir,rj,Ir,vh,Ir,Gj,Ir,Im,Ir,ul,Ir,mm,Ir,ah,Ir,nj,Ir,Ui,Ir,qj,Ir,$o,Ir,Op,Ir,vl,Ir,lq,Ir,Bn,Ir,$g,Ir,iq,Ir,Zl,Ir,kn,Ir,Tm,Ir,di,Ir,go,Ir,Kh,Ir,lj,Ir,Tp,Ir,Ir,Ir,Ir,Ir,Ir,Ir,Ir,Ir,Ir,Ir];var qc=[Jr,Jr,np,Jr,Nm,Jr,pm,Jr,kp,Jr,Gm,Jr,jp,Jr,vm,Jr,bh,Jr,zn,Jr,Wi,Jr,hm,Jr,Qm,Jr,Dm,Jr,gm,Jr,em,Jr,Om,Jr,ph,Jr,Rm,Jr,mp,Jr,qm,Jr,Lm,Jr,op,Jr,Fm,Jr,sm,Jr,lp,Jr,um,Jr,ih,Jr,Ii,Jr,wh,Jr,En,Jr,Am,Jr,km,Jr,jm,Jr,fm,Jr,Bm,Jr,Cm,Jr,Mm,Jr,rm,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr,Jr];var rc=[Kr,Kr,zh,Kr,ao,Kr,dj,Kr,lo,Kr,ho,Kr,lh,Kr,sh,Kr,Yn,Kr,jo,Kr,Ti,Kr,fj,Kr,_n,Kr,Ri,Kr,eh,Kr,Kr,Kr];var sc=[Lr,Lr,eo,Lr,Ko,Lr,Pj,Lr,Yo,Lr,oo,Lr,No,Lr,Kj,Lr,so,Lr,vo,Lr,Ao,Lr,Vo,Lr,Do,Lr,Lr,Lr,Lr,Lr,Lr,Lr];var tc=[Mr,Mr,rn,Mr,ln,Mr,Mr,Mr];var uc=[Nr,Nr,Cp,Nr,zm,Nr,Pi,Nr,uo,Nr,sp,Nr,Qi,Nr,Ap,Nr,nm,Nr,wl,Nr,qp,Nr,yh,Nr,cj,Nr,bj,Nr,Wo,Nr,wp,Nr,up,Nr,hq,Nr,Mh,Nr,ip,Nr,fp,Nr,vp,Nr,gp,Nr,Mi,Nr,to,Nr,Pm,Nr,xp,Nr,ch,Nr,om,Nr,Mo,Nr,Jm,Nr,pp,Nr,jh,Nr,Xo,Nr,Kq,Nr,Aj,Nr,im,Nr,$i,Nr,kh,Nr,hp,Nr,Ni,Nr,_i,Nr,qh,Nr,wo,Nr,tm,Nr,Bp,Nr,xh,Nr,Lo,Nr,Co,Nr,cm,Nr,rp,Nr,dm,Nr,Hh,Nr,ym,Nr,Eo,Nr,Em,Nr,tp,Nr,Km,Nr,Bo,Nr,Kl,Nr,zp,Nr,yp,Nr,Po,Nr,_o,Nr];var vc=[Or,Or,Mj,Or,io,Or,$n,Or,oq,Or,co,Or,Rj,Or,Ph,Or,Si,Or,Oi,Or,Un,Or,Xi,Or,Cn,Or,no,Or,Zn,Or,dh,Or,Qh,Or,aj,Or,ko,Or,xn,Or,Ji,Or,rh,Or,ej,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or,Or];var wc=[Pr,Pr,Oh,Pr,Bj,Pr,Pr,Pr];var xc=[Qr,Qr,rl,Qr,pl,Qr,el,Qr,bl,Qr,Qr,Qr,Qr,Qr,Qr,Qr];var yc=[Rr,Rr];var zc=[Sr,Sr,yo,Sr,Io,Sr,Go,Sr,To,Sr,zo,Sr,Ro,Sr,qo,Sr,ro,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr,Sr];var Ac=[Tr,Tr,Ql,Tr,Cl,Tr,Tr,Tr];var Bc=[Ur,Ur,wq,Ur,nl,Ur,jl,Ur,il,Ur,xq,Ur,sl,Ur,yn,Ur,Yi,Ur,fl,Ur,Vk,Ur,$k,Ur,Wk,Ur,yq,Ur,Ki,Ur,Dn,Ur];var Cc=[Vr,Vr,Vn,Vr,Wn,Vr,mo,Vr,bo,Vr,Xn,Vr,Vr,Vr,Vr,Vr];var Dc=[Wr,Wr,_l,Wr,Xl,Wr,Um,Wr,cn,Wr,Ym,Wr,en,Wr,Wr,Wr];var Ec=[Xr,Xr,qq,Xr,rq,Xr,pq,Xr,Li,Xr,Qj,Xr,Zi,Xr,Lj,Xr];return{_strlen:Zq,_free:Aq,_detectLangCode:Xg,_realloc:Bq,_strncpy:_q,_memmove:$q,__GLOBAL__I_a:Bh,_memset:Xq,_malloc:zq,_lastResultReliable:Yg,_memcpy:Yq,runPostSets:Vc,stackAlloc:Fc,stackSave:Gc,stackRestore:Hc,setThrew:Ic,setTempRet0:Lc,setTempRet1:Mc,setTempRet2:Nc,setTempRet3:Oc,setTempRet4:Pc,setTempRet5:Qc,setTempRet6:Rc,setTempRet7:Sc,setTempRet8:Tc,setTempRet9:Uc,dynCall_viiiii:or,dynCall_viiiiiii:pr,dynCall_vi:qr,dynCall_vii:rr,dynCall_iii:sr,dynCall_iiiiii:tr,dynCall_viiiiiid:ur,dynCall_ii:vr,dynCall_iiii:wr,dynCall_viii:xr,dynCall_viiiiid:yr,dynCall_v:zr,dynCall_iiiiiiiii:Ar,dynCall_viiiiiiiii:Br,dynCall_viiiiii:Cr,dynCall_iiiii:Dr,dynCall_viiiiiiii:Er,dynCall_viiii:Fr}
 // EMSCRIPTEN_END_ASM
+(d.ea,d.fa,buffer),yc=d._emscripten_bind_LanguageInfo_getLanguageCode_0=R._emscripten_bind_LanguageInfo_getLanguageCode_0,pc=d._bitshift64Lshr=R._bitshift64Lshr,tb=d._bitshift64Shl=R._bitshift64Shl,zc=d._emscripten_bind_LanguageGuess_getLanguageCode_0=R._emscripten_bind_LanguageGuess_getLanguageCode_0;d.___cxa_is_pointer_type=R.___cxa_is_pointer_type;
+var Ac=d._emscripten_bind_LanguageGuess_getPercent_0=R._emscripten_bind_LanguageGuess_getPercent_0,Bc=d._emscripten_bind_VoidPtr___destroy___0=R._emscripten_bind_VoidPtr___destroy___0,sb=d._memset=R._memset,rc=d._memcpy=R._memcpy,Cc=d._emscripten_bind_LanguageInfo_getIsReliable_0=R._emscripten_bind_LanguageInfo_getIsReliable_0,mb=d._i64Subtract=R._i64Subtract,Dc=d._emscripten_bind_LanguageInfo___destroy___0=R._emscripten_bind_LanguageInfo___destroy___0,oc=d._i64Add=R._i64Add,Ec=d._emscripten_bind_LanguageInfo_get_languages_1=
+R._emscripten_bind_LanguageInfo_get_languages_1,Fc=d._emscripten_bind_Language_getLanguageCode_0=R._emscripten_bind_Language_getLanguageCode_0,Gc=d._emscripten_bind_LanguageGuess___destroy___0=R._emscripten_bind_LanguageGuess___destroy___0,Hc=d._emscripten_bind_Language___destroy___0=R._emscripten_bind_Language___destroy___0;d.___cxa_can_catch=R.___cxa_can_catch;var Ja=d._free=R._free;d.runPostSets=R.runPostSets;
+var Ic=d._emscripten_bind_LanguageInfo_detectLanguage_5=R._emscripten_bind_LanguageInfo_detectLanguage_5,vc=d._memmove=R._memmove,Jc=d._emscripten_bind_LanguageInfo_detectLanguage_2=R._emscripten_bind_LanguageInfo_detectLanguage_2,J=d._malloc=R._malloc,Ua=d._emscripten_replace_memory=R._emscripten_replace_memory;d.dynCall_iiii=R.dynCall_iiii;d.dynCall_viiiii=R.dynCall_viiiii;d.dynCall_vi=R.dynCall_vi;d.dynCall_ii=R.dynCall_ii;d.dynCall_v=R.dynCall_v;d.dynCall_viiiiii=R.dynCall_viiiiii;
+d.dynCall_viiii=R.dynCall_viiii;u.H=R.stackAlloc;u.Q=R.stackSave;u.I=R.stackRestore;u.Ba=R.establishStackSpace;u.ra=R.setTempRet0;u.la=R.getTempRet0;
+if(P)if("function"===typeof d.locateFile?P=d.locateFile(P):d.memoryInitializerPrefixURL&&(P=d.memoryInitializerPrefixURL+P),ea||fa){var Kc=d.readBinary(P);K.set(Kc,u.T)}else{var Lc=function(){kc(function(){throw"could not load memory initializer "+P;})};ib();var lc=function(a){a.byteLength&&(a=new Uint8Array(a));K.set(a,u.T);jb()},Mc=d.memoryInitializerRequest;if(Mc){var Nc=function(){200!==Mc.status&&0!==Mc.status?(console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+
+Mc.status+", retrying "+P),Lc()):lc(Mc.response)};Mc.response?setTimeout(Nc,0):Mc.addEventListener("load",Nc)}else Lc()}function n(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}n.prototype=Error();n.prototype.constructor=n;var Oc=null,hb=function Pc(){d.calledRun||Qc();d.calledRun||(hb=Pc)};
+d.callMain=d.xa=function(a){function b(){for(var a=0;3>a;a++)e.push(0)}assert(0==O,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(0==Za.length,"cannot call main when preRun functions remain to be called");a=a||[];Da||(Da=!0,Ya($a));var c=a.length+1,e=[Ba(fb(d.thisProgram),"i8",0)];b();for(var f=0;f<c-1;f+=1)e.push(Ba(fb(a[f]),"i8",0)),b();e.push(0);e=Ba(e,"i32",0);try{var h=d._main(c,e,0);Rc(h,!0)}catch(k){if(!(k instanceof n))if("SimulateInfiniteLoop"==k)d.noExitRuntime=
+!0;else throw k&&"object"===typeof k&&k.stack&&d.C("exception thrown: "+[k,k.stack]),k;}finally{}};
+function Qc(a){function b(){if(!d.calledRun&&(d.calledRun=!0,!C)){Da||(Da=!0,Ya($a));Ya(ab);if(d.onRuntimeInitialized)d.onRuntimeInitialized();d._main&&Sc&&d.callMain(a);if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;)eb(d.postRun.shift());Ya(bb)}}a=a||d.arguments;null===Oc&&(Oc=Date.now());if(!(0<O)){if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)cb(d.preRun.shift());Ya(Za);0<O||d.calledRun||(d.setStatus?(d.setStatus("Running..."),
+setTimeout(function(){setTimeout(function(){d.setStatus("")},1);b()},1)):b())}}d.run=d.run=Qc;function Rc(a,b){if(!b||!d.noExitRuntime){if(!d.noExitRuntime&&(C=!0,t=void 0,Ya(N),d.onExit))d.onExit(a);ea?(process.stdout.once("drain",function(){process.exit(a)}),console.log(" "),setTimeout(function(){process.exit(a)},500)):fa&&"function"===typeof quit&&quit(a);throw new n(a);}}d.exit=d.exit=Rc;var Tc=[];
+function D(a){void 0!==a?(d.print(a),d.C(a),a=JSON.stringify(a)):a="";C=!0;var b="abort("+a+") at "+Ka()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";Tc&&Tc.forEach(function(c){b=c(b,a)});throw b;}d.abort=d.abort=D;if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.pop()();var Sc=!1;d.noInitialRun&&(Sc=!1);d.noExitRuntime=!0;Qc();function T(){}T.prototype=Object.create(T.prototype);
+T.prototype.constructor=T;T.prototype.o=T;T.r={};d.WrapperObject=T;function Uc(a){return(a||T).r}d.getCache=Uc;function U(a,b){var c=Uc(b),e=c[a];if(e)return e;e=Object.create((b||T).prototype);e.e=a;return c[a]=e}d.wrapPointer=U;d.castObject=function(a,b){return U(a.e,b)};d.NULL=U(0);d.destroy=function(a){if(!a.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";a.__destroy__();delete Uc(a.o)[a.e]};d.compare=function(a,b){return a.e===b.e};d.getPointer=function(a){return a.e};
+d.getClass=function(a){return a.o};
+var V={buffer:0,size:0,B:0,J:[],A:0,N:function(){if(this.A){for(var a=0;a<this.J.length;a++)d._free(this.J[a]);this.J.length=0;d._free(this.buffer);this.buffer=0;this.size+=this.A;this.A=0}this.buffer||(this.size+=128,this.buffer=d._malloc(this.size),assert(this.buffer));this.B=0},u:function(a,b){assert(this.buffer);var c=b.BYTES_PER_ELEMENT,e=a.length*c,e=e+7&-8,f;this.B+e>=this.size?(assert(0<e),this.A+=e,f=d._malloc(e),this.J.push(f)):(f=this.buffer+this.B,this.B+=e);e=f;switch(c){case 2:e>>=1;
+break;case 4:e>>=2;break;case 8:e>>=3}for(c=0;c<a.length;c++)b[e+c]=a[c];return f}};function Vc(a){return"string"===typeof a?V.u(fb(a),G):a}function W(){throw"cannot construct a Language, no constructor in IDL";}W.prototype=Object.create(T.prototype);W.prototype.constructor=W;W.prototype.o=W;W.r={};d.Language=W;W.prototype.getLanguageCode=W.prototype.G=function(){return F(Fc(this.e))};W.prototype.__destroy__=function(){Hc(this.e)};
+function X(){throw"cannot construct a LanguageGuess, no constructor in IDL";}X.prototype=Object.create(W.prototype);X.prototype.constructor=X;X.prototype.o=X;X.r={};d.LanguageGuess=X;X.prototype.getPercent=X.prototype.ja=function(){return Ac(this.e)};X.prototype.getLanguageCode=X.prototype.G=function(){return F(zc(this.e))};X.prototype.__destroy__=function(){Gc(this.e)};function Y(){throw"cannot construct a LanguageInfo, no constructor in IDL";}Y.prototype=Object.create(W.prototype);
+Y.prototype.constructor=Y;Y.prototype.o=Y;Y.r={};d.LanguageInfo=Y;
+Y.prototype.detectLanguage=Y.prototype.g=function(a,b,c,e,f){var h=this.e;V.N();a&&"object"===typeof a?a=a.e:a=Vc(a);b&&"object"===typeof b&&(b=b.e);c&&"object"===typeof c?c=c.e:c=Vc(c);e&&"object"===typeof e&&(e=e.e);f&&"object"===typeof f?f=f.e:f=Vc(f);return void 0===c?U(Jc(h,a,b),Y):void 0===e?U(_emscripten_bind_LanguageInfo_detectLanguage_3(h,a,b,c),Y):void 0===f?U(_emscripten_bind_LanguageInfo_detectLanguage_4(h,a,b,c,e),Y):U(Ic(h,a,b,c,e,f),Y)};Y.prototype.getIsReliable=Y.prototype.ha=function(){return!!Cc(this.e)};
+Y.prototype.getLanguageCode=Y.prototype.G=function(){return F(yc(this.e))};Y.prototype.get_languages=Y.prototype.ma=function(a){var b=this.e;a&&"object"===typeof a&&(a=a.e);return U(Ec(b,a),X)};Y.prototype.__destroy__=function(){Dc(this.e)};function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}Z.prototype=Object.create(T.prototype);Z.prototype.constructor=Z;Z.prototype.o=Z;Z.r={};d.VoidPtr=Z;Z.prototype.__destroy__=function(){Bc(this.e)};(function(){function a(){}d.calledRun||db(a)})();
+Y.Y=Y.prototype.g;V.u=V.u.bind(V);V.N=V.N.bind(V);
+for(var Wc={ISO_8859_1:0,ISO_8859_2:1,ISO_8859_3:2,ISO_8859_4:3,ISO_8859_5:4,ISO_8859_6:5,ISO_8859_7:6,ISO_8859_8:7,ISO_8859_9:8,ISO_8859_10:9,JAPANESE_EUC_JP:10,EUC_JP:10,JAPANESE_SHIFT_JIS:11,SHIFT_JIS:11,JAPANESE_JIS:12,JIS:12,CHINESE_BIG5:13,BIG5:13,CHINESE_GB:14,CHINESE_EUC_CN:15,EUC_CN:15,KOREAN_EUC_KR:16,EUC_KR:16,UNICODE_UNUSED:17,CHINESE_EUC_DEC:18,EUC_DEC:18,CHINESE_CNS:19,CNS:19,CHINESE_BIG5_CP950:20,BIG5_CP950:20,JAPANESE_CP932:21,CP932:21,UTF8:22,UNKNOWN_ENCODING:23,ASCII_7BIT:24,RUSSIAN_KOI8_R:25,
+KOI8_R:25,RUSSIAN_CP1251:26,CP1251:26,MSFT_CP1252:27,CP1252:27,RUSSIAN_KOI8_RU:28,KOI8_RU:28,MSFT_CP1250:29,CP1250:29,ISO_8859_15:30,MSFT_CP1254:31,CP1254:31,MSFT_CP1257:32,CP1257:32,ISO_8859_11:33,MSFT_CP874:34,CP874:34,MSFT_CP1256:35,CP1256:35,MSFT_CP1255:36,CP1255:36,ISO_8859_8_I:37,HEBREW_VISUAL:38,CZECH_CP852:39,CP852:39,CZECH_CSN_369103:40,CSN_369103:40,MSFT_CP1253:41,CP1253:41,RUSSIAN_CP866:42,CP866:42,ISO_8859_13:43,ISO_2022_KR:44,GBK:45,GB18030:46,BIG5_HKSCS:47,ISO_2022_CN:48,TSCII:49,TAMIL_MONO:50,
+TAMIL_BI:51,JAGRAN:52,MACINTOSH_ROMAN:53,UTF7:54,BHASKAR:55,HTCHANAKYA:56,UTF16BE:57,UTF16LE:58,UTF32BE:59,UTF32LE:60,BINARYENC:61,HZ_GB_2312:62,UTF8UTF8:63,TAM_ELANGO:64,TAM_LTTMBARANI:65,TAM_SHREE:66,TAM_TBOOMIS:67,TAM_TMNEWS:68,TAM_WEBTAMIL:69,KDDI_SHIFT_JIS:70,DOCOMO_SHIFT_JIS:71,SOFTBANK_SHIFT_JIS:72,KDDI_ISO_2022_JP:73,ISO_2022_JP:73,SOFTBANK_ISO_2022_JP:74},Xc=function(a){if(a.ba)return a.ba();if(!(a instanceof Array)&&"string"!=typeof a)throw Error();var b=0;return{next:function(){return b==
+a.length?{done:!0}:{done:!1,value:a[b++]}}}}(Object.keys(Wc)),Yc=Xc.next();!Yc.done;Yc=Xc.next()){var Zc=Yc.value;Zc.includes("_")&&(Wc[Zc.replace(/_/g,"")]=Wc[Zc])}
+db(function(){onmessage=function(a){a=a.data;var b=void 0;if(void 0==a.tld&&void 0==a.encoding&&void 0==a.language)b=Y.Y(a.text,!a.isHTML);else var c=String(a.encoding).toUpperCase().replace(/[_-]/g,""),e=void 0,e=Wc.hasOwnProperty(c)?Wc[c]:Wc.UNKNOWN_ENCODING,b=Y.Y(a.text,!a.isHTML,a.tld||null,e,a.language||null);postMessage({language:b.G(),confident:b.ha(),languages:Array(3).fill(0).map(function(a,c){var e=b.ma(c);return{languageCode:e.G(),percent:e.ja()}}).filter(function(a){return"un"!=a.languageCode||
+0<a.percent})});d.destroy(b)};postMessage("ready")});
 
-})({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:ka,assert:A,asmPrintInt:function(a,b){v.print("int "+a+","+b)},asmPrintFloat:function(a,b){v.print("float "+a+","+b)},min:wa,invoke_viiiii:function(a,b,c,d,e,f){try{v.dynCall_viiiii(a,b,c,d,e,f)}catch(h){"number"!==typeof h&&"longjmp"!==h&&g(h),V.setThrew(1,
-0)}},invoke_viiiiiii:function(a,b,c,d,e,f,h,i){try{v.dynCall_viiiiiii(a,b,c,d,e,f,h,i)}catch(m){"number"!==typeof m&&"longjmp"!==m&&g(m),V.setThrew(1,0)}},invoke_vi:function(a,b){try{v.dynCall_vi(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&g(c),V.setThrew(1,0)}},invoke_vii:function(a,b,c){try{v.dynCall_vii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&g(d),V.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return v.dynCall_iii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&g(d),V.setThrew(1,
-0)}},invoke_iiiiii:function(a,b,c,d,e,f){try{return v.dynCall_iiiiii(a,b,c,d,e,f)}catch(h){"number"!==typeof h&&"longjmp"!==h&&g(h),V.setThrew(1,0)}},invoke_viiiiiid:function(a,b,c,d,e,f,h,i){try{v.dynCall_viiiiiid(a,b,c,d,e,f,h,i)}catch(m){"number"!==typeof m&&"longjmp"!==m&&g(m),V.setThrew(1,0)}},invoke_ii:function(a,b){try{return v.dynCall_ii(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&g(c),V.setThrew(1,0)}},invoke_iiii:function(a,b,c,d){try{return v.dynCall_iiii(a,b,c,d)}catch(e){"number"!==
-typeof e&&"longjmp"!==e&&g(e),V.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{v.dynCall_viii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&g(e),V.setThrew(1,0)}},invoke_viiiiid:function(a,b,c,d,e,f,h){try{v.dynCall_viiiiid(a,b,c,d,e,f,h)}catch(i){"number"!==typeof i&&"longjmp"!==i&&g(i),V.setThrew(1,0)}},invoke_v:function(a){try{v.dynCall_v(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&g(b),V.setThrew(1,0)}},invoke_iiiiiiiii:function(a,b,c,d,e,f,h,i,m){try{return v.dynCall_iiiiiiiii(a,
-b,c,d,e,f,h,i,m)}catch(l){"number"!==typeof l&&"longjmp"!==l&&g(l),V.setThrew(1,0)}},invoke_viiiiiiiii:function(a,b,c,d,e,f,h,i,m,l){try{v.dynCall_viiiiiiiii(a,b,c,d,e,f,h,i,m,l)}catch(j){"number"!==typeof j&&"longjmp"!==j&&g(j),V.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,d,e,f,h){try{v.dynCall_viiiiii(a,b,c,d,e,f,h)}catch(i){"number"!==typeof i&&"longjmp"!==i&&g(i),V.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,e){try{return v.dynCall_iiiii(a,b,c,d,e)}catch(f){"number"!==typeof f&&"longjmp"!==
-f&&g(f),V.setThrew(1,0)}},invoke_viiiiiiii:function(a,b,c,d,e,f,h,i,m){try{v.dynCall_viiiiiiii(a,b,c,d,e,f,h,i,m)}catch(l){"number"!==typeof l&&"longjmp"!==l&&g(l),V.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,e){try{v.dynCall_viiii(a,b,c,d,e)}catch(f){"number"!==typeof f&&"longjmp"!==f&&g(f),V.setThrew(1,0)}},_llvm_lifetime_end:r(),__scanString:W,_pthread_mutex_lock:r(),___cxa_end_catch:Jc,_strtoull:dd,_fflush:r(),__isLeapYear:Wc,_fwrite:Gc,_send:function(a,b,c){return!U.lc(a)?(Q(O.W),-1):Ec(a,
-b,c)},_isspace:bd,_read:Kc,_isxdigit_l:function(a){return Pc(a)},_fileno:Fc,___cxa_guard_abort:r(),_newlocale:function(){return Da(4)},___gxx_personality_v0:r(),_pthread_cond_wait:t(0),___cxa_rethrow:function(){Jc.Ac=n;g(Ic.pop()+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")},_fmod:function(a,b){return a%b},___resumeException:function(a){ub||(ub=a);g(a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")},
-_memchr:function(a,b,c){for(var b=$a(b),d=0;d<c;d++){if(I[a]==b)return a;a++}return 0},_llvm_va_end:r(),_vsscanf:function(a,b,c){return Sc(a,b,J[c>>2])},_snprintf:Cb,_fgetc:Mc,__getFloat:Rc,_atexit:function(a,b){Ta.unshift({ba:a,La:b})},___cxa_free_exception:Fb,_strchr:function(a,b){a--;do{a++;var c=I[a];if(c==b)return a}while(c);return 0},_isdigit_l:function(a){return Qc(a)},___setErrNo:Q,_isxdigit:Pc,_exit:function(a){Hc(a)},_sprintf:Db,___ctype_b_loc:Tc,_freelocale:function(a){Gb(a)},_catgets:function(a,
-b,c,d){return d},_asprintf:fd,___cxa_is_number_type:sb,___cxa_does_inherit:tb,___cxa_guard_acquire:function(a){return!I[a]?I[a]=1:0},___cxa_begin_catch:function(a){rb.Ib--;Ic.push(ub);return a},_emscripten_memcpy_big:function(a,b,c){M.set(M.subarray(b,b+c),a);return a},_recv:function(a,b,c){return!U.lc(a)?(Q(O.W),-1):Kc(a,b,c)},__parseInt64:cd,__ZSt18uncaught_exceptionv:rb,__ZNSt9exceptionD2Ev:r(),_mkport:Dc,_copysign:function(a,b){return zb(a)===zb(b)?a:-a},__exit:Hc,_strftime:ad,___cxa_throw:Hb,
-_pread:function(a,b,c,d){a=T[a];if(!a)return Q(O.W),-1;try{return vc(a,b,c,d)}catch(e){return $b(e),-1}},_strtoull_l:function(a,b,c){return dd(a,b,c)},__arraySum:Xc,_strtoll_l:function(a,b,c){return ed(a,b,c)},___cxa_find_matching_catch:function(a,b){-1==a&&(a=ub);header=a-vb;-1==b&&(b=J[header>>2]);var c=Array.prototype.slice.call(arguments,2);0!=b&&!sb(b)&&0==J[J[b>>2]-8>>2]&&(a=J[a>>2]);for(var d=0;d<c.length;d++)if(tb(c[d],b,a))return(V.setTempRet0(c[d]),a)|0;return(V.setTempRet0(b),a)|0},__formatString:Ab,
-_pthread_cond_broadcast:t(0),__ZSt9terminatev:function(){Hc(-1234)},_pthread_mutex_unlock:r(),___cxa_call_unexpected:function(a){v.pa("Unexpected exception thrown, this is not properly supported - aborting");oa=n;g(a)},_sbrk:hd,___errno_location:function(){return Jb},_strerror:Oc,_catclose:t(0),_llvm_lifetime_start:r(),___cxa_guard_release:r(),_ungetc:function(a,b){b=T[b-1];if(!b)return-1;if(-1===a)return a;a=$a(a&255);b.fb.push(a);b.ec=q;return a},_uselocale:t(0),_vsnprintf:function(a,b,c,d){return Cb(a,
-b,c,J[d>>2])},_sscanf:Sc,_sysconf:function(a){switch(a){case 30:return 4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 79:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;
-case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256;
-case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return 1}Q(O.D);return-1},_fread:Lc,_strftime_l:function(a,b,c,d){return ad(a,b,c,d)},_abort:function(){v.abort()},_fprintf:function(a,b,c){c=Ab(b,c);b=z.Gb();a=Gc(L(c,"i8",1),1,c.length,a);z.Fb(b);return a},_isdigit:Qc,_strtoll:ed,__reallyNegative:zb,__addDays:$c,_fabs:gd,_write:Ec,___cxa_allocate_exception:function(a){return Da(a+vb)+vb},_vasprintf:function(a,b,c){return fd(a,
-b,J[c>>2])},_catopen:t(-1),___ctype_toupper_loc:Vc,___ctype_tolower_loc:Uc,_pwrite:function(a,b,c,d){a=T[a];if(!a)return Q(O.W),-1;try{return wc(a,I,b,c,d)}catch(e){return $b(e),-1}},_strerror_r:Nc,_time:function(a){var b=Math.floor(Date.now()/1E3);a&&(J[a>>2]=b);return b},STACKTOP:w,STACK_MAX:Ka,tempDoublePtr:pb,ABORT:oa,cttz_i8:Ad,ctlz_i8:zd,NaN:NaN,Infinity:Infinity,_stdout:hb,___dso_handle:mb,__ZTVN10__cxxabiv117__class_type_infoE:ob,_stdin:ib,__ZTVN10__cxxabiv120__si_class_type_infoE:nb,_stderr:jb},
-Oa),xb=v._strlen=V._strlen,Gb=v._free=V._free,Bd=v._detectLangCode=V._detectLangCode;v._realloc=V._realloc;var yb=v._strncpy=V._strncpy,Eb=v._memmove=V._memmove,lb=v.__GLOBAL__I_a=V.__GLOBAL__I_a,qb=v._memset=V._memset,Da=v._malloc=V._malloc;v._lastResultReliable=V._lastResultReliable;var wb=v._memcpy=V._memcpy,kb=v.runPostSets=V.runPostSets;v.dynCall_viiiii=V.dynCall_viiiii;v.dynCall_viiiiiii=V.dynCall_viiiiiii;v.dynCall_vi=V.dynCall_vi;v.dynCall_vii=V.dynCall_vii;v.dynCall_iii=V.dynCall_iii;
-v.dynCall_iiiiii=V.dynCall_iiiiii;v.dynCall_viiiiiid=V.dynCall_viiiiiid;v.dynCall_ii=V.dynCall_ii;v.dynCall_iiii=V.dynCall_iiii;v.dynCall_viii=V.dynCall_viii;v.dynCall_viiiiid=V.dynCall_viiiiid;v.dynCall_v=V.dynCall_v;v.dynCall_iiiiiiiii=V.dynCall_iiiiiiiii;v.dynCall_viiiiiiiii=V.dynCall_viiiiiiiii;v.dynCall_viiiiii=V.dynCall_viiiiii;v.dynCall_iiiii=V.dynCall_iiiii;v.dynCall_viiiiiiii=V.dynCall_viiiiiiii;v.dynCall_viiii=V.dynCall_viiii;z.Eb=function(a){return V.stackAlloc(a)};z.Gb=function(){return V.stackSave()};
-z.Fb=function(a){V.stackRestore(a)};var Bb;function X(a,b){a!=p&&("number"==typeof a?this.N(a):b==p&&"string"!=typeof a?this.G(a,256):this.G(a,b))}function Cd(){return new X(p)}function Dd(a,b){var c=Ed[a.charCodeAt(b)];return c==p?-1:c}function Fd(a){var b=Cd();b.ea(a);return b}function Y(a,b){this.A=a|0;this.C=b|0}Y.Sb={};Y.ea=function(a){if(-128<=a&&128>a){var b=Y.Sb[a];if(b)return b}b=new Y(a|0,0>a?-1:0);-128<=a&&128>a&&(Y.Sb[a]=b);return b};
-Y.N=function(a){return isNaN(a)||!isFinite(a)?Y.ZERO:a<=-Y.Ub?Y.MIN_VALUE:a+1>=Y.Ub?Y.MAX_VALUE:0>a?Y.N(-a).B():new Y(a%Y.ca|0,a/Y.ca|0)};Y.aa=function(a,b){return new Y(a,b)};
-Y.G=function(a,b){0==a.length&&g(Error("number format error: empty string"));var c=b||10;(2>c||36<c)&&g(Error("radix out of range: "+c));if("-"==a.charAt(0))return Y.G(a.substring(1),c).B();0<=a.indexOf("-")&&g(Error('number format error: interior "-" character: '+a));for(var d=Y.N(Math.pow(c,8)),e=Y.ZERO,f=0;f<a.length;f+=8){var h=Math.min(8,a.length-f),i=parseInt(a.substring(f,f+h),c);8>h?(h=Y.N(Math.pow(c,h)),e=e.multiply(h).add(Y.N(i))):(e=e.multiply(d),e=e.add(Y.N(i)))}return e};Y.jb=65536;
-Y.Ef=16777216;Y.ca=Y.jb*Y.jb;Y.Ff=Y.ca/2;Y.Gf=Y.ca*Y.jb;Y.Uc=Y.ca*Y.ca;Y.Ub=Y.Uc/2;Y.ZERO=Y.ea(0);Y.ONE=Y.ea(1);Y.Tb=Y.ea(-1);Y.MAX_VALUE=Y.aa(-1,2147483647);Y.MIN_VALUE=Y.aa(0,-2147483648);Y.Tc=Y.ea(16777216);u=Y.prototype;u.eb=function(){return this.C*Y.ca+this.hd()};
-u.toString=function(a){a=a||10;(2>a||36<a)&&g(Error("radix out of range: "+a));if(this.ma())return"0";if(this.J()){if(this.M(Y.MIN_VALUE)){var b=Y.N(a),c=this.la(b),b=c.multiply(b).Ea(this);return c.toString(a)+b.A.toString(a)}return"-"+this.B().toString(a)}for(var c=Y.N(Math.pow(a,6)),b=this,d="";;){var e=b.la(c),f=b.Ea(e.multiply(c)).A.toString(a),b=e;if(b.ma())return f+d;for(;6>f.length;)f="0"+f;d=""+f+d}};u.hd=function(){return 0<=this.A?this.A:Y.ca+this.A};
-u.ma=function(){return 0==this.C&&0==this.A};u.J=function(){return 0>this.C};u.qc=function(){return 1==(this.A&1)};u.M=function(a){return this.C==a.C&&this.A==a.A};u.sc=function(){return 0>this.ob(Y.Tc)};u.kd=function(a){return 0<this.ob(a)};u.ld=function(a){return 0<=this.ob(a)};u.ob=function(a){if(this.M(a))return 0;var b=this.J(),c=a.J();return b&&!c?-1:!b&&c?1:this.Ea(a).J()?-1:1};u.B=function(){return this.M(Y.MIN_VALUE)?Y.MIN_VALUE:this.zd().add(Y.ONE)};
-u.add=function(a){var b=this.C>>>16,c=this.C&65535,d=this.A>>>16,e=a.C>>>16,f=a.C&65535,h=a.A>>>16,i;i=0+((this.A&65535)+(a.A&65535));a=0+(i>>>16);a+=d+h;d=0+(a>>>16);d+=c+f;c=0+(d>>>16);c=c+(b+e)&65535;return Y.aa((a&65535)<<16|i&65535,c<<16|d&65535)};u.Ea=function(a){return this.add(a.B())};
-u.multiply=function(a){if(this.ma()||a.ma())return Y.ZERO;if(this.M(Y.MIN_VALUE))return a.qc()?Y.MIN_VALUE:Y.ZERO;if(a.M(Y.MIN_VALUE))return this.qc()?Y.MIN_VALUE:Y.ZERO;if(this.J())return a.J()?this.B().multiply(a.B()):this.B().multiply(a).B();if(a.J())return this.multiply(a.B()).B();if(this.sc()&&a.sc())return Y.N(this.eb()*a.eb());var b=this.C>>>16,c=this.C&65535,d=this.A>>>16,e=this.A&65535,f=a.C>>>16,h=a.C&65535,i=a.A>>>16,a=a.A&65535,m,l,j,s;s=0+e*a;j=0+(s>>>16);j+=d*a;l=0+(j>>>16);j=(j&65535)+
-e*i;l+=j>>>16;j&=65535;l+=c*a;m=0+(l>>>16);l=(l&65535)+d*i;m+=l>>>16;l&=65535;l+=e*h;m+=l>>>16;l&=65535;m=m+(b*a+c*i+d*h+e*f)&65535;return Y.aa(j<<16|s&65535,m<<16|l)};
-u.la=function(a){a.ma()&&g(Error("division by zero"));if(this.ma())return Y.ZERO;if(this.M(Y.MIN_VALUE)){if(a.M(Y.ONE)||a.M(Y.Tb))return Y.MIN_VALUE;if(a.M(Y.MIN_VALUE))return Y.ONE;var b=this.Gd().la(a).shiftLeft(1);if(b.M(Y.ZERO))return a.J()?Y.ONE:Y.Tb;var c=this.Ea(a.multiply(b));return b.add(c.la(a))}if(a.M(Y.MIN_VALUE))return Y.ZERO;if(this.J())return a.J()?this.B().la(a.B()):this.B().la(a).B();if(a.J())return this.la(a.B()).B();for(var d=Y.ZERO,c=this;c.ld(a);){for(var b=Math.max(1,Math.floor(c.eb()/
-a.eb())),e=Math.ceil(Math.log(b)/Math.LN2),e=48>=e?1:Math.pow(2,e-48),f=Y.N(b),h=f.multiply(a);h.J()||h.kd(c);)b-=e,f=Y.N(b),h=f.multiply(a);f.ma()&&(f=Y.ONE);d=d.add(f);c=c.Ea(h)}return d};u.zd=function(){return Y.aa(~this.A,~this.C)};u.shiftLeft=function(a){a&=63;if(0==a)return this;var b=this.A;return 32>a?Y.aa(b<<a,this.C<<a|b>>>32-a):Y.aa(0,b<<a-32)};u.Gd=function(){var a;a=1;if(0==a)return this;var b=this.C;return 32>a?Y.aa(this.A>>>a|b<<32-a,b>>a):Y.aa(b>>a-32,0<=b?0:-1)};u=X.prototype;
-u.mb=function(a,b,c,d){for(var e=0,f=0;0<=--d;){var h=a*this[e++]+b[c]+f,f=Math.floor(h/67108864);b[c++]=h&67108863}return f};u.q=26;u.V=67108863;u.ya=67108864;u.Rc=Math.pow(2,52);u.Qb=26;u.Rb=0;var Ed=[],Gd,Z;Gd=48;for(Z=0;9>=Z;++Z)Ed[Gd++]=Z;Gd=97;for(Z=10;36>Z;++Z)Ed[Gd++]=Z;Gd=65;for(Z=10;36>Z;++Z)Ed[Gd++]=Z;u=X.prototype;u.copyTo=function(a){for(var b=this.e-1;0<=b;--b)a[b]=this[b];a.e=this.e;a.k=this.k};u.ea=function(a){this.e=1;this.k=0>a?-1:0;0<a?this[0]=a:-1>a?this[0]=a+DV:this.e=0};
-u.G=function(a,b){var c;if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else if(4==b)c=2;else{this.fd(a,b);return}this.k=this.e=0;for(var d=a.length,e=q,f=0;0<=--d;){var h=8==c?a[d]&255:Dd(a,d);0>h?"-"==a.charAt(d)&&(e=n):(e=q,0==f?this[this.e++]=h:f+c>this.q?(this[this.e-1]|=(h&(1<<this.q-f)-1)<<f,this[this.e++]=h>>this.q-f):this[this.e-1]|=h<<f,f+=c,f>=this.q&&(f-=this.q))}8==c&&0!=(a[0]&128)&&(this.k=-1,0<f&&(this[this.e-1]|=(1<<this.q-f)-1<<f));this.da();e&&
-X.ZERO.U(this,this)};u.da=function(){for(var a=this.k&this.V;0<this.e&&this[this.e-1]==a;)--this.e};u.pb=function(a,b){var c;for(c=this.e-1;0<=c;--c)b[c+a]=this[c];for(c=a-1;0<=c;--c)b[c]=0;b.e=this.e+a;b.k=this.k};u.cd=function(a,b){for(var c=a;c<this.e;++c)b[c-a]=this[c];b.e=Math.max(this.e-a,0);b.k=this.k};
-u.rc=function(a,b){var c=a%this.q,d=this.q-c,e=(1<<d)-1,f=Math.floor(a/this.q),h=this.k<<c&this.V,i;for(i=this.e-1;0<=i;--i)b[i+f+1]=this[i]>>d|h,h=(this[i]&e)<<c;for(i=f-1;0<=i;--i)b[i]=0;b[f]=h;b.e=this.e+f+1;b.k=this.k;b.da()};u.Bd=function(a,b){b.k=this.k;var c=Math.floor(a/this.q);if(c>=this.e)b.e=0;else{var d=a%this.q,e=this.q-d,f=(1<<d)-1;b[0]=this[c]>>d;for(var h=c+1;h<this.e;++h)b[h-c-1]|=(this[h]&f)<<e,b[h-c]=this[h]>>d;0<d&&(b[this.e-c-1]|=(this.k&f)<<e);b.e=this.e-c;b.da()}};
-u.U=function(a,b){for(var c=0,d=0,e=Math.min(a.e,this.e);c<e;)d+=this[c]-a[c],b[c++]=d&this.V,d>>=this.q;if(a.e<this.e){for(d-=a.k;c<this.e;)d+=this[c],b[c++]=d&this.V,d>>=this.q;d+=this.k}else{for(d+=this.k;c<a.e;)d-=a[c],b[c++]=d&this.V,d>>=this.q;d-=a.k}b.k=0>d?-1:0;-1>d?b[c++]=this.ya+d:0<d&&(b[c++]=d);b.e=c;b.da()};u.xd=function(a){var b=$.Ec,c=this.abs(),d=b.abs(),e=c.e;for(a.e=e+d.e;0<=--e;)a[e]=0;for(e=0;e<d.e;++e)a[e+c.e]=c.mb(d[e],a,e,c.e);a.k=0;a.da();this.k!=b.k&&X.ZERO.U(a,a)};
-u.cc=function(a,b,c){var d=a.abs();if(!(0>=d.e)){var e=this.abs();if(e.e<d.e)b!=p&&b.ea(0),c!=p&&this.copyTo(c);else{c==p&&(c=Cd());var f=Cd(),h=this.k,a=a.k,i=d[d.e-1],m=1,l;if(0!=(l=i>>>16))i=l,m+=16;if(0!=(l=i>>8))i=l,m+=8;if(0!=(l=i>>4))i=l,m+=4;if(0!=(l=i>>2))i=l,m+=2;0!=i>>1&&(m+=1);i=this.q-m;0<i?(d.rc(i,f),e.rc(i,c)):(d.copyTo(f),e.copyTo(c));d=f.e;e=f[d-1];if(0!=e){l=e*(1<<this.Qb)+(1<d?f[d-2]>>this.Rb:0);m=this.Rc/l;l=(1<<this.Qb)/l;var j=1<<this.Rb,s=c.e,x=s-d,C=b==p?Cd():b;f.pb(x,C);0<=
-c.Oa(C)&&(c[c.e++]=1,c.U(C,c));X.ONE.pb(d,C);for(C.U(f,f);f.e<d;)f[f.e++]=0;for(;0<=--x;){var F=c[--s]==e?this.V:Math.floor(c[s]*m+(c[s-1]+j)*l);if((c[s]+=f.mb(F,c,x,d))<F){f.pb(x,C);for(c.U(C,c);c[s]<--F;)c.U(C,c)}}b!=p&&(c.cd(d,b),h!=a&&X.ZERO.U(b,b));c.e=d;c.da();0<i&&c.Bd(i,c);0>h&&X.ZERO.U(c,c)}}}};
-u.toString=function(a){if(0>this.k)return"-"+this.B().toString(a);if(16==a)a=4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.Jd(a);var b=(1<<a)-1,c,d=q,e="",f=this.e,h=this.q-f*this.q%a;if(0<f--){if(h<this.q&&0<(c=this[f]>>h))d=n,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c);for(;0<=f;)h<a?(c=(this[f]&(1<<h)-1)<<a-h,c|=this[--f]>>(h+=this.q-a)):(c=this[f]>>(h-=a)&b,0>=h&&(h+=this.q,--f)),0<c&&(d=n),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c))}return d?
-e:"0"};u.B=function(){var a=Cd();X.ZERO.U(this,a);return a};u.abs=function(){return 0>this.k?this.B():this};u.Oa=function(a){var b=this.k-a.k;if(0!=b)return b;var c=this.e,b=c-a.e;if(0!=b)return 0>this.k?-b:b;for(;0<=--c;)if(0!=(b=this[c]-a[c]))return b;return 0};X.ZERO=Fd(0);X.ONE=Fd(1);u=X.prototype;
-u.fd=function(a,b){this.ea(0);b==p&&(b=10);for(var c=this.Ma(b),d=Math.pow(b,c),e=q,f=0,h=0,i=0;i<a.length;++i){var m=Dd(a,i);0>m?"-"==a.charAt(i)&&0==this.Db()&&(e=n):(h=b*h+m,++f>=c&&(this.bc(d),this.ac(h),h=f=0))}0<f&&(this.bc(Math.pow(b,f)),this.ac(h));e&&X.ZERO.U(this,this)};u.Ma=function(a){return Math.floor(Math.LN2*this.q/Math.log(a))};u.Db=function(){return 0>this.k?-1:0>=this.e||1==this.e&&0>=this[0]?0:1};u.bc=function(a){this[this.e]=this.mb(a-1,this,0,this.e);++this.e;this.da()};
-u.ac=function(a){var b=0;if(0!=a){for(;this.e<=b;)this[this.e++]=0;for(this[b]+=a;this[b]>=this.ya;)this[b]-=this.ya,++b>=this.e&&(this[this.e++]=0),++this[b]}};u.Jd=function(a){a==p&&(a=10);if(0==this.Db()||2>a||36<a)return"0";var b=this.Ma(a),b=Math.pow(a,b),c=Fd(b),d=Cd(),e=Cd(),f="";for(this.cc(c,d,e);0<d.Db();)f=(b+e.oc()).toString(a).substr(1)+f,d.cc(c,d,e);return e.oc().toString(a)+f};
-u.oc=function(){if(0>this.k){if(1==this.e)return this[0]-this.ya;if(0==this.e)return-1}else{if(1==this.e)return this[0];if(0==this.e)return 0}return(this[1]&(1<<32-this.q)-1)<<this.q|this[0]};
-u.lb=function(a,b){for(var c=0,d=0,e=Math.min(a.e,this.e);c<e;)d+=this[c]+a[c],b[c++]=d&this.V,d>>=this.q;if(a.e<this.e){for(d+=a.k;c<this.e;)d+=this[c],b[c++]=d&this.V,d>>=this.q;d+=this.k}else{for(d+=this.k;c<a.e;)d+=a[c],b[c++]=d&this.V,d>>=this.q;d+=a.k}b.k=0>d?-1:0;0<d?b[c++]=d:-1>d&&(b[c++]=this.ya+d);b.e=c;b.da()};
-var $={abs:function(a,b){var c=new Y(a,b),c=c.J()?c.B():c;J[pb>>2]=c.A;J[pb+4>>2]=c.C},dc:function(){$.dd||($.dd=n,$.Ec=new X,$.Ec.G("4294967296",10),$.Hb=new X,$.Hb.G("18446744073709551616",10),$.ug=new X,$.vg=new X)},jg:function(a,b){var c=new X;c.G(b.toString(),10);var d=new X;c.xd(d);c=new X;c.G(a.toString(),10);var e=new X;c.lb(d,e);return e},stringify:function(a,b,c){a=(new Y(a,b)).toString();c&&"-"==a[0]&&($.dc(),c=new X,c.G(a,10),a=new X,$.Hb.lb(c,a),a=a.toString(10));return a},G:function(a,
-b,c,d,e){$.dc();var f=new X;f.G(a,b);a=new X;a.G(c,10);c=new X;c.G(d,10);e&&0>f.Oa(X.ZERO)&&(d=new X,f.lb($.Hb,d),f=d);d=q;0>f.Oa(a)?(f=a,d=n):0<f.Oa(c)&&(f=c,d=n);f=Y.G(f.toString());J[pb>>2]=f.A;J[pb+4>>2]=f.C;d&&g("range error")}};Bb=$;if(gb)if(ca||fa){var Hd=v.readBinary(gb);M.set(Hd,Ia)}else eb(),pd(gb,function(a){M.set(a,Ia);fb()},function(){g("could not load memory initializer "+gb)});function Id(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}
-Id.prototype=Error();var Jd,Kd=p,db=function Ld(){!v.calledRun&&Md&&Nd();v.calledRun||(db=Ld)};
-v.callMain=v.Tf=function(a){function b(){for(var a=0;3>a;a++)d.push(0)}A(0==bb,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");A(0==Qa.length,"cannot call main when preRun functions remain to be called");a=a||[];da&&Kd!==p&&v.pa("preload time: "+(Date.now()-Kd)+" ms");Va||(Va=n,Pa(Ra));var c=a.length+1,d=[L(H("/bin/this.program"),"i8",Ba)];b();for(var e=0;e<c-1;e+=1)d.push(L(H(a[e]),"i8",Ba)),b();d.push(0);d=L(d,"i32",Ba);Jd=w;try{var f=v._main(c,d,0);v.noExitRuntime||Od(f)}catch(h){h instanceof
-Id||("SimulateInfiniteLoop"==h?v.noExitRuntime=n:(h&&("object"===typeof h&&h.stack)&&v.pa("exception thrown: "+[h,h.stack]),g(h)))}finally{}};
-function Nd(a){function b(){if(!v.calledRun){v.calledRun=n;Va||(Va=n,Pa(Ra));Pa(Sa);v._main&&Md&&v.callMain(a);if(v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;)Ya(v.postRun.shift());Pa(Ua)}}a=a||v.arguments;Kd===p&&(Kd=Date.now());if(0<bb)v.pa("run() called, but dependencies remain, so not running");else{if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)Wa(v.preRun.shift());Pa(Qa);!(0<bb)&&!v.calledRun&&(v.setStatus?(v.setStatus("Running..."),
-setTimeout(function(){setTimeout(function(){v.setStatus("")},1);oa||b()},1)):b())}}v.run=v.tg=Nd;function Od(a){oa=n;w=Jd;Pa(Ta);g(new Id(a))}v.exit=v.Xf=Od;function ka(a){a&&(v.print(a),v.pa(a));oa=n;g("abort() at "+Fa())}v.abort=v.abort=ka;if(v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();var Md=n;v.noInitialRun&&(Md=q);Nd();
-Xa(function(){onmessage=function(a){var b=new TextEncoder;b.encoding="utf-8";var b=b.encode(a.data),c=b.length,a=v._malloc(c+1),d=v.HEAPU8;(new Uint8Array(d.buffer,a,c)).set(b);d[a+c]=0;b=ja(Bd(a));c=!!v.ccall("lastResultReliable","number");postMessage({language:b,confident:c});v._free(a)};postMessage("ready")});
-
index 7dcae175f2610a206ea0a029fbfd433c95d9cd6a..2c8a317611baedeff4f032481a85c17a212f3c75
GIT binary patch
literal 1097229
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%0DyJ!vw74X&(Ge3fk7J1J+E+
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