gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [taler-wallet-webex] 02/03: wasm


From: gnunet
Subject: [GNUnet-SVN] [taler-wallet-webex] 02/03: wasm
Date: Sat, 22 Sep 2018 17:19:54 +0200

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository wallet-webex.

commit 1f9ca30a9116018ae77c70730536032c8785116d
Author: Florian Dold <address@hidden>
AuthorDate: Thu Sep 20 21:32:10 2018 +0200

    wasm
---
 emscripten/taler-emscripten-lib.js   | 121336 +-------------------------------
 emscripten/taler-emscripten-lib.wasm |    Bin 0 -> 443523 bytes
 src/crypto/emscInterface.ts          |      8 +-
 src/crypto/emscLoader.js             |     16 +-
 4 files changed, 29 insertions(+), 121331 deletions(-)

diff --git a/emscripten/taler-emscripten-lib.js 
b/emscripten/taler-emscripten-lib.js
index e1bd25dd..5819e7e4 100644
--- a/emscripten/taler-emscripten-lib.js
+++ b/emscripten/taler-emscripten-lib.js
@@ -1,121328 +1,24 @@
-// The Module object: Our interface to the outside world. We import
-// and export values on it. There are various ways Module can be used:
-// 1. Not defined. We create it here
-// 2. A function parameter, function(Module) { ..generated code.. }
-// 3. pre-run appended it, var Module = {}; ..generated code..
-// 4. External script tag defines var Module.
-// We need to check if Module already exists (e.g. case 3 above).
-// Substitution will be replaced with actual code on later stage of the build,
-// this way Closure Compiler will not mangle it (e.g. case 4. above).
-// Note that if you want to run closure, and also to use Module
-// after the generated code, you will need to define   var Module = {};
-// before the code. Then that object will be used in the code, and you
-// can continue to use Module afterwards as well.
-var Module = typeof TalerEmscriptenLib !== 'undefined' ? TalerEmscriptenLib : 
{};
 
-// --pre-jses are emitted after the Module integration code, so that they can
-// refer to Module (if they choose; they can also define Module)
-// {{PRE_JSES}}
+var TalerEmscriptenLib = (function() {
+  var _scriptDir = typeof document !== 'undefined' && document.currentScript ? 
document.currentScript.src : undefined;
+  return (
+function(TalerEmscriptenLib) {
+  TalerEmscriptenLib = TalerEmscriptenLib || {};
 
-// Sometimes an existing Module object exists with properties
-// meant to overwrite the default module functionality. Here
-// we collect those properties and reapply _after_ we configure
-// the current environment's defaults to avoid having to be so
-// defensive during initialization.
-var moduleOverrides = {};
-var key;
-for (key in Module) {
-  if (Module.hasOwnProperty(key)) {
-    moduleOverrides[key] = Module[key];
-  }
-}
-
-Module['arguments'] = [];
-Module['thisProgram'] = './this.program';
-Module['quit'] = function(status, toThrow) {
-  throw toThrow;
-};
-Module['preRun'] = [];
-Module['postRun'] = [];
-
-// Determine the runtime environment we are in. You can customize this by
-// setting the ENVIRONMENT setting at compile time (see settings.js).
-
-var ENVIRONMENT_IS_WEB = false;
-var ENVIRONMENT_IS_WORKER = false;
-var ENVIRONMENT_IS_NODE = false;
-var ENVIRONMENT_IS_SHELL = false;
-ENVIRONMENT_IS_WEB = typeof window === 'object';
-ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';
-ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 
'function' && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER;
-ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && 
!ENVIRONMENT_IS_WORKER;
-
-if (Module['ENVIRONMENT']) {
-  throw new Error('Module.ENVIRONMENT has been deprecated. To force the 
environment, use the ENVIRONMENT compile-time option (for example, -s 
ENVIRONMENT=web or -s ENVIRONMENT=node)');
-}
-
-// Three configurations we can be running in:
-// 1) We could be the application main() thread running in the main JS UI 
thread. (ENVIRONMENT_IS_WORKER == false and ENVIRONMENT_IS_PTHREAD == false)
-// 2) We could be the application main() thread proxied to worker. (with 
Emscripten -s PROXY_TO_WORKER=1) (ENVIRONMENT_IS_WORKER == true, 
ENVIRONMENT_IS_PTHREAD == false)
-// 3) We could be an application pthread running in a worker. 
(ENVIRONMENT_IS_WORKER == true and ENVIRONMENT_IS_PTHREAD == true)
-
-assert(typeof Module['memoryInitializerPrefixURL'] === 'undefined', 
'Module.memoryInitializerPrefixURL option was removed, use Module.locateFile 
instead');
-assert(typeof Module['pthreadMainPrefixURL'] === 'undefined', 
'Module.pthreadMainPrefixURL option was removed, use Module.locateFile 
instead');
-assert(typeof Module['cdInitializerPrefixURL'] === 'undefined', 
'Module.cdInitializerPrefixURL option was removed, use Module.locateFile 
instead');
-assert(typeof Module['filePackagePrefixURL'] === 'undefined', 
'Module.filePackagePrefixURL option was removed, use Module.locateFile 
instead');
-
-// `/` should be present at the end if `scriptDirectory` is not empty
-var scriptDirectory = '';
-function locateFile(path) {
-  if (Module['locateFile']) {
-    return Module['locateFile'](path, scriptDirectory);
-  } else {
-    return scriptDirectory + path;
-  }
-}
-
-if (ENVIRONMENT_IS_NODE) {
-  scriptDirectory = __dirname + '/';
-
-  // Expose functionality in the same simple way that the shells work
-  // Note that we pollute the global namespace here, otherwise we break in node
-  var nodeFS;
-  var nodePath;
-
-  Module['read'] = function shell_read(filename, binary) {
-    var ret;
-    ret = tryParseAsDataURI(filename);
-    if (!ret) {
-      if (!nodeFS) nodeFS = require('fs');
-      if (!nodePath) nodePath = require('path');
-      filename = nodePath['normalize'](filename);
-      ret = nodeFS['readFileSync'](filename);
-    }
-    return binary ? ret : ret.toString();
-  };
-
-  Module['readBinary'] = function readBinary(filename) {
-    var ret = Module['read'](filename, true);
-    if (!ret.buffer) {
-      ret = new Uint8Array(ret);
-    }
-    assert(ret.buffer);
-    return ret;
-  };
-
-  if (process['argv'].length > 1) {
-    Module['thisProgram'] = process['argv'][1].replace(/\\/g, '/');
-  }
-
-  Module['arguments'] = process['argv'].slice(2);
-
-  if (typeof module !== 'undefined') {
-    module['exports'] = Module;
-  }
-
-  process['on']('uncaughtException', function(ex) {
-    // suppress ExitStatus exceptions from showing an error
-    if (!(ex instanceof ExitStatus)) {
-      throw ex;
-    }
-  });
-  // Currently node will swallow unhandled rejections, but this behavior is
-  // deprecated, and in the future it will exit with error status.
-  process['on']('unhandledRejection', function(reason, p) {
-    err('node.js exiting due to unhandled promise rejection');
-    process['exit'](1);
-  });
-
-  Module['quit'] = function(status) {
-    process['exit'](status);
-  };
-
-  Module['inspect'] = function () { return '[Emscripten Module object]'; };
-} else
-if (ENVIRONMENT_IS_SHELL) {
-
-
-  if (typeof read != 'undefined') {
-    Module['read'] = function shell_read(f) {
-      var data = tryParseAsDataURI(f);
-      if (data) {
-        return intArrayToString(data);
-      }
-      return read(f);
-    };
-  }
-
-  Module['readBinary'] = function readBinary(f) {
-    var data;
-    data = tryParseAsDataURI(f);
-    if (data) {
-      return data;
-    }
-    if (typeof readbuffer === 'function') {
-      return new Uint8Array(readbuffer(f));
-    }
-    data = read(f, 'binary');
-    assert(typeof data === 'object');
-    return data;
-  };
-
-  if (typeof scriptArgs != 'undefined') {
-    Module['arguments'] = scriptArgs;
-  } else if (typeof arguments != 'undefined') {
-    Module['arguments'] = arguments;
-  }
-
-  if (typeof quit === 'function') {
-    Module['quit'] = function(status) {
-      quit(status);
-    }
-  }
-} else
-if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
-  if (ENVIRONMENT_IS_WEB) {
-    if (document.currentScript) {
-      scriptDirectory = document.currentScript.src;
-    }
-  } else { // worker
-    scriptDirectory = self.location.href;
-  }
-  // blob urls look like blob:http://site.com/etc/etc and we cannot infer 
anything from them.
-  // otherwise, slice off the final part of the url to find the script 
directory.
-  // if scriptDirectory does not contain a slash, lastIndexOf will return -1,
-  // and scriptDirectory will correctly be replaced with an empty string.
-  if (scriptDirectory.indexOf('blob:') !== 0) {
-    scriptDirectory = scriptDirectory.substr(0, 
scriptDirectory.lastIndexOf('/')+1);
-  } else {
-    scriptDirectory = '';
-  }
-
-
-  Module['read'] = function shell_read(url) {
-    try {
-      var xhr = new XMLHttpRequest();
-      xhr.open('GET', url, false);
-      xhr.send(null);
-      return xhr.responseText;
-    } catch (err) {
-      var data = tryParseAsDataURI(url);
-      if (data) {
-        return intArrayToString(data);
-      }
-      throw err;
-    }
-  };
-
-  if (ENVIRONMENT_IS_WORKER) {
-    Module['readBinary'] = function readBinary(url) {
-      try {
-        var xhr = new XMLHttpRequest();
-        xhr.open('GET', url, false);
-        xhr.responseType = 'arraybuffer';
-        xhr.send(null);
-        return new Uint8Array(xhr.response);
-      } catch (err) {
-        var data = tryParseAsDataURI(url);
-        if (data) {
-          return data;
-        }
-        throw err;
-      }
-    };
-  }
-
-  Module['readAsync'] = function readAsync(url, onload, onerror) {
-    var xhr = new XMLHttpRequest();
-    xhr.open('GET', url, true);
-    xhr.responseType = 'arraybuffer';
-    xhr.onload = function xhr_onload() {
-      if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file 
URLs can return 0
-        onload(xhr.response);
-        return;
-      }
-      var data = tryParseAsDataURI(url);
-      if (data) {
-        onload(data.buffer);
-        return;
-      }
-      onerror();
-    };
-    xhr.onerror = onerror;
-    xhr.send(null);
-  };
-
-  Module['setWindowTitle'] = function(title) { document.title = title };
-} else
-{
-  throw new Error('environment detection error');
-}
-
-// Set up the out() and err() hooks, which are how we can print to stdout or
-// stderr, respectively.
-// If the user provided Module.print or printErr, use that. Otherwise,
-// console.log is checked first, as 'print' on the web will open a print 
dialogue
-// printErr is preferable to console.warn (works better in shells)
-// bind(console) is necessary to fix IE/Edge closed dev tools panel behavior.
-var out = Module['print'] || (typeof console !== 'undefined' ? 
console.log.bind(console) : (typeof print !== 'undefined' ? print : null));
-var err = Module['printErr'] || (typeof printErr !== 'undefined' ? printErr : 
((typeof console !== 'undefined' && console.warn.bind(console)) || out));
-
-// Merge back in the overrides
-for (key in moduleOverrides) {
-  if (moduleOverrides.hasOwnProperty(key)) {
-    Module[key] = moduleOverrides[key];
-  }
-}
-// Free the object hierarchy contained in the overrides, this lets the GC
-// reclaim data used e.g. in memoryInitializerRequest, which is a large typed 
array.
-moduleOverrides = undefined;
-
-
-
-// {{PREAMBLE_ADDITIONS}}
-
-var STACK_ALIGN = 16;
-
-// stack management, and other functionality that is provided by the compiled 
code,
-// should not be used before it is ready
-stackSave = stackRestore = stackAlloc = setTempRet0 = getTempRet0 = function() 
{
-  abort('cannot use the stack before compiled code is ready to run, and has 
provided stack access');
-};
-
-function staticAlloc(size) {
-  assert(!staticSealed);
-  var ret = STATICTOP;
-  STATICTOP = (STATICTOP + size + 15) & -16;
-  assert(STATICTOP < TOTAL_MEMORY, 'not enough memory for static allocation - 
increase TOTAL_MEMORY');
-  return ret;
-}
-
-function dynamicAlloc(size) {
-  assert(DYNAMICTOP_PTR);
-  var ret = HEAP32[DYNAMICTOP_PTR>>2];
-  var end = (ret + size + 15) & -16;
-  HEAP32[DYNAMICTOP_PTR>>2] = end;
-  if (end >= TOTAL_MEMORY) {
-    var success = enlargeMemory();
-    if (!success) {
-      HEAP32[DYNAMICTOP_PTR>>2] = ret;
-      return 0;
-    }
-  }
-  return ret;
-}
-
-function alignMemory(size, factor) {
-  if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default
-  var ret = size = Math.ceil(size / factor) * factor;
-  return ret;
-}
-
-function getNativeTypeSize(type) {
-  switch (type) {
-    case 'i1': case 'i8': return 1;
-    case 'i16': return 2;
-    case 'i32': return 4;
-    case 'i64': return 8;
-    case 'float': return 4;
-    case 'double': return 8;
-    default: {
-      if (type[type.length-1] === '*') {
-        return 4; // A pointer
-      } else if (type[0] === 'i') {
-        var bits = parseInt(type.substr(1));
-        assert(bits % 8 === 0);
-        return bits / 8;
-      } else {
-        return 0;
-      }
-    }
-  }
-}
-
-function warnOnce(text) {
-  if (!warnOnce.shown) warnOnce.shown = {};
-  if (!warnOnce.shown[text]) {
-    warnOnce.shown[text] = 1;
-    err(text);
-  }
-}
-
-var asm2wasmImports = { // special asm2wasm imports
-    "f64-rem": function(x, y) {
-        return x % y;
-    },
-    "debugger": function() {
-        debugger;
-    }
-};
-
-
-
-var jsCallStartIndex = 1;
-var functionPointers = new Array(0);
-
-// 'sig' parameter is only used on LLVM wasm backend
-function addFunction(func, sig) {
-  if (typeof sig === 'undefined') {
-    err('warning: addFunction(): You should provide a wasm function signature 
string as a second argument. This is not necessary for asm.js and asm2wasm, but 
is required for the LLVM wasm backend, so it is recommended for full 
portability.');
-  }
-  var base = 0;
-  for (var i = base; i < base + 0; i++) {
-    if (!functionPointers[i]) {
-      functionPointers[i] = func;
-      return jsCallStartIndex + i;
-    }
-  }
-  throw 'Finished up all reserved function pointers. Use a higher value for 
RESERVED_FUNCTION_POINTERS.';
-}
-
-function removeFunction(index) {
-  functionPointers[index-jsCallStartIndex] = null;
-}
-
-var funcWrappers = {};
-
-function getFuncWrapper(func, sig) {
-  if (!func) return; // on null pointer, return undefined
-  assert(sig);
-  if (!funcWrappers[sig]) {
-    funcWrappers[sig] = {};
-  }
-  var sigCache = funcWrappers[sig];
-  if (!sigCache[func]) {
-    // optimize away arguments usage in common cases
-    if (sig.length === 1) {
-      sigCache[func] = function dynCall_wrapper() {
-        return dynCall(sig, func);
-      };
-    } else if (sig.length === 2) {
-      sigCache[func] = function dynCall_wrapper(arg) {
-        return dynCall(sig, func, [arg]);
-      };
-    } else {
-      // general case
-      sigCache[func] = function dynCall_wrapper() {
-        return dynCall(sig, func, Array.prototype.slice.call(arguments));
-      };
-    }
-  }
-  return sigCache[func];
-}
-
-
-function makeBigInt(low, high, unsigned) {
-  return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : 
((+((low>>>0)))+((+((high|0)))*4294967296.0));
-}
-
-function dynCall(sig, ptr, args) {
-  if (args && args.length) {
-    assert(args.length == sig.length-1);
-    assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table 
for sig \'' + sig + '\'');
-    return Module['dynCall_' + sig].apply(null, [ptr].concat(args));
-  } else {
-    assert(sig.length == 1);
-    assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table 
for sig \'' + sig + '\'');
-    return Module['dynCall_' + sig].call(null, ptr);
-  }
-}
-
-
-function getCompilerSetting(name) {
-  throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for 
getCompilerSetting or emscripten_get_compiler_setting to work';
-}
-
-var Runtime = {
-  // FIXME backwards compatibility layer for ports. Support some Runtime.*
-  //       for now, fix it there, then remove it from here. That way we
-  //       can minimize any period of breakage.
-  dynCall: dynCall, // for SDL2 port
-  // helpful errors
-  getTempRet0: function() { abort('getTempRet0() is now a top-level function, 
after removing the Runtime object. Remove "Runtime."') },
-  staticAlloc: function() { abort('staticAlloc() is now a top-level function, 
after removing the Runtime object. Remove "Runtime."') },
-  stackAlloc: function() { abort('stackAlloc() is now a top-level function, 
after removing the Runtime object. Remove "Runtime."') },
-};
-
-// The address globals begin at. Very low in memory, for code size and 
optimization opportunities.
-// Above 0 is static memory, starting with globals.
-// Then the stack.
-// Then 'dynamic' memory for sbrk.
-var GLOBAL_BASE = 8;
-
-
-// === Preamble library stuff ===
-
-// Documentation for the public APIs defined in this file must be updated in:
-//    site/source/docs/api_reference/preamble.js.rst
-// A prebuilt local version of the documentation is available at:
-//    site/build/text/docs/api_reference/preamble.js.txt
-// You can also build docs locally as HTML or other formats in site/
-// An online HTML version (which may be of a different version of Emscripten)
-//    is up at 
http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html
-
-
-
-//========================================
-// Runtime essentials
-//========================================
-
-// whether we are quitting the application. no code should run after this.
-// set in exit() and abort()
-var ABORT = false;
-
-// set by exit() and abort().  Passed to 'onExit' handler.
-// NOTE: This is also used as the process return code code in shell 
environments
-// but only when noExitRuntime is false.
-var EXITSTATUS = 0;
-
-/** @type {function(*, string=)} */
-function assert(condition, text) {
-  if (!condition) {
-    abort('Assertion failed: ' + text);
-  }
-}
-
-var globalScope = this;
-
-// Returns the C function with a specified identifier (for C++, you need to do 
manual name mangling)
-function getCFunc(ident) {
-  var func = Module['_' + ident]; // closure exported function
-  assert(func, 'Cannot call unknown function ' + ident + ', make sure it is 
exported');
-  return func;
-}
-
-var JSfuncs = {
-  // Helpers for cwrap -- it can't refer to Runtime directly because it might
-  // be renamed by closure, instead it calls JSfuncs['stackSave'].body to find
-  // out what the minified function name is.
-  'stackSave': function() {
-    stackSave()
-  },
-  'stackRestore': function() {
-    stackRestore()
-  },
-  // type conversion from js to c
-  'arrayToC' : function(arr) {
-    var ret = stackAlloc(arr.length);
-    writeArrayToMemory(arr, ret);
-    return ret;
-  },
-  'stringToC' : function(str) {
-    var ret = 0;
-    if (str !== null && str !== undefined && str !== 0) { // null string
-      // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0'
-      var len = (str.length << 2) + 1;
-      ret = stackAlloc(len);
-      stringToUTF8(str, ret, len);
-    }
-    return ret;
-  }
-};
-
-// For fast lookup of conversion functions
-var toC = {
-  'string': JSfuncs['stringToC'], 'array': JSfuncs['arrayToC']
-};
-
-
-// C calling interface.
-function ccall(ident, returnType, argTypes, args, opts) {
-  function convertReturnValue(ret) {
-    if (returnType === 'string') return Pointer_stringify(ret);
-    if (returnType === 'boolean') return Boolean(ret);
-    return ret;
-  }
-
-  var func = getCFunc(ident);
-  var cArgs = [];
-  var stack = 0;
-  assert(returnType !== 'array', 'Return type should not be "array".');
-  if (args) {
-    for (var i = 0; i < args.length; i++) {
-      var converter = toC[argTypes[i]];
-      if (converter) {
-        if (stack === 0) stack = stackSave();
-        cArgs[i] = converter(args[i]);
-      } else {
-        cArgs[i] = args[i];
-      }
-    }
-  }
-  var ret = func.apply(null, cArgs);
-  ret = convertReturnValue(ret);
-  if (stack !== 0) stackRestore(stack);
-  return ret;
-}
-
-function cwrap(ident, returnType, argTypes, opts) {
-  return function() {
-    return ccall(ident, returnType, argTypes, arguments, opts);
-  }
-}
-
-/** @type {function(number, number, string, boolean=)} */
-function setValue(ptr, value, type, noSafe) {
-  type = type || 'i8';
-  if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit
-    switch(type) {
-      case 'i1': HEAP8[((ptr)>>0)]=value; break;
-      case 'i8': HEAP8[((ptr)>>0)]=value; break;
-      case 'i16': HEAP16[((ptr)>>1)]=value; break;
-      case 'i32': HEAP32[((ptr)>>2)]=value; break;
-      case 'i64': (tempI64 = 
[value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 
0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 
4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - 
+(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 
0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break;
-      case 'float': HEAPF32[((ptr)>>2)]=value; break;
-      case 'double': HEAPF64[((ptr)>>3)]=value; break;
-      default: abort('invalid type for setValue: ' + type);
-    }
-}
-
-/** @type {function(number, string, boolean=)} */
-function getValue(ptr, type, noSafe) {
-  type = type || 'i8';
-  if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit
-    switch(type) {
-      case 'i1': return HEAP8[((ptr)>>0)];
-      case 'i8': return HEAP8[((ptr)>>0)];
-      case 'i16': return HEAP16[((ptr)>>1)];
-      case 'i32': return HEAP32[((ptr)>>2)];
-      case 'i64': return HEAP32[((ptr)>>2)];
-      case 'float': return HEAPF32[((ptr)>>2)];
-      case 'double': return HEAPF64[((ptr)>>3)];
-      default: abort('invalid type for getValue: ' + type);
-    }
-  return null;
-}
-
-var ALLOC_NORMAL = 0; // Tries to use _malloc()
-var ALLOC_STACK = 1; // Lives for the duration of the current function call
-var ALLOC_STATIC = 2; // Cannot be freed
-var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk
-var ALLOC_NONE = 4; // Do not allocate
-
-// allocate(): This is for internal use. You can use it yourself as well, but 
the interface
-//             is a little tricky (see docs right below). The reason is that 
it is optimized
-//             for multiple syntaxes to save space in generated code. So you 
should
-//             normally not use allocate(), and instead allocate memory using 
_malloc(),
-//             initialize it with setValue(), and so forth.
-// @slab: An array of data, or a number. If a number, then the size of the 
block to allocate,
-//        in *bytes* (note that this is sometimes confusing: the next 
parameter does not
-//        affect this!)
-// @types: Either an array of types, one for each byte (or 0 if no type at 
that position),
-//         or a single type which is used for the entire block. This only 
matters if there
-//         is initial data - if @slab is a number, then this does not matter 
at all and is
-//         ignored.
-// @allocator: How to allocate memory, see ALLOC_*
-/** @type {function((TypedArray|Array<number>|number), string, number, 
number=)} */
-function allocate(slab, types, allocator, ptr) {
-  var zeroinit, size;
-  if (typeof slab === 'number') {
-    zeroinit = true;
-    size = slab;
-  } else {
-    zeroinit = false;
-    size = slab.length;
-  }
-
-  var singleType = typeof types === 'string' ? types : null;
-
-  var ret;
-  if (allocator == ALLOC_NONE) {
-    ret = ptr;
-  } else {
-    ret = [typeof _malloc === 'function' ? _malloc : staticAlloc, stackAlloc, 
staticAlloc, dynamicAlloc][allocator === undefined ? ALLOC_STATIC : 
allocator](Math.max(size, singleType ? 1 : types.length));
-  }
-
-  if (zeroinit) {
-    var stop;
-    ptr = ret;
-    assert((ret & 3) == 0);
-    stop = ret + (size & ~3);
-    for (; ptr < stop; ptr += 4) {
-      HEAP32[((ptr)>>2)]=0;
-    }
-    stop = ret + size;
-    while (ptr < stop) {
-      HEAP8[((ptr++)>>0)]=0;
-    }
-    return ret;
-  }
-
-  if (singleType === 'i8') {
-    if (slab.subarray || slab.slice) {
-      HEAPU8.set(/** @type {!Uint8Array} */ (slab), ret);
-    } else {
-      HEAPU8.set(new Uint8Array(slab), ret);
-    }
-    return ret;
-  }
-
-  var i = 0, type, typeSize, previousType;
-  while (i < size) {
-    var curr = slab[i];
-
-    type = singleType || types[i];
-    if (type === 0) {
-      i++;
-      continue;
-    }
-    assert(type, 'Must know what type to store in allocate!');
-
-    if (type == 'i64') type = 'i32'; // special case: we have one i32 here, 
and one i32 later
-
-    setValue(ret+i, curr, type);
-
-    // no need to look up size unless type changes, so cache it
-    if (previousType !== type) {
-      typeSize = getNativeTypeSize(type);
-      previousType = type;
-    }
-    i += typeSize;
-  }
-
-  return ret;
-}
-
-// Allocate memory during any stage of startup - static memory early on, 
dynamic memory later, malloc when ready
-function getMemory(size) {
-  if (!staticSealed) return staticAlloc(size);
-  if (!runtimeInitialized) return dynamicAlloc(size);
-  return _malloc(size);
-}
-
-/** @type {function(number, number=)} */
-function Pointer_stringify(ptr, length) {
-  if (length === 0 || !ptr) return '';
-  // Find the length, and check for UTF while doing so
-  var hasUtf = 0;
-  var t;
-  var i = 0;
-  while (1) {
-    assert(ptr + i < TOTAL_MEMORY);
-    t = HEAPU8[(((ptr)+(i))>>0)];
-    hasUtf |= t;
-    if (t == 0 && !length) break;
-    i++;
-    if (length && i == length) break;
-  }
-  if (!length) length = i;
-
-  var ret = '';
-
-  if (hasUtf < 128) {
-    var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge 
string can overflow the stack
-    var curr;
-    while (length > 0) {
-      curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + 
Math.min(length, MAX_CHUNK)));
-      ret = ret ? ret + curr : curr;
-      ptr += MAX_CHUNK;
-      length -= MAX_CHUNK;
-    }
-    return ret;
-  }
-  return UTF8ToString(ptr);
-}
-
-// Given a pointer 'ptr' to a null-terminated ASCII-encoded string in the 
emscripten HEAP, returns
-// a copy of that string as a Javascript String object.
-
-function AsciiToString(ptr) {
-  var str = '';
-  while (1) {
-    var ch = HEAP8[((ptr++)>>0)];
-    if (!ch) return str;
-    str += String.fromCharCode(ch);
-  }
-}
-
-// Copies the given Javascript String object 'str' to the emscripten HEAP at 
address 'outPtr',
-// null-terminated and encoded in ASCII form. The copy will require at most 
str.length+1 bytes of space in the HEAP.
-
-function stringToAscii(str, outPtr) {
-  return writeAsciiToMemory(str, outPtr, false);
-}
-
-// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the given 
array that contains uint8 values, returns
-// a copy of that string as a Javascript String object.
-
-var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') 
: undefined;
-function UTF8ArrayToString(u8Array, idx) {
-  var endPtr = idx;
-  // TextDecoder needs to know the byte length in advance, it doesn't stop on 
null terminator by itself.
-  // Also, use the length info to avoid running tiny strings through 
TextDecoder, since .subarray() allocates garbage.
-  while (u8Array[endPtr]) ++endPtr;
-
-  if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) {
-    return UTF8Decoder.decode(u8Array.subarray(idx, endPtr));
-  } else {
-    var u0, u1, u2, u3, u4, u5;
-
-    var str = '';
-    while (1) {
-      // For UTF8 byte structure, see:
-      // http://en.wikipedia.org/wiki/UTF-8#Description
-      // https://www.ietf.org/rfc/rfc2279.txt
-      // https://tools.ietf.org/html/rfc3629
-      u0 = u8Array[idx++];
-      if (!u0) return str;
-      if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; }
-      u1 = u8Array[idx++] & 63;
-      if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | 
u1); continue; }
-      u2 = u8Array[idx++] & 63;
-      if ((u0 & 0xF0) == 0xE0) {
-        u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;
-      } else {
-        u3 = u8Array[idx++] & 63;
-        if ((u0 & 0xF8) == 0xF0) {
-          u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | u3;
-        } else {
-          u4 = u8Array[idx++] & 63;
-          if ((u0 & 0xFC) == 0xF8) {
-            u0 = ((u0 & 3) << 24) | (u1 << 18) | (u2 << 12) | (u3 << 6) | u4;
-          } else {
-            u5 = u8Array[idx++] & 63;
-            u0 = ((u0 & 1) << 30) | (u1 << 24) | (u2 << 18) | (u3 << 12) | (u4 
<< 6) | u5;
-          }
-        }
-      }
-      if (u0 < 0x10000) {
-        str += String.fromCharCode(u0);
-      } else {
-        var ch = u0 - 0x10000;
-        str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF));
-      }
-    }
-  }
-}
-
-// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the 
emscripten HEAP, returns
-// a copy of that string as a Javascript String object.
-
-function UTF8ToString(ptr) {
-  return UTF8ArrayToString(HEAPU8,ptr);
-}
-
-// Copies the given Javascript String object 'str' to the given byte array at 
address 'outIdx',
-// encoded in UTF8 form and null-terminated. The copy will require at most 
str.length*4+1 bytes of space in the HEAP.
-// Use the function lengthBytesUTF8 to compute the exact number of bytes 
(excluding null terminator) that this function will write.
-// Parameters:
-//   str: the Javascript string to copy.
-//   outU8Array: the array to copy to. Each index in this array is assumed to 
be one 8-byte element.
-//   outIdx: The starting offset in the array to begin the copying.
-//   maxBytesToWrite: The maximum number of bytes this function can write to 
the array.
-//                    This count should include the null terminator,
-//                    i.e. if maxBytesToWrite=1, only the null terminator will 
be written and nothing else.
-//                    maxBytesToWrite=0 does not write any bytes to the 
output, not even the null terminator.
-// Returns the number of bytes written, EXCLUDING the null terminator.
-
-function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) {
-  if (!(maxBytesToWrite > 0)) // Parameter maxBytesToWrite is not optional. 
Negative values, 0, null, undefined and false each don't write out any bytes.
-    return 0;
-
-  var startIdx = outIdx;
-  var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator.
-  for (var i = 0; i < str.length; ++i) {
-    // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code 
unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8.
-    // See http://unicode.org/faq/utf_bom.html#utf16-3
-    // For UTF8 byte structure, see 
http://en.wikipedia.org/wiki/UTF-8#Description and 
https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629
-    var u = str.charCodeAt(i); // possibly a lead surrogate
-    if (u >= 0xD800 && u <= 0xDFFF) {
-      var u1 = str.charCodeAt(++i);
-      u = 0x10000 + ((u & 0x3FF) << 10) | (u1 & 0x3FF);
-    }
-    if (u <= 0x7F) {
-      if (outIdx >= endIdx) break;
-      outU8Array[outIdx++] = u;
-    } else if (u <= 0x7FF) {
-      if (outIdx + 1 >= endIdx) break;
-      outU8Array[outIdx++] = 0xC0 | (u >> 6);
-      outU8Array[outIdx++] = 0x80 | (u & 63);
-    } else if (u <= 0xFFFF) {
-      if (outIdx + 2 >= endIdx) break;
-      outU8Array[outIdx++] = 0xE0 | (u >> 12);
-      outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63);
-      outU8Array[outIdx++] = 0x80 | (u & 63);
-    } else if (u <= 0x1FFFFF) {
-      if (outIdx + 3 >= endIdx) break;
-      outU8Array[outIdx++] = 0xF0 | (u >> 18);
-      outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63);
-      outU8Array[outIdx++] = 0x80 | (u & 63);
-    } else if (u <= 0x3FFFFFF) {
-      if (outIdx + 4 >= endIdx) break;
-      outU8Array[outIdx++] = 0xF8 | (u >> 24);
-      outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63);
-      outU8Array[outIdx++] = 0x80 | (u & 63);
-    } else {
-      if (outIdx + 5 >= endIdx) break;
-      outU8Array[outIdx++] = 0xFC | (u >> 30);
-      outU8Array[outIdx++] = 0x80 | ((u >> 24) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63);
-      outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63);
-      outU8Array[outIdx++] = 0x80 | (u & 63);
-    }
-  }
-  // Null-terminate the pointer to the buffer.
-  outU8Array[outIdx] = 0;
-  return outIdx - startIdx;
-}
-
-// Copies the given Javascript String object 'str' to the emscripten HEAP at 
address 'outPtr',
-// null-terminated and encoded in UTF8 form. The copy will require at most 
str.length*4+1 bytes of space in the HEAP.
-// Use the function lengthBytesUTF8 to compute the exact number of bytes 
(excluding null terminator) that this function will write.
-// Returns the number of bytes written, EXCLUDING the null terminator.
-
-function stringToUTF8(str, outPtr, maxBytesToWrite) {
-  assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, 
maxBytesToWrite) is missing the third parameter that specifies the length of 
the output buffer!');
-  return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite);
-}
-
-// Returns the number of bytes the given Javascript string takes if encoded as 
a UTF8 byte array, EXCLUDING the null terminator byte.
-
-function lengthBytesUTF8(str) {
-  var len = 0;
-  for (var i = 0; i < str.length; ++i) {
-    // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code 
unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8.
-    // See http://unicode.org/faq/utf_bom.html#utf16-3
-    var u = str.charCodeAt(i); // possibly a lead surrogate
-    if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | 
(str.charCodeAt(++i) & 0x3FF);
-    if (u <= 0x7F) {
-      ++len;
-    } else if (u <= 0x7FF) {
-      len += 2;
-    } else if (u <= 0xFFFF) {
-      len += 3;
-    } else if (u <= 0x1FFFFF) {
-      len += 4;
-    } else if (u <= 0x3FFFFFF) {
-      len += 5;
-    } else {
-      len += 6;
-    }
-  }
-  return len;
-}
-
-// Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the 
emscripten HEAP, returns
-// a copy of that string as a Javascript String object.
-
-var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new 
TextDecoder('utf-16le') : undefined;
-function UTF16ToString(ptr) {
-  assert(ptr % 2 == 0, 'Pointer passed to UTF16ToString must be aligned to two 
bytes!');
-  var endPtr = ptr;
-  // TextDecoder needs to know the byte length in advance, it doesn't stop on 
null terminator by itself.
-  // Also, use the length info to avoid running tiny strings through 
TextDecoder, since .subarray() allocates garbage.
-  var idx = endPtr >> 1;
-  while (HEAP16[idx]) ++idx;
-  endPtr = idx << 1;
-
-  if (endPtr - ptr > 32 && UTF16Decoder) {
-    return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr));
-  } else {
-    var i = 0;
-
-    var str = '';
-    while (1) {
-      var codeUnit = HEAP16[(((ptr)+(i*2))>>1)];
-      if (codeUnit == 0) return str;
-      ++i;
-      // fromCharCode constructs a character from a UTF-16 code unit, so we 
can pass the UTF16 string right through.
-      str += String.fromCharCode(codeUnit);
-    }
-  }
-}
-
-// Copies the given Javascript String object 'str' to the emscripten HEAP at 
address 'outPtr',
-// null-terminated and encoded in UTF16 form. The copy will require at most 
str.length*4+2 bytes of space in the HEAP.
-// Use the function lengthBytesUTF16() to compute the exact number of bytes 
(excluding null terminator) that this function will write.
-// Parameters:
-//   str: the Javascript string to copy.
-//   outPtr: Byte address in Emscripten HEAP where to write the string to.
-//   maxBytesToWrite: The maximum number of bytes this function can write to 
the array. This count should include the null
-//                    terminator, i.e. if maxBytesToWrite=2, only the null 
terminator will be written and nothing else.
-//                    maxBytesToWrite<2 does not write any bytes to the 
output, not even the null terminator.
-// Returns the number of bytes written, EXCLUDING the null terminator.
-
-function stringToUTF16(str, outPtr, maxBytesToWrite) {
-  assert(outPtr % 2 == 0, 'Pointer passed to stringToUTF16 must be aligned to 
two bytes!');
-  assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, 
maxBytesToWrite) is missing the third parameter that specifies the length of 
the output buffer!');
-  // Backwards compatibility: if max bytes is not specified, assume unsafe 
unbounded write is allowed.
-  if (maxBytesToWrite === undefined) {
-    maxBytesToWrite = 0x7FFFFFFF;
-  }
-  if (maxBytesToWrite < 2) return 0;
-  maxBytesToWrite -= 2; // Null terminator.
-  var startPtr = outPtr;
-  var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 
2) : str.length;
-  for (var i = 0; i < numCharsToWrite; ++i) {
-    // charCodeAt returns a UTF-16 encoded code unit, so it can be directly 
written to the HEAP.
-    var codeUnit = str.charCodeAt(i); // possibly a lead surrogate
-    HEAP16[((outPtr)>>1)]=codeUnit;
-    outPtr += 2;
-  }
-  // Null-terminate the pointer to the HEAP.
-  HEAP16[((outPtr)>>1)]=0;
-  return outPtr - startPtr;
-}
-
-// Returns the number of bytes the given Javascript string takes if encoded as 
a UTF16 byte array, EXCLUDING the null terminator byte.
-
-function lengthBytesUTF16(str) {
-  return str.length*2;
-}
-
-function UTF32ToString(ptr) {
-  assert(ptr % 4 == 0, 'Pointer passed to UTF32ToString must be aligned to 
four bytes!');
-  var i = 0;
-
-  var str = '';
-  while (1) {
-    var utf32 = HEAP32[(((ptr)+(i*4))>>2)];
-    if (utf32 == 0)
-      return str;
-    ++i;
-    // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code 
(pair), not from a Unicode code point! So encode the code point to UTF-16 for 
constructing.
-    // See http://unicode.org/faq/utf_bom.html#utf16-3
-    if (utf32 >= 0x10000) {
-      var ch = utf32 - 0x10000;
-      str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF));
-    } else {
-      str += String.fromCharCode(utf32);
-    }
-  }
-}
-
-// Copies the given Javascript String object 'str' to the emscripten HEAP at 
address 'outPtr',
-// null-terminated and encoded in UTF32 form. The copy will require at most 
str.length*4+4 bytes of space in the HEAP.
-// Use the function lengthBytesUTF32() to compute the exact number of bytes 
(excluding null terminator) that this function will write.
-// Parameters:
-//   str: the Javascript string to copy.
-//   outPtr: Byte address in Emscripten HEAP where to write the string to.
-//   maxBytesToWrite: The maximum number of bytes this function can write to 
the array. This count should include the null
-//                    terminator, i.e. if maxBytesToWrite=4, only the null 
terminator will be written and nothing else.
-//                    maxBytesToWrite<4 does not write any bytes to the 
output, not even the null terminator.
-// Returns the number of bytes written, EXCLUDING the null terminator.
-
-function stringToUTF32(str, outPtr, maxBytesToWrite) {
-  assert(outPtr % 4 == 0, 'Pointer passed to stringToUTF32 must be aligned to 
four bytes!');
-  assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, 
maxBytesToWrite) is missing the third parameter that specifies the length of 
the output buffer!');
-  // Backwards compatibility: if max bytes is not specified, assume unsafe 
unbounded write is allowed.
-  if (maxBytesToWrite === undefined) {
-    maxBytesToWrite = 0x7FFFFFFF;
-  }
-  if (maxBytesToWrite < 4) return 0;
-  var startPtr = outPtr;
-  var endPtr = startPtr + maxBytesToWrite - 4;
-  for (var i = 0; i < str.length; ++i) {
-    // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code 
unit, not a Unicode code point of the character! We must decode the string to 
UTF-32 to the heap.
-    // See http://unicode.org/faq/utf_bom.html#utf16-3
-    var codeUnit = str.charCodeAt(i); // possibly a lead surrogate
-    if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) {
-      var trailSurrogate = str.charCodeAt(++i);
-      codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 
0x3FF);
-    }
-    HEAP32[((outPtr)>>2)]=codeUnit;
-    outPtr += 4;
-    if (outPtr + 4 > endPtr) break;
-  }
-  // Null-terminate the pointer to the HEAP.
-  HEAP32[((outPtr)>>2)]=0;
-  return outPtr - startPtr;
-}
-
-// Returns the number of bytes the given Javascript string takes if encoded as 
a UTF16 byte array, EXCLUDING the null terminator byte.
-
-function lengthBytesUTF32(str) {
-  var len = 0;
-  for (var i = 0; i < str.length; ++i) {
-    // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code 
unit, not a Unicode code point of the character! We must decode the string to 
UTF-32 to the heap.
-    // See http://unicode.org/faq/utf_bom.html#utf16-3
-    var codeUnit = str.charCodeAt(i);
-    if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead 
surrogate, so skip over the tail surrogate.
-    len += 4;
-  }
-
-  return len;
-}
-
-// Allocate heap space for a JS string, and write it there.
-// It is the responsibility of the caller to free() that memory.
-function allocateUTF8(str) {
-  var size = lengthBytesUTF8(str) + 1;
-  var ret = _malloc(size);
-  if (ret) stringToUTF8Array(str, HEAP8, ret, size);
-  return ret;
-}
-
-// Allocate stack space for a JS string, and write it there.
-function allocateUTF8OnStack(str) {
-  var size = lengthBytesUTF8(str) + 1;
-  var ret = stackAlloc(size);
-  stringToUTF8Array(str, HEAP8, ret, size);
-  return ret;
-}
-
-function demangle(func) {
-  warnOnce('warning: build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi 
demangling');
-  return func;
-}
-
-function demangleAll(text) {
-  var regex =
-    /__Z[\w\d_]+/g;
-  return text.replace(regex,
-    function(x) {
-      var y = demangle(x);
-      return x === y ? x : (x + ' [' + y + ']');
-    });
-}
-
-function jsStackTrace() {
-  var err = new Error();
-  if (!err.stack) {
-    // IE10+ special cases: It does have callstack info, but it is only 
populated if an Error object is thrown,
-    // so try that as a special-case.
-    try {
-      throw new Error(0);
-    } catch(e) {
-      err = e;
-    }
-    if (!err.stack) {
-      return '(no stack trace available)';
-    }
-  }
-  return err.stack.toString();
-}
-
-function stackTrace() {
-  var js = jsStackTrace();
-  if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace']();
-  return demangleAll(js);
-}
-
-// Memory management
-
-var PAGE_SIZE = 16384;
-var WASM_PAGE_SIZE = 65536;
-var ASMJS_PAGE_SIZE = 16777216;
-var MIN_TOTAL_MEMORY = 16777216;
-
-function alignUp(x, multiple) {
-  if (x % multiple > 0) {
-    x += multiple - (x % multiple);
-  }
-  return x;
-}
-
-var HEAP,
-/** @type {ArrayBuffer} */
-  buffer,
-/** @type {Int8Array} */
-  HEAP8,
-/** @type {Uint8Array} */
-  HEAPU8,
-/** @type {Int16Array} */
-  HEAP16,
-/** @type {Uint16Array} */
-  HEAPU16,
-/** @type {Int32Array} */
-  HEAP32,
-/** @type {Uint32Array} */
-  HEAPU32,
-/** @type {Float32Array} */
-  HEAPF32,
-/** @type {Float64Array} */
-  HEAPF64;
-
-function updateGlobalBuffer(buf) {
-  Module['buffer'] = buffer = buf;
-}
-
-function updateGlobalBufferViews() {
-  Module['HEAP8'] = HEAP8 = new Int8Array(buffer);
-  Module['HEAP16'] = HEAP16 = new Int16Array(buffer);
-  Module['HEAP32'] = HEAP32 = new Int32Array(buffer);
-  Module['HEAPU8'] = HEAPU8 = new Uint8Array(buffer);
-  Module['HEAPU16'] = HEAPU16 = new Uint16Array(buffer);
-  Module['HEAPU32'] = HEAPU32 = new Uint32Array(buffer);
-  Module['HEAPF32'] = HEAPF32 = new Float32Array(buffer);
-  Module['HEAPF64'] = HEAPF64 = new Float64Array(buffer);
-}
-
-var STATIC_BASE, STATICTOP, staticSealed; // static area
-var STACK_BASE, STACKTOP, STACK_MAX; // stack area
-var DYNAMIC_BASE, DYNAMICTOP_PTR; // dynamic area handled by sbrk
-
-  STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = 
DYNAMICTOP_PTR = 0;
-  staticSealed = false;
-
-
-// Initializes the stack cookie. Called at the startup of main and at the 
startup of each thread in pthreads mode.
-function writeStackCookie() {
-  assert((STACK_MAX & 3) == 0);
-  HEAPU32[(STACK_MAX >> 2)-1] = 0x02135467;
-  HEAPU32[(STACK_MAX >> 2)-2] = 0x89BACDFE;
-}
-
-function checkStackCookie() {
-  if (HEAPU32[(STACK_MAX >> 2)-1] != 0x02135467 || HEAPU32[(STACK_MAX >> 2)-2] 
!= 0x89BACDFE) {
-    abort('Stack overflow! Stack cookie has been overwritten, expected hex 
dwords 0x89BACDFE and 0x02135467, but received 0x' + HEAPU32[(STACK_MAX >> 
2)-2].toString(16) + ' ' + HEAPU32[(STACK_MAX >> 2)-1].toString(16));
-  }
-  // Also test the global address 0 for integrity. This check is not 
compatible with SAFE_SPLIT_MEMORY though, since that mode already tests all 
address 0 accesses on its own.
-  if (HEAP32[0] !== 0x63736d65 /* 'emsc' */) throw 'Runtime error: The 
application has corrupted its heap memory area (address zero)!';
-}
-
-function abortStackOverflow(allocSize) {
-  abort('Stack overflow! Attempted to allocate ' + allocSize + ' bytes on the 
stack, but stack has only ' + (STACK_MAX - stackSave() + allocSize) + ' bytes 
available!');
-}
-
-
-function abortOnCannotGrowMemory() {
-  abort('Cannot enlarge memory arrays. Either (1) compile with  -s 
TOTAL_MEMORY=X  with X higher than the current value ' + TOTAL_MEMORY + ', (2) 
compile with  -s ALLOW_MEMORY_GROWTH=1  which allows increasing the size at 
runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a 
higher value before the program runs, or (4) if you want malloc to return NULL 
(0) instead of this abort, compile with  -s ABORTING_MALLOC=0 ');
-}
-
-
-function enlargeMemory() {
-  abortOnCannotGrowMemory();
-}
-
-
-var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880;
-var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216;
-if (TOTAL_MEMORY < TOTAL_STACK) err('TOTAL_MEMORY should be larger than 
TOTAL_STACK, was ' + TOTAL_MEMORY + '! (TOTAL_STACK=' + TOTAL_STACK + ')');
-
-// Initialize the runtime's memory
-// check for full engine support (use string 'subarray' to avoid closure 
compiler confusion)
-assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 
'undefined' && Int32Array.prototype.subarray !== undefined && 
Int32Array.prototype.set !== undefined,
-       'JS engine does not provide full typed array support');
-
-
-
-// Use a provided buffer, if there is one, or else allocate a new one
-if (Module['buffer']) {
-  buffer = Module['buffer'];
-  assert(buffer.byteLength === TOTAL_MEMORY, 'provided buffer should be ' + 
TOTAL_MEMORY + ' bytes, but it is ' + buffer.byteLength);
-} else {
-  // Use a WebAssembly memory where available
-  {
-    buffer = new ArrayBuffer(TOTAL_MEMORY);
-  }
-  assert(buffer.byteLength === TOTAL_MEMORY);
-  Module['buffer'] = buffer;
-}
-updateGlobalBufferViews();
-
-
-function getTotalMemory() {
-  return TOTAL_MEMORY;
-}
-
-// Endianness check (note: assumes compiler arch was little-endian)
-  HEAP32[0] = 0x63736d65; /* 'emsc' */
-HEAP16[1] = 0x6373;
-if (HEAPU8[2] !== 0x73 || HEAPU8[3] !== 0x63) throw 'Runtime error: expected 
the system to be little-endian!';
-
-function callRuntimeCallbacks(callbacks) {
-  while(callbacks.length > 0) {
-    var callback = callbacks.shift();
-    if (typeof callback == 'function') {
-      callback();
-      continue;
-    }
-    var func = callback.func;
-    if (typeof func === 'number') {
-      if (callback.arg === undefined) {
-        Module['dynCall_v'](func);
-      } else {
-        Module['dynCall_vi'](func, callback.arg);
-      }
-    } else {
-      func(callback.arg === undefined ? null : callback.arg);
-    }
-  }
-}
-
-var __ATPRERUN__  = []; // functions called before the runtime is initialized
-var __ATINIT__    = []; // functions called during startup
-var __ATMAIN__    = []; // functions called when main() is to be run
-var __ATEXIT__    = []; // functions called during shutdown
-var __ATPOSTRUN__ = []; // functions called after the main() is called
-
-var runtimeInitialized = false;
-var runtimeExited = false;
-
-
-function preRun() {
-  // compatibility - merge in anything from Module['preRun'] at this time
-  if (Module['preRun']) {
-    if (typeof Module['preRun'] == 'function') Module['preRun'] = 
[Module['preRun']];
-    while (Module['preRun'].length) {
-      addOnPreRun(Module['preRun'].shift());
-    }
-  }
-  callRuntimeCallbacks(__ATPRERUN__);
-}
-
-function ensureInitRuntime() {
-  checkStackCookie();
-  if (runtimeInitialized) return;
-  runtimeInitialized = true;
-  callRuntimeCallbacks(__ATINIT__);
-}
-
-function preMain() {
-  checkStackCookie();
-  callRuntimeCallbacks(__ATMAIN__);
-}
-
-function exitRuntime() {
-  checkStackCookie();
-  callRuntimeCallbacks(__ATEXIT__);
-  runtimeExited = true;
-}
-
-function postRun() {
-  checkStackCookie();
-  // compatibility - merge in anything from Module['postRun'] at this time
-  if (Module['postRun']) {
-    if (typeof Module['postRun'] == 'function') Module['postRun'] = 
[Module['postRun']];
-    while (Module['postRun'].length) {
-      addOnPostRun(Module['postRun'].shift());
-    }
-  }
-  callRuntimeCallbacks(__ATPOSTRUN__);
-}
-
-function addOnPreRun(cb) {
-  __ATPRERUN__.unshift(cb);
-}
-
-function addOnInit(cb) {
-  __ATINIT__.unshift(cb);
-}
-
-function addOnPreMain(cb) {
-  __ATMAIN__.unshift(cb);
-}
-
-function addOnExit(cb) {
-  __ATEXIT__.unshift(cb);
-}
-
-function addOnPostRun(cb) {
-  __ATPOSTRUN__.unshift(cb);
-}
-
-// Deprecated: This function should not be called because it is unsafe and 
does not provide
-// a maximum length limit of how many bytes it is allowed to write. Prefer 
calling the
-// function stringToUTF8Array() instead, which takes in a maximum length that 
can be used
-// to be secure from out of bounds writes.
-/** @deprecated */
-function writeStringToMemory(string, buffer, dontAddNull) {
-  warnOnce('writeStringToMemory is deprecated and should not be called! Use 
stringToUTF8() instead!');
-
-  var /** @type {number} */ lastChar, /** @type {number} */ end;
-  if (dontAddNull) {
-    // stringToUTF8Array always appends null. If we don't want to do that, 
remember the
-    // character that existed at the location where the null will be placed, 
and restore
-    // that after the write (below).
-    end = buffer + lengthBytesUTF8(string);
-    lastChar = HEAP8[end];
-  }
-  stringToUTF8(string, buffer, Infinity);
-  if (dontAddNull) HEAP8[end] = lastChar; // Restore the value under the null 
character.
-}
-
-function writeArrayToMemory(array, buffer) {
-  assert(array.length >= 0, 'writeArrayToMemory array must have a length 
(should be an array or typed array)')
-  HEAP8.set(array, buffer);
-}
-
-function writeAsciiToMemory(str, buffer, dontAddNull) {
-  for (var i = 0; i < str.length; ++i) {
-    assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff);
-    HEAP8[((buffer++)>>0)]=str.charCodeAt(i);
-  }
-  // Null-terminate the pointer to the HEAP.
-  if (!dontAddNull) HEAP8[((buffer)>>0)]=0;
-}
-
-function unSign(value, bits, ignore) {
-  if (value >= 0) {
-    return value;
-  }
-  return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, 
since if bits == 32, we are right at the limit of the bits JS uses in bitshifts
-                    : Math.pow(2, bits)         + value;
-}
-function reSign(value, bits, ignore) {
-  if (value <= 0) {
-    return value;
-  }
-  var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 
32
-                        : Math.pow(2, bits-1);
-  if (value >= half && (bits <= 32 || value > half)) { // for huge values, we 
can hit the precision limit and always get true here. so don't do that
-                                                       // but, in general 
there is no perfect solution here. With 64-bit ints, we get rounding and errors
-                                                       // TODO: In i64 mode 1, 
resign the two parts separately and safely
-    value = -2*half + value; // Cannot bitshift half, as it may be at the 
limit of the bits JS uses in bitshifts
-  }
-  return value;
-}
-
-assert(Math['imul'] && Math['fround'] && Math['clz32'] && Math['trunc'], 'this 
is a legacy browser, build with LEGACY_VM_SUPPORT');
-
-var Math_abs = Math.abs;
-var Math_cos = Math.cos;
-var Math_sin = Math.sin;
-var Math_tan = Math.tan;
-var Math_acos = Math.acos;
-var Math_asin = Math.asin;
-var Math_atan = Math.atan;
-var Math_atan2 = Math.atan2;
-var Math_exp = Math.exp;
-var Math_log = Math.log;
-var Math_sqrt = Math.sqrt;
-var Math_ceil = Math.ceil;
-var Math_floor = Math.floor;
-var Math_pow = Math.pow;
-var Math_imul = Math.imul;
-var Math_fround = Math.fround;
-var Math_round = Math.round;
-var Math_min = Math.min;
-var Math_max = Math.max;
-var Math_clz32 = Math.clz32;
-var Math_trunc = Math.trunc;
-
-// A counter of dependencies for calling run(). If we need to
-// do asynchronous work before running, increment this and
-// decrement it. Incrementing must happen in a place like
-// Module.preRun (used by emcc to add file preloading).
-// Note that you can add dependencies in preRun, even though
-// it happens right before run - run will be postponed until
-// the dependencies are met.
-var runDependencies = 0;
-var runDependencyWatcher = null;
-var dependenciesFulfilled = null; // overridden to take different actions when 
all run dependencies are fulfilled
-var runDependencyTracking = {};
-
-function getUniqueRunDependency(id) {
-  var orig = id;
-  while (1) {
-    if (!runDependencyTracking[id]) return id;
-    id = orig + Math.random();
-  }
-  return id;
-}
-
-function addRunDependency(id) {
-  runDependencies++;
-  if (Module['monitorRunDependencies']) {
-    Module['monitorRunDependencies'](runDependencies);
-  }
-  if (id) {
-    assert(!runDependencyTracking[id]);
-    runDependencyTracking[id] = 1;
-    if (runDependencyWatcher === null && typeof setInterval !== 'undefined') {
-      // Check for missing dependencies every few seconds
-      runDependencyWatcher = setInterval(function() {
-        if (ABORT) {
-          clearInterval(runDependencyWatcher);
-          runDependencyWatcher = null;
-          return;
-        }
-        var shown = false;
-        for (var dep in runDependencyTracking) {
-          if (!shown) {
-            shown = true;
-            err('still waiting on run dependencies:');
-          }
-          err('dependency: ' + dep);
-        }
-        if (shown) {
-          err('(end of list)');
-        }
-      }, 10000);
-    }
-  } else {
-    err('warning: run dependency added without ID');
-  }
-}
-
-function removeRunDependency(id) {
-  runDependencies--;
-  if (Module['monitorRunDependencies']) {
-    Module['monitorRunDependencies'](runDependencies);
-  }
-  if (id) {
-    assert(runDependencyTracking[id]);
-    delete runDependencyTracking[id];
-  } else {
-    err('warning: run dependency removed without ID');
-  }
-  if (runDependencies == 0) {
-    if (runDependencyWatcher !== null) {
-      clearInterval(runDependencyWatcher);
-      runDependencyWatcher = null;
-    }
-    if (dependenciesFulfilled) {
-      var callback = dependenciesFulfilled;
-      dependenciesFulfilled = null;
-      callback(); // can add another dependenciesFulfilled
-    }
-  }
-}
-
-Module["preloadedImages"] = {}; // maps url to image data
-Module["preloadedAudios"] = {}; // maps url to audio data
-
-
-
-var memoryInitializer = null;
-
-
-
-
-
-
-// Prefix of data URIs emitted by SINGLE_FILE and related options.
-var dataURIPrefix = 'data:application/octet-stream;base64,';
-
-// Indicates whether filename is a base64 data URI.
-function isDataURI(filename) {
-  return String.prototype.startsWith ?
-      filename.startsWith(dataURIPrefix) :
-      filename.indexOf(dataURIPrefix) === 0;
-}
-
-
-
-
-
-// === Body ===
-
-var ASM_CONSTS = [];
-
-
-
-
-
-STATIC_BASE = GLOBAL_BASE;
-
-STATICTOP = STATIC_BASE + 73360;
-/* global initializers */  __ATINIT__.push({ func: function() { 
_GNUNET_util_cl_init() } }, { func: function() { _GNUNET_CRYPTO_random_init() } 
}, { func: function() { _gpg_err_init() } }, { func: function() { 
_TALER_gcrypt_init() } }, { func: function() { 
___emscripten_environ_constructor() } });
-
-
-memoryInitializer = 
"data:application/octet-stream;base64,AAAAAAAAAABhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OS0uL186Kis9AAAAAAAAAAAAAAEAAADrrgAAAgAAAPeuAAAEAAAAA68AAAgAAAAPrwAAEAAAAByvAAAgAAAAJq8AAEAAAAAxrwAAgAAAAD2vAAAAAQAASq8AAAACAABWrwAAAAQAAGOvAAAACAAAba8AAAAQAAB4rwAAAAAAAAAAAAAvcHJvYy9zeXMvY3J5cHRvL2ZpcHNfZW5hYmxlZAAAABviAAAAAQAAAAAAAAIAAAABAAAAuLUAAPu1AAABtgAARbYAAIi2AADLtgAADrcAABO3AADAAAAAAQAAAAAAAAAAAAAAHrcAAFG3AACEtwAAt7cAAOq3AAAduAAAUL
 [...]
-
-
-
-
-
-/* no memory initializer */
-var tempDoublePtr = STATICTOP; STATICTOP += 16;
-
-assert(tempDoublePtr % 8 == 0);
-
-function copyTempFloat(ptr) { // functions, because inlining this code 
increases code size too much
-
-  HEAP8[tempDoublePtr] = HEAP8[ptr];
-
-  HEAP8[tempDoublePtr+1] = HEAP8[ptr+1];
-
-  HEAP8[tempDoublePtr+2] = HEAP8[ptr+2];
-
-  HEAP8[tempDoublePtr+3] = HEAP8[ptr+3];
-
-}
-
-function copyTempDouble(ptr) {
-
-  HEAP8[tempDoublePtr] = HEAP8[ptr];
-
-  HEAP8[tempDoublePtr+1] = HEAP8[ptr+1];
-
-  HEAP8[tempDoublePtr+2] = HEAP8[ptr+2];
-
-  HEAP8[tempDoublePtr+3] = HEAP8[ptr+3];
-
-  HEAP8[tempDoublePtr+4] = HEAP8[ptr+4];
-
-  HEAP8[tempDoublePtr+5] = HEAP8[ptr+5];
-
-  HEAP8[tempDoublePtr+6] = HEAP8[ptr+6];
-
-  HEAP8[tempDoublePtr+7] = HEAP8[ptr+7];
-
-}
-
-// {{PRE_LIBRARY}}
-
-
-  function ___assert_fail(condition, filename, line, func) {
-      abort('Assertion failed: ' + Pointer_stringify(condition) + ', at: ' + 
[filename ? Pointer_stringify(filename) : 'unknown filename', line, func ? 
Pointer_stringify(func) : 'unknown function']);
-    }
-
-  
-  var ENV={};function ___buildEnvironment(environ) {
-      // WARNING: Arbitrary limit!
-      var MAX_ENV_VALUES = 64;
-      var TOTAL_ENV_SIZE = 1024;
-  
-      // Statically allocate memory for the environment.
-      var poolPtr;
-      var envPtr;
-      if (!___buildEnvironment.called) {
-        ___buildEnvironment.called = true;
-        // Set default values. Use string keys for Closure Compiler 
compatibility.
-        ENV['USER'] = ENV['LOGNAME'] = 'web_user';
-        ENV['PATH'] = '/';
-        ENV['PWD'] = '/';
-        ENV['HOME'] = '/home/web_user';
-        ENV['LANG'] = 'C.UTF-8';
-        ENV['_'] = Module['thisProgram'];
-        // Allocate memory.
-        poolPtr = getMemory(TOTAL_ENV_SIZE);
-        envPtr = getMemory(MAX_ENV_VALUES * 4);
-        HEAP32[((envPtr)>>2)]=poolPtr;
-        HEAP32[((environ)>>2)]=envPtr;
-      } else {
-        envPtr = HEAP32[((environ)>>2)];
-        poolPtr = HEAP32[((envPtr)>>2)];
-      }
-  
-      // Collect key=value lines.
-      var strings = [];
-      var totalSize = 0;
-      for (var key in ENV) {
-        if (typeof ENV[key] === 'string') {
-          var line = key + '=' + ENV[key];
-          strings.push(line);
-          totalSize += line.length;
-        }
-      }
-      if (totalSize > TOTAL_ENV_SIZE) {
-        throw new Error('Environment size exceeded TOTAL_ENV_SIZE!');
-      }
-  
-      // Make new.
-      var ptrSize = 4;
-      for (var i = 0; i < strings.length; i++) {
-        var line = strings[i];
-        writeAsciiToMemory(line, poolPtr);
-        HEAP32[(((envPtr)+(i * ptrSize))>>2)]=poolPtr;
-        poolPtr += line.length + 1;
-      }
-      HEAP32[(((envPtr)+(strings.length * ptrSize))>>2)]=0;
-    }
-
-  
-  
-   
-  
-   
-  
-     
-
-  function ___lock() {}
-
-  
-    
-
-  
-  
-  
-  var 
ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:5
 [...]
-  
-  var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or 
directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No 
such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file 
number",10:"No children",11:"No more processes",12:"Not enough 
core",13:"Permission denied",14:"Bad address",15:"Block device 
required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No 
such device",20:"Not a directory",21:"Is a directory",2 [...]
-  
-  function ___setErrNo(value) {
-      if (Module['___errno_location']) 
HEAP32[((Module['___errno_location']())>>2)]=value;
-      else err('failed to set errno from JS');
-      return value;
-    }
-  
-  var PATH={splitPath:function(filename) {
-        var splitPathRe = 
/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
-        return splitPathRe.exec(filename).slice(1);
-      },normalizeArray:function(parts, allowAboveRoot) {
-        // if the path tries to go above the root, `up` ends up > 0
-        var up = 0;
-        for (var i = parts.length - 1; i >= 0; i--) {
-          var last = parts[i];
-          if (last === '.') {
-            parts.splice(i, 1);
-          } else if (last === '..') {
-            parts.splice(i, 1);
-            up++;
-          } else if (up) {
-            parts.splice(i, 1);
-            up--;
-          }
-        }
-        // if the path is allowed to go above the root, restore leading ..s
-        if (allowAboveRoot) {
-          for (; up; up--) {
-            parts.unshift('..');
-          }
-        }
-        return parts;
-      },normalize:function(path) {
-        var isAbsolute = path.charAt(0) === '/',
-            trailingSlash = path.substr(-1) === '/';
-        // Normalize the path
-        path = PATH.normalizeArray(path.split('/').filter(function(p) {
-          return !!p;
-        }), !isAbsolute).join('/');
-        if (!path && !isAbsolute) {
-          path = '.';
-        }
-        if (path && trailingSlash) {
-          path += '/';
-        }
-        return (isAbsolute ? '/' : '') + path;
-      },dirname:function(path) {
-        var result = PATH.splitPath(path),
-            root = result[0],
-            dir = result[1];
-        if (!root && !dir) {
-          // No dirname whatsoever
-          return '.';
-        }
-        if (dir) {
-          // It has a dirname, strip trailing slash
-          dir = dir.substr(0, dir.length - 1);
-        }
-        return root + dir;
-      },basename:function(path) {
-        // EMSCRIPTEN return '/'' for '/', not an empty string
-        if (path === '/') return '/';
-        var lastSlash = path.lastIndexOf('/');
-        if (lastSlash === -1) return path;
-        return path.substr(lastSlash+1);
-      },extname:function(path) {
-        return PATH.splitPath(path)[3];
-      },join:function() {
-        var paths = Array.prototype.slice.call(arguments, 0);
-        return PATH.normalize(paths.join('/'));
-      },join2:function(l, r) {
-        return PATH.normalize(l + '/' + r);
-      },resolve:function() {
-        var resolvedPath = '',
-          resolvedAbsolute = false;
-        for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
-          var path = (i >= 0) ? arguments[i] : FS.cwd();
-          // Skip empty and invalid entries
-          if (typeof path !== 'string') {
-            throw new TypeError('Arguments to path.resolve must be strings');
-          } else if (!path) {
-            return ''; // an invalid portion invalidates the whole thing
-          }
-          resolvedPath = path + '/' + resolvedPath;
-          resolvedAbsolute = path.charAt(0) === '/';
-        }
-        // At this point the path should be resolved to a full absolute path, 
but
-        // handle relative paths to be safe (might happen when process.cwd() 
fails)
-        resolvedPath = 
PATH.normalizeArray(resolvedPath.split('/').filter(function(p) {
-          return !!p;
-        }), !resolvedAbsolute).join('/');
-        return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.';
-      },relative:function(from, to) {
-        from = PATH.resolve(from).substr(1);
-        to = PATH.resolve(to).substr(1);
-        function trim(arr) {
-          var start = 0;
-          for (; start < arr.length; start++) {
-            if (arr[start] !== '') break;
-          }
-          var end = arr.length - 1;
-          for (; end >= 0; end--) {
-            if (arr[end] !== '') break;
-          }
-          if (start > end) return [];
-          return arr.slice(start, end - start + 1);
-        }
-        var fromParts = trim(from.split('/'));
-        var toParts = trim(to.split('/'));
-        var length = Math.min(fromParts.length, toParts.length);
-        var samePartsLength = length;
-        for (var i = 0; i < length; i++) {
-          if (fromParts[i] !== toParts[i]) {
-            samePartsLength = i;
-            break;
-          }
-        }
-        var outputParts = [];
-        for (var i = samePartsLength; i < fromParts.length; i++) {
-          outputParts.push('..');
-        }
-        outputParts = outputParts.concat(toParts.slice(samePartsLength));
-        return outputParts.join('/');
-      }};
-  
-  var TTY={ttys:[],init:function () {
-        // https://github.com/kripken/emscripten/pull/1555
-        // if (ENVIRONMENT_IS_NODE) {
-        //   // currently, FS.init does not distinguish if process.stdin is a 
file or TTY
-        //   // device, it always assumes it's a TTY device. because of this, 
we're forcing
-        //   // process.stdin to UTF8 encoding to at least make stdin reading 
compatible
-        //   // with text files until FS.init can be refactored.
-        //   process['stdin']['setEncoding']('utf8');
-        // }
-      },shutdown:function() {
-        // https://github.com/kripken/emscripten/pull/1555
-        // if (ENVIRONMENT_IS_NODE) {
-        //   // inolen: any idea as to why node -e 'process.stdin.read()' 
wouldn't exit immediately (with process.stdin being a tty)?
-        //   // isaacs: because now it's reading from the stream, you've 
expressed interest in it, so that read() kicks off a _read() which creates a 
ReadReq operation
-        //   // inolen: I thought read() in that case was a synchronous 
operation that just grabbed some amount of buffered data if it exists?
-        //   // isaacs: it is. but it also triggers a _read() call, which 
calls readStart() on the handle
-        //   // isaacs: do process.stdin.pause() and i'd think it'd probably 
close the pending call
-        //   process['stdin']['pause']();
-        // }
-      },register:function(dev, ops) {
-        TTY.ttys[dev] = { input: [], output: [], ops: ops };
-        FS.registerDevice(dev, TTY.stream_ops);
-      },stream_ops:{open:function(stream) {
-          var tty = TTY.ttys[stream.node.rdev];
-          if (!tty) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
-          }
-          stream.tty = tty;
-          stream.seekable = false;
-        },close:function(stream) {
-          // flush any pending line data
-          stream.tty.ops.flush(stream.tty);
-        },flush:function(stream) {
-          stream.tty.ops.flush(stream.tty);
-        },read:function(stream, buffer, offset, length, pos /* ignored */) {
-          if (!stream.tty || !stream.tty.ops.get_char) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
-          }
-          var bytesRead = 0;
-          for (var i = 0; i < length; i++) {
-            var result;
-            try {
-              result = stream.tty.ops.get_char(stream.tty);
-            } catch (e) {
-              throw new FS.ErrnoError(ERRNO_CODES.EIO);
-            }
-            if (result === undefined && bytesRead === 0) {
-              throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
-            }
-            if (result === null || result === undefined) break;
-            bytesRead++;
-            buffer[offset+i] = result;
-          }
-          if (bytesRead) {
-            stream.node.timestamp = Date.now();
-          }
-          return bytesRead;
-        },write:function(stream, buffer, offset, length, pos) {
-          if (!stream.tty || !stream.tty.ops.put_char) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
-          }
-          for (var i = 0; i < length; i++) {
-            try {
-              stream.tty.ops.put_char(stream.tty, buffer[offset+i]);
-            } catch (e) {
-              throw new FS.ErrnoError(ERRNO_CODES.EIO);
-            }
-          }
-          if (length) {
-            stream.node.timestamp = Date.now();
-          }
-          return i;
-        }},default_tty_ops:{get_char:function(tty) {
-          if (!tty.input.length) {
-            var result = null;
-            if (ENVIRONMENT_IS_NODE) {
-              // we will read data by chunks of BUFSIZE
-              var BUFSIZE = 256;
-              var buf = new Buffer(BUFSIZE);
-              var bytesRead = 0;
-  
-              var isPosixPlatform = (process.platform != 'win32'); // Node 
doesn't offer a direct check, so test by exclusion
-  
-              var fd = process.stdin.fd;
-              if (isPosixPlatform) {
-                // Linux and Mac cannot use process.stdin.fd (which isn't set 
up as sync)
-                var usingDevice = false;
-                try {
-                  fd = fs.openSync('/dev/stdin', 'r');
-                  usingDevice = true;
-                } catch (e) {}
-              }
-  
-              try {
-                bytesRead = fs.readSync(fd, buf, 0, BUFSIZE, null);
-              } catch(e) {
-                // Cross-platform differences: on Windows, reading EOF throws 
an exception, but on other OSes,
-                // reading EOF returns 0. Uniformize behavior by treating the 
EOF exception to return 0.
-                if (e.toString().indexOf('EOF') != -1) bytesRead = 0;
-                else throw e;
-              }
-  
-              if (usingDevice) { fs.closeSync(fd); }
-              if (bytesRead > 0) {
-                result = buf.slice(0, bytesRead).toString('utf-8');
-              } else {
-                result = null;
-              }
-  
-            } else if (typeof window != 'undefined' &&
-              typeof window.prompt == 'function') {
-              // Browser.
-              result = window.prompt('Input: ');  // returns null on cancel
-              if (result !== null) {
-                result += '\n';
-              }
-            } else if (typeof readline == 'function') {
-              // Command line.
-              result = readline();
-              if (result !== null) {
-                result += '\n';
-              }
-            }
-            if (!result) {
-              return null;
-            }
-            tty.input = intArrayFromString(result, true);
-          }
-          return tty.input.shift();
-        },put_char:function(tty, val) {
-          if (val === null || val === 10) {
-            out(UTF8ArrayToString(tty.output, 0));
-            tty.output = [];
-          } else {
-            if (val != 0) tty.output.push(val); // val == 0 would cut text 
output off in the middle.
-          }
-        },flush:function(tty) {
-          if (tty.output && tty.output.length > 0) {
-            out(UTF8ArrayToString(tty.output, 0));
-            tty.output = [];
-          }
-        }},default_tty1_ops:{put_char:function(tty, val) {
-          if (val === null || val === 10) {
-            err(UTF8ArrayToString(tty.output, 0));
-            tty.output = [];
-          } else {
-            if (val != 0) tty.output.push(val);
-          }
-        },flush:function(tty) {
-          if (tty.output && tty.output.length > 0) {
-            err(UTF8ArrayToString(tty.output, 0));
-            tty.output = [];
-          }
-        }}};
-  
-  var MEMFS={ops_table:null,mount:function(mount) {
-        return MEMFS.createNode(null, '/', 16384 | 511 /* 0777 */, 0);
-      },createNode:function(parent, name, mode, dev) {
-        if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {
-          // no supported
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        if (!MEMFS.ops_table) {
-          MEMFS.ops_table = {
-            dir: {
-              node: {
-                getattr: MEMFS.node_ops.getattr,
-                setattr: MEMFS.node_ops.setattr,
-                lookup: MEMFS.node_ops.lookup,
-                mknod: MEMFS.node_ops.mknod,
-                rename: MEMFS.node_ops.rename,
-                unlink: MEMFS.node_ops.unlink,
-                rmdir: MEMFS.node_ops.rmdir,
-                readdir: MEMFS.node_ops.readdir,
-                symlink: MEMFS.node_ops.symlink
-              },
-              stream: {
-                llseek: MEMFS.stream_ops.llseek
-              }
-            },
-            file: {
-              node: {
-                getattr: MEMFS.node_ops.getattr,
-                setattr: MEMFS.node_ops.setattr
-              },
-              stream: {
-                llseek: MEMFS.stream_ops.llseek,
-                read: MEMFS.stream_ops.read,
-                write: MEMFS.stream_ops.write,
-                allocate: MEMFS.stream_ops.allocate,
-                mmap: MEMFS.stream_ops.mmap,
-                msync: MEMFS.stream_ops.msync
-              }
-            },
-            link: {
-              node: {
-                getattr: MEMFS.node_ops.getattr,
-                setattr: MEMFS.node_ops.setattr,
-                readlink: MEMFS.node_ops.readlink
-              },
-              stream: {}
-            },
-            chrdev: {
-              node: {
-                getattr: MEMFS.node_ops.getattr,
-                setattr: MEMFS.node_ops.setattr
-              },
-              stream: FS.chrdev_stream_ops
-            }
-          };
-        }
-        var node = FS.createNode(parent, name, mode, dev);
-        if (FS.isDir(node.mode)) {
-          node.node_ops = MEMFS.ops_table.dir.node;
-          node.stream_ops = MEMFS.ops_table.dir.stream;
-          node.contents = {};
-        } else if (FS.isFile(node.mode)) {
-          node.node_ops = MEMFS.ops_table.file.node;
-          node.stream_ops = MEMFS.ops_table.file.stream;
-          node.usedBytes = 0; // The actual number of bytes used in the typed 
array, as opposed to contents.length which gives the whole capacity.
-          // When the byte data of the file is populated, this will point to 
either a typed array, or a normal JS array. Typed arrays are preferred
-          // for performance, and used by default. However, typed arrays are 
not resizable like normal JS arrays are, so there is a small disk size
-          // penalty involved for appending file writes that continuously grow 
a file similar to std::vector capacity vs used -scheme.
-          node.contents = null; 
-        } else if (FS.isLink(node.mode)) {
-          node.node_ops = MEMFS.ops_table.link.node;
-          node.stream_ops = MEMFS.ops_table.link.stream;
-        } else if (FS.isChrdev(node.mode)) {
-          node.node_ops = MEMFS.ops_table.chrdev.node;
-          node.stream_ops = MEMFS.ops_table.chrdev.stream;
-        }
-        node.timestamp = Date.now();
-        // add the new node to the parent
-        if (parent) {
-          parent.contents[name] = node;
-        }
-        return node;
-      },getFileDataAsRegularArray:function(node) {
-        if (node.contents && node.contents.subarray) {
-          var arr = [];
-          for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]);
-          return arr; // Returns a copy of the original data.
-        }
-        return node.contents; // No-op, the file contents are already in a JS 
array. Return as-is.
-      },getFileDataAsTypedArray:function(node) {
-        if (!node.contents) return new Uint8Array;
-        if (node.contents.subarray) return node.contents.subarray(0, 
node.usedBytes); // Make sure to not return excess unused bytes.
-        return new Uint8Array(node.contents);
-      },expandFileStorage:function(node, newCapacity) {
-        // If we are asked to expand the size of a file that already exists, 
revert to using a standard JS array to store the file
-        // instead of a typed array. This makes resizing the array more 
flexible because we can just .push() elements at the back to
-        // increase the size.
-        if (node.contents && node.contents.subarray && newCapacity > 
node.contents.length) {
-          node.contents = MEMFS.getFileDataAsRegularArray(node);
-          node.usedBytes = node.contents.length; // We might be writing to a 
lazy-loaded file which had overridden this property, so force-reset it.
-        }
-  
-        if (!node.contents || node.contents.subarray) { // Keep using a typed 
array if creating a new storage, or if old one was a typed array as well.
-          var prevCapacity = node.contents ? node.contents.length : 0;
-          if (prevCapacity >= newCapacity) return; // No need to expand, the 
storage was already large enough.
-          // Don't expand strictly to the given requested limit if it's only a 
very small increase, but instead geometrically grow capacity.
-          // For small filesizes (<1MB), perform size*2 geometric increase, 
but for large sizes, do a much more conservative size*1.125 increase to
-          // avoid overshooting the allocation cap by a very large margin.
-          var CAPACITY_DOUBLING_MAX = 1024 * 1024;
-          newCapacity = Math.max(newCapacity, (prevCapacity * (prevCapacity < 
CAPACITY_DOUBLING_MAX ? 2.0 : 1.125)) | 0);
-          if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); // 
At minimum allocate 256b for each file when expanding.
-          var oldContents = node.contents;
-          node.contents = new Uint8Array(newCapacity); // Allocate new storage.
-          if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, 
node.usedBytes), 0); // Copy old data over to the new storage.
-          return;
-        }
-        // Not using a typed array to back the file storage. Use a standard JS 
array instead.
-        if (!node.contents && newCapacity > 0) node.contents = [];
-        while (node.contents.length < newCapacity) node.contents.push(0);
-      },resizeFileStorage:function(node, newSize) {
-        if (node.usedBytes == newSize) return;
-        if (newSize == 0) {
-          node.contents = null; // Fully decommit when requesting a resize to 
zero.
-          node.usedBytes = 0;
-          return;
-        }
-        if (!node.contents || node.contents.subarray) { // Resize a typed 
array if that is being used as the backing store.
-          var oldContents = node.contents;
-          node.contents = new Uint8Array(new ArrayBuffer(newSize)); // 
Allocate new storage.
-          if (oldContents) {
-            node.contents.set(oldContents.subarray(0, Math.min(newSize, 
node.usedBytes))); // Copy old data over to the new storage.
-          }
-          node.usedBytes = newSize;
-          return;
-        }
-        // Backing with a JS array.
-        if (!node.contents) node.contents = [];
-        if (node.contents.length > newSize) node.contents.length = newSize;
-        else while (node.contents.length < newSize) node.contents.push(0);
-        node.usedBytes = newSize;
-      },node_ops:{getattr:function(node) {
-          var attr = {};
-          // device numbers reuse inode numbers.
-          attr.dev = FS.isChrdev(node.mode) ? node.id : 1;
-          attr.ino = node.id;
-          attr.mode = node.mode;
-          attr.nlink = 1;
-          attr.uid = 0;
-          attr.gid = 0;
-          attr.rdev = node.rdev;
-          if (FS.isDir(node.mode)) {
-            attr.size = 4096;
-          } else if (FS.isFile(node.mode)) {
-            attr.size = node.usedBytes;
-          } else if (FS.isLink(node.mode)) {
-            attr.size = node.link.length;
-          } else {
-            attr.size = 0;
-          }
-          attr.atime = new Date(node.timestamp);
-          attr.mtime = new Date(node.timestamp);
-          attr.ctime = new Date(node.timestamp);
-          // NOTE: In our implementation, st_blocks = 
Math.ceil(st_size/st_blksize),
-          //       but this is not required by the standard.
-          attr.blksize = 4096;
-          attr.blocks = Math.ceil(attr.size / attr.blksize);
-          return attr;
-        },setattr:function(node, attr) {
-          if (attr.mode !== undefined) {
-            node.mode = attr.mode;
-          }
-          if (attr.timestamp !== undefined) {
-            node.timestamp = attr.timestamp;
-          }
-          if (attr.size !== undefined) {
-            MEMFS.resizeFileStorage(node, attr.size);
-          }
-        },lookup:function(parent, name) {
-          throw FS.genericErrors[ERRNO_CODES.ENOENT];
-        },mknod:function(parent, name, mode, dev) {
-          return MEMFS.createNode(parent, name, mode, dev);
-        },rename:function(old_node, new_dir, new_name) {
-          // if we're overwriting a directory at new_name, make sure it's 
empty.
-          if (FS.isDir(old_node.mode)) {
-            var new_node;
-            try {
-              new_node = FS.lookupNode(new_dir, new_name);
-            } catch (e) {
-            }
-            if (new_node) {
-              for (var i in new_node.contents) {
-                throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
-              }
-            }
-          }
-          // do the internal rewiring
-          delete old_node.parent.contents[old_node.name];
-          old_node.name = new_name;
-          new_dir.contents[new_name] = old_node;
-          old_node.parent = new_dir;
-        },unlink:function(parent, name) {
-          delete parent.contents[name];
-        },rmdir:function(parent, name) {
-          var node = FS.lookupNode(parent, name);
-          for (var i in node.contents) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
-          }
-          delete parent.contents[name];
-        },readdir:function(node) {
-          var entries = ['.', '..']
-          for (var key in node.contents) {
-            if (!node.contents.hasOwnProperty(key)) {
-              continue;
-            }
-            entries.push(key);
-          }
-          return entries;
-        },symlink:function(parent, newname, oldpath) {
-          var node = MEMFS.createNode(parent, newname, 511 /* 0777 */ | 40960, 
0);
-          node.link = oldpath;
-          return node;
-        },readlink:function(node) {
-          if (!FS.isLink(node.mode)) {
-            throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-          }
-          return node.link;
-        }},stream_ops:{read:function(stream, buffer, offset, length, position) 
{
-          var contents = stream.node.contents;
-          if (position >= stream.node.usedBytes) return 0;
-          var size = Math.min(stream.node.usedBytes - position, length);
-          assert(size >= 0);
-          if (size > 8 && contents.subarray) { // non-trivial, and typed array
-            buffer.set(contents.subarray(position, position + size), offset);
-          } else {
-            for (var i = 0; i < size; i++) buffer[offset + i] = 
contents[position + i];
-          }
-          return size;
-        },write:function(stream, buffer, offset, length, position, canOwn) {
-          if (!length) return 0;
-          var node = stream.node;
-          node.timestamp = Date.now();
-  
-          if (buffer.subarray && (!node.contents || node.contents.subarray)) { 
// This write is from a typed array to a typed array?
-            if (canOwn) {
-              assert(position === 0, 'canOwn must imply no weird position 
inside the file');
-              node.contents = buffer.subarray(offset, offset + length);
-              node.usedBytes = length;
-              return length;
-            } else if (node.usedBytes === 0 && position === 0) { // If this is 
a simple first write to an empty file, do a fast set since we don't need to 
care about old data.
-              node.contents = new Uint8Array(buffer.subarray(offset, offset + 
length));
-              node.usedBytes = length;
-              return length;
-            } else if (position + length <= node.usedBytes) { // Writing to an 
already allocated and used subrange of the file?
-              node.contents.set(buffer.subarray(offset, offset + length), 
position);
-              return length;
-            }
-          }
-  
-          // Appending to an existing file and we need to reallocate, or 
source data did not come as a typed array.
-          MEMFS.expandFileStorage(node, position+length);
-          if (node.contents.subarray && buffer.subarray) 
node.contents.set(buffer.subarray(offset, offset + length), position); // Use 
typed array write if available.
-          else {
-            for (var i = 0; i < length; i++) {
-             node.contents[position + i] = buffer[offset + i]; // Or fall back 
to manual write if not.
-            }
-          }
-          node.usedBytes = Math.max(node.usedBytes, position+length);
-          return length;
-        },llseek:function(stream, offset, whence) {
-          var position = offset;
-          if (whence === 1) {  // SEEK_CUR.
-            position += stream.position;
-          } else if (whence === 2) {  // SEEK_END.
-            if (FS.isFile(stream.node.mode)) {
-              position += stream.node.usedBytes;
-            }
-          }
-          if (position < 0) {
-            throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-          }
-          return position;
-        },allocate:function(stream, offset, length) {
-          MEMFS.expandFileStorage(stream.node, offset + length);
-          stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + 
length);
-        },mmap:function(stream, buffer, offset, length, position, prot, flags) 
{
-          if (!FS.isFile(stream.node.mode)) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
-          }
-          var ptr;
-          var allocated;
-          var contents = stream.node.contents;
-          // Only make a new copy when MAP_PRIVATE is specified.
-          if ( !(flags & 2) &&
-                (contents.buffer === buffer || contents.buffer === 
buffer.buffer) ) {
-            // We can't emulate MAP_SHARED when the file is not backed by the 
buffer
-            // we're mapping to (e.g. the HEAP buffer).
-            allocated = false;
-            ptr = contents.byteOffset;
-          } else {
-            // Try to avoid unnecessary slices.
-            if (position > 0 || position + length < stream.node.usedBytes) {
-              if (contents.subarray) {
-                contents = contents.subarray(position, position + length);
-              } else {
-                contents = Array.prototype.slice.call(contents, position, 
position + length);
-              }
-            }
-            allocated = true;
-            ptr = _malloc(length);
-            if (!ptr) {
-              throw new FS.ErrnoError(ERRNO_CODES.ENOMEM);
-            }
-            buffer.set(contents, ptr);
-          }
-          return { ptr: ptr, allocated: allocated };
-        },msync:function(stream, buffer, offset, length, mmapFlags) {
-          if (!FS.isFile(stream.node.mode)) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
-          }
-          if (mmapFlags & 2) {
-            // MAP_PRIVATE calls need not to be synced back to underlying fs
-            return 0;
-          }
-  
-          var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, 
offset, false);
-          // should we check if bytesWritten and length are the same?
-          return 0;
-        }}};
-  
-  var IDBFS={dbs:{},indexedDB:function() {
-        if (typeof indexedDB !== 'undefined') return indexedDB;
-        var ret = null;
-        if (typeof window === 'object') ret = window.indexedDB || 
window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
-        assert(ret, 'IDBFS used, but indexedDB not supported');
-        return ret;
-      },DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function(mount) {
-        // reuse all of the core MEMFS functionality
-        return MEMFS.mount.apply(null, arguments);
-      },syncfs:function(mount, populate, callback) {
-        IDBFS.getLocalSet(mount, function(err, local) {
-          if (err) return callback(err);
-  
-          IDBFS.getRemoteSet(mount, function(err, remote) {
-            if (err) return callback(err);
-  
-            var src = populate ? remote : local;
-            var dst = populate ? local : remote;
-  
-            IDBFS.reconcile(src, dst, callback);
-          });
-        });
-      },getDB:function(name, callback) {
-        // check the cache first
-        var db = IDBFS.dbs[name];
-        if (db) {
-          return callback(null, db);
-        }
-  
-        var req;
-        try {
-          req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION);
-        } catch (e) {
-          return callback(e);
-        }
-        if (!req) {
-          return callback("Unable to connect to IndexedDB");
-        }
-        req.onupgradeneeded = function(e) {
-          var db = e.target.result;
-          var transaction = e.target.transaction;
-  
-          var fileStore;
-  
-          if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) {
-            fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME);
-          } else {
-            fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME);
-          }
-  
-          if (!fileStore.indexNames.contains('timestamp')) {
-            fileStore.createIndex('timestamp', 'timestamp', { unique: false });
-          }
-        };
-        req.onsuccess = function() {
-          db = req.result;
-  
-          // add to the cache
-          IDBFS.dbs[name] = db;
-          callback(null, db);
-        };
-        req.onerror = function(e) {
-          callback(this.error);
-          e.preventDefault();
-        };
-      },getLocalSet:function(mount, callback) {
-        var entries = {};
-  
-        function isRealDir(p) {
-          return p !== '.' && p !== '..';
-        };
-        function toAbsolute(root) {
-          return function(p) {
-            return PATH.join2(root, p);
-          }
-        };
-  
-        var check = 
FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));
-  
-        while (check.length) {
-          var path = check.pop();
-          var stat;
-  
-          try {
-            stat = FS.stat(path);
-          } catch (e) {
-            return callback(e);
-          }
-  
-          if (FS.isDir(stat.mode)) {
-            check.push.apply(check, 
FS.readdir(path).filter(isRealDir).map(toAbsolute(path)));
-          }
-  
-          entries[path] = { timestamp: stat.mtime };
-        }
-  
-        return callback(null, { type: 'local', entries: entries });
-      },getRemoteSet:function(mount, callback) {
-        var entries = {};
-  
-        IDBFS.getDB(mount.mountpoint, function(err, db) {
-          if (err) return callback(err);
-  
-          try {
-            var transaction = db.transaction([IDBFS.DB_STORE_NAME], 
'readonly');
-            transaction.onerror = function(e) {
-              callback(this.error);
-              e.preventDefault();
-            };
-  
-            var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
-            var index = store.index('timestamp');
-  
-            index.openKeyCursor().onsuccess = function(event) {
-              var cursor = event.target.result;
-  
-              if (!cursor) {
-                return callback(null, { type: 'remote', db: db, entries: 
entries });
-              }
-  
-              entries[cursor.primaryKey] = { timestamp: cursor.key };
-  
-              cursor.continue();
-            };
-          } catch (e) {
-            return callback(e);
-          }
-        });
-      },loadLocalEntry:function(path, callback) {
-        var stat, node;
-  
-        try {
-          var lookup = FS.lookupPath(path);
-          node = lookup.node;
-          stat = FS.stat(path);
-        } catch (e) {
-          return callback(e);
-        }
-  
-        if (FS.isDir(stat.mode)) {
-          return callback(null, { timestamp: stat.mtime, mode: stat.mode });
-        } else if (FS.isFile(stat.mode)) {
-          // Performance consideration: storing a normal JavaScript array to a 
IndexedDB is much slower than storing a typed array.
-          // Therefore always convert the file contents to a typed array first 
before writing the data to IndexedDB.
-          node.contents = MEMFS.getFileDataAsTypedArray(node);
-          return callback(null, { timestamp: stat.mtime, mode: stat.mode, 
contents: node.contents });
-        } else {
-          return callback(new Error('node type not supported'));
-        }
-      },storeLocalEntry:function(path, entry, callback) {
-        try {
-          if (FS.isDir(entry.mode)) {
-            FS.mkdir(path, entry.mode);
-          } else if (FS.isFile(entry.mode)) {
-            FS.writeFile(path, entry.contents, { canOwn: true });
-          } else {
-            return callback(new Error('node type not supported'));
-          }
-  
-          FS.chmod(path, entry.mode);
-          FS.utime(path, entry.timestamp, entry.timestamp);
-        } catch (e) {
-          return callback(e);
-        }
-  
-        callback(null);
-      },removeLocalEntry:function(path, callback) {
-        try {
-          var lookup = FS.lookupPath(path);
-          var stat = FS.stat(path);
-  
-          if (FS.isDir(stat.mode)) {
-            FS.rmdir(path);
-          } else if (FS.isFile(stat.mode)) {
-            FS.unlink(path);
-          }
-        } catch (e) {
-          return callback(e);
-        }
-  
-        callback(null);
-      },loadRemoteEntry:function(store, path, callback) {
-        var req = store.get(path);
-        req.onsuccess = function(event) { callback(null, event.target.result); 
};
-        req.onerror = function(e) {
-          callback(this.error);
-          e.preventDefault();
-        };
-      },storeRemoteEntry:function(store, path, entry, callback) {
-        var req = store.put(entry, path);
-        req.onsuccess = function() { callback(null); };
-        req.onerror = function(e) {
-          callback(this.error);
-          e.preventDefault();
-        };
-      },removeRemoteEntry:function(store, path, callback) {
-        var req = store.delete(path);
-        req.onsuccess = function() { callback(null); };
-        req.onerror = function(e) {
-          callback(this.error);
-          e.preventDefault();
-        };
-      },reconcile:function(src, dst, callback) {
-        var total = 0;
-  
-        var create = [];
-        Object.keys(src.entries).forEach(function (key) {
-          var e = src.entries[key];
-          var e2 = dst.entries[key];
-          if (!e2 || e.timestamp > e2.timestamp) {
-            create.push(key);
-            total++;
-          }
-        });
-  
-        var remove = [];
-        Object.keys(dst.entries).forEach(function (key) {
-          var e = dst.entries[key];
-          var e2 = src.entries[key];
-          if (!e2) {
-            remove.push(key);
-            total++;
-          }
-        });
-  
-        if (!total) {
-          return callback(null);
-        }
-  
-        var errored = false;
-        var completed = 0;
-        var db = src.type === 'remote' ? src.db : dst.db;
-        var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readwrite');
-        var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
-  
-        function done(err) {
-          if (err) {
-            if (!done.errored) {
-              done.errored = true;
-              return callback(err);
-            }
-            return;
-          }
-          if (++completed >= total) {
-            return callback(null);
-          }
-        };
-  
-        transaction.onerror = function(e) {
-          done(this.error);
-          e.preventDefault();
-        };
-  
-        // sort paths in ascending order so directory entries are created
-        // before the files inside them
-        create.sort().forEach(function (path) {
-          if (dst.type === 'local') {
-            IDBFS.loadRemoteEntry(store, path, function (err, entry) {
-              if (err) return done(err);
-              IDBFS.storeLocalEntry(path, entry, done);
-            });
-          } else {
-            IDBFS.loadLocalEntry(path, function (err, entry) {
-              if (err) return done(err);
-              IDBFS.storeRemoteEntry(store, path, entry, done);
-            });
-          }
-        });
-  
-        // sort paths in descending order so files are deleted before their
-        // parent directories
-        remove.sort().reverse().forEach(function(path) {
-          if (dst.type === 'local') {
-            IDBFS.removeLocalEntry(path, done);
-          } else {
-            IDBFS.removeRemoteEntry(store, path, done);
-          }
-        });
-      }};
-  
-  var NODEFS={isWindows:false,staticInit:function() {
-        NODEFS.isWindows = !!process.platform.match(/^win/);
-        var flags = process["binding"]("constants");
-        // Node.js 4 compatibility: it has no namespaces for constants
-        if (flags["fs"]) {
-          flags = flags["fs"];
-        }
-        NODEFS.flagsForNodeMap = {
-          "1024": flags["O_APPEND"],
-          "64": flags["O_CREAT"],
-          "128": flags["O_EXCL"],
-          "0": flags["O_RDONLY"],
-          "2": flags["O_RDWR"],
-          "4096": flags["O_SYNC"],
-          "512": flags["O_TRUNC"],
-          "1": flags["O_WRONLY"]
-        };
-      },bufferFrom:function (arrayBuffer) {
-        // Node.js < 4.5 compatibility: Buffer.from does not support 
ArrayBuffer
-        // Buffer.from before 4.5 was just a method inherited from Uint8Array
-        // Buffer.alloc has been added with Buffer.from together, so check it 
instead
-        return Buffer.alloc ? Buffer.from(arrayBuffer) : new 
Buffer(arrayBuffer);
-      },mount:function (mount) {
-        assert(ENVIRONMENT_IS_NODE);
-        return NODEFS.createNode(null, '/', NODEFS.getMode(mount.opts.root), 
0);
-      },createNode:function (parent, name, mode, dev) {
-        if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        var node = FS.createNode(parent, name, mode);
-        node.node_ops = NODEFS.node_ops;
-        node.stream_ops = NODEFS.stream_ops;
-        return node;
-      },getMode:function (path) {
-        var stat;
-        try {
-          stat = fs.lstatSync(path);
-          if (NODEFS.isWindows) {
-            // Node.js on Windows never represents permission bit 'x', so
-            // propagate read bits to execute bits
-            stat.mode = stat.mode | ((stat.mode & 292) >> 2);
-          }
-        } catch (e) {
-          if (!e.code) throw e;
-          throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-        }
-        return stat.mode;
-      },realPath:function (node) {
-        var parts = [];
-        while (node.parent !== node) {
-          parts.push(node.name);
-          node = node.parent;
-        }
-        parts.push(node.mount.opts.root);
-        parts.reverse();
-        return PATH.join.apply(null, parts);
-      },flagsForNode:function(flags) {
-        flags &= ~0x200000 /*O_PATH*/; // Ignore this flag from musl, 
otherwise node.js fails to open the file.
-        flags &= ~0x800 /*O_NONBLOCK*/; // Ignore this flag from musl, 
otherwise node.js fails to open the file.
-        flags &= ~0x8000 /*O_LARGEFILE*/; // Ignore this flag from musl, 
otherwise node.js fails to open the file.
-        flags &= ~0x80000 /*O_CLOEXEC*/; // Some applications may pass it; it 
makes no sense for a single process.
-        var newFlags = 0;
-        for (var k in NODEFS.flagsForNodeMap) {
-          if (flags & k) {
-            newFlags |= NODEFS.flagsForNodeMap[k];
-            flags ^= k;
-          }
-        }
-  
-        if (!flags) {
-          return newFlags;
-        } else {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-      },node_ops:{getattr:function(node) {
-          var path = NODEFS.realPath(node);
-          var stat;
-          try {
-            stat = fs.lstatSync(path);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-          // node.js v0.10.20 doesn't report blksize and blocks on Windows. 
Fake them with default blksize of 4096.
-          // See http://support.microsoft.com/kb/140365
-          if (NODEFS.isWindows && !stat.blksize) {
-            stat.blksize = 4096;
-          }
-          if (NODEFS.isWindows && !stat.blocks) {
-            stat.blocks = (stat.size+stat.blksize-1)/stat.blksize|0;
-          }
-          return {
-            dev: stat.dev,
-            ino: stat.ino,
-            mode: stat.mode,
-            nlink: stat.nlink,
-            uid: stat.uid,
-            gid: stat.gid,
-            rdev: stat.rdev,
-            size: stat.size,
-            atime: stat.atime,
-            mtime: stat.mtime,
-            ctime: stat.ctime,
-            blksize: stat.blksize,
-            blocks: stat.blocks
-          };
-        },setattr:function(node, attr) {
-          var path = NODEFS.realPath(node);
-          try {
-            if (attr.mode !== undefined) {
-              fs.chmodSync(path, attr.mode);
-              // update the common node structure mode as well
-              node.mode = attr.mode;
-            }
-            if (attr.timestamp !== undefined) {
-              var date = new Date(attr.timestamp);
-              fs.utimesSync(path, date, date);
-            }
-            if (attr.size !== undefined) {
-              fs.truncateSync(path, attr.size);
-            }
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },lookup:function (parent, name) {
-          var path = PATH.join2(NODEFS.realPath(parent), name);
-          var mode = NODEFS.getMode(path);
-          return NODEFS.createNode(parent, name, mode);
-        },mknod:function (parent, name, mode, dev) {
-          var node = NODEFS.createNode(parent, name, mode, dev);
-          // create the backing node for this in the fs root as well
-          var path = NODEFS.realPath(node);
-          try {
-            if (FS.isDir(node.mode)) {
-              fs.mkdirSync(path, node.mode);
-            } else {
-              fs.writeFileSync(path, '', { mode: node.mode });
-            }
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-          return node;
-        },rename:function (oldNode, newDir, newName) {
-          var oldPath = NODEFS.realPath(oldNode);
-          var newPath = PATH.join2(NODEFS.realPath(newDir), newName);
-          try {
-            fs.renameSync(oldPath, newPath);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },unlink:function(parent, name) {
-          var path = PATH.join2(NODEFS.realPath(parent), name);
-          try {
-            fs.unlinkSync(path);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },rmdir:function(parent, name) {
-          var path = PATH.join2(NODEFS.realPath(parent), name);
-          try {
-            fs.rmdirSync(path);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },readdir:function(node) {
-          var path = NODEFS.realPath(node);
-          try {
-            return fs.readdirSync(path);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },symlink:function(parent, newName, oldPath) {
-          var newPath = PATH.join2(NODEFS.realPath(parent), newName);
-          try {
-            fs.symlinkSync(oldPath, newPath);
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },readlink:function(node) {
-          var path = NODEFS.realPath(node);
-          try {
-            path = fs.readlinkSync(path);
-            path = 
NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path);
-            return path;
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        }},stream_ops:{open:function (stream) {
-          var path = NODEFS.realPath(stream.node);
-          try {
-            if (FS.isFile(stream.node.mode)) {
-              stream.nfd = fs.openSync(path, 
NODEFS.flagsForNode(stream.flags));
-            }
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },close:function (stream) {
-          try {
-            if (FS.isFile(stream.node.mode) && stream.nfd) {
-              fs.closeSync(stream.nfd);
-            }
-          } catch (e) {
-            if (!e.code) throw e;
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },read:function (stream, buffer, offset, length, position) {
-          // Node.js < 6 compatibility: node errors on 0 length reads
-          if (length === 0) return 0;
-          try {
-            return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), 
offset, length, position);
-          } catch (e) {
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },write:function (stream, buffer, offset, length, position) {
-          try {
-            return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), 
offset, length, position);
-          } catch (e) {
-            throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-          }
-        },llseek:function (stream, offset, whence) {
-          var position = offset;
-          if (whence === 1) {  // SEEK_CUR.
-            position += stream.position;
-          } else if (whence === 2) {  // SEEK_END.
-            if (FS.isFile(stream.node.mode)) {
-              try {
-                var stat = fs.fstatSync(stream.nfd);
-                position += stat.size;
-              } catch (e) {
-                throw new FS.ErrnoError(ERRNO_CODES[e.code]);
-              }
-            }
-          }
-  
-          if (position < 0) {
-            throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-          }
-  
-          return position;
-        }}};
-  
-  var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function 
(mount) {
-        assert(ENVIRONMENT_IS_WORKER);
-        if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync();
-        var root = WORKERFS.createNode(null, '/', WORKERFS.DIR_MODE, 0);
-        var createdParents = {};
-        function ensureParent(path) {
-          // return the parent node, creating subdirs as necessary
-          var parts = path.split('/');
-          var parent = root;
-          for (var i = 0; i < parts.length-1; i++) {
-            var curr = parts.slice(0, i+1).join('/');
-            // Issue 4254: Using curr as a node name will prevent the node
-            // from being found in FS.nameTable when FS.open is called on
-            // a path which holds a child of this node,
-            // given that all FS functions assume node names
-            // are just their corresponding parts within their given path,
-            // rather than incremental aggregates which include their parent's
-            // directories.
-            if (!createdParents[curr]) {
-              createdParents[curr] = WORKERFS.createNode(parent, parts[i], 
WORKERFS.DIR_MODE, 0);
-            }
-            parent = createdParents[curr];
-          }
-          return parent;
-        }
-        function base(path) {
-          var parts = path.split('/');
-          return parts[parts.length-1];
-        }
-        // We also accept FileList here, by using Array.prototype
-        Array.prototype.forEach.call(mount.opts["files"] || [], function(file) 
{
-          WORKERFS.createNode(ensureParent(file.name), base(file.name), 
WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate);
-        });
-        (mount.opts["blobs"] || []).forEach(function(obj) {
-          WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), 
WORKERFS.FILE_MODE, 0, obj["data"]);
-        });
-        (mount.opts["packages"] || []).forEach(function(pack) {
-          pack['metadata'].files.forEach(function(file) {
-            var name = file.filename.substr(1); // remove initial slash
-            WORKERFS.createNode(ensureParent(name), base(name), 
WORKERFS.FILE_MODE, 0, pack['blob'].slice(file.start, file.end));
-          });
-        });
-        return root;
-      },createNode:function (parent, name, mode, dev, contents, mtime) {
-        var node = FS.createNode(parent, name, mode);
-        node.mode = mode;
-        node.node_ops = WORKERFS.node_ops;
-        node.stream_ops = WORKERFS.stream_ops;
-        node.timestamp = (mtime || new Date).getTime();
-        assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE);
-        if (mode === WORKERFS.FILE_MODE) {
-          node.size = contents.size;
-          node.contents = contents;
-        } else {
-          node.size = 4096;
-          node.contents = {};
-        }
-        if (parent) {
-          parent.contents[name] = node;
-        }
-        return node;
-      },node_ops:{getattr:function(node) {
-          return {
-            dev: 1,
-            ino: undefined,
-            mode: node.mode,
-            nlink: 1,
-            uid: 0,
-            gid: 0,
-            rdev: undefined,
-            size: node.size,
-            atime: new Date(node.timestamp),
-            mtime: new Date(node.timestamp),
-            ctime: new Date(node.timestamp),
-            blksize: 4096,
-            blocks: Math.ceil(node.size / 4096),
-          };
-        },setattr:function(node, attr) {
-          if (attr.mode !== undefined) {
-            node.mode = attr.mode;
-          }
-          if (attr.timestamp !== undefined) {
-            node.timestamp = attr.timestamp;
-          }
-        },lookup:function(parent, name) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        },mknod:function (parent, name, mode, dev) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        },rename:function (oldNode, newDir, newName) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        },unlink:function(parent, name) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        },rmdir:function(parent, name) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        },readdir:function(node) {
-          var entries = ['.', '..'];
-          for (var key in node.contents) {
-            if (!node.contents.hasOwnProperty(key)) {
-              continue;
-            }
-            entries.push(key);
-          }
-          return entries;
-        },symlink:function(parent, newName, oldPath) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        },readlink:function(node) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }},stream_ops:{read:function (stream, buffer, offset, length, 
position) {
-          if (position >= stream.node.size) return 0;
-          var chunk = stream.node.contents.slice(position, position + length);
-          var ab = WORKERFS.reader.readAsArrayBuffer(chunk);
-          buffer.set(new Uint8Array(ab), offset);
-          return chunk.size;
-        },write:function (stream, buffer, offset, length, position) {
-          throw new FS.ErrnoError(ERRNO_CODES.EIO);
-        },llseek:function (stream, offset, whence) {
-          var position = offset;
-          if (whence === 1) {  // SEEK_CUR.
-            position += stream.position;
-          } else if (whence === 2) {  // SEEK_END.
-            if (FS.isFile(stream.node.mode)) {
-              position += stream.node.size;
-            }
-          }
-          if (position < 0) {
-            throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-          }
-          return position;
-        }}};
-  
-  var _stdin=STATICTOP; STATICTOP += 16;;
-  
-  var _stdout=STATICTOP; STATICTOP += 16;;
-  
-  var _stderr=STATICTOP; STATICTOP += 16;;var 
FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e)
 {
-        if (!(e instanceof FS.ErrnoError)) throw e + ' : ' + stackTrace();
-        return ___setErrNo(e.errno);
-      },lookupPath:function(path, opts) {
-        path = PATH.resolve(FS.cwd(), path);
-        opts = opts || {};
-  
-        if (!path) return { path: '', node: null };
-  
-        var defaults = {
-          follow_mount: true,
-          recurse_count: 0
-        };
-        for (var key in defaults) {
-          if (opts[key] === undefined) {
-            opts[key] = defaults[key];
-          }
-        }
-  
-        if (opts.recurse_count > 8) {  // max recursive lookup of 8
-          throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
-        }
-  
-        // split the path
-        var parts = PATH.normalizeArray(path.split('/').filter(function(p) {
-          return !!p;
-        }), false);
-  
-        // start at the root
-        var current = FS.root;
-        var current_path = '/';
-  
-        for (var i = 0; i < parts.length; i++) {
-          var islast = (i === parts.length-1);
-          if (islast && opts.parent) {
-            // stop resolving
-            break;
-          }
-  
-          current = FS.lookupNode(current, parts[i]);
-          current_path = PATH.join2(current_path, parts[i]);
-  
-          // jump to the mount's root node if this is a mountpoint
-          if (FS.isMountpoint(current)) {
-            if (!islast || (islast && opts.follow_mount)) {
-              current = current.mounted.root;
-            }
-          }
-  
-          // by default, lookupPath will not follow a symlink if it is the 
final path component.
-          // setting opts.follow = true will override this behavior.
-          if (!islast || opts.follow) {
-            var count = 0;
-            while (FS.isLink(current.mode)) {
-              var link = FS.readlink(current_path);
-              current_path = PATH.resolve(PATH.dirname(current_path), link);
-  
-              var lookup = FS.lookupPath(current_path, { recurse_count: 
opts.recurse_count });
-              current = lookup.node;
-  
-              if (count++ > 40) {  // limit max consecutive symlinks to 40 
(SYMLOOP_MAX).
-                throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
-              }
-            }
-          }
-        }
-  
-        return { path: current_path, node: current };
-      },getPath:function(node) {
-        var path;
-        while (true) {
-          if (FS.isRoot(node)) {
-            var mount = node.mount.mountpoint;
-            if (!path) return mount;
-            return mount[mount.length-1] !== '/' ? mount + '/' + path : mount 
+ path;
-          }
-          path = path ? node.name + '/' + path : node.name;
-          node = node.parent;
-        }
-      },hashName:function(parentid, name) {
-        var hash = 0;
-  
-  
-        for (var i = 0; i < name.length; i++) {
-          hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0;
-        }
-        return ((parentid + hash) >>> 0) % FS.nameTable.length;
-      },hashAddNode:function(node) {
-        var hash = FS.hashName(node.parent.id, node.name);
-        node.name_next = FS.nameTable[hash];
-        FS.nameTable[hash] = node;
-      },hashRemoveNode:function(node) {
-        var hash = FS.hashName(node.parent.id, node.name);
-        if (FS.nameTable[hash] === node) {
-          FS.nameTable[hash] = node.name_next;
-        } else {
-          var current = FS.nameTable[hash];
-          while (current) {
-            if (current.name_next === node) {
-              current.name_next = node.name_next;
-              break;
-            }
-            current = current.name_next;
-          }
-        }
-      },lookupNode:function(parent, name) {
-        var err = FS.mayLookup(parent);
-        if (err) {
-          throw new FS.ErrnoError(err, parent);
-        }
-        var hash = FS.hashName(parent.id, name);
-        for (var node = FS.nameTable[hash]; node; node = node.name_next) {
-          var nodeName = node.name;
-          if (node.parent.id === parent.id && nodeName === name) {
-            return node;
-          }
-        }
-        // if we failed to find it in the cache, call into the VFS
-        return FS.lookup(parent, name);
-      },createNode:function(parent, name, mode, rdev) {
-        if (!FS.FSNode) {
-          FS.FSNode = function(parent, name, mode, rdev) {
-            if (!parent) {
-              parent = this;  // root node sets parent to itself
-            }
-            this.parent = parent;
-            this.mount = parent.mount;
-            this.mounted = null;
-            this.id = FS.nextInode++;
-            this.name = name;
-            this.mode = mode;
-            this.node_ops = {};
-            this.stream_ops = {};
-            this.rdev = rdev;
-          };
-  
-          FS.FSNode.prototype = {};
-  
-          // compatibility
-          var readMode = 292 | 73;
-          var writeMode = 146;
-  
-          // NOTE we must use Object.defineProperties instead of individual 
calls to
-          // Object.defineProperty in order to make closure compiler happy
-          Object.defineProperties(FS.FSNode.prototype, {
-            read: {
-              get: function() { return (this.mode & readMode) === readMode; },
-              set: function(val) { val ? this.mode |= readMode : this.mode &= 
~readMode; }
-            },
-            write: {
-              get: function() { return (this.mode & writeMode) === writeMode; 
},
-              set: function(val) { val ? this.mode |= writeMode : this.mode &= 
~writeMode; }
-            },
-            isFolder: {
-              get: function() { return FS.isDir(this.mode); }
-            },
-            isDevice: {
-              get: function() { return FS.isChrdev(this.mode); }
-            }
-          });
-        }
-  
-        var node = new FS.FSNode(parent, name, mode, rdev);
-  
-        FS.hashAddNode(node);
-  
-        return node;
-      },destroyNode:function(node) {
-        FS.hashRemoveNode(node);
-      },isRoot:function(node) {
-        return node === node.parent;
-      },isMountpoint:function(node) {
-        return !!node.mounted;
-      },isFile:function(mode) {
-        return (mode & 61440) === 32768;
-      },isDir:function(mode) {
-        return (mode & 61440) === 16384;
-      },isLink:function(mode) {
-        return (mode & 61440) === 40960;
-      },isChrdev:function(mode) {
-        return (mode & 61440) === 8192;
-      },isBlkdev:function(mode) {
-        return (mode & 61440) === 24576;
-      },isFIFO:function(mode) {
-        return (mode & 61440) === 4096;
-      },isSocket:function(mode) {
-        return (mode & 49152) === 49152;
-      
},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str)
 {
-        var flags = FS.flagModes[str];
-        if (typeof flags === 'undefined') {
-          throw new Error('Unknown file open mode: ' + str);
-        }
-        return flags;
-      },flagsToPermissionString:function(flag) {
-        var perms = ['r', 'w', 'rw'][flag & 3];
-        if ((flag & 512)) {
-          perms += 'w';
-        }
-        return perms;
-      },nodePermissions:function(node, perms) {
-        if (FS.ignorePermissions) {
-          return 0;
-        }
-        // return 0 if any user, group or owner bits are set.
-        if (perms.indexOf('r') !== -1 && !(node.mode & 292)) {
-          return ERRNO_CODES.EACCES;
-        } else if (perms.indexOf('w') !== -1 && !(node.mode & 146)) {
-          return ERRNO_CODES.EACCES;
-        } else if (perms.indexOf('x') !== -1 && !(node.mode & 73)) {
-          return ERRNO_CODES.EACCES;
-        }
-        return 0;
-      },mayLookup:function(dir) {
-        var err = FS.nodePermissions(dir, 'x');
-        if (err) return err;
-        if (!dir.node_ops.lookup) return ERRNO_CODES.EACCES;
-        return 0;
-      },mayCreate:function(dir, name) {
-        try {
-          var node = FS.lookupNode(dir, name);
-          return ERRNO_CODES.EEXIST;
-        } catch (e) {
-        }
-        return FS.nodePermissions(dir, 'wx');
-      },mayDelete:function(dir, name, isdir) {
-        var node;
-        try {
-          node = FS.lookupNode(dir, name);
-        } catch (e) {
-          return e.errno;
-        }
-        var err = FS.nodePermissions(dir, 'wx');
-        if (err) {
-          return err;
-        }
-        if (isdir) {
-          if (!FS.isDir(node.mode)) {
-            return ERRNO_CODES.ENOTDIR;
-          }
-          if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {
-            return ERRNO_CODES.EBUSY;
-          }
-        } else {
-          if (FS.isDir(node.mode)) {
-            return ERRNO_CODES.EISDIR;
-          }
-        }
-        return 0;
-      },mayOpen:function(node, flags) {
-        if (!node) {
-          return ERRNO_CODES.ENOENT;
-        }
-        if (FS.isLink(node.mode)) {
-          return ERRNO_CODES.ELOOP;
-        } else if (FS.isDir(node.mode)) {
-          if (FS.flagsToPermissionString(flags) !== 'r' || // opening for write
-              (flags & 512)) { // TODO: check for O_SEARCH? (== search for dir 
only)
-            return ERRNO_CODES.EISDIR;
-          }
-        }
-        return FS.nodePermissions(node, FS.flagsToPermissionString(flags));
-      },MAX_OPEN_FDS:4096,nextfd:function(fd_start, fd_end) {
-        fd_start = fd_start || 0;
-        fd_end = fd_end || FS.MAX_OPEN_FDS;
-        for (var fd = fd_start; fd <= fd_end; fd++) {
-          if (!FS.streams[fd]) {
-            return fd;
-          }
-        }
-        throw new FS.ErrnoError(ERRNO_CODES.EMFILE);
-      },getStream:function(fd) {
-        return FS.streams[fd];
-      },createStream:function(stream, fd_start, fd_end) {
-        if (!FS.FSStream) {
-          FS.FSStream = function(){};
-          FS.FSStream.prototype = {};
-          // compatibility
-          Object.defineProperties(FS.FSStream.prototype, {
-            object: {
-              get: function() { return this.node; },
-              set: function(val) { this.node = val; }
-            },
-            isRead: {
-              get: function() { return (this.flags & 2097155) !== 1; }
-            },
-            isWrite: {
-              get: function() { return (this.flags & 2097155) !== 0; }
-            },
-            isAppend: {
-              get: function() { return (this.flags & 1024); }
-            }
-          });
-        }
-        // clone it, so we can return an instance of FSStream
-        var newStream = new FS.FSStream();
-        for (var p in stream) {
-          newStream[p] = stream[p];
-        }
-        stream = newStream;
-        var fd = FS.nextfd(fd_start, fd_end);
-        stream.fd = fd;
-        FS.streams[fd] = stream;
-        return stream;
-      },closeStream:function(fd) {
-        FS.streams[fd] = null;
-      },chrdev_stream_ops:{open:function(stream) {
-          var device = FS.getDevice(stream.node.rdev);
-          // override node's stream ops with the device's
-          stream.stream_ops = device.stream_ops;
-          // forward the open call
-          if (stream.stream_ops.open) {
-            stream.stream_ops.open(stream);
-          }
-        },llseek:function() {
-          throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
-        }},major:function(dev) {
-        return ((dev) >> 8);
-      },minor:function(dev) {
-        return ((dev) & 0xff);
-      },makedev:function(ma, mi) {
-        return ((ma) << 8 | (mi));
-      },registerDevice:function(dev, ops) {
-        FS.devices[dev] = { stream_ops: ops };
-      },getDevice:function(dev) {
-        return FS.devices[dev];
-      },getMounts:function(mount) {
-        var mounts = [];
-        var check = [mount];
-  
-        while (check.length) {
-          var m = check.pop();
-  
-          mounts.push(m);
-  
-          check.push.apply(check, m.mounts);
-        }
-  
-        return mounts;
-      },syncfs:function(populate, callback) {
-        if (typeof(populate) === 'function') {
-          callback = populate;
-          populate = false;
-        }
-  
-        FS.syncFSRequests++;
-  
-        if (FS.syncFSRequests > 1) {
-          console.log('warning: ' + FS.syncFSRequests + ' FS.syncfs operations 
in flight at once, probably just doing extra work');
-        }
-  
-        var mounts = FS.getMounts(FS.root.mount);
-        var completed = 0;
-  
-        function doCallback(err) {
-          assert(FS.syncFSRequests > 0);
-          FS.syncFSRequests--;
-          return callback(err);
-        }
-  
-        function done(err) {
-          if (err) {
-            if (!done.errored) {
-              done.errored = true;
-              return doCallback(err);
-            }
-            return;
-          }
-          if (++completed >= mounts.length) {
-            doCallback(null);
-          }
-        };
-  
-        // sync all mounts
-        mounts.forEach(function (mount) {
-          if (!mount.type.syncfs) {
-            return done(null);
-          }
-          mount.type.syncfs(mount, populate, done);
-        });
-      },mount:function(type, opts, mountpoint) {
-        var root = mountpoint === '/';
-        var pseudo = !mountpoint;
-        var node;
-  
-        if (root && FS.root) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-        } else if (!root && !pseudo) {
-          var lookup = FS.lookupPath(mountpoint, { follow_mount: false });
-  
-          mountpoint = lookup.path;  // use the absolute path
-          node = lookup.node;
-  
-          if (FS.isMountpoint(node)) {
-            throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-          }
-  
-          if (!FS.isDir(node.mode)) {
-            throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
-          }
-        }
-  
-        var mount = {
-          type: type,
-          opts: opts,
-          mountpoint: mountpoint,
-          mounts: []
-        };
-  
-        // create a root node for the fs
-        var mountRoot = type.mount(mount);
-        mountRoot.mount = mount;
-        mount.root = mountRoot;
-  
-        if (root) {
-          FS.root = mountRoot;
-        } else if (node) {
-          // set as a mountpoint
-          node.mounted = mount;
-  
-          // add the new mount to the current mount's children
-          if (node.mount) {
-            node.mount.mounts.push(mount);
-          }
-        }
-  
-        return mountRoot;
-      },unmount:function (mountpoint) {
-        var lookup = FS.lookupPath(mountpoint, { follow_mount: false });
-  
-        if (!FS.isMountpoint(lookup.node)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-  
-        // destroy the nodes for this mount, and all its child mounts
-        var node = lookup.node;
-        var mount = node.mounted;
-        var mounts = FS.getMounts(mount);
-  
-        Object.keys(FS.nameTable).forEach(function (hash) {
-          var current = FS.nameTable[hash];
-  
-          while (current) {
-            var next = current.name_next;
-  
-            if (mounts.indexOf(current.mount) !== -1) {
-              FS.destroyNode(current);
-            }
-  
-            current = next;
-          }
-        });
-  
-        // no longer a mountpoint
-        node.mounted = null;
-  
-        // remove this mount from the child mounts
-        var idx = node.mount.mounts.indexOf(mount);
-        assert(idx !== -1);
-        node.mount.mounts.splice(idx, 1);
-      },lookup:function(parent, name) {
-        return parent.node_ops.lookup(parent, name);
-      },mknod:function(path, mode, dev) {
-        var lookup = FS.lookupPath(path, { parent: true });
-        var parent = lookup.node;
-        var name = PATH.basename(path);
-        if (!name || name === '.' || name === '..') {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        var err = FS.mayCreate(parent, name);
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        if (!parent.node_ops.mknod) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        return parent.node_ops.mknod(parent, name, mode, dev);
-      },create:function(path, mode) {
-        mode = mode !== undefined ? mode : 438 /* 0666 */;
-        mode &= 4095;
-        mode |= 32768;
-        return FS.mknod(path, mode, 0);
-      },mkdir:function(path, mode) {
-        mode = mode !== undefined ? mode : 511 /* 0777 */;
-        mode &= 511 | 512;
-        mode |= 16384;
-        return FS.mknod(path, mode, 0);
-      },mkdirTree:function(path, mode) {
-        var dirs = path.split('/');
-        var d = '';
-        for (var i = 0; i < dirs.length; ++i) {
-          if (!dirs[i]) continue;
-          d += '/' + dirs[i];
-          try {
-            FS.mkdir(d, mode);
-          } catch(e) {
-            if (e.errno != ERRNO_CODES.EEXIST) throw e;
-          }
-        }
-      },mkdev:function(path, mode, dev) {
-        if (typeof(dev) === 'undefined') {
-          dev = mode;
-          mode = 438 /* 0666 */;
-        }
-        mode |= 8192;
-        return FS.mknod(path, mode, dev);
-      },symlink:function(oldpath, newpath) {
-        if (!PATH.resolve(oldpath)) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        var lookup = FS.lookupPath(newpath, { parent: true });
-        var parent = lookup.node;
-        if (!parent) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        var newname = PATH.basename(newpath);
-        var err = FS.mayCreate(parent, newname);
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        if (!parent.node_ops.symlink) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        return parent.node_ops.symlink(parent, newname, oldpath);
-      },rename:function(old_path, new_path) {
-        var old_dirname = PATH.dirname(old_path);
-        var new_dirname = PATH.dirname(new_path);
-        var old_name = PATH.basename(old_path);
-        var new_name = PATH.basename(new_path);
-        // parents must exist
-        var lookup, old_dir, new_dir;
-        try {
-          lookup = FS.lookupPath(old_path, { parent: true });
-          old_dir = lookup.node;
-          lookup = FS.lookupPath(new_path, { parent: true });
-          new_dir = lookup.node;
-        } catch (e) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-        }
-        if (!old_dir || !new_dir) throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        // need to be part of the same mount
-        if (old_dir.mount !== new_dir.mount) {
-          throw new FS.ErrnoError(ERRNO_CODES.EXDEV);
-        }
-        // source must exist
-        var old_node = FS.lookupNode(old_dir, old_name);
-        // old path should not be an ancestor of the new path
-        var relative = PATH.relative(old_path, new_dirname);
-        if (relative.charAt(0) !== '.') {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        // new path should not be an ancestor of the old path
-        relative = PATH.relative(new_path, old_dirname);
-        if (relative.charAt(0) !== '.') {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
-        }
-        // see if the new path already exists
-        var new_node;
-        try {
-          new_node = FS.lookupNode(new_dir, new_name);
-        } catch (e) {
-          // not fatal
-        }
-        // early out if nothing needs to change
-        if (old_node === new_node) {
-          return;
-        }
-        // we'll need to delete the old entry
-        var isdir = FS.isDir(old_node.mode);
-        var err = FS.mayDelete(old_dir, old_name, isdir);
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        // need delete permissions if we'll be overwriting.
-        // need create permissions if new doesn't already exist.
-        err = new_node ?
-          FS.mayDelete(new_dir, new_name, isdir) :
-          FS.mayCreate(new_dir, new_name);
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        if (!old_dir.node_ops.rename) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        if (FS.isMountpoint(old_node) || (new_node && 
FS.isMountpoint(new_node))) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-        }
-        // if we are going to change the parent, check write permissions
-        if (new_dir !== old_dir) {
-          err = FS.nodePermissions(old_dir, 'w');
-          if (err) {
-            throw new FS.ErrnoError(err);
-          }
-        }
-        try {
-          if (FS.trackingDelegate['willMovePath']) {
-            FS.trackingDelegate['willMovePath'](old_path, new_path);
-          }
-        } catch(e) {
-          console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', 
'"+new_path+"') threw an exception: " + e.message);
-        }
-        // remove the node from the lookup hash
-        FS.hashRemoveNode(old_node);
-        // do the underlying fs rename
-        try {
-          old_dir.node_ops.rename(old_node, new_dir, new_name);
-        } catch (e) {
-          throw e;
-        } finally {
-          // add the node back to the hash (in case node_ops.rename
-          // changed its name)
-          FS.hashAddNode(old_node);
-        }
-        try {
-          if (FS.trackingDelegate['onMovePath']) 
FS.trackingDelegate['onMovePath'](old_path, new_path);
-        } catch(e) {
-          console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', 
'"+new_path+"') threw an exception: " + e.message);
-        }
-      },rmdir:function(path) {
-        var lookup = FS.lookupPath(path, { parent: true });
-        var parent = lookup.node;
-        var name = PATH.basename(path);
-        var node = FS.lookupNode(parent, name);
-        var err = FS.mayDelete(parent, name, true);
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        if (!parent.node_ops.rmdir) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        if (FS.isMountpoint(node)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-        }
-        try {
-          if (FS.trackingDelegate['willDeletePath']) {
-            FS.trackingDelegate['willDeletePath'](path);
-          }
-        } catch(e) {
-          console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw 
an exception: " + e.message);
-        }
-        parent.node_ops.rmdir(parent, name);
-        FS.destroyNode(node);
-        try {
-          if (FS.trackingDelegate['onDeletePath']) 
FS.trackingDelegate['onDeletePath'](path);
-        } catch(e) {
-          console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw 
an exception: " + e.message);
-        }
-      },readdir:function(path) {
-        var lookup = FS.lookupPath(path, { follow: true });
-        var node = lookup.node;
-        if (!node.node_ops.readdir) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
-        }
-        return node.node_ops.readdir(node);
-      },unlink:function(path) {
-        var lookup = FS.lookupPath(path, { parent: true });
-        var parent = lookup.node;
-        var name = PATH.basename(path);
-        var node = FS.lookupNode(parent, name);
-        var err = FS.mayDelete(parent, name, false);
-        if (err) {
-          // According to POSIX, we should map EISDIR to EPERM, but
-          // we instead do what Linux does (and we must, as we use
-          // the musl linux libc).
-          throw new FS.ErrnoError(err);
-        }
-        if (!parent.node_ops.unlink) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        if (FS.isMountpoint(node)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
-        }
-        try {
-          if (FS.trackingDelegate['willDeletePath']) {
-            FS.trackingDelegate['willDeletePath'](path);
-          }
-        } catch(e) {
-          console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw 
an exception: " + e.message);
-        }
-        parent.node_ops.unlink(parent, name);
-        FS.destroyNode(node);
-        try {
-          if (FS.trackingDelegate['onDeletePath']) 
FS.trackingDelegate['onDeletePath'](path);
-        } catch(e) {
-          console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw 
an exception: " + e.message);
-        }
-      },readlink:function(path) {
-        var lookup = FS.lookupPath(path);
-        var link = lookup.node;
-        if (!link) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        if (!link.node_ops.readlink) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        return PATH.resolve(FS.getPath(link.parent), 
link.node_ops.readlink(link));
-      },stat:function(path, dontFollow) {
-        var lookup = FS.lookupPath(path, { follow: !dontFollow });
-        var node = lookup.node;
-        if (!node) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        if (!node.node_ops.getattr) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        return node.node_ops.getattr(node);
-      },lstat:function(path) {
-        return FS.stat(path, true);
-      },chmod:function(path, mode, dontFollow) {
-        var node;
-        if (typeof path === 'string') {
-          var lookup = FS.lookupPath(path, { follow: !dontFollow });
-          node = lookup.node;
-        } else {
-          node = path;
-        }
-        if (!node.node_ops.setattr) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        node.node_ops.setattr(node, {
-          mode: (mode & 4095) | (node.mode & ~4095),
-          timestamp: Date.now()
-        });
-      },lchmod:function(path, mode) {
-        FS.chmod(path, mode, true);
-      },fchmod:function(fd, mode) {
-        var stream = FS.getStream(fd);
-        if (!stream) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        FS.chmod(stream.node, mode);
-      },chown:function(path, uid, gid, dontFollow) {
-        var node;
-        if (typeof path === 'string') {
-          var lookup = FS.lookupPath(path, { follow: !dontFollow });
-          node = lookup.node;
-        } else {
-          node = path;
-        }
-        if (!node.node_ops.setattr) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        node.node_ops.setattr(node, {
-          timestamp: Date.now()
-          // we ignore the uid / gid for now
-        });
-      },lchown:function(path, uid, gid) {
-        FS.chown(path, uid, gid, true);
-      },fchown:function(fd, uid, gid) {
-        var stream = FS.getStream(fd);
-        if (!stream) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        FS.chown(stream.node, uid, gid);
-      },truncate:function(path, len) {
-        if (len < 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        var node;
-        if (typeof path === 'string') {
-          var lookup = FS.lookupPath(path, { follow: true });
-          node = lookup.node;
-        } else {
-          node = path;
-        }
-        if (!node.node_ops.setattr) {
-          throw new FS.ErrnoError(ERRNO_CODES.EPERM);
-        }
-        if (FS.isDir(node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
-        }
-        if (!FS.isFile(node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        var err = FS.nodePermissions(node, 'w');
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        node.node_ops.setattr(node, {
-          size: len,
-          timestamp: Date.now()
-        });
-      },ftruncate:function(fd, len) {
-        var stream = FS.getStream(fd);
-        if (!stream) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if ((stream.flags & 2097155) === 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        FS.truncate(stream.node, len);
-      },utime:function(path, atime, mtime) {
-        var lookup = FS.lookupPath(path, { follow: true });
-        var node = lookup.node;
-        node.node_ops.setattr(node, {
-          timestamp: Math.max(atime, mtime)
-        });
-      },open:function(path, flags, mode, fd_start, fd_end) {
-        if (path === "") {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        flags = typeof flags === 'string' ? FS.modeStringToFlags(flags) : 
flags;
-        mode = typeof mode === 'undefined' ? 438 /* 0666 */ : mode;
-        if ((flags & 64)) {
-          mode = (mode & 4095) | 32768;
-        } else {
-          mode = 0;
-        }
-        var node;
-        if (typeof path === 'object') {
-          node = path;
-        } else {
-          path = PATH.normalize(path);
-          try {
-            var lookup = FS.lookupPath(path, {
-              follow: !(flags & 131072)
-            });
-            node = lookup.node;
-          } catch (e) {
-            // ignore
-          }
-        }
-        // perhaps we need to create the node
-        var created = false;
-        if ((flags & 64)) {
-          if (node) {
-            // if O_CREAT and O_EXCL are set, error out if the node already 
exists
-            if ((flags & 128)) {
-              throw new FS.ErrnoError(ERRNO_CODES.EEXIST);
-            }
-          } else {
-            // node doesn't exist, try to create it
-            node = FS.mknod(path, mode, 0);
-            created = true;
-          }
-        }
-        if (!node) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        // can't truncate a device
-        if (FS.isChrdev(node.mode)) {
-          flags &= ~512;
-        }
-        // if asked only for a directory, then this must be one
-        if ((flags & 65536) && !FS.isDir(node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
-        }
-        // check permissions, if this is not a file we just created now (it is 
ok to
-        // create and write to a file with read-only permissions; it is 
read-only
-        // for later use)
-        if (!created) {
-          var err = FS.mayOpen(node, flags);
-          if (err) {
-            throw new FS.ErrnoError(err);
-          }
-        }
-        // do truncation if necessary
-        if ((flags & 512)) {
-          FS.truncate(node, 0);
-        }
-        // we've already handled these, don't pass down to the underlying vfs
-        flags &= ~(128 | 512);
-  
-        // register the stream with the filesystem
-        var stream = FS.createStream({
-          node: node,
-          path: FS.getPath(node),  // we want the absolute path to the node
-          flags: flags,
-          seekable: true,
-          position: 0,
-          stream_ops: node.stream_ops,
-          // used by the file family libc calls (fopen, fwrite, ferror, etc.)
-          ungotten: [],
-          error: false
-        }, fd_start, fd_end);
-        // call the new stream's open function
-        if (stream.stream_ops.open) {
-          stream.stream_ops.open(stream);
-        }
-        if (Module['logReadFiles'] && !(flags & 1)) {
-          if (!FS.readFiles) FS.readFiles = {};
-          if (!(path in FS.readFiles)) {
-            FS.readFiles[path] = 1;
-            err('read file: ' + path);
-          }
-        }
-        try {
-          if (FS.trackingDelegate['onOpenFile']) {
-            var trackingFlags = 0;
-            if ((flags & 2097155) !== 1) {
-              trackingFlags |= FS.tracking.openFlags.READ;
-            }
-            if ((flags & 2097155) !== 0) {
-              trackingFlags |= FS.tracking.openFlags.WRITE;
-            }
-            FS.trackingDelegate['onOpenFile'](path, trackingFlags);
-          }
-        } catch(e) {
-          console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) 
threw an exception: " + e.message);
-        }
-        return stream;
-      },close:function(stream) {
-        if (FS.isClosed(stream)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (stream.getdents) stream.getdents = null; // free readdir state
-        try {
-          if (stream.stream_ops.close) {
-            stream.stream_ops.close(stream);
-          }
-        } catch (e) {
-          throw e;
-        } finally {
-          FS.closeStream(stream.fd);
-        }
-        stream.fd = null;
-      },isClosed:function(stream) {
-        return stream.fd === null;
-      },llseek:function(stream, offset, whence) {
-        if (FS.isClosed(stream)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (!stream.seekable || !stream.stream_ops.llseek) {
-          throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
-        }
-        stream.position = stream.stream_ops.llseek(stream, offset, whence);
-        stream.ungotten = [];
-        return stream.position;
-      },read:function(stream, buffer, offset, length, position) {
-        if (length < 0 || position < 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        if (FS.isClosed(stream)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if ((stream.flags & 2097155) === 1) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (FS.isDir(stream.node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
-        }
-        if (!stream.stream_ops.read) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        var seeking = typeof position !== 'undefined';
-        if (!seeking) {
-          position = stream.position;
-        } else if (!stream.seekable) {
-          throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
-        }
-        var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, 
position);
-        if (!seeking) stream.position += bytesRead;
-        return bytesRead;
-      },write:function(stream, buffer, offset, length, position, canOwn) {
-        if (length < 0 || position < 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        if (FS.isClosed(stream)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if ((stream.flags & 2097155) === 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (FS.isDir(stream.node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
-        }
-        if (!stream.stream_ops.write) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        if (stream.flags & 1024) {
-          // seek to the end before writing in append mode
-          FS.llseek(stream, 0, 2);
-        }
-        var seeking = typeof position !== 'undefined';
-        if (!seeking) {
-          position = stream.position;
-        } else if (!stream.seekable) {
-          throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
-        }
-        var bytesWritten = stream.stream_ops.write(stream, buffer, offset, 
length, position, canOwn);
-        if (!seeking) stream.position += bytesWritten;
-        try {
-          if (stream.path && FS.trackingDelegate['onWriteToFile']) 
FS.trackingDelegate['onWriteToFile'](stream.path);
-        } catch(e) {
-          console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw 
an exception: " + e.message);
-        }
-        return bytesWritten;
-      },allocate:function(stream, offset, length) {
-        if (FS.isClosed(stream)) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (offset < 0 || length <= 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
-        }
-        if ((stream.flags & 2097155) === 0) {
-          throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        }
-        if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
-        }
-        if (!stream.stream_ops.allocate) {
-          throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
-        }
-        stream.stream_ops.allocate(stream, offset, length);
-      },mmap:function(stream, buffer, offset, length, position, prot, flags) {
-        // TODO if PROT is PROT_WRITE, make sure we have write access
-        if ((stream.flags & 2097155) === 1) {
-          throw new FS.ErrnoError(ERRNO_CODES.EACCES);
-        }
-        if (!stream.stream_ops.mmap) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
-        }
-        return stream.stream_ops.mmap(stream, buffer, offset, length, 
position, prot, flags);
-      },msync:function(stream, buffer, offset, length, mmapFlags) {
-        if (!stream || !stream.stream_ops.msync) {
-          return 0;
-        }
-        return stream.stream_ops.msync(stream, buffer, offset, length, 
mmapFlags);
-      },munmap:function(stream) {
-        return 0;
-      },ioctl:function(stream, cmd, arg) {
-        if (!stream.stream_ops.ioctl) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOTTY);
-        }
-        return stream.stream_ops.ioctl(stream, cmd, arg);
-      },readFile:function(path, opts) {
-        opts = opts || {};
-        opts.flags = opts.flags || 'r';
-        opts.encoding = opts.encoding || 'binary';
-        if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') {
-          throw new Error('Invalid encoding type "' + opts.encoding + '"');
-        }
-        var ret;
-        var stream = FS.open(path, opts.flags);
-        var stat = FS.stat(path);
-        var length = stat.size;
-        var buf = new Uint8Array(length);
-        FS.read(stream, buf, 0, length, 0);
-        if (opts.encoding === 'utf8') {
-          ret = UTF8ArrayToString(buf, 0);
-        } else if (opts.encoding === 'binary') {
-          ret = buf;
-        }
-        FS.close(stream);
-        return ret;
-      },writeFile:function(path, data, opts) {
-        opts = opts || {};
-        opts.flags = opts.flags || 'w';
-        var stream = FS.open(path, opts.flags, opts.mode);
-        if (typeof data === 'string') {
-          var buf = new Uint8Array(lengthBytesUTF8(data)+1);
-          var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);
-          FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn);
-        } else if (ArrayBuffer.isView(data)) {
-          FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn);
-        } else {
-          throw new Error('Unsupported data type');
-        }
-        FS.close(stream);
-      },cwd:function() {
-        return FS.currentPath;
-      },chdir:function(path) {
-        var lookup = FS.lookupPath(path, { follow: true });
-        if (lookup.node === null) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
-        }
-        if (!FS.isDir(lookup.node.mode)) {
-          throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
-        }
-        var err = FS.nodePermissions(lookup.node, 'x');
-        if (err) {
-          throw new FS.ErrnoError(err);
-        }
-        FS.currentPath = lookup.path;
-      },createDefaultDirectories:function() {
-        FS.mkdir('/tmp');
-        FS.mkdir('/home');
-        FS.mkdir('/home/web_user');
-      },createDefaultDevices:function() {
-        // create /dev
-        FS.mkdir('/dev');
-        // setup /dev/null
-        FS.registerDevice(FS.makedev(1, 3), {
-          read: function() { return 0; },
-          write: function(stream, buffer, offset, length, pos) { return 
length; }
-        });
-        FS.mkdev('/dev/null', FS.makedev(1, 3));
-        // setup /dev/tty and /dev/tty1
-        // stderr needs to print output using Module['printErr']
-        // so we register a second tty just for it.
-        TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);
-        TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);
-        FS.mkdev('/dev/tty', FS.makedev(5, 0));
-        FS.mkdev('/dev/tty1', FS.makedev(6, 0));
-        // setup /dev/[u]random
-        var random_device;
-        if (typeof crypto !== 'undefined') {
-          // for modern web browsers
-          var randomBuffer = new Uint8Array(1);
-          random_device = function() { crypto.getRandomValues(randomBuffer); 
return randomBuffer[0]; };
-        } else if (ENVIRONMENT_IS_NODE) {
-          // for nodejs
-          random_device = function() { return 
require('crypto')['randomBytes'](1)[0]; };
-        } else {
-          // default for ES5 platforms
-          random_device = function() { return (Math.random()*256)|0; };
-        }
-        FS.createDevice('/dev', 'random', random_device);
-        FS.createDevice('/dev', 'urandom', random_device);
-        // we're not going to emulate the actual shm device,
-        // just create the tmp dirs that reside in it commonly
-        FS.mkdir('/dev/shm');
-        FS.mkdir('/dev/shm/tmp');
-      },createSpecialDirectories:function() {
-        // create /proc/self/fd which allows /proc/self/fd/6 => readlink gives 
the name of the stream for fd 6 (see test_unistd_ttyname)
-        FS.mkdir('/proc');
-        FS.mkdir('/proc/self');
-        FS.mkdir('/proc/self/fd');
-        FS.mount({
-          mount: function() {
-            var node = FS.createNode('/proc/self', 'fd', 16384 | 511 /* 0777 
*/, 73);
-            node.node_ops = {
-              lookup: function(parent, name) {
-                var fd = +name;
-                var stream = FS.getStream(fd);
-                if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-                var ret = {
-                  parent: null,
-                  mount: { mountpoint: 'fake' },
-                  node_ops: { readlink: function() { return stream.path } }
-                };
-                ret.parent = ret; // make it look like a simple root node
-                return ret;
-              }
-            };
-            return node;
-          }
-        }, {}, '/proc/self/fd');
-      },createStandardStreams:function() {
-        // TODO deprecate the old functionality of a single
-        // input / output callback and that utilizes FS.createDevice
-        // and instead require a unique set of stream ops
-  
-        // by default, we symlink the standard streams to the
-        // default tty devices. however, if the standard streams
-        // have been overwritten we create a unique device for
-        // them instead.
-        if (Module['stdin']) {
-          FS.createDevice('/dev', 'stdin', Module['stdin']);
-        } else {
-          FS.symlink('/dev/tty', '/dev/stdin');
-        }
-        if (Module['stdout']) {
-          FS.createDevice('/dev', 'stdout', null, Module['stdout']);
-        } else {
-          FS.symlink('/dev/tty', '/dev/stdout');
-        }
-        if (Module['stderr']) {
-          FS.createDevice('/dev', 'stderr', null, Module['stderr']);
-        } else {
-          FS.symlink('/dev/tty1', '/dev/stderr');
-        }
-  
-        // open default streams for the stdin, stdout and stderr devices
-        var stdin = FS.open('/dev/stdin', 'r');
-        assert(stdin.fd === 0, 'invalid handle for stdin (' + stdin.fd + ')');
-  
-        var stdout = FS.open('/dev/stdout', 'w');
-        assert(stdout.fd === 1, 'invalid handle for stdout (' + stdout.fd + 
')');
-  
-        var stderr = FS.open('/dev/stderr', 'w');
-        assert(stderr.fd === 2, 'invalid handle for stderr (' + stderr.fd + 
')');
-      },ensureErrnoError:function() {
-        if (FS.ErrnoError) return;
-        FS.ErrnoError = function ErrnoError(errno, node) {
-          //err(stackTrace()); // useful for debugging
-          this.node = node;
-          this.setErrno = function(errno) {
-            this.errno = errno;
-            for (var key in ERRNO_CODES) {
-              if (ERRNO_CODES[key] === errno) {
-                this.code = key;
-                break;
-              }
-            }
-          };
-          this.setErrno(errno);
-          this.message = ERRNO_MESSAGES[errno];
-          // Node.js compatibility: assigning on this.stack fails on Node 4 
(but fixed on Node 8)
-          if (this.stack) Object.defineProperty(this, "stack", { value: (new 
Error).stack, writable: true });
-          if (this.stack) this.stack = demangleAll(this.stack);
-        };
-        FS.ErrnoError.prototype = new Error();
-        FS.ErrnoError.prototype.constructor = FS.ErrnoError;
-        // Some errors may happen quite a bit, to avoid overhead we reuse them 
(and suffer a lack of stack info)
-        [ERRNO_CODES.ENOENT].forEach(function(code) {
-          FS.genericErrors[code] = new FS.ErrnoError(code);
-          FS.genericErrors[code].stack = '<generic error, no stack>';
-        });
-      },staticInit:function() {
-        FS.ensureErrnoError();
-  
-        FS.nameTable = new Array(4096);
-  
-        FS.mount(MEMFS, {}, '/');
-  
-        FS.createDefaultDirectories();
-        FS.createDefaultDevices();
-        FS.createSpecialDirectories();
-  
-        FS.filesystems = {
-          'MEMFS': MEMFS,
-          'IDBFS': IDBFS,
-          'NODEFS': NODEFS,
-          'WORKERFS': WORKERFS,
-        };
-      },init:function(input, output, error) {
-        assert(!FS.init.initialized, 'FS.init was previously called. If you 
want to initialize later with custom parameters, remove any earlier calls (note 
that one is automatically added to the generated code)');
-        FS.init.initialized = true;
-  
-        FS.ensureErrnoError();
-  
-        // Allow Module.stdin etc. to provide defaults, if none explicitly 
passed to us here
-        Module['stdin'] = input || Module['stdin'];
-        Module['stdout'] = output || Module['stdout'];
-        Module['stderr'] = error || Module['stderr'];
-  
-        FS.createStandardStreams();
-      },quit:function() {
-        FS.init.initialized = false;
-        // force-flush all streams, so we get musl std streams printed out
-        var fflush = Module['_fflush'];
-        if (fflush) fflush(0);
-        // close all of our streams
-        for (var i = 0; i < FS.streams.length; i++) {
-          var stream = FS.streams[i];
-          if (!stream) {
-            continue;
-          }
-          FS.close(stream);
-        }
-      },getMode:function(canRead, canWrite) {
-        var mode = 0;
-        if (canRead) mode |= 292 | 73;
-        if (canWrite) mode |= 146;
-        return mode;
-      },joinPath:function(parts, forceRelative) {
-        var path = PATH.join.apply(null, parts);
-        if (forceRelative && path[0] == '/') path = path.substr(1);
-        return path;
-      },absolutePath:function(relative, base) {
-        return PATH.resolve(base, relative);
-      },standardizePath:function(path) {
-        return PATH.normalize(path);
-      },findObject:function(path, dontResolveLastLink) {
-        var ret = FS.analyzePath(path, dontResolveLastLink);
-        if (ret.exists) {
-          return ret.object;
-        } else {
-          ___setErrNo(ret.error);
-          return null;
-        }
-      },analyzePath:function(path, dontResolveLastLink) {
-        // operate from within the context of the symlink's target
-        try {
-          var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });
-          path = lookup.path;
-        } catch (e) {
-        }
-        var ret = {
-          isRoot: false, exists: false, error: 0, name: null, path: null, 
object: null,
-          parentExists: false, parentPath: null, parentObject: null
-        };
-        try {
-          var lookup = FS.lookupPath(path, { parent: true });
-          ret.parentExists = true;
-          ret.parentPath = lookup.path;
-          ret.parentObject = lookup.node;
-          ret.name = PATH.basename(path);
-          lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });
-          ret.exists = true;
-          ret.path = lookup.path;
-          ret.object = lookup.node;
-          ret.name = lookup.node.name;
-          ret.isRoot = lookup.path === '/';
-        } catch (e) {
-          ret.error = e.errno;
-        };
-        return ret;
-      },createFolder:function(parent, name, canRead, canWrite) {
-        var path = PATH.join2(typeof parent === 'string' ? parent : 
FS.getPath(parent), name);
-        var mode = FS.getMode(canRead, canWrite);
-        return FS.mkdir(path, mode);
-      },createPath:function(parent, path, canRead, canWrite) {
-        parent = typeof parent === 'string' ? parent : FS.getPath(parent);
-        var parts = path.split('/').reverse();
-        while (parts.length) {
-          var part = parts.pop();
-          if (!part) continue;
-          var current = PATH.join2(parent, part);
-          try {
-            FS.mkdir(current);
-          } catch (e) {
-            // ignore EEXIST
-          }
-          parent = current;
-        }
-        return current;
-      },createFile:function(parent, name, properties, canRead, canWrite) {
-        var path = PATH.join2(typeof parent === 'string' ? parent : 
FS.getPath(parent), name);
-        var mode = FS.getMode(canRead, canWrite);
-        return FS.create(path, mode);
-      },createDataFile:function(parent, name, data, canRead, canWrite, canOwn) 
{
-        var path = name ? PATH.join2(typeof parent === 'string' ? parent : 
FS.getPath(parent), name) : parent;
-        var mode = FS.getMode(canRead, canWrite);
-        var node = FS.create(path, mode);
-        if (data) {
-          if (typeof data === 'string') {
-            var arr = new Array(data.length);
-            for (var i = 0, len = data.length; i < len; ++i) arr[i] = 
data.charCodeAt(i);
-            data = arr;
-          }
-          // make sure we can write to the file
-          FS.chmod(node, mode | 146);
-          var stream = FS.open(node, 'w');
-          FS.write(stream, data, 0, data.length, 0, canOwn);
-          FS.close(stream);
-          FS.chmod(node, mode);
-        }
-        return node;
-      },createDevice:function(parent, name, input, output) {
-        var path = PATH.join2(typeof parent === 'string' ? parent : 
FS.getPath(parent), name);
-        var mode = FS.getMode(!!input, !!output);
-        if (!FS.createDevice.major) FS.createDevice.major = 64;
-        var dev = FS.makedev(FS.createDevice.major++, 0);
-        // Create a fake device that a set of stream ops to emulate
-        // the old behavior.
-        FS.registerDevice(dev, {
-          open: function(stream) {
-            stream.seekable = false;
-          },
-          close: function(stream) {
-            // flush any pending line data
-            if (output && output.buffer && output.buffer.length) {
-              output(10);
-            }
-          },
-          read: function(stream, buffer, offset, length, pos /* ignored */) {
-            var bytesRead = 0;
-            for (var i = 0; i < length; i++) {
-              var result;
-              try {
-                result = input();
-              } catch (e) {
-                throw new FS.ErrnoError(ERRNO_CODES.EIO);
-              }
-              if (result === undefined && bytesRead === 0) {
-                throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
-              }
-              if (result === null || result === undefined) break;
-              bytesRead++;
-              buffer[offset+i] = result;
-            }
-            if (bytesRead) {
-              stream.node.timestamp = Date.now();
-            }
-            return bytesRead;
-          },
-          write: function(stream, buffer, offset, length, pos) {
-            for (var i = 0; i < length; i++) {
-              try {
-                output(buffer[offset+i]);
-              } catch (e) {
-                throw new FS.ErrnoError(ERRNO_CODES.EIO);
-              }
-            }
-            if (length) {
-              stream.node.timestamp = Date.now();
-            }
-            return i;
-          }
-        });
-        return FS.mkdev(path, mode, dev);
-      },createLink:function(parent, name, target, canRead, canWrite) {
-        var path = PATH.join2(typeof parent === 'string' ? parent : 
FS.getPath(parent), name);
-        return FS.symlink(target, path);
-      },forceLoadFile:function(obj) {
-        if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return 
true;
-        var success = true;
-        if (typeof XMLHttpRequest !== 'undefined') {
-          throw new Error("Lazy loading should have been performed (contents 
set) in createLazyFile, but it was not. Lazy loading only works in web workers. 
Use --embed-file or --preload-file in emcc on the main thread.");
-        } else if (Module['read']) {
-          // Command-line.
-          try {
-            // WARNING: Can't read binary files in V8's d8 or tracemonkey's 
js, as
-            //          read() will try to parse UTF8.
-            obj.contents = intArrayFromString(Module['read'](obj.url), true);
-            obj.usedBytes = obj.contents.length;
-          } catch (e) {
-            success = false;
-          }
-        } else {
-          throw new Error('Cannot load without read() or XMLHttpRequest.');
-        }
-        if (!success) ___setErrNo(ERRNO_CODES.EIO);
-        return success;
-      },createLazyFile:function(parent, name, url, canRead, canWrite) {
-        // Lazy chunked Uint8Array (implements get and length from 
Uint8Array). Actual getting is abstracted away for eventual reuse.
-        function LazyUint8Array() {
-          this.lengthKnown = false;
-          this.chunks = []; // Loaded chunks. Index is the chunk number
-        }
-        LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {
-          if (idx > this.length-1 || idx < 0) {
-            return undefined;
-          }
-          var chunkOffset = idx % this.chunkSize;
-          var chunkNum = (idx / this.chunkSize)|0;
-          return this.getter(chunkNum)[chunkOffset];
-        }
-        LazyUint8Array.prototype.setDataGetter = function 
LazyUint8Array_setDataGetter(getter) {
-          this.getter = getter;
-        }
-        LazyUint8Array.prototype.cacheLength = function 
LazyUint8Array_cacheLength() {
-          // Find length
-          var xhr = new XMLHttpRequest();
-          xhr.open('HEAD', url, false);
-          xhr.send(null);
-          if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) 
throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
-          var datalength = Number(xhr.getResponseHeader("Content-length"));
-          var header;
-          var hasByteServing = (header = 
xhr.getResponseHeader("Accept-Ranges")) && header === "bytes";
-          var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) 
&& header === "gzip";
-  
-          var chunkSize = 1024*1024; // Chunk size in bytes
-  
-          if (!hasByteServing) chunkSize = datalength;
-  
-          // Function to get a range from the remote URL.
-          var doXHR = (function(from, to) {
-            if (from > to) throw new Error("invalid range (" + from + ", " + 
to + ") or no bytes requested!");
-            if (to > datalength-1) throw new Error("only " + datalength + " 
bytes available! programmer error!");
-  
-            // TODO: Use mozResponseArrayBuffer, responseStream, etc. if 
available.
-            var xhr = new XMLHttpRequest();
-            xhr.open('GET', url, false);
-            if (datalength !== chunkSize) xhr.setRequestHeader("Range", 
"bytes=" + from + "-" + to);
-  
-            // Some hints to the browser that we want binary data.
-            if (typeof Uint8Array != 'undefined') xhr.responseType = 
'arraybuffer';
-            if (xhr.overrideMimeType) {
-              xhr.overrideMimeType('text/plain; charset=x-user-defined');
-            }
-  
-            xhr.send(null);
-            if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 
304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
-            if (xhr.response !== undefined) {
-              return new Uint8Array(xhr.response || []);
-            } else {
-              return intArrayFromString(xhr.responseText || '', true);
-            }
-          });
-          var lazyArray = this;
-          lazyArray.setDataGetter(function(chunkNum) {
-            var start = chunkNum * chunkSize;
-            var end = (chunkNum+1) * chunkSize - 1; // including this byte
-            end = Math.min(end, datalength-1); // if datalength-1 is selected, 
this is the last block
-            if (typeof(lazyArray.chunks[chunkNum]) === "undefined") {
-              lazyArray.chunks[chunkNum] = doXHR(start, end);
-            }
-            if (typeof(lazyArray.chunks[chunkNum]) === "undefined") throw new 
Error("doXHR failed!");
-            return lazyArray.chunks[chunkNum];
-          });
-  
-          if (usesGzip || !datalength) {
-            // if the server uses gzip or doesn't supply the length, we have 
to download the whole file to get the (uncompressed) length
-            chunkSize = datalength = 1; // this will force getter(0)/doXHR do 
download the whole file
-            datalength = this.getter(0).length;
-            chunkSize = datalength;
-            console.log("LazyFiles on gzip forces download of the whole file 
when length is accessed");
-          }
-  
-          this._length = datalength;
-          this._chunkSize = chunkSize;
-          this.lengthKnown = true;
-        }
-        if (typeof XMLHttpRequest !== 'undefined') {
-          if (!ENVIRONMENT_IS_WORKER) throw 'Cannot do synchronous binary XHRs 
outside webworkers in modern browsers. Use --embed-file or --preload-file in 
emcc';
-          var lazyArray = new LazyUint8Array();
-          Object.defineProperties(lazyArray, {
-            length: {
-              get: function() {
-                if(!this.lengthKnown) {
-                  this.cacheLength();
-                }
-                return this._length;
-              }
-            },
-            chunkSize: {
-              get: function() {
-                if(!this.lengthKnown) {
-                  this.cacheLength();
-                }
-                return this._chunkSize;
-              }
-            }
-          });
-  
-          var properties = { isDevice: false, contents: lazyArray };
-        } else {
-          var properties = { isDevice: false, url: url };
-        }
-  
-        var node = FS.createFile(parent, name, properties, canRead, canWrite);
-        // This is a total hack, but I want to get this lazy file code out of 
the
-        // core of MEMFS. If we want to keep this lazy file concept I feel it 
should
-        // be its own thin LAZYFS proxying calls to MEMFS.
-        if (properties.contents) {
-          node.contents = properties.contents;
-        } else if (properties.url) {
-          node.contents = null;
-          node.url = properties.url;
-        }
-        // Add a function that defers querying the file size until it is asked 
the first time.
-        Object.defineProperties(node, {
-          usedBytes: {
-            get: function() { return this.contents.length; }
-          }
-        });
-        // override each stream op with one that tries to force load the lazy 
file first
-        var stream_ops = {};
-        var keys = Object.keys(node.stream_ops);
-        keys.forEach(function(key) {
-          var fn = node.stream_ops[key];
-          stream_ops[key] = function forceLoadLazyFile() {
-            if (!FS.forceLoadFile(node)) {
-              throw new FS.ErrnoError(ERRNO_CODES.EIO);
-            }
-            return fn.apply(null, arguments);
-          };
-        });
-        // use a custom read function
-        stream_ops.read = function stream_ops_read(stream, buffer, offset, 
length, position) {
-          if (!FS.forceLoadFile(node)) {
-            throw new FS.ErrnoError(ERRNO_CODES.EIO);
-          }
-          var contents = stream.node.contents;
-          if (position >= contents.length)
-            return 0;
-          var size = Math.min(contents.length - position, length);
-          assert(size >= 0);
-          if (contents.slice) { // normal array
-            for (var i = 0; i < size; i++) {
-              buffer[offset + i] = contents[position + i];
-            }
-          } else {
-            for (var i = 0; i < size; i++) { // LazyUint8Array from sync 
binary XHR
-              buffer[offset + i] = contents.get(position + i);
-            }
-          }
-          return size;
-        };
-        node.stream_ops = stream_ops;
-        return node;
-      },createPreloadedFile:function(parent, name, url, canRead, canWrite, 
onload, onerror, dontCreateFile, canOwn, preFinish) {
-        Browser.init(); // XXX perhaps this method should move onto Browser?
-        // TODO we should allow people to just pass in a complete filename 
instead
-        // of parent and name being that we just join them anyways
-        var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent;
-        var dep = getUniqueRunDependency('cp ' + fullname); // might have 
several active requests for the same fullname
-        function processData(byteArray) {
-          function finish(byteArray) {
-            if (preFinish) preFinish();
-            if (!dontCreateFile) {
-              FS.createDataFile(parent, name, byteArray, canRead, canWrite, 
canOwn);
-            }
-            if (onload) onload();
-            removeRunDependency(dep);
-          }
-          var handled = false;
-          Module['preloadPlugins'].forEach(function(plugin) {
-            if (handled) return;
-            if (plugin['canHandle'](fullname)) {
-              plugin['handle'](byteArray, fullname, finish, function() {
-                if (onerror) onerror();
-                removeRunDependency(dep);
-              });
-              handled = true;
-            }
-          });
-          if (!handled) finish(byteArray);
-        }
-        addRunDependency(dep);
-        if (typeof url == 'string') {
-          Browser.asyncLoad(url, function(byteArray) {
-            processData(byteArray);
-          }, onerror);
-        } else {
-          processData(url);
-        }
-      },indexedDB:function() {
-        return window.indexedDB || window.mozIndexedDB || 
window.webkitIndexedDB || window.msIndexedDB;
-      },DB_NAME:function() {
-        return 'EM_FS_' + window.location.pathname;
-      },DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(paths, 
onload, onerror) {
-        onload = onload || function(){};
-        onerror = onerror || function(){};
-        var indexedDB = FS.indexedDB();
-        try {
-          var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
-        } catch (e) {
-          return onerror(e);
-        }
-        openRequest.onupgradeneeded = function openRequest_onupgradeneeded() {
-          console.log('creating db');
-          var db = openRequest.result;
-          db.createObjectStore(FS.DB_STORE_NAME);
-        };
-        openRequest.onsuccess = function openRequest_onsuccess() {
-          var db = openRequest.result;
-          var transaction = db.transaction([FS.DB_STORE_NAME], 'readwrite');
-          var files = transaction.objectStore(FS.DB_STORE_NAME);
-          var ok = 0, fail = 0, total = paths.length;
-          function finish() {
-            if (fail == 0) onload(); else onerror();
-          }
-          paths.forEach(function(path) {
-            var putRequest = files.put(FS.analyzePath(path).object.contents, 
path);
-            putRequest.onsuccess = function putRequest_onsuccess() { ok++; if 
(ok + fail == total) finish() };
-            putRequest.onerror = function putRequest_onerror() { fail++; if 
(ok + fail == total) finish() };
-          });
-          transaction.onerror = onerror;
-        };
-        openRequest.onerror = onerror;
-      },loadFilesFromDB:function(paths, onload, onerror) {
-        onload = onload || function(){};
-        onerror = onerror || function(){};
-        var indexedDB = FS.indexedDB();
-        try {
-          var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
-        } catch (e) {
-          return onerror(e);
-        }
-        openRequest.onupgradeneeded = onerror; // no database to load from
-        openRequest.onsuccess = function openRequest_onsuccess() {
-          var db = openRequest.result;
-          try {
-            var transaction = db.transaction([FS.DB_STORE_NAME], 'readonly');
-          } catch(e) {
-            onerror(e);
-            return;
-          }
-          var files = transaction.objectStore(FS.DB_STORE_NAME);
-          var ok = 0, fail = 0, total = paths.length;
-          function finish() {
-            if (fail == 0) onload(); else onerror();
-          }
-          paths.forEach(function(path) {
-            var getRequest = files.get(path);
-            getRequest.onsuccess = function getRequest_onsuccess() {
-              if (FS.analyzePath(path).exists) {
-                FS.unlink(path);
-              }
-              FS.createDataFile(PATH.dirname(path), PATH.basename(path), 
getRequest.result, true, true, true);
-              ok++;
-              if (ok + fail == total) finish();
-            };
-            getRequest.onerror = function getRequest_onerror() { fail++; if 
(ok + fail == total) finish() };
-          });
-          transaction.onerror = onerror;
-        };
-        openRequest.onerror = onerror;
-      }};var 
SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(dirfd, 
path) {
-        if (path[0] !== '/') {
-          // relative path
-          var dir;
-          if (dirfd === -100) {
-            dir = FS.cwd();
-          } else {
-            var dirstream = FS.getStream(dirfd);
-            if (!dirstream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-            dir = dirstream.path;
-          }
-          path = PATH.join2(dir, path);
-        }
-        return path;
-      },doStat:function(func, path, buf) {
-        try {
-          var stat = func(path);
-        } catch (e) {
-          if (e && e.node && PATH.normalize(path) !== 
PATH.normalize(FS.getPath(e.node))) {
-            // an error occurred while trying to look up the path; we should 
just report ENOTDIR
-            return -ERRNO_CODES.ENOTDIR;
-          }
-          throw e;
-        }
-        HEAP32[((buf)>>2)]=stat.dev;
-        HEAP32[(((buf)+(4))>>2)]=0;
-        HEAP32[(((buf)+(8))>>2)]=stat.ino;
-        HEAP32[(((buf)+(12))>>2)]=stat.mode;
-        HEAP32[(((buf)+(16))>>2)]=stat.nlink;
-        HEAP32[(((buf)+(20))>>2)]=stat.uid;
-        HEAP32[(((buf)+(24))>>2)]=stat.gid;
-        HEAP32[(((buf)+(28))>>2)]=stat.rdev;
-        HEAP32[(((buf)+(32))>>2)]=0;
-        HEAP32[(((buf)+(36))>>2)]=stat.size;
-        HEAP32[(((buf)+(40))>>2)]=4096;
-        HEAP32[(((buf)+(44))>>2)]=stat.blocks;
-        HEAP32[(((buf)+(48))>>2)]=(stat.atime.getTime() / 1000)|0;
-        HEAP32[(((buf)+(52))>>2)]=0;
-        HEAP32[(((buf)+(56))>>2)]=(stat.mtime.getTime() / 1000)|0;
-        HEAP32[(((buf)+(60))>>2)]=0;
-        HEAP32[(((buf)+(64))>>2)]=(stat.ctime.getTime() / 1000)|0;
-        HEAP32[(((buf)+(68))>>2)]=0;
-        HEAP32[(((buf)+(72))>>2)]=stat.ino;
-        return 0;
-      },doMsync:function(addr, stream, len, flags) {
-        var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len));
-        FS.msync(stream, buffer, 0, len, flags);
-      },doMkdir:function(path, mode) {
-        // remove a trailing slash, if one - /a/b/ has basename of '', but
-        // we want to create b in the context of this function
-        path = PATH.normalize(path);
-        if (path[path.length-1] === '/') path = path.substr(0, path.length-1);
-        FS.mkdir(path, mode, 0);
-        return 0;
-      },doMknod:function(path, mode, dev) {
-        // we don't want this in the JS API as it uses mknod to create all 
nodes.
-        switch (mode & 61440) {
-          case 32768:
-          case 8192:
-          case 24576:
-          case 4096:
-          case 49152:
-            break;
-          default: return -ERRNO_CODES.EINVAL;
-        }
-        FS.mknod(path, mode, dev);
-        return 0;
-      },doReadlink:function(path, buf, bufsize) {
-        if (bufsize <= 0) return -ERRNO_CODES.EINVAL;
-        var ret = FS.readlink(path);
-  
-        var len = Math.min(bufsize, lengthBytesUTF8(ret));
-        var endChar = HEAP8[buf+len];
-        stringToUTF8(ret, buf, bufsize+1);
-        // readlink is one of the rare functions that write out a C string, 
but does never append a null to the output buffer(!)
-        // stringToUTF8() always appends a null byte, so restore the character 
under the null byte after the write.
-        HEAP8[buf+len] = endChar;
-  
-        return len;
-      },doAccess:function(path, amode) {
-        if (amode & ~7) {
-          // need a valid mode
-          return -ERRNO_CODES.EINVAL;
-        }
-        var node;
-        var lookup = FS.lookupPath(path, { follow: true });
-        node = lookup.node;
-        var perms = '';
-        if (amode & 4) perms += 'r';
-        if (amode & 2) perms += 'w';
-        if (amode & 1) perms += 'x';
-        if (perms /* otherwise, they've just passed F_OK */ && 
FS.nodePermissions(node, perms)) {
-          return -ERRNO_CODES.EACCES;
-        }
-        return 0;
-      },doDup:function(path, flags, suggestFD) {
-        var suggest = FS.getStream(suggestFD);
-        if (suggest) FS.close(suggest);
-        return FS.open(path, flags, 0, suggestFD, suggestFD).fd;
-      },doReadv:function(stream, iov, iovcnt, offset) {
-        var ret = 0;
-        for (var i = 0; i < iovcnt; i++) {
-          var ptr = HEAP32[(((iov)+(i*8))>>2)];
-          var len = HEAP32[(((iov)+(i*8 + 4))>>2)];
-          var curr = FS.read(stream, HEAP8,ptr, len, offset);
-          if (curr < 0) return -1;
-          ret += curr;
-          if (curr < len) break; // nothing more to read
-        }
-        return ret;
-      },doWritev:function(stream, iov, iovcnt, offset) {
-        var ret = 0;
-        for (var i = 0; i < iovcnt; i++) {
-          var ptr = HEAP32[(((iov)+(i*8))>>2)];
-          var len = HEAP32[(((iov)+(i*8 + 4))>>2)];
-          var curr = FS.write(stream, HEAP8,ptr, len, offset);
-          if (curr < 0) return -1;
-          ret += curr;
-        }
-        return ret;
-      },varargs:0,get:function(varargs) {
-        SYSCALLS.varargs += 4;
-        var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)];
-        return ret;
-      },getStr:function() {
-        var ret = Pointer_stringify(SYSCALLS.get());
-        return ret;
-      },getStreamFromFD:function() {
-        var stream = FS.getStream(SYSCALLS.get());
-        if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        return stream;
-      },getSocketFromFD:function() {
-        var socket = SOCKFS.getSocket(SYSCALLS.get());
-        if (!socket) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-        return socket;
-      },getSocketAddress:function(allowNull) {
-        var addrp = SYSCALLS.get(), addrlen = SYSCALLS.get();
-        if (allowNull && addrp === 0) return null;
-        var info = __read_sockaddr(addrp, addrlen);
-        if (info.errno) throw new FS.ErrnoError(info.errno);
-        info.addr = DNS.lookup_addr(info.addr) || info.addr;
-        return info;
-      },get64:function() {
-        var low = SYSCALLS.get(), high = SYSCALLS.get();
-        if (low >= 0) assert(high === 0);
-        else assert(high === -1);
-        return low;
-      },getZero:function() {
-        assert(SYSCALLS.get() === 0);
-      }};function ___syscall140(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // llseek
-      var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), 
offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get();
-      // NOTE: offset_high is unused - Emscripten's off_t is 32-bit
-      var offset = offset_low;
-      FS.llseek(stream, offset, whence);
-      HEAP32[((result)>>2)]=stream.position;
-      if (stream.getdents && offset === 0 && whence === 0) stream.getdents = 
null; // reset readdir state
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall142(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // newselect
-      // readfds are supported,
-      // writefds checks socket open status
-      // exceptfds not supported
-      // timeout is always 0 - fully async
-      var nfds = SYSCALLS.get(), readfds = SYSCALLS.get(), writefds = 
SYSCALLS.get(), exceptfds = SYSCALLS.get(), timeout = SYSCALLS.get();
-  
-      assert(nfds <= 64, 'nfds must be less than or equal to 64');  // fd sets 
have 64 bits // TODO: this could be 1024 based on current musl headers
-      assert(!exceptfds, 'exceptfds not supported');
-  
-      var total = 0;
-      
-      var srcReadLow = (readfds ? HEAP32[((readfds)>>2)] : 0),
-          srcReadHigh = (readfds ? HEAP32[(((readfds)+(4))>>2)] : 0);
-      var srcWriteLow = (writefds ? HEAP32[((writefds)>>2)] : 0),
-          srcWriteHigh = (writefds ? HEAP32[(((writefds)+(4))>>2)] : 0);
-      var srcExceptLow = (exceptfds ? HEAP32[((exceptfds)>>2)] : 0),
-          srcExceptHigh = (exceptfds ? HEAP32[(((exceptfds)+(4))>>2)] : 0);
-  
-      var dstReadLow = 0,
-          dstReadHigh = 0;
-      var dstWriteLow = 0,
-          dstWriteHigh = 0;
-      var dstExceptLow = 0,
-          dstExceptHigh = 0;
-  
-      var allLow = (readfds ? HEAP32[((readfds)>>2)] : 0) |
-                   (writefds ? HEAP32[((writefds)>>2)] : 0) |
-                   (exceptfds ? HEAP32[((exceptfds)>>2)] : 0);
-      var allHigh = (readfds ? HEAP32[(((readfds)+(4))>>2)] : 0) |
-                    (writefds ? HEAP32[(((writefds)+(4))>>2)] : 0) |
-                    (exceptfds ? HEAP32[(((exceptfds)+(4))>>2)] : 0);
-  
-      function check(fd, low, high, val) {
-        return (fd < 32 ? (low & val) : (high & val));
-      }
-  
-      for (var fd = 0; fd < nfds; fd++) {
-        var mask = 1 << (fd % 32);
-        if (!(check(fd, allLow, allHigh, mask))) {
-          continue;  // index isn't in the set
-        }
-  
-        var stream = FS.getStream(fd);
-        if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
-  
-        var flags = SYSCALLS.DEFAULT_POLLMASK;
-  
-        if (stream.stream_ops.poll) {
-          flags = stream.stream_ops.poll(stream);
-        }
-  
-        if ((flags & 1) && check(fd, srcReadLow, srcReadHigh, mask)) {
-          fd < 32 ? (dstReadLow = dstReadLow | mask) : (dstReadHigh = 
dstReadHigh | mask);
-          total++;
-        }
-        if ((flags & 4) && check(fd, srcWriteLow, srcWriteHigh, mask)) {
-          fd < 32 ? (dstWriteLow = dstWriteLow | mask) : (dstWriteHigh = 
dstWriteHigh | mask);
-          total++;
-        }
-        if ((flags & 2) && check(fd, srcExceptLow, srcExceptHigh, mask)) {
-          fd < 32 ? (dstExceptLow = dstExceptLow | mask) : (dstExceptHigh = 
dstExceptHigh | mask);
-          total++;
-        }
-      }
-  
-      if (readfds) {
-        HEAP32[((readfds)>>2)]=dstReadLow;
-        HEAP32[(((readfds)+(4))>>2)]=dstReadHigh;
-      }
-      if (writefds) {
-        HEAP32[((writefds)>>2)]=dstWriteLow;
-        HEAP32[(((writefds)+(4))>>2)]=dstWriteHigh;
-      }
-      if (exceptfds) {
-        HEAP32[((exceptfds)>>2)]=dstExceptLow;
-        HEAP32[(((exceptfds)+(4))>>2)]=dstExceptHigh;
-      }
-      
-      return total;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall145(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // readv
-      var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = 
SYSCALLS.get();
-      return SYSCALLS.doReadv(stream, iov, iovcnt);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall146(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // writev
-      var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = 
SYSCALLS.get();
-      return SYSCALLS.doWritev(stream, iov, iovcnt);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall192(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // mmap2
-      var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), 
flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get()
-      off <<= 12; // undo pgoffset
-      var ptr;
-      var allocated = false;
-      if (fd === -1) {
-        ptr = _memalign(PAGE_SIZE, len);
-        if (!ptr) return -ERRNO_CODES.ENOMEM;
-        _memset(ptr, 0, len);
-        allocated = true;
-      } else {
-        var info = FS.getStream(fd);
-        if (!info) return -ERRNO_CODES.EBADF;
-        var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags);
-        ptr = res.ptr;
-        allocated = res.allocated;
-      }
-      SYSCALLS.mappings[ptr] = { malloc: ptr, len: len, allocated: allocated, 
fd: fd, flags: flags };
-      return ptr;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall194(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // ftruncate64
-      var fd = SYSCALLS.get(), zero = SYSCALLS.getZero(), length = 
SYSCALLS.get64();
-      FS.ftruncate(fd, length);
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall195(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // SYS_stat64
-      var path = SYSCALLS.getStr(), buf = SYSCALLS.get();
-      return SYSCALLS.doStat(FS.stat, path, buf);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall197(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // SYS_fstat64
-      var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get();
-      return SYSCALLS.doStat(FS.stat, stream.path, buf);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  
-  function ___syscall202(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // getgid32
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }function ___syscall199(
-  ) {
-  return ___syscall202.apply(null, arguments)
-  }
-
-  
-  var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall20(which, 
varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // getpid
-      return PROCINFO.pid;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall201(
-  ) {
-  return ___syscall202.apply(null, arguments)
-  }
-
-  function ___syscall221(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // fcntl64
-      var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get();
-      switch (cmd) {
-        case 0: {
-          var arg = SYSCALLS.get();
-          if (arg < 0) {
-            return -ERRNO_CODES.EINVAL;
-          }
-          var newStream;
-          newStream = FS.open(stream.path, stream.flags, 0, arg);
-          return newStream.fd;
-        }
-        case 1:
-        case 2:
-          return 0;  // FD_CLOEXEC makes no sense for a single process.
-        case 3:
-          return stream.flags;
-        case 4: {
-          var arg = SYSCALLS.get();
-          stream.flags |= arg;
-          return 0;
-        }
-        case 12:
-        case 12: {
-          var arg = SYSCALLS.get();
-          var offset = 0;
-          // We're always unlocked.
-          HEAP16[(((arg)+(offset))>>1)]=2;
-          return 0;
-        }
-        case 13:
-        case 14:
-        case 13:
-        case 14:
-          return 0; // Pretend that the locking is successful.
-        case 16:
-        case 8:
-          return -ERRNO_CODES.EINVAL; // These are for sockets. We don't have 
them fully implemented yet.
-        case 9:
-          // musl trusts getown return values, due to a bug where they must 
be, as they overlap with errors. just return -1 here, so fnctl() returns that, 
and we set errno ourselves.
-          ___setErrNo(ERRNO_CODES.EINVAL);
-          return -1;
-        default: {
-          return -ERRNO_CODES.EINVAL;
-        }
-      }
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall3(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // read
-      var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = 
SYSCALLS.get();
-      return FS.read(stream, HEAP8,buf, count);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall33(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // access
-      var path = SYSCALLS.getStr(), amode = SYSCALLS.get();
-      return SYSCALLS.doAccess(path, amode);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall4(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // write
-      var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = 
SYSCALLS.get();
-      return FS.write(stream, HEAP8,buf, count);
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall5(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // open
-      var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = 
SYSCALLS.get() // optional TODO
-      var stream = FS.open(pathname, flags, mode);
-      return stream.fd;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall54(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // ioctl
-      var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get();
-      switch (op) {
-        case 21509:
-        case 21505: {
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          return 0;
-        }
-        case 21510:
-        case 21511:
-        case 21512:
-        case 21506:
-        case 21507:
-        case 21508: {
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          return 0; // no-op, not actually adjusting terminal settings
-        }
-        case 21519: {
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          var argp = SYSCALLS.get();
-          HEAP32[((argp)>>2)]=0;
-          return 0;
-        }
-        case 21520: {
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          return -ERRNO_CODES.EINVAL; // not supported
-        }
-        case 21531: {
-          var argp = SYSCALLS.get();
-          return FS.ioctl(stream, op, argp);
-        }
-        case 21523: {
-          // TODO: in theory we should write to the winsize struct that gets
-          // passed in, but for now musl doesn't read anything on it
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          return 0;
-        }
-        case 21524: {
-          // TODO: technically, this ioctl call should change the window size.
-          // but, since emscripten doesn't have any concept of a terminal 
window
-          // yet, we'll just silently throw it away as we do TIOCGWINSZ
-          if (!stream.tty) return -ERRNO_CODES.ENOTTY;
-          return 0;
-        }
-        default: abort('bad ioctl syscall ' + op);
-      }
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall6(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // close
-      var stream = SYSCALLS.getStreamFromFD();
-      FS.close(stream);
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall64(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // getppid
-      return PROCINFO.ppid;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall77(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // getrusage
-      var who = SYSCALLS.get(), usage = SYSCALLS.get();
-      _memset(usage, 0, 136);
-      HEAP32[((usage)>>2)]=1; // fake some values
-      HEAP32[(((usage)+(4))>>2)]=2;
-      HEAP32[(((usage)+(8))>>2)]=3;
-      HEAP32[(((usage)+(12))>>2)]=4;
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-  function ___syscall91(which, varargs) {SYSCALLS.varargs = varargs;
-  try {
-   // munmap
-      var addr = SYSCALLS.get(), len = SYSCALLS.get();
-      // TODO: support unmmap'ing parts of allocations
-      var info = SYSCALLS.mappings[addr];
-      if (!info) return 0;
-      if (len === info.len) {
-        var stream = FS.getStream(info.fd);
-        SYSCALLS.doMsync(addr, stream, len, info.flags)
-        FS.munmap(stream);
-        SYSCALLS.mappings[addr] = null;
-        if (info.allocated) {
-          _free(info.malloc);
-        }
-      }
-      return 0;
-    } catch (e) {
-    if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e);
-    return -e.errno;
-  }
-  }
-
-   
-
-  function ___unlock() {}
-
-   
-
-  function _abort() {
-      Module['abort']();
-    }
-
-  function _atexit(func, arg) {
-      warnOnce('atexit() called, but NO_EXIT_RUNTIME is set, so atexits() will 
not be called. set NO_EXIT_RUNTIME to 0 (see the FAQ)');
-      __ATEXIT__.unshift({ func: func, arg: arg });
-    }
-
-   
-
-   
-
-   
-
-  function _clock() {
-      if (_clock.start === undefined) _clock.start = Date.now();
-      return ((Date.now() - _clock.start) * (1000000 / 1000))|0;
-    }
-
-  function _getenv(name) {
-      // char *getenv(const char *name);
-      // http://pubs.opengroup.org/onlinepubs/009695399/functions/getenv.html
-      if (name === 0) return 0;
-      name = Pointer_stringify(name);
-      if (!ENV.hasOwnProperty(name)) return 0;
-  
-      if (_getenv.ret) _free(_getenv.ret);
-      _getenv.ret = allocateUTF8(ENV[name]);
-      return _getenv.ret;
-    }
-
-  function _gettimeofday(ptr) {
-      var now = Date.now();
-      HEAP32[((ptr)>>2)]=(now/1000)|0; // seconds
-      HEAP32[(((ptr)+(4))>>2)]=((now % 1000)*1000)|0; // microseconds
-      return 0;
-    }
-
-
-
-   
-
-
-  function _llvm_stackrestore(p) {
-      var self = _llvm_stacksave;
-      var ret = self.LLVM_SAVEDSTACKS[p];
-      self.LLVM_SAVEDSTACKS.splice(p, 1);
-      stackRestore(ret);
-    }
-
-  function _llvm_stacksave() {
-      var self = _llvm_stacksave;
-      if (!self.LLVM_SAVEDSTACKS) {
-        self.LLVM_SAVEDSTACKS = [];
-      }
-      self.LLVM_SAVEDSTACKS.push(stackSave());
-      return self.LLVM_SAVEDSTACKS.length-1;
-    }
-
-  
-  var ___tm_current=STATICTOP; STATICTOP += 48;;
-  
-  
-  var ___tm_timezone=allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC);
-  
-  function _tzset() {
-      // TODO: Use (malleable) environment variables instead of system 
settings.
-      if (_tzset.called) return;
-      _tzset.called = true;
-  
-      // timezone is specified as seconds west of UTC ("The external variable
-      // `timezone` shall be set to the difference, in seconds, between
-      // Coordinated Universal Time (UTC) and local standard time."), the same
-      // as returned by getTimezoneOffset().
-      // See 
http://pubs.opengroup.org/onlinepubs/009695399/functions/tzset.html
-      HEAP32[((__get_timezone())>>2)]=(new Date()).getTimezoneOffset() * 60;
-  
-      var winter = new Date(2000, 0, 1);
-      var summer = new Date(2000, 6, 1);
-      HEAP32[((__get_daylight())>>2)]=Number(winter.getTimezoneOffset() != 
summer.getTimezoneOffset());
-  
-      function extractZone(date) {
-        var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/);
-        return match ? match[1] : "GMT";
-      };
-      var winterName = extractZone(winter);
-      var summerName = extractZone(summer);
-      var winterNamePtr = allocate(intArrayFromString(winterName), 'i8', 
ALLOC_NORMAL);
-      var summerNamePtr = allocate(intArrayFromString(summerName), 'i8', 
ALLOC_NORMAL);
-      if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) {
-        // Northern hemisphere
-        HEAP32[((__get_tzname())>>2)]=winterNamePtr;
-        HEAP32[(((__get_tzname())+(4))>>2)]=summerNamePtr;
-      } else {
-        HEAP32[((__get_tzname())>>2)]=summerNamePtr;
-        HEAP32[(((__get_tzname())+(4))>>2)]=winterNamePtr;
-      }
-    }function _localtime_r(time, tmPtr) {
-      _tzset();
-      var date = new Date(HEAP32[((time)>>2)]*1000);
-      HEAP32[((tmPtr)>>2)]=date.getSeconds();
-      HEAP32[(((tmPtr)+(4))>>2)]=date.getMinutes();
-      HEAP32[(((tmPtr)+(8))>>2)]=date.getHours();
-      HEAP32[(((tmPtr)+(12))>>2)]=date.getDate();
-      HEAP32[(((tmPtr)+(16))>>2)]=date.getMonth();
-      HEAP32[(((tmPtr)+(20))>>2)]=date.getFullYear()-1900;
-      HEAP32[(((tmPtr)+(24))>>2)]=date.getDay();
-  
-      var start = new Date(date.getFullYear(), 0, 1);
-      var yday = ((date.getTime() - start.getTime()) / (1000 * 60 * 60 * 
24))|0;
-      HEAP32[(((tmPtr)+(28))>>2)]=yday;
-      HEAP32[(((tmPtr)+(36))>>2)]=-(date.getTimezoneOffset() * 60);
-  
-      // Attention: DST is in December in South, and some regions don't have 
DST at all.
-      var summerOffset = new Date(2000, 6, 1).getTimezoneOffset();
-      var winterOffset = start.getTimezoneOffset();
-      var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == 
Math.min(winterOffset, summerOffset))|0;
-      HEAP32[(((tmPtr)+(32))>>2)]=dst;
-  
-      var zonePtr = HEAP32[(((__get_tzname())+(dst ? 4 : 0))>>2)];
-      HEAP32[(((tmPtr)+(40))>>2)]=zonePtr;
-  
-      return tmPtr;
-    }function _localtime(time) {
-      return _localtime_r(time, ___tm_current);
-    }
-
-  
-  function _emscripten_memcpy_big(dest, src, num) {
-      HEAPU8.set(HEAPU8.subarray(src, src+num), dest);
-      return dest;
-    } 
-
-   
-
-   
-
-  function _pthread_mutex_destroy() {}
-
-  function _pthread_mutex_init() {}
-
-   
-
-   
-
-   
-
-  
-  function __isLeapYear(year) {
-        return year%4 === 0 && (year%100 !== 0 || year%400 === 0);
-    }
-  
-  function __arraySum(array, index) {
-      var sum = 0;
-      for (var i = 0; i <= index; sum += array[i++]);
-      return sum;
-    }
-  
-  
-  var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];
-  
-  var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function 
__addDays(date, days) {
-      var newDate = new Date(date.getTime());
-      while(days > 0) {
-        var leap = __isLeapYear(newDate.getFullYear());
-        var currentMonth = newDate.getMonth();
-        var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : 
__MONTH_DAYS_REGULAR)[currentMonth];
-  
-        if (days > daysInCurrentMonth-newDate.getDate()) {
-          // we spill over to next month
-          days -= (daysInCurrentMonth-newDate.getDate()+1);
-          newDate.setDate(1);
-          if (currentMonth < 11) {
-            newDate.setMonth(currentMonth+1)
-          } else {
-            newDate.setMonth(0);
-            newDate.setFullYear(newDate.getFullYear()+1);
-          }
-        } else {
-          // we stay in current month
-          newDate.setDate(newDate.getDate()+days);
-          return newDate;
-        }
-      }
-  
-      return newDate;
-    }function _strftime(s, maxsize, format, tm) {
-      // size_t strftime(char *restrict s, size_t maxsize, const char 
*restrict format, const struct tm *restrict timeptr);
-      // http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html
-  
-      var tm_zone = HEAP32[(((tm)+(40))>>2)];
-  
-      var date = {
-        tm_sec: HEAP32[((tm)>>2)],
-        tm_min: HEAP32[(((tm)+(4))>>2)],
-        tm_hour: HEAP32[(((tm)+(8))>>2)],
-        tm_mday: HEAP32[(((tm)+(12))>>2)],
-        tm_mon: HEAP32[(((tm)+(16))>>2)],
-        tm_year: HEAP32[(((tm)+(20))>>2)],
-        tm_wday: HEAP32[(((tm)+(24))>>2)],
-        tm_yday: HEAP32[(((tm)+(28))>>2)],
-        tm_isdst: HEAP32[(((tm)+(32))>>2)],
-        tm_gmtoff: HEAP32[(((tm)+(36))>>2)],
-        tm_zone: tm_zone ? Pointer_stringify(tm_zone) : ''
-      };
-  
-      var pattern = Pointer_stringify(format);
-  
-      // expand format
-      var EXPANSION_RULES_1 = {
-        '%c': '%a %b %d %H:%M:%S %Y',     // Replaced by the locale's 
appropriate date and time representation - e.g., Mon Aug  3 14:02:01 2013
-        '%D': '%m/%d/%y',                 // Equivalent to %m / %d / %y
-        '%F': '%Y-%m-%d',                 // Equivalent to %Y - %m - %d
-        '%h': '%b',                       // Equivalent to %b
-        '%r': '%I:%M:%S %p',              // Replaced by the time in a.m. and 
p.m. notation
-        '%R': '%H:%M',                    // Replaced by the time in 24-hour 
notation
-        '%T': '%H:%M:%S',                 // Replaced by the time
-        '%x': '%m/%d/%y',                 // Replaced by the locale's 
appropriate date representation
-        '%X': '%H:%M:%S'                  // Replaced by the locale's 
appropriate date representation
-      };
-      for (var rule in EXPANSION_RULES_1) {
-        pattern = pattern.replace(new RegExp(rule, 'g'), 
EXPANSION_RULES_1[rule]);
-      }
-  
-      var WEEKDAYS = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 
'Friday', 'Saturday'];
-      var MONTHS = ['January', 'February', 'March', 'April', 'May', 'June', 
'July', 'August', 'September', 'October', 'November', 'December'];
-  
-      function leadingSomething(value, digits, character) {
-        var str = typeof value === 'number' ? value.toString() : (value || '');
-        while (str.length < digits) {
-          str = character[0]+str;
-        }
-        return str;
-      };
-  
-      function leadingNulls(value, digits) {
-        return leadingSomething(value, digits, '0');
-      };
-  
-      function compareByDay(date1, date2) {
-        function sgn(value) {
-          return value < 0 ? -1 : (value > 0 ? 1 : 0);
-        };
-  
-        var compare;
-        if ((compare = sgn(date1.getFullYear()-date2.getFullYear())) === 0) {
-          if ((compare = sgn(date1.getMonth()-date2.getMonth())) === 0) {
-            compare = sgn(date1.getDate()-date2.getDate());
-          }
-        }
-        return compare;
-      };
-  
-      function getFirstWeekStartDate(janFourth) {
-          switch (janFourth.getDay()) {
-            case 0: // Sunday
-              return new Date(janFourth.getFullYear()-1, 11, 29);
-            case 1: // Monday
-              return janFourth;
-            case 2: // Tuesday
-              return new Date(janFourth.getFullYear(), 0, 3);
-            case 3: // Wednesday
-              return new Date(janFourth.getFullYear(), 0, 2);
-            case 4: // Thursday
-              return new Date(janFourth.getFullYear(), 0, 1);
-            case 5: // Friday
-              return new Date(janFourth.getFullYear()-1, 11, 31);
-            case 6: // Saturday
-              return new Date(janFourth.getFullYear()-1, 11, 30);
-          }
-      };
-  
-      function getWeekBasedYear(date) {
-          var thisDate = __addDays(new Date(date.tm_year+1900, 0, 1), 
date.tm_yday);
-  
-          var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);
-          var janFourthNextYear = new Date(thisDate.getFullYear()+1, 0, 4);
-  
-          var firstWeekStartThisYear = 
getFirstWeekStartDate(janFourthThisYear);
-          var firstWeekStartNextYear = 
getFirstWeekStartDate(janFourthNextYear);
-  
-          if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {
-            // this date is after the start of the first week of this year
-            if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {
-              return thisDate.getFullYear()+1;
-            } else {
-              return thisDate.getFullYear();
-            }
-          } else {
-            return thisDate.getFullYear()-1;
-          }
-      };
-  
-      var EXPANSION_RULES_2 = {
-        '%a': function(date) {
-          return WEEKDAYS[date.tm_wday].substring(0,3);
-        },
-        '%A': function(date) {
-          return WEEKDAYS[date.tm_wday];
-        },
-        '%b': function(date) {
-          return MONTHS[date.tm_mon].substring(0,3);
-        },
-        '%B': function(date) {
-          return MONTHS[date.tm_mon];
-        },
-        '%C': function(date) {
-          var year = date.tm_year+1900;
-          return leadingNulls((year/100)|0,2);
-        },
-        '%d': function(date) {
-          return leadingNulls(date.tm_mday, 2);
-        },
-        '%e': function(date) {
-          return leadingSomething(date.tm_mday, 2, ' ');
-        },
-        '%g': function(date) {
-          // %g, %G, and %V give values according to the ISO 8601:2000 
standard week-based year.
-          // In this system, weeks begin on a Monday and week 1 of the year is 
the week that includes
-          // January 4th, which is also the week that includes the first 
Thursday of the year, and
-          // is also the first week that contains at least four days in the 
year.
-          // If the first Monday of January is the 2nd, 3rd, or 4th, the 
preceding days are part of
-          // the last week of the preceding year; thus, for Saturday 2nd 
January 1999,
-          // %G is replaced by 1998 and %V is replaced by 53. If December 
29th, 30th,
-          // or 31st is a Monday, it and any following days are part of week 1 
of the following year.
-          // Thus, for Tuesday 30th December 1997, %G is replaced by 1998 and 
%V is replaced by 01.
-  
-          return getWeekBasedYear(date).toString().substring(2);
-        },
-        '%G': function(date) {
-          return getWeekBasedYear(date);
-        },
-        '%H': function(date) {
-          return leadingNulls(date.tm_hour, 2);
-        },
-        '%I': function(date) {
-          var twelveHour = date.tm_hour;
-          if (twelveHour == 0) twelveHour = 12;
-          else if (twelveHour > 12) twelveHour -= 12;
-          return leadingNulls(twelveHour, 2);
-        },
-        '%j': function(date) {
-          // Day of the year (001-366)
-          return 
leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900) ? 
__MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon-1), 3);
-        },
-        '%m': function(date) {
-          return leadingNulls(date.tm_mon+1, 2);
-        },
-        '%M': function(date) {
-          return leadingNulls(date.tm_min, 2);
-        },
-        '%n': function() {
-          return '\n';
-        },
-        '%p': function(date) {
-          if (date.tm_hour >= 0 && date.tm_hour < 12) {
-            return 'AM';
-          } else {
-            return 'PM';
-          }
-        },
-        '%S': function(date) {
-          return leadingNulls(date.tm_sec, 2);
-        },
-        '%t': function() {
-          return '\t';
-        },
-        '%u': function(date) {
-          var day = new Date(date.tm_year+1900, date.tm_mon+1, date.tm_mday, 
0, 0, 0, 0);
-          return day.getDay() || 7;
-        },
-        '%U': function(date) {
-          // Replaced by the week number of the year as a decimal number 
[00,53].
-          // The first Sunday of January is the first day of week 1;
-          // days in the new year before this are in week 0. [ tm_year, 
tm_wday, tm_yday]
-          var janFirst = new Date(date.tm_year+1900, 0, 1);
-          var firstSunday = janFirst.getDay() === 0 ? janFirst : 
__addDays(janFirst, 7-janFirst.getDay());
-          var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday);
-  
-          // is target date after the first Sunday?
-          if (compareByDay(firstSunday, endDate) < 0) {
-            // calculate difference in days between first Sunday and endDate
-            var februaryFirstUntilEndMonth = 
__arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : 
__MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31;
-            var firstSundayUntilEndJanuary = 31-firstSunday.getDate();
-            var days = 
firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();
-            return leadingNulls(Math.ceil(days/7), 2);
-          }
-  
-          return compareByDay(firstSunday, janFirst) === 0 ? '01': '00';
-        },
-        '%V': function(date) {
-          // Replaced by the week number of the year (Monday as the first day 
of the week)
-          // as a decimal number [01,53]. If the week containing 1 January has 
four
-          // or more days in the new year, then it is considered week 1.
-          // Otherwise, it is the last week of the previous year, and the next 
week is week 1.
-          // Both January 4th and the first Thursday of January are always in 
week 1. [ tm_year, tm_wday, tm_yday]
-          var janFourthThisYear = new Date(date.tm_year+1900, 0, 4);
-          var janFourthNextYear = new Date(date.tm_year+1901, 0, 4);
-  
-          var firstWeekStartThisYear = 
getFirstWeekStartDate(janFourthThisYear);
-          var firstWeekStartNextYear = 
getFirstWeekStartDate(janFourthNextYear);
-  
-          var endDate = __addDays(new Date(date.tm_year+1900, 0, 1), 
date.tm_yday);
-  
-          if (compareByDay(endDate, firstWeekStartThisYear) < 0) {
-            // if given date is before this years first week, then it belongs 
to the 53rd week of last year
-            return '53';
-          }
-  
-          if (compareByDay(firstWeekStartNextYear, endDate) <= 0) {
-            // if given date is after next years first week, then it belongs 
to the 01th week of next year
-            return '01';
-          }
-  
-          // given date is in between CW 01..53 of this calendar year
-          var daysDifference;
-          if (firstWeekStartThisYear.getFullYear() < date.tm_year+1900) {
-            // first CW of this year starts last year
-            daysDifference = date.tm_yday+32-firstWeekStartThisYear.getDate()
-          } else {
-            // first CW of this year starts this year
-            daysDifference = date.tm_yday+1-firstWeekStartThisYear.getDate();
-          }
-          return leadingNulls(Math.ceil(daysDifference/7), 2);
-        },
-        '%w': function(date) {
-          var day = new Date(date.tm_year+1900, date.tm_mon+1, date.tm_mday, 
0, 0, 0, 0);
-          return day.getDay();
-        },
-        '%W': function(date) {
-          // Replaced by the week number of the year as a decimal number 
[00,53].
-          // The first Monday of January is the first day of week 1;
-          // days in the new year before this are in week 0. [ tm_year, 
tm_wday, tm_yday]
-          var janFirst = new Date(date.tm_year, 0, 1);
-          var firstMonday = janFirst.getDay() === 1 ? janFirst : 
__addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7-janFirst.getDay()+1);
-          var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday);
-  
-          // is target date after the first Monday?
-          if (compareByDay(firstMonday, endDate) < 0) {
-            var februaryFirstUntilEndMonth = 
__arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : 
__MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31;
-            var firstMondayUntilEndJanuary = 31-firstMonday.getDate();
-            var days = 
firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();
-            return leadingNulls(Math.ceil(days/7), 2);
-          }
-          return compareByDay(firstMonday, janFirst) === 0 ? '01': '00';
-        },
-        '%y': function(date) {
-          // Replaced by the last two digits of the year as a decimal number 
[00,99]. [ tm_year]
-          return (date.tm_year+1900).toString().substring(2);
-        },
-        '%Y': function(date) {
-          // Replaced by the year as a decimal number (for example, 1997). [ 
tm_year]
-          return date.tm_year+1900;
-        },
-        '%z': function(date) {
-          // Replaced by the offset from UTC in the ISO 8601:2000 standard 
format ( +hhmm or -hhmm ).
-          // For example, "-0430" means 4 hours 30 minutes behind UTC (west of 
Greenwich).
-          var off = date.tm_gmtoff;
-          var ahead = off >= 0;
-          off = Math.abs(off) / 60;
-          // convert from minutes into hhmm format (which means 60 minutes = 
100 units)
-          off = (off / 60)*100 + (off % 60);
-          return (ahead ? '+' : '-') + String("0000" + off).slice(-4);
-        },
-        '%Z': function(date) {
-          return date.tm_zone;
-        },
-        '%%': function() {
-          return '%';
-        }
-      };
-      for (var rule in EXPANSION_RULES_2) {
-        if (pattern.indexOf(rule) >= 0) {
-          pattern = pattern.replace(new RegExp(rule, 'g'), 
EXPANSION_RULES_2[rule](date));
-        }
-      }
-  
-      var bytes = intArrayFromString(pattern, false);
-      if (bytes.length > maxsize) {
-        return 0;
-      }
-  
-      writeArrayToMemory(bytes, s);
-      return bytes.length-1;
-    }
-
-  function _sysconf(name) {
-      // long sysconf(int name);
-      // http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html
-      switch(name) {
-        case 30: return PAGE_SIZE;
-        case 85:
-          var maxHeapSize = 2*1024*1024*1024 - 16777216;
-          maxHeapSize = HEAPU8.length;
-          return maxHeapSize / PAGE_SIZE;
-        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 1000;
-        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: {
-          if (typeof navigator === 'object') return 
navigator['hardwareConcurrency'] || 1;
-          return 1;
-        }
-      }
-      ___setErrNo(ERRNO_CODES.EINVAL);
-      return -1;
-    }
-
-  function _time(ptr) {
-      var ret = (Date.now()/1000)|0;
-      if (ptr) {
-        HEAP32[((ptr)>>2)]=ret;
-      }
-      return ret;
-    }
-FS.staticInit();__ATINIT__.unshift(function() { if (!Module["noFSInit"] && 
!FS.init.initialized) FS.init() });__ATMAIN__.push(function() { 
FS.ignorePermissions = false });__ATEXIT__.push(function() { FS.quit() });;
-__ATINIT__.unshift(function() { TTY.init() });__ATEXIT__.push(function() { 
TTY.shutdown() });;
-if (ENVIRONMENT_IS_NODE) { var fs = require("fs"); var NODEJS_PATH = 
require("path"); NODEFS.staticInit(); };
-DYNAMICTOP_PTR = staticAlloc(4);
-
-STACK_BASE = STACKTOP = alignMemory(STATICTOP);
-
-STACK_MAX = STACK_BASE + TOTAL_STACK;
-
-DYNAMIC_BASE = alignMemory(STACK_MAX);
-
-HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE;
-
-staticSealed = true; // seal the static portion of memory
-
-assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack");
-
-var ASSERTIONS = true;
-
-/** @type {function(string, boolean=, number=)} */
-function intArrayFromString(stringy, dontAddNull, length) {
-  var len = length > 0 ? length : lengthBytesUTF8(stringy)+1;
-  var u8array = new Array(len);
-  var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);
-  if (dontAddNull) u8array.length = numBytesWritten;
-  return u8array;
-}
-
-function intArrayToString(array) {
-  var ret = [];
-  for (var i = 0; i < array.length; i++) {
-    var chr = array[i];
-    if (chr > 0xFF) {
-      if (ASSERTIONS) {
-        assert(false, 'Character code ' + chr + ' (' + 
String.fromCharCode(chr) + ')  at offset ' + i + ' not in 0x00-0xFF.');
-      }
-      chr &= 0xFF;
-    }
-    ret.push(String.fromCharCode(chr));
-  }
-  return ret.join('');
-}
-
-
-// Copied from 
https://github.com/strophe/strophejs/blob/e06d027/src/polyfills.js#L149
-
-// This code was written by Tyler Akins and has been placed in the
-// public domain.  It would be nice if you left this header intact.
-// Base64 code from Tyler Akins -- http://rumkin.com
-
-/**
- * Decodes a base64 string.
- * @param {String} input The string to decode.
- */
-var decodeBase64 = typeof atob === 'function' ? atob : function (input) {
-  var keyStr = 
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
-
-  var output = '';
-  var chr1, chr2, chr3;
-  var enc1, enc2, enc3, enc4;
-  var i = 0;
-  // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
-  input = input.replace(/[^A-Za-z0-9\+\/\=]/g, '');
-  do {
-    enc1 = keyStr.indexOf(input.charAt(i++));
-    enc2 = keyStr.indexOf(input.charAt(i++));
-    enc3 = keyStr.indexOf(input.charAt(i++));
-    enc4 = keyStr.indexOf(input.charAt(i++));
-
-    chr1 = (enc1 << 2) | (enc2 >> 4);
-    chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
-    chr3 = ((enc3 & 3) << 6) | enc4;
-
-    output = output + String.fromCharCode(chr1);
-
-    if (enc3 !== 64) {
-      output = output + String.fromCharCode(chr2);
-    }
-    if (enc4 !== 64) {
-      output = output + String.fromCharCode(chr3);
-    }
-  } while (i < input.length);
-  return output;
-};
-
-// Converts a string of base64 into a byte array.
-// Throws error on invalid input.
-function intArrayFromBase64(s) {
-  if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) {
-    var buf;
-    try {
-      buf = Buffer.from(s, 'base64');
-    } catch (_) {
-      buf = new Buffer(s, 'base64');
-    }
-    return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
-  }
-
-  try {
-    var decoded = decodeBase64(s);
-    var bytes = new Uint8Array(decoded.length);
-    for (var i = 0 ; i < decoded.length ; ++i) {
-      bytes[i] = decoded.charCodeAt(i);
-    }
-    return bytes;
-  } catch (_) {
-    throw new Error('Converting base64 string to bytes failed.');
-  }
-}
-
-// If filename is a base64 data URI, parses and returns data (Buffer on node,
-// Uint8Array otherwise). If filename is not a base64 data URI, returns 
undefined.
-function tryParseAsDataURI(filename) {
-  if (!isDataURI(filename)) {
-    return;
-  }
-
-  return intArrayFromBase64(filename.slice(dataURIPrefix.length));
-}
-
-
-
-function nullFunc_ii(x) { err("Invalid function pointer called with signature 
'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method 
on a NULL pointer)? Or calling a function with an incorrect type, which will 
fail? (it is worth building your source files with -Werror (warnings are 
errors), as warnings can indicate undefined behavior which can cause this)");  
err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_iii(x) { err("Invalid function pointer called with signature 
'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual 
method on a NULL pointer)? Or calling a function with an incorrect type, which 
will fail? (it is worth building your source files with -Werror (warnings are 
errors), as warnings can indicate undefined behavior which can cause this)");  
err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_iiii(x) { err("Invalid function pointer called with 
signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_iiiii(x) { err("Invalid function pointer called with 
signature 'iiiii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_v(x) { err("Invalid function pointer called with signature 
'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method 
on a NULL pointer)? Or calling a function with an incorrect type, which will 
fail? (it is worth building your source files with -Werror (warnings are 
errors), as warnings can indicate undefined behavior which can cause this)");  
err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_vi(x) { err("Invalid function pointer called with signature 
'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method 
on a NULL pointer)? Or calling a function with an incorrect type, which will 
fail? (it is worth building your source files with -Werror (warnings are 
errors), as warnings can indicate undefined behavior which can cause this)");  
err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_vii(x) { err("Invalid function pointer called with signature 
'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual 
method on a NULL pointer)? Or calling a function with an incorrect type, which 
will fail? (it is worth building your source files with -Werror (warnings are 
errors), as warnings can indicate undefined behavior which can cause this)");  
err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_viii(x) { err("Invalid function pointer called with 
signature 'viii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_viiii(x) { err("Invalid function pointer called with 
signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_viiiii(x) { err("Invalid function pointer called with 
signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function nullFunc_viiiiii(x) { err("Invalid function pointer called with 
signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a 
virtual method on a NULL pointer)? Or calling a function with an incorrect 
type, which will fail? (it is worth building your source files with -Werror 
(warnings are errors), as warnings can indicate undefined behavior which can 
cause this)");  err("Build with ASSERTIONS=2 for more info.");abort(x) }
-
-function invoke_ii(index,a1) {
-  var sp = stackSave();
-  try {
-    return Module["dynCall_ii"](index,a1);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_iii(index,a1,a2) {
-  var sp = stackSave();
-  try {
-    return Module["dynCall_iii"](index,a1,a2);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_iiii(index,a1,a2,a3) {
-  var sp = stackSave();
-  try {
-    return Module["dynCall_iiii"](index,a1,a2,a3);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_iiiii(index,a1,a2,a3,a4) {
-  var sp = stackSave();
-  try {
-    return Module["dynCall_iiiii"](index,a1,a2,a3,a4);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_v(index) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_v"](index);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_vi(index,a1) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_vi"](index,a1);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_vii(index,a1,a2) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_vii"](index,a1,a2);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_viii(index,a1,a2,a3) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_viii"](index,a1,a2,a3);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_viiii(index,a1,a2,a3,a4) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_viiii"](index,a1,a2,a3,a4);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_viiiii(index,a1,a2,a3,a4,a5) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) {
-  var sp = stackSave();
-  try {
-    Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6);
-  } catch(e) {
-    stackRestore(sp);
-    if (typeof e !== 'number' && e !== 'longjmp') throw e;
-    Module["setThrew"](1, 0);
-  }
-}
-
-Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": 
Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": 
Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, 
"Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity };
-
-Module.asmLibraryArg = { "abort": abort, "assert": assert, "enlargeMemory": 
enlargeMemory, "getTotalMemory": getTotalMemory, "abortOnCannotGrowMemory": 
abortOnCannotGrowMemory, "abortStackOverflow": abortStackOverflow, 
"nullFunc_ii": nullFunc_ii, "nullFunc_iii": nullFunc_iii, "nullFunc_iiii": 
nullFunc_iiii, "nullFunc_iiiii": nullFunc_iiiii, "nullFunc_v": nullFunc_v, 
"nullFunc_vi": nullFunc_vi, "nullFunc_vii": nullFunc_vii, "nullFunc_viii": 
nullFunc_viii, "nullFunc_viiii": nullFunc_viiii, [...]
-// EMSCRIPTEN_START_ASM
-var asm = (/** @suppress {uselessCode} */ function(global, env, buffer) {
-'almost asm';
-
-
-  var HEAP8 = new global.Int8Array(buffer);
-  var HEAP16 = new global.Int16Array(buffer);
-  var HEAP32 = new global.Int32Array(buffer);
-  var HEAPU8 = new global.Uint8Array(buffer);
-  var HEAPU16 = new global.Uint16Array(buffer);
-  var HEAPU32 = new global.Uint32Array(buffer);
-  var HEAPF32 = new global.Float32Array(buffer);
-  var HEAPF64 = new global.Float64Array(buffer);
-
-  var DYNAMICTOP_PTR=env.DYNAMICTOP_PTR|0;
-  var tempDoublePtr=env.tempDoublePtr|0;
-  var STACKTOP=env.STACKTOP|0;
-  var STACK_MAX=env.STACK_MAX|0;
-
-  var __THREW__ = 0;
-  var threwValue = 0;
-  var setjmpId = 0;
-  var undef = 0;
-  var nan = global.NaN, inf = global.Infinity;
-  var tempInt = 0, tempBigInt = 0, tempBigIntS = 0, tempValue = 0, tempDouble 
= 0.0;
-  var tempRet0 = 0;
-
-  var Math_floor=global.Math.floor;
-  var Math_abs=global.Math.abs;
-  var Math_sqrt=global.Math.sqrt;
-  var Math_pow=global.Math.pow;
-  var Math_cos=global.Math.cos;
-  var Math_sin=global.Math.sin;
-  var Math_tan=global.Math.tan;
-  var Math_acos=global.Math.acos;
-  var Math_asin=global.Math.asin;
-  var Math_atan=global.Math.atan;
-  var Math_atan2=global.Math.atan2;
-  var Math_exp=global.Math.exp;
-  var Math_log=global.Math.log;
-  var Math_ceil=global.Math.ceil;
-  var Math_imul=global.Math.imul;
-  var Math_min=global.Math.min;
-  var Math_max=global.Math.max;
-  var Math_clz32=global.Math.clz32;
-  var abort=env.abort;
-  var assert=env.assert;
-  var enlargeMemory=env.enlargeMemory;
-  var getTotalMemory=env.getTotalMemory;
-  var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory;
-  var abortStackOverflow=env.abortStackOverflow;
-  var nullFunc_ii=env.nullFunc_ii;
-  var nullFunc_iii=env.nullFunc_iii;
-  var nullFunc_iiii=env.nullFunc_iiii;
-  var nullFunc_iiiii=env.nullFunc_iiiii;
-  var nullFunc_v=env.nullFunc_v;
-  var nullFunc_vi=env.nullFunc_vi;
-  var nullFunc_vii=env.nullFunc_vii;
-  var nullFunc_viii=env.nullFunc_viii;
-  var nullFunc_viiii=env.nullFunc_viiii;
-  var nullFunc_viiiii=env.nullFunc_viiiii;
-  var nullFunc_viiiiii=env.nullFunc_viiiiii;
-  var invoke_ii=env.invoke_ii;
-  var invoke_iii=env.invoke_iii;
-  var invoke_iiii=env.invoke_iiii;
-  var invoke_iiiii=env.invoke_iiiii;
-  var invoke_v=env.invoke_v;
-  var invoke_vi=env.invoke_vi;
-  var invoke_vii=env.invoke_vii;
-  var invoke_viii=env.invoke_viii;
-  var invoke_viiii=env.invoke_viiii;
-  var invoke_viiiii=env.invoke_viiiii;
-  var invoke_viiiiii=env.invoke_viiiiii;
-  var ___assert_fail=env.___assert_fail;
-  var ___buildEnvironment=env.___buildEnvironment;
-  var ___lock=env.___lock;
-  var ___setErrNo=env.___setErrNo;
-  var ___syscall140=env.___syscall140;
-  var ___syscall142=env.___syscall142;
-  var ___syscall145=env.___syscall145;
-  var ___syscall146=env.___syscall146;
-  var ___syscall192=env.___syscall192;
-  var ___syscall194=env.___syscall194;
-  var ___syscall195=env.___syscall195;
-  var ___syscall197=env.___syscall197;
-  var ___syscall199=env.___syscall199;
-  var ___syscall20=env.___syscall20;
-  var ___syscall201=env.___syscall201;
-  var ___syscall202=env.___syscall202;
-  var ___syscall221=env.___syscall221;
-  var ___syscall3=env.___syscall3;
-  var ___syscall33=env.___syscall33;
-  var ___syscall4=env.___syscall4;
-  var ___syscall5=env.___syscall5;
-  var ___syscall54=env.___syscall54;
-  var ___syscall6=env.___syscall6;
-  var ___syscall64=env.___syscall64;
-  var ___syscall77=env.___syscall77;
-  var ___syscall91=env.___syscall91;
-  var ___unlock=env.___unlock;
-  var __addDays=env.__addDays;
-  var __arraySum=env.__arraySum;
-  var __isLeapYear=env.__isLeapYear;
-  var _abort=env._abort;
-  var _atexit=env._atexit;
-  var _clock=env._clock;
-  var _emscripten_memcpy_big=env._emscripten_memcpy_big;
-  var _getenv=env._getenv;
-  var _gettimeofday=env._gettimeofday;
-  var _llvm_stackrestore=env._llvm_stackrestore;
-  var _llvm_stacksave=env._llvm_stacksave;
-  var _localtime=env._localtime;
-  var _localtime_r=env._localtime_r;
-  var _pthread_mutex_destroy=env._pthread_mutex_destroy;
-  var _pthread_mutex_init=env._pthread_mutex_init;
-  var _strftime=env._strftime;
-  var _sysconf=env._sysconf;
-  var _time=env._time;
-  var _tzset=env._tzset;
-  var tempFloat = 0.0;
-
-// EMSCRIPTEN_START_FUNCS
-
-function stackAlloc(size) {
-  size = size|0;
-  var ret = 0;
-  ret = STACKTOP;
-  STACKTOP = (STACKTOP + size)|0;
-  STACKTOP = (STACKTOP + 15)&-16;
-  if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(size|0);
-
-  return ret|0;
-}
-function stackSave() {
-  return STACKTOP|0;
-}
-function stackRestore(top) {
-  top = top|0;
-  STACKTOP = top;
-}
-function establishStackSpace(stackBase, stackMax) {
-  stackBase = stackBase|0;
-  stackMax = stackMax|0;
-  STACKTOP = stackBase;
-  STACK_MAX = stackMax;
-}
-
-function setThrew(threw, value) {
-  threw = threw|0;
-  value = value|0;
-  if ((__THREW__|0) == 0) {
-    __THREW__ = threw;
-    threwValue = value;
-  }
-}
-
-function setTempRet0(value) {
-  value = value|0;
-  tempRet0 = value;
-}
-function getTempRet0() {
-  return tempRet0|0;
-}
-
-function _TALER_WRALL_eddsa_public_key_from_private($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $3 = (_GNUNET_xmalloc_(32,41052,38)|0);
- $2 = $3;
- $4 = $1;
- $5 = $2;
- _GNUNET_CRYPTO_eddsa_key_get_public($4,$5);
- $6 = $2;
- STACKTOP = sp;return ($6|0);
-}
-function _TALER_WRALL_ecdsa_public_key_from_private($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $3 = (_GNUNET_xmalloc_(32,41052,56)|0);
- $2 = $3;
- $4 = $1;
- $5 = $2;
- _GNUNET_CRYPTO_ecdsa_key_get_public($4,$5);
- $6 = $2;
- STACKTOP = sp;return ($6|0);
-}
-function _TALER_WRALL_ecdhe_public_key_from_private($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $3 = (_GNUNET_xmalloc_(32,41052,73)|0);
- $2 = $3;
- $4 = $1;
- $5 = $2;
- _GNUNET_CRYPTO_ecdhe_key_get_public($4,$5);
- $6 = $2;
- STACKTOP = sp;return ($6|0);
-}
-function _TALER_WRALL_purpose_create($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $3 = $0;
- $4 = $1;
- $5 = $2;
- $8 = $5;
- $9 = (8 + ($8))|0;
- $7 = $9;
- $10 = $7;
- $11 = (_GNUNET_xmalloc_($10,41052,87)|0);
- $6 = $11;
- $12 = $6;
- $13 = ((($12)) + 8|0);
- $14 = $4;
- $15 = $5;
- _memcpy(($13|0),($14|0),($15|0))|0;
- $16 = $3;
- $17 = (_htonl($16)|0);
- $18 = $6;
- $19 = ((($18)) + 4|0);
- 
HEAP8[$19>>0]=$17&255;HEAP8[$19+1>>0]=($17>>8)&255;HEAP8[$19+2>>0]=($17>>16)&255;HEAP8[$19+3>>0]=$17>>24;
- $20 = $7;
- $21 = (_htonl($20)|0);
- $22 = $6;
- 
HEAP8[$22>>0]=$21&255;HEAP8[$22+1>>0]=($21>>8)&255;HEAP8[$22+2>>0]=($21>>16)&255;HEAP8[$22+3>>0]=$21>>24;
- $23 = $6;
- STACKTOP = sp;return ($23|0);
-}
-function _TALER_WRALL_get_amount($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $5 = sp + 24|0;
- $8 = sp;
- $10 = $5;
- $11 = $10;
- HEAP32[$11>>2] = $0;
- $12 = (($10) + 4)|0;
- $13 = $12;
- HEAP32[$13>>2] = $1;
- $6 = $2;
- $7 = $3;
- $14 = $7;
- $15 = (_TALER_amount_get_zero($14,$8)|0);
- $16 = (1)!=($15|0);
- if ($16) {
-  $4 = 0;
-  $32 = $4;
-  STACKTOP = sp;return ($32|0);
- } else {
-  $17 = $5;
-  $18 = $17;
-  $19 = HEAP32[$18>>2]|0;
-  $20 = (($17) + 4)|0;
-  $21 = $20;
-  $22 = HEAP32[$21>>2]|0;
-  $23 = $8;
-  $24 = $23;
-  HEAP32[$24>>2] = $19;
-  $25 = (($23) + 4)|0;
-  $26 = $25;
-  HEAP32[$26>>2] = $22;
-  $27 = $6;
-  $28 = ((($8)) + 8|0);
-  HEAP32[$28>>2] = $27;
-  $29 = (_GNUNET_xmalloc_(24,41052,117)|0);
-  $9 = $29;
-  $30 = $9;
-  
;HEAP32[$30>>2]=HEAP32[$8>>2]|0;HEAP32[$30+4>>2]=HEAP32[$8+4>>2]|0;HEAP32[$30+8>>2]=HEAP32[$8+8>>2]|0;HEAP32[$30+12>>2]=HEAP32[$8+12>>2]|0;HEAP32[$30+16>>2]=HEAP32[$8+16>>2]|0;HEAP32[$30+20>>2]=HEAP32[$8+20>>2]|0;
-  $31 = $9;
-  $4 = $31;
-  $32 = $4;
-  STACKTOP = sp;return ($32|0);
- }
- return (0)|0;
-}
-function _TALER_WR_get_value($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $2 = $1;
- $3 = $2;
- $4 = $3;
- $5 = HEAP32[$4>>2]|0;
- $6 = (($3) + 4)|0;
- $7 = $6;
- $8 = HEAP32[$7>>2]|0;
- tempRet0 = ($8);
- STACKTOP = sp;return ($5|0);
-}
-function _TALER_WR_get_fraction($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $2 = $1;
- $3 = ((($2)) + 8|0);
- $4 = HEAP32[$3>>2]|0;
- STACKTOP = sp;return ($4|0);
-}
-function _TALER_WR_get_currency($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = $0;
- $2 = $1;
- $3 = ((($2)) + 12|0);
- STACKTOP = sp;return ($3|0);
-}
-function _GNUNET_xmalloc_($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 
0, $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 
0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = ($0>>>0)<(41943041);
- if (!($3)) {
-  $4 = HEAP32[9364]|0;
-  $5 = ($4|0)==(-1);
-  if ($5) {
-   $6 = (_GNUNET_get_log_call_status(1,0,41059,41079,72)|0);
-   HEAP32[9364] = $6;
-  }
-  $7 = (_GNUNET_get_log_skip()|0);
-  $8 = ($7|0)>(0);
-  if ($8) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $9 = HEAP32[9364]|0;
-  $10 = ($9|0)==(0);
-  if ($10) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = $1;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $2;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $11 = (_malloc($0)|0);
- $12 = ($11|0)==(0|0);
- if (!($12)) {
-  _memset(($11|0),0,($0|0))|0;
-  STACKTOP = sp;return ($11|0);
- }
- $13 = HEAP32[9365]|0;
- $14 = ($13|0)==(-1);
- if ($14) {
-  $15 = (_GNUNET_get_log_call_status(1,41095,41059,41079,79)|0);
-  HEAP32[9365] = $15;
- }
- $16 = (_GNUNET_get_log_skip()|0);
- $17 = ($16|0)>(0);
- if ($17) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $18 = HEAP32[9365]|0;
-  $19 = ($18|0)==(0);
-  if (!($19)) {
-   $20 = (___errno_location()|0);
-   $21 = HEAP32[$20>>2]|0;
-   $22 = (_strerror($21)|0);
-   HEAP32[$vararg_buffer2>>2] = 41118;
-   $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-   HEAP32[$vararg_ptr5>>2] = 41059;
-   $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-   HEAP32[$vararg_ptr6>>2] = 79;
-   $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-   HEAP32[$vararg_ptr7>>2] = $22;
-   _GNUNET_log_from_nocheck(1,41095,42643,$vararg_buffer2);
-  }
- }
- $23 = HEAP32[9366]|0;
- $24 = ($23|0)==(-1);
- if ($24) {
-  $25 = (_GNUNET_get_log_call_status(1,0,41059,41079,80)|0);
-  HEAP32[9366] = $25;
- }
- $26 = (_GNUNET_get_log_skip()|0);
- $27 = ($26|0)>(0);
- if ($27) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $28 = HEAP32[9366]|0;
- $29 = ($28|0)==(0);
- if ($29) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer8>>2] = 41059;
- $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
- HEAP32[$vararg_ptr11>>2] = 80;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_xfree_($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = ($0|0)==(0|0);
- if (!($3)) {
-  _free($0);
-  STACKTOP = sp;return;
- }
- $4 = HEAP32[9367]|0;
- $5 = ($4|0)==(-1);
- if ($5) {
-  $6 = (_GNUNET_get_log_call_status(1,0,41059,41125,318)|0);
-  HEAP32[9367] = $6;
- }
- $7 = (_GNUNET_get_log_skip()|0);
- $8 = ($7|0)>(0);
- if ($8) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $9 = HEAP32[9367]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = $1;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $2;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_snprintf($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp + 16|0;
- $3 = sp;
- HEAP32[$3>>2] = $varargs;
- $4 = (_vsnprintf($0,$1,$2,$3)|0);
- $5 = ($4|0)>(-1);
- $6 = ($4>>>0)<($1>>>0);
- $or$cond = $5 & $6;
- if ($or$cond) {
-  STACKTOP = sp;return ($4|0);
- }
- $7 = HEAP32[9368]|0;
- $8 = ($7|0)==(-1);
- if ($8) {
-  $9 = (_GNUNET_get_log_call_status(1,0,41059,41139,518)|0);
-  HEAP32[9368] = $9;
- }
- $10 = (_GNUNET_get_log_skip()|0);
- $11 = ($10|0)>(0);
- if ($11) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[9368]|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 41059;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 518;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_util_cl_init() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[10138]|0;
- HEAP32[18074] = $0;
- return;
-}
-function _GNUNET_util_cl_fini() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function _GNUNET_abort_() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- _abort();
- // unreachable;
-}
-function _GNUNET_get_log_call_status($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$0$in = 0, $$02629$us = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $or$cond = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ($1|0)==(0|0);
- $spec$select = $5 ? 0 : $1;
- $6 = (0)>(-1);
- $7 = (0)==(0);
- $or$cond = $6 & $7;
- if ($or$cond) {
-  $8 = (0)>=($0|0);
-  $$0$in = $8;
-  $$0 = $$0$in&1;
-  return ($$0|0);
- }
- $9 = (0)>(0);
- if ($9) {
-  $$02629$us = 0;
-  while(1) {
-   $10 = (((0 + (($$02629$us*112)|0)|0)) + 108|0);
-   $11 = HEAP32[$10>>2]|0;
-   $12 = ($11|0)==(0);
-   if (!($12)) {
-    $13 = (((0 + (($$02629$us*112)|0)|0)) + 96|0);
-    $14 = HEAP32[$13>>2]|0;
-    $15 = ($14|0)>($4|0);
-    if (!($15)) {
-     $16 = (((0 + (($$02629$us*112)|0)|0)) + 100|0);
-     $17 = HEAP32[$16>>2]|0;
-     $18 = ($17|0)<($4|0);
-     if (!($18)) {
-      $19 = (0 + (($$02629$us*112)|0)|0);
-      $20 = (_regexec($19,$spec$select,0,0,0)|0);
-      $21 = ($20|0)==(0);
-      if ($21) {
-       $22 = (((0 + (($$02629$us*112)|0)|0)) + 32|0);
-       $23 = (_regexec($22,$2,0,0,0)|0);
-       $24 = ($23|0)==(0);
-       if ($24) {
-        $25 = (((0 + (($$02629$us*112)|0)|0)) + 64|0);
-        (_regexec($25,$3,0,0,0)|0);
-       }
-      }
-     }
-    }
-   }
-   $26 = (($$02629$us) + 1)|0;
-   $27 = ($26|0)<(0);
-   if ($27) {
-    $$02629$us = $26;
-   } else {
-    break;
-   }
-  }
- }
- $28 = (0)>(-1);
- if ($28) {
-  $29 = (0)>=($0|0);
-  $$0$in = $29;
-  $$0 = $$0$in&1;
-  return ($$0|0);
- } else {
-  $30 = ($0|0)<(5);
-  $$0$in = $30;
-  $$0 = $$0$in&1;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _GNUNET_log_nocheck($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- HEAP32[$2>>2] = $varargs;
- _mylog($0,0,$1,$2);
- STACKTOP = sp;return;
-}
-function _mylog($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$$i = 0, $$0$i = 0, $$015$i = 0, $$016$i = 0, $$alloca_mul = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, 
$19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $last_bulk_time$byval_copy = 0, $or$cond = 0, 
$or$cond$i = 0, $or$cond3 = 0, $spec$select$i = 0, $vacopy_currentptr = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, $vararg_buffer8 = 
0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, 
dest = 0, label = 0, sp = 0;
- var src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(208|0);
- $last_bulk_time$byval_copy = sp + 184|0;
- $vararg_buffer8 = sp + 168|0;
- $vararg_buffer5 = sp + 160|0;
- $vararg_buffer2 = sp + 152|0;
- $vararg_buffer = sp + 144|0;
- $4 = sp + 80|0;
- $5 = sp + 16|0;
- $6 = sp;
- $7 = sp + 192|0;
- $vacopy_currentptr = HEAP32[$3>>2]|0;
- HEAP32[$6>>2] = $vacopy_currentptr;
- $8 = (_vsnprintf(0,0,$2,$6)|0);
- $9 = (($8) + 1)|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  $11 = HEAP32[9369]|0;
-  $12 = ($11|0)==(-1);
-  if ($12) {
-   $13 = (_GNUNET_get_log_call_status(1,0,41155,41178,968)|0);
-   HEAP32[9369] = $13;
-   $18 = $13;
-  } else {
-   $18 = $11;
-  }
-  $14 = HEAP32[18075]|0;
-  $15 = ($14|0)>(0);
-  if ($15) {
-   $16 = (($14) + -1)|0;
-   HEAP32[18075] = $16;
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $17 = ($18|0)==(0);
-  if ($17) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41155;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 968;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- dest=$4; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $19 = (_llvm_stacksave()|0);
- $$alloca_mul = $9;
- $20 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
- (_gettimeofday(($7|0),(0|0))|0);
- $21 = (_GNUNET_TIME_get_offset()|0);
- $22 = tempRet0;
- $23 = ($22|0)>(0);
- $24 = ($21>>>0)>(0);
- $25 = ($22|0)==(0);
- $26 = $25 & $24;
- $27 = $23 | $26;
- $28 = (___divdi3(($21|0),($22|0),1000,0)|0);
- $29 = tempRet0;
- $30 = HEAP32[$7>>2]|0;
- $31 = (($30) + ($28))|0;
- HEAP32[$7>>2] = $31;
- do {
-  if ($27) {
-   $32 = (___uremdi3(($21|0),($22|0),1000,0)|0);
-   $33 = tempRet0;
-   $34 = ((($7)) + 4|0);
-   $35 = HEAP32[$34>>2]|0;
-   $36 = ($32*1000)|0;
-   $37 = (($35) + ($36))|0;
-   HEAP32[$34>>2] = $37;
-   $38 = ($37|0)>(1000000);
-   if ($38) {
-    $39 = (($31) + 1)|0;
-    $40 = (($37) + -1000000)|0;
-    HEAP32[$34>>2] = $40;
-    HEAP32[$7>>2] = $39;
-   }
-  } else {
-   $41 = ((($7)) + 4|0);
-   $42 = HEAP32[$41>>2]|0;
-   $43 = ($42|0)<(0);
-   $44 = $43 << 31 >> 31;
-   $45 = (___muldi3(($28|0),($29|0),1000,0)|0);
-   $46 = tempRet0;
-   $47 = (_i64Subtract(($21|0),($22|0),($45|0),($46|0))|0);
-   $48 = tempRet0;
-   $49 = (___muldi3(($47|0),($48|0),-1000,-1)|0);
-   $50 = tempRet0;
-   $51 = ($50|0)<($44|0);
-   $52 = ($49>>>0)<($42>>>0);
-   $53 = ($50|0)==($44|0);
-   $54 = $53 & $52;
-   $55 = $51 | $54;
-   $56 = ($47*1000)|0;
-   $57 = (($42) + ($56))|0;
-   if ($55) {
-    HEAP32[$41>>2] = $57;
-    break;
-   } else {
-    $58 = (($57) + 1000000)|0;
-    HEAP32[$41>>2] = $58;
-    $59 = (($31) + -1)|0;
-    HEAP32[$7>>2] = $59;
-    break;
-   }
-  }
- } while(0);
- $60 = (_localtime(($7|0))|0);
- $61 = ($60|0)==(0|0);
- if ($61) {
-  dest=$4; src=41184; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- } else {
-  $62 = (_strftime(($5|0),64,(41200|0),($60|0))|0);
-  $63 = ($62|0)==(0);
-  if ($63) {
-   _abort();
-   // unreachable;
-  }
-  $64 = ((($7)) + 4|0);
-  $65 = HEAP32[$64>>2]|0;
-  HEAP32[$vararg_buffer2>>2] = $65;
-  $66 = (_snprintf($4,64,$5,$vararg_buffer2)|0);
-  $67 = ($66|0)<(0);
-  if ($67) {
-   _abort();
-   // unreachable;
-  }
- }
- (_vsnprintf($20,$9,$2,$3)|0);
- $68 = $0 & 64;
- $69 = ($68|0)!=(0);
- $70 = 72288;
- $71 = $70;
- $72 = HEAP32[$71>>2]|0;
- $73 = (($70) + 4)|0;
- $74 = $73;
- $75 = HEAP32[$74>>2]|0;
- $76 = ($72|0)!=(0);
- $77 = ($75|0)!=(0);
- $78 = $76 | $77;
- $or$cond = $69 & $78;
- if ($or$cond) {
-  $79 = (_strncmp($20,70688,256)|0);
-  $80 = ($79|0)==(0);
-  if ($80) {
-   $81 = HEAP32[18076]|0;
-   $82 = (($81) + 1)|0;
-   HEAP32[18076] = $82;
-   
;HEAP32[$last_bulk_time$byval_copy>>2]=HEAP32[72288>>2]|0;HEAP32[$last_bulk_time$byval_copy+4>>2]=HEAP32[72288+4>>2]|0;
-   $83 = (_GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy)|0);
-   $84 = tempRet0;
-   $85 = ($84>>>0)>(10);
-   $86 = ($83>>>0)>(250327040);
-   $87 = ($84|0)==(10);
-   $88 = $87 & $86;
-   $89 = $85 | $88;
-   $90 = HEAP32[18076]|0;
-   $91 = ($90>>>0)>(1000);
-   $or$cond3 = $89 | $91;
-   if ($or$cond3) {
-    _flush_bulk($4);
-   }
-   _llvm_stackrestore(($19|0));
-   STACKTOP = sp;return;
-  }
- }
- _flush_bulk($4);
- (_strncpy(70688,$20,256)|0);
- HEAP32[18076] = 0;
- HEAP32[18077] = $0;
- $92 = (_GNUNET_TIME_absolute_get()|0);
- $93 = tempRet0;
- $94 = 72288;
- $95 = $94;
- HEAP32[$95>>2] = $92;
- $96 = (($94) + 4)|0;
- $97 = $96;
- HEAP32[$97>>2] = $93;
- (_strncpy(70944,$1,32)|0);
- $98 = HEAP32[18074]|0;
- $99 = ($98|0)!=(0|0);
- $100 = (0|0)==(0|0);
- $or$cond$i = $99 & $100;
- if ($or$cond$i) {
-  $101 = ($0|0)==(4);
-  if ($101) {
-   HEAP32[$vararg_buffer5>>2] = $20;
-   (_fprintf($98,41221,$vararg_buffer5)|0);
-  } else {
-   $102 = $0 & 1;
-   $103 = ($102|0)==(0);
-   if ($103) {
-    $104 = $0 & 2;
-    $105 = ($104|0)==(0);
-    if ($105) {
-     $106 = $0 & 4;
-     $107 = ($106|0)==(0);
-     if ($107) {
-      $108 = $0 & 8;
-      $109 = ($108|0)==(0);
-      if ($109) {
-       $110 = $0 & 16;
-       $111 = ($110|0)==(0);
-       $112 = $0 & -65;
-       $113 = ($112|0)==(0);
-       $$$i = $113 ? 41226 : 41231;
-       $spec$select$i = $111 ? $$$i : 41239;
-       $114 = $spec$select$i;
-      } else {
-       $114 = 41267;
-      }
-     } else {
-      $114 = 41259;
-     }
-    } else {
-     $114 = 41251;
-    }
-   } else {
-    $114 = 41245;
-   }
-   HEAP32[$vararg_buffer8>>2] = $4;
-   $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-   HEAP32[$vararg_ptr11>>2] = $1;
-   $vararg_ptr12 = ((($vararg_buffer8)) + 8|0);
-   HEAP32[$vararg_ptr12>>2] = $114;
-   $vararg_ptr13 = ((($vararg_buffer8)) + 12|0);
-   HEAP32[$vararg_ptr13>>2] = $20;
-   (_fprintf($98,41272,$vararg_buffer8)|0);
-  }
-  $115 = HEAP32[18074]|0;
-  (_fflush($115)|0);
-  $$015$i = 0;
- } else {
-  $$015$i = 0;
- }
- $116 = ($$015$i|0)==(0|0);
- if (!($116)) {
-  $$016$i = $$015$i;
-  while(1) {
-   $117 = ((($$016$i)) + 4|0);
-   $118 = HEAP32[$117>>2]|0;
-   $119 = ((($$016$i)) + 8|0);
-   $120 = HEAP32[$119>>2]|0;
-   FUNCTION_TABLE_viiiii[$118 & 127]($120,$0,$1,$4,$20);
-   $$0$i = HEAP32[$$016$i>>2]|0;
-   $121 = ($$0$i|0)==(0|0);
-   if ($121) {
-    break;
-   } else {
-    $$016$i = $$0$i;
-   }
-  }
- }
- _llvm_stackrestore(($19|0));
- STACKTOP = sp;return;
-}
-function _flush_bulk($0) {
- $0 = $0|0;
- var $$$i = 0, $$0$i = 0, $$014 = 0, $$015$i = 0, $$016$i = 0, $$byval_copy = 
0, $$byval_copy20 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0;
- var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $last_bulk_time$byval_copy = 0, 
$last_bulk_time$byval_copy19 = 0, $or$cond = 0, $or$cond$i = 0, $spec$select = 
0, $spec$select$i = 0, $vararg_buffer = 0;
- var $vararg_buffer10 = 0, $vararg_buffer13 = 0, $vararg_buffer4 = 0, 
$vararg_ptr1 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 0, 
$vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, 
$vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 672|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(672|0);
- $$byval_copy20 = sp + 664|0;
- $last_bulk_time$byval_copy19 = sp + 656|0;
- $$byval_copy = sp + 648|0;
- $last_bulk_time$byval_copy = sp + 640|0;
- $vararg_buffer13 = sp + 624|0;
- $vararg_buffer10 = sp + 616|0;
- $vararg_buffer4 = sp + 600|0;
- $vararg_buffer = sp + 584|0;
- $1 = sp;
- $2 = sp + 576|0;
- $3 = 72288;
- $4 = $3;
- $5 = HEAP32[$4>>2]|0;
- $6 = (($3) + 4)|0;
- $7 = $6;
- $8 = HEAP32[$7>>2]|0;
- $9 = ($5|0)==(0);
- $10 = ($8|0)==(0);
- $11 = $9 & $10;
- $12 = HEAP32[18076]|0;
- $13 = ($12|0)==(0);
- $or$cond = $11 | $13;
- if ($or$cond) {
-  STACKTOP = sp;return;
- }
- $14 = (_memchr(70688,0,256)|0);
- $15 = ($14|0)==(0|0);
- $16 = ($14|0)==(70688|0);
- $17 = ((($14)) + -1|0);
- $spec$select = $16 ? 70688 : $17;
- $$014 = $15 ? (70943) : $spec$select;
- $18 = HEAP8[$$014>>0]|0;
- $19 = ($18<<24>>24)==(10);
- if ($19) {
-  HEAP8[$$014>>0] = 0;
-  
;HEAP32[$last_bulk_time$byval_copy>>2]=HEAP32[72288>>2]|0;HEAP32[$last_bulk_time$byval_copy+4>>2]=HEAP32[72288+4>>2]|0;
-  $20 = (_GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy)|0);
-  $21 = tempRet0;
-  $22 = $2;
-  $23 = $22;
-  HEAP32[$23>>2] = $20;
-  $24 = (($22) + 4)|0;
-  $25 = $24;
-  HEAP32[$25>>2] = $21;
-  
;HEAP32[$$byval_copy>>2]=HEAP32[$2>>2]|0;HEAP32[$$byval_copy+4>>2]=HEAP32[$2+4>>2]|0;
-  $26 = (_GNUNET_STRINGS_relative_time_to_string($$byval_copy,1)|0);
-  $27 = HEAP32[18076]|0;
-  HEAP32[$vararg_buffer>>2] = 256;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 70688;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = $27;
-  $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-  HEAP32[$vararg_ptr3>>2] = $26;
-  (_snprintf($1,576,41284,$vararg_buffer)|0);
-  HEAP8[$$014>>0] = 10;
- } else {
-  
;HEAP32[$last_bulk_time$byval_copy19>>2]=HEAP32[72288>>2]|0;HEAP32[$last_bulk_time$byval_copy19+4>>2]=HEAP32[72288+4>>2]|0;
-  $28 = (_GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy19)|0);
-  $29 = tempRet0;
-  $30 = $2;
-  $31 = $30;
-  HEAP32[$31>>2] = $28;
-  $32 = (($30) + 4)|0;
-  $33 = $32;
-  HEAP32[$33>>2] = $29;
-  
;HEAP32[$$byval_copy20>>2]=HEAP32[$2>>2]|0;HEAP32[$$byval_copy20+4>>2]=HEAP32[$2+4>>2]|0;
-  $34 = (_GNUNET_STRINGS_relative_time_to_string($$byval_copy20,1)|0);
-  $35 = HEAP32[18076]|0;
-  HEAP32[$vararg_buffer4>>2] = 256;
-  $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
-  HEAP32[$vararg_ptr7>>2] = 70688;
-  $vararg_ptr8 = ((($vararg_buffer4)) + 8|0);
-  HEAP32[$vararg_ptr8>>2] = $35;
-  $vararg_ptr9 = ((($vararg_buffer4)) + 12|0);
-  HEAP32[$vararg_ptr9>>2] = $34;
-  (_snprintf($1,576,41284,$vararg_buffer4)|0);
- }
- $36 = HEAP32[18077]|0;
- $37 = HEAP32[18074]|0;
- $38 = ($37|0)!=(0|0);
- $39 = (0|0)==(0|0);
- $or$cond$i = $38 & $39;
- if ($or$cond$i) {
-  $40 = ($36|0)==(4);
-  if ($40) {
-   HEAP32[$vararg_buffer10>>2] = $1;
-   (_fprintf($37,41221,$vararg_buffer10)|0);
-  } else {
-   $41 = $36 & 1;
-   $42 = ($41|0)==(0);
-   if ($42) {
-    $43 = $36 & 2;
-    $44 = ($43|0)==(0);
-    if ($44) {
-     $45 = $36 & 4;
-     $46 = ($45|0)==(0);
-     if ($46) {
-      $47 = $36 & 8;
-      $48 = ($47|0)==(0);
-      if ($48) {
-       $49 = $36 & 16;
-       $50 = ($49|0)==(0);
-       $51 = $36 & -65;
-       $52 = ($51|0)==(0);
-       $$$i = $52 ? 41226 : 41231;
-       $spec$select$i = $50 ? $$$i : 41239;
-       $53 = $spec$select$i;
-      } else {
-       $53 = 41267;
-      }
-     } else {
-      $53 = 41259;
-     }
-    } else {
-     $53 = 41251;
-    }
-   } else {
-    $53 = 41245;
-   }
-   HEAP32[$vararg_buffer13>>2] = $0;
-   $vararg_ptr16 = ((($vararg_buffer13)) + 4|0);
-   HEAP32[$vararg_ptr16>>2] = 70944;
-   $vararg_ptr17 = ((($vararg_buffer13)) + 8|0);
-   HEAP32[$vararg_ptr17>>2] = $53;
-   $vararg_ptr18 = ((($vararg_buffer13)) + 12|0);
-   HEAP32[$vararg_ptr18>>2] = $1;
-   (_fprintf($37,41272,$vararg_buffer13)|0);
-  }
-  $54 = HEAP32[18074]|0;
-  (_fflush($54)|0);
-  $$015$i = 0;
- } else {
-  $$015$i = 0;
- }
- $55 = ($$015$i|0)==(0|0);
- if (!($55)) {
-  $$016$i = $$015$i;
-  while(1) {
-   $56 = ((($$016$i)) + 4|0);
-   $57 = HEAP32[$56>>2]|0;
-   $58 = ((($$016$i)) + 8|0);
-   $59 = HEAP32[$58>>2]|0;
-   FUNCTION_TABLE_viiiii[$57 & 127]($59,$36,70944,$0,$1);
-   $$0$i = HEAP32[$$016$i>>2]|0;
-   $60 = ($$0$i|0)==(0|0);
-   if ($60) {
-    break;
-   } else {
-    $$016$i = $$0$i;
-   }
-  }
- }
- $61 = (_GNUNET_TIME_absolute_get()|0);
- $62 = tempRet0;
- $63 = 72288;
- $64 = $63;
- HEAP32[$64>>2] = $61;
- $65 = (($63) + 4)|0;
- $66 = $65;
- HEAP32[$66>>2] = $62;
- HEAP32[18076] = 0;
- STACKTOP = sp;return;
-}
-function _GNUNET_get_log_skip() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18075]|0;
- return ($0|0);
-}
-function _GNUNET_log_skip($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, 
$vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ($0|0)==(0);
- $3 = HEAP32[18075]|0;
- if (!($2)) {
-  $13 = (($3) + ($0))|0;
-  HEAP32[18075] = $13;
-  STACKTOP = sp;return;
- }
- $4 = ($3|0)==(0);
- HEAP32[18075] = 0;
- $5 = ($1|0)==(0);
- $or$cond = $5 | $4;
- if ($or$cond) {
-  STACKTOP = sp;return;
- }
- $6 = HEAP32[9370]|0;
- $7 = ($6|0)==(-1);
- if ($7) {
-  $8 = (_GNUNET_get_log_call_status(1,0,41155,41333,922)|0);
-  HEAP32[9370] = $8;
-  $$pre = HEAP32[18075]|0;
-  $9 = ($$pre|0)>(0);
-  if ($9) {
-   $10 = (($$pre) + -1)|0;
-   HEAP32[18075] = $10;
-   STACKTOP = sp;return;
-  } else {
-   $12 = $8;
-  }
- } else {
-  $12 = $6;
- }
- $11 = ($12|0)==(0);
- if ($11) {
-  STACKTOP = sp;return;
- }
- HEAP32[$vararg_buffer>>2] = 41155;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 922;
- _GNUNET_log_nocheck(1,43837,$vararg_buffer);
- STACKTOP = sp;return;
-}
-function _GNUNET_log_from_nocheck($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $spec$select = 0, $vararg_buffer = 0, 
$vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(160|0);
- $vararg_buffer = sp + 144|0;
- $3 = sp + 128|0;
- $4 = sp;
- $5 = ($1|0)==(0|0);
- $spec$select = $5 ? 0 : $1;
- HEAP32[$3>>2] = $varargs;
- $6 = (_getpid()|0);
- HEAP32[$vararg_buffer>>2] = $spec$select;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $6;
- (_GNUNET_snprintf($4,128,41172,$vararg_buffer)|0);
- _mylog($0,$4,$2,$3);
- STACKTOP = sp;return;
-}
-function _GNUNET_CRYPTO_symmetric_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$alloca_mul = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $5 = sp + 16|0;
- $6 = (_llvm_stacksave()|0);
- $$alloca_mul = $1;
- $7 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
- _setup_cipher_aes($5,$2,$3);
- $8 = HEAP32[$5>>2]|0;
- $9 = (_gcry_cipher_encrypt($8,$7,$1,$0,$1)|0);
- $10 = ($9|0)==(0);
- if (!($10)) {
-  $11 = HEAP32[9371]|0;
-  $12 = ($11|0)==(-1);
-  if ($12) {
-   $13 = (_GNUNET_get_log_call_status(1,0,41349,41368,134)|0);
-   HEAP32[9371] = $13;
-  }
-  $14 = (_GNUNET_get_log_skip()|0);
-  $15 = ($14|0)>(0);
-  if ($15) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $16 = HEAP32[9371]|0;
-  $17 = ($16|0)==(0);
-  if ($17) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41349;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 134;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $18 = HEAP32[$5>>2]|0;
- _gcry_cipher_close($18);
- _setup_cipher_twofish($5,$2,$3);
- $19 = HEAP32[$5>>2]|0;
- $20 = (_gcry_cipher_encrypt($19,$4,$1,$7,$1)|0);
- $21 = ($20|0)==(0);
- if ($21) {
-  $29 = HEAP32[$5>>2]|0;
-  _gcry_cipher_close($29);
-  _memset(($7|0),0,($1|0))|0;
-  _llvm_stackrestore(($6|0));
-  STACKTOP = sp;return ($1|0);
- }
- $22 = HEAP32[9372]|0;
- $23 = ($22|0)==(-1);
- if ($23) {
-  $24 = (_GNUNET_get_log_call_status(1,0,41349,41368,138)|0);
-  HEAP32[9372] = $24;
- }
- $25 = (_GNUNET_get_log_skip()|0);
- $26 = ($25|0)>(0);
- if ($26) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $27 = HEAP32[9372]|0;
- $28 = ($27|0)==(0);
- if ($28) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer2>>2] = 41349;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = 138;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _setup_cipher_aes($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond9 = 0, $sext$mask = 0, $sext$mask1 = 
0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 
0, $vararg_ptr5 = 0;
- var $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = (_gcry_cipher_open($0,9,2,0)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9376]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,41349,41421,66)|0);
-   HEAP32[9376] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9376]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41349;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 66;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[$0>>2]|0;
- $13 = (_gcry_cipher_setkey($12,$1,32)|0);
- $14 = ($13|0)==(0);
- $sext$mask = $13 & 255;
- $15 = ($sext$mask|0)==(43);
- $or$cond = $14 | $15;
- if (!($or$cond)) {
-  $16 = HEAP32[9377]|0;
-  $17 = ($16|0)==(-1);
-  if ($17) {
-   $18 = (_GNUNET_get_log_call_status(1,0,41349,41421,70)|0);
-   HEAP32[9377] = $18;
-  }
-  $19 = (_GNUNET_get_log_skip()|0);
-  $20 = ($19|0)>(0);
-  if ($20) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $21 = HEAP32[9377]|0;
-  $22 = ($21|0)==(0);
-  if ($22) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 41349;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 70;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $23 = HEAP32[$0>>2]|0;
- $24 = (_gcry_cipher_setiv($23,$2,16)|0);
- $25 = ($24|0)==(0);
- $sext$mask1 = $24 & 255;
- $26 = ($sext$mask1|0)==(43);
- $or$cond9 = $25 | $26;
- if ($or$cond9) {
-  STACKTOP = sp;return;
- }
- $27 = HEAP32[9378]|0;
- $28 = ($27|0)==(-1);
- if ($28) {
-  $29 = (_GNUNET_get_log_call_status(1,0,41349,41421,74)|0);
-  HEAP32[9378] = $29;
- }
- $30 = (_GNUNET_get_log_skip()|0);
- $31 = ($30|0)>(0);
- if ($31) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $32 = HEAP32[9378]|0;
- $33 = ($32|0)==(0);
- if ($33) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer6>>2] = 41349;
- $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
- HEAP32[$vararg_ptr9>>2] = 74;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
- _GNUNET_abort_();
- // unreachable;
-}
-function _setup_cipher_twofish($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond9 = 0, $sext$mask = 
0, $sext$mask1 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 
0;
- var $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = (_gcry_cipher_open($0,10,2,0)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9373]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,41349,41400,96)|0);
-   HEAP32[9373] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9373]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41349;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 96;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[$0>>2]|0;
- $13 = ((($1)) + 32|0);
- $14 = (_gcry_cipher_setkey($12,$13,32)|0);
- $15 = ($14|0)==(0);
- $sext$mask = $14 & 255;
- $16 = ($sext$mask|0)==(43);
- $or$cond = $15 | $16;
- if (!($or$cond)) {
-  $17 = HEAP32[9374]|0;
-  $18 = ($17|0)==(-1);
-  if ($18) {
-   $19 = (_GNUNET_get_log_call_status(1,0,41349,41400,100)|0);
-   HEAP32[9374] = $19;
-  }
-  $20 = (_GNUNET_get_log_skip()|0);
-  $21 = ($20|0)>(0);
-  if ($21) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $22 = HEAP32[9374]|0;
-  $23 = ($22|0)==(0);
-  if ($23) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 41349;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 100;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $24 = HEAP32[$0>>2]|0;
- $25 = ((($2)) + 16|0);
- $26 = (_gcry_cipher_setiv($24,$25,16)|0);
- $27 = ($26|0)==(0);
- $sext$mask1 = $26 & 255;
- $28 = ($sext$mask1|0)==(43);
- $or$cond9 = $27 | $28;
- if ($or$cond9) {
-  STACKTOP = sp;return;
- }
- $29 = HEAP32[9375]|0;
- $30 = ($29|0)==(-1);
- if ($30) {
-  $31 = (_GNUNET_get_log_call_status(1,0,41349,41400,104)|0);
-  HEAP32[9375] = $31;
- }
- $32 = (_GNUNET_get_log_skip()|0);
- $33 = ($32|0)>(0);
- if ($33) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $34 = HEAP32[9375]|0;
- $35 = ($34|0)==(0);
- if ($35) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer6>>2] = 41349;
- $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
- HEAP32[$vararg_ptr9>>2] = 104;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_CRYPTO_symmetric_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$alloca_mul = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $5 = sp + 16|0;
- $6 = (_llvm_stacksave()|0);
- $$alloca_mul = $1;
- $7 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
- _setup_cipher_twofish($5,$2,$3);
- $8 = HEAP32[$5>>2]|0;
- $9 = (_gcry_cipher_decrypt($8,$7,$1,$0,$1)|0);
- $10 = ($9|0)==(0);
- if (!($10)) {
-  $11 = HEAP32[9379]|0;
-  $12 = ($11|0)==(-1);
-  if ($12) {
-   $13 = (_GNUNET_get_log_call_status(1,0,41349,41438,170)|0);
-   HEAP32[9379] = $13;
-  }
-  $14 = (_GNUNET_get_log_skip()|0);
-  $15 = ($14|0)>(0);
-  if ($15) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $16 = HEAP32[9379]|0;
-  $17 = ($16|0)==(0);
-  if ($17) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41349;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 170;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $18 = HEAP32[$5>>2]|0;
- _gcry_cipher_close($18);
- _setup_cipher_aes($5,$2,$3);
- $19 = HEAP32[$5>>2]|0;
- $20 = (_gcry_cipher_decrypt($19,$4,$1,$7,$1)|0);
- $21 = ($20|0)==(0);
- if ($21) {
-  $29 = HEAP32[$5>>2]|0;
-  _gcry_cipher_close($29);
-  _memset(($7|0),0,($1|0))|0;
-  _llvm_stackrestore(($6|0));
-  STACKTOP = sp;return ($1|0);
- }
- $22 = HEAP32[9380]|0;
- $23 = ($22|0)==(-1);
- if ($23) {
-  $24 = (_GNUNET_get_log_call_status(1,0,41349,41438,174)|0);
-  HEAP32[9380] = $24;
- }
- $25 = (_GNUNET_get_log_skip()|0);
- $26 = ($25|0)>(0);
- if ($26) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $27 = HEAP32[9380]|0;
- $28 = ($27|0)==(0);
- if ($28) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer2>>2] = 41349;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = 174;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_ecdsa_key_get_public($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, 
$vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 24|0;
- $3 = (_decode_private_ecdsa_key($0)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $5 = HEAP32[9381]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,41470,41483,232)|0);
-   HEAP32[9381] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9381]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41470;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 232;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = (_gcry_mpi_ec_new($2,$3,0)|0);
- $13 = ($12|0)==(0);
- if (!($13)) {
-  $14 = HEAP32[9382]|0;
-  $15 = ($14|0)==(-1);
-  if ($15) {
-   $16 = (_GNUNET_get_log_call_status(1,0,41470,41483,233)|0);
-   HEAP32[9382] = $16;
-  }
-  $17 = (_GNUNET_get_log_skip()|0);
-  $18 = ($17|0)>(0);
-  if ($18) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $19 = HEAP32[9382]|0;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 41470;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 233;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- _gcry_sexp_release($3);
- $21 = HEAP32[$2>>2]|0;
- $22 = (_gcry_mpi_ec_get_mpi(41518,$21,0)|0);
- $23 = ($22|0)==(0|0);
- if (!($23)) {
-  _GNUNET_CRYPTO_mpi_print_unsigned($1,32,$22);
-  _gcry_mpi_release($22);
-  $31 = HEAP32[$2>>2]|0;
-  _gcry_ctx_release($31);
-  STACKTOP = sp;return;
- }
- $24 = HEAP32[9383]|0;
- $25 = ($24|0)==(-1);
- if ($25) {
-  $26 = (_GNUNET_get_log_call_status(1,0,41470,41483,236)|0);
-  HEAP32[9383] = $26;
- }
- $27 = (_GNUNET_get_log_skip()|0);
- $28 = ($27|0)>(0);
- if ($28) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $29 = HEAP32[9383]|0;
- $30 = ($29|0)==(0);
- if ($30) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer6>>2] = 41470;
- $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
- HEAP32[$vararg_ptr9>>2] = 236;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
- _GNUNET_abort_();
- // unreachable;
-}
-function _decode_private_ecdsa_key($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $vararg_buffer = 0;
- var $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 
= 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 32|0;
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $0;
- $2 = (_gcry_sexp_build($1,0,41526,$vararg_buffer)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  $19 = HEAP32[$1>>2]|0;
-  STACKTOP = sp;return ($19|0);
- }
- $4 = HEAP32[9384]|0;
- $5 = ($4|0)==(-1);
- if ($5) {
-  $6 = (_GNUNET_get_log_call_status(1,41568,41470,41584,135)|0);
-  HEAP32[9384] = $6;
- }
- $7 = (_GNUNET_get_log_skip()|0);
- $8 = ($7|0)>(0);
- if ($8) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $9 = HEAP32[9384]|0;
-  $10 = ($9|0)==(0);
-  if (!($10)) {
-   $11 = (_gcry_strerror($2)|0);
-   HEAP32[$vararg_buffer2>>2] = 41609;
-   $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-   HEAP32[$vararg_ptr5>>2] = 41470;
-   $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-   HEAP32[$vararg_ptr6>>2] = 135;
-   $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-   HEAP32[$vararg_ptr7>>2] = $11;
-   _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer2);
-  }
- }
- $12 = HEAP32[9385]|0;
- $13 = ($12|0)==(-1);
- if ($13) {
-  $14 = (_GNUNET_get_log_call_status(1,0,41470,41584,136)|0);
-  HEAP32[9385] = $14;
- }
- $15 = (_GNUNET_get_log_skip()|0);
- $16 = ($15|0)>(0);
- if ($16) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $17 = HEAP32[9385]|0;
- $18 = ($17|0)==(0);
- if ($18) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer8>>2] = 41470;
- $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
- HEAP32[$vararg_ptr11>>2] = 136;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_eddsa_key_get_public($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, 
$vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 24|0;
- $3 = (_decode_private_eddsa_key($0)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $5 = HEAP32[9386]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,41470,41625,262)|0);
-   HEAP32[9386] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9386]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 41470;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 262;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = (_gcry_mpi_ec_new($2,$3,0)|0);
- $13 = ($12|0)==(0);
- if (!($13)) {
-  $14 = HEAP32[9387]|0;
-  $15 = ($14|0)==(-1);
-  if ($15) {
-   $16 = (_GNUNET_get_log_call_status(1,0,41470,41625,263)|0);
-   HEAP32[9387] = $16;
-  }
-  $17 = (_GNUNET_get_log_skip()|0);
-  $18 = ($17|0)>(0);
-  if ($18) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $19 = HEAP32[9387]|0;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 41470;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 263;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- _gcry_sexp_release($3);
- $21 = HEAP32[$2>>2]|0;
- $22 = (_gcry_mpi_ec_get_mpi(41518,$21,0)|0);
- $23 = ($22|0)==(0|0);
- if (!($23)) {
-  _GNUNET_CRYPTO_mpi_print_unsigned($1,32,$22);
-  _gcry_mpi_release($22);
-  $31 = HEAP32[$2>>2]|0;
-  _gcry_ctx_release($31);
-  STACKTOP = sp;return;
- }
- $24 = HEAP32[9388]|0;
- $25 = ($24|0)==(-1);
- if ($25) {
-  $26 = (_GNUNET_get_log_call_status(1,0,41470,41625,266)|0);
-  HEAP32[9388] = $26;
- }
- $27 = (_GNUNET_get_log_skip()|0);
- $28 = ($27|0)>(0);
- if ($28) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $29 = HEAP32[9388]|0;
- $30 = ($29|0)==(0);
- if ($30) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer6>>2] = 41470;
- $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
- HEAP32[$vararg_ptr9>>2] = 266;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
- _GNUNET_abort_();
- // unreachable;
-}
-function _decode_private_eddsa_key($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $vararg_buffer = 0;
- var $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 
= 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 32|0;
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $0;
- $2 = (_gcry_sexp_build($1,0,41660,$vararg_buffer)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  $19 = HEAP32[$1>>2]|0;
-  STACKTOP = sp;return ($19|0);
- }
- $4 = HEAP32[9389]|0;
- $5 = ($4|0)==(-1);
- if ($5) {
-  $6 = (_GNUNET_get_log_call_status(1,41568,41470,41715,168)|0);
-  HEAP32[9389] = $6;
- }
- $7 = (_GNUNET_get_log_skip()|0);
- $8 = ($7|0)>(0);
- if ($8) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $9 = HEAP32[9389]|0;
-  $10 = ($9|0)==(0);
-  if (!($10)) {
-   $11 = (_gcry_strerror($2)|0);
-   HEAP32[$vararg_buffer2>>2] = 41609;
-   $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-   HEAP32[$vararg_ptr5>>2] = 41470;
-   $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-   HEAP32[$vararg_ptr6>>2] = 168;
-   $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-   HEAP32[$vararg_ptr7>>2] = $11;
-   _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer2);
-  }
- }
- $12 = HEAP32[9390]|0;
- $13 = ($12|0)==(-1);
- if ($13) {
-  $14 = (_GNUNET_get_log_call_status(1,0,41470,41715,169)|0);
-  HEAP32[9390] = $14;
- }
- $15 = (_GNUNET_get_log_skip()|0);
- $16 = ($15|0)>(0);
- if ($16) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $17 = HEAP32[9390]|0;
- $18 = ($17|0)==(0);
- if ($18) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer8>>2] = 41470;
- $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
- HEAP32[$vararg_ptr11>>2] = 169;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_ecdhe_key_get_public($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer16 = 0, $vararg_buffer2 
= 0, $vararg_buffer20 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 
= 0, $vararg_ptr15 = 0, $vararg_ptr19 = 0, $vararg_ptr23 = 0, $vararg_ptr5 = 0;
- var $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer20 = sp + 48|0;
- $vararg_buffer16 = sp + 40|0;
- $vararg_buffer12 = sp + 32|0;
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 60|0;
- $3 = sp + 56|0;
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $0;
- $4 = (_gcry_sexp_build($2,0,41526,$vararg_buffer)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP32[9391]|0;
-  $7 = ($6|0)==(-1);
-  if ($7) {
-   $8 = (_GNUNET_get_log_call_status(1,41568,41470,41740,201)|0);
-   HEAP32[9391] = $8;
-  }
-  $9 = (_GNUNET_get_log_skip()|0);
-  $10 = ($9|0)>(0);
-  if ($10) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $11 = HEAP32[9391]|0;
-   $12 = ($11|0)==(0);
-   if (!($12)) {
-    $13 = (_gcry_strerror($4)|0);
-    HEAP32[$vararg_buffer2>>2] = 41609;
-    $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-    HEAP32[$vararg_ptr5>>2] = 41470;
-    $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-    HEAP32[$vararg_ptr6>>2] = 201;
-    $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-    HEAP32[$vararg_ptr7>>2] = $13;
-    _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer2);
-   }
-  }
-  $14 = HEAP32[9392]|0;
-  $15 = ($14|0)==(-1);
-  if ($15) {
-   $16 = (_GNUNET_get_log_call_status(1,0,41470,41740,202)|0);
-   HEAP32[9392] = $16;
-  }
-  $17 = (_GNUNET_get_log_skip()|0);
-  $18 = ($17|0)>(0);
-  if ($18) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $19 = HEAP32[9392]|0;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer8>>2] = 41470;
-  $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-  HEAP32[$vararg_ptr11>>2] = 202;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $21 = HEAP32[$2>>2]|0;
- $22 = ($21|0)==(0|0);
- if ($22) {
-  $23 = HEAP32[9393]|0;
-  $24 = ($23|0)==(-1);
-  if ($24) {
-   $25 = (_GNUNET_get_log_call_status(1,0,41470,41765,292)|0);
-   HEAP32[9393] = $25;
-  }
-  $26 = (_GNUNET_get_log_skip()|0);
-  $27 = ($26|0)>(0);
-  if ($27) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $28 = HEAP32[9393]|0;
-  $29 = ($28|0)==(0);
-  if ($29) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer12>>2] = 41470;
-  $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-  HEAP32[$vararg_ptr15>>2] = 292;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer12);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $30 = (_gcry_mpi_ec_new($3,$21,0)|0);
- $31 = ($30|0)==(0);
- if (!($31)) {
-  $32 = HEAP32[9394]|0;
-  $33 = ($32|0)==(-1);
-  if ($33) {
-   $34 = (_GNUNET_get_log_call_status(1,0,41470,41765,293)|0);
-   HEAP32[9394] = $34;
-  }
-  $35 = (_GNUNET_get_log_skip()|0);
-  $36 = ($35|0)>(0);
-  if ($36) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $37 = HEAP32[9394]|0;
-  $38 = ($37|0)==(0);
-  if ($38) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer16>>2] = 41470;
-  $vararg_ptr19 = ((($vararg_buffer16)) + 4|0);
-  HEAP32[$vararg_ptr19>>2] = 293;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer16);
-  _GNUNET_abort_();
-  // unreachable;
- }
- _gcry_sexp_release($21);
- $39 = HEAP32[$3>>2]|0;
- $40 = (_gcry_mpi_ec_get_mpi(41518,$39,0)|0);
- $41 = ($40|0)==(0|0);
- if (!($41)) {
-  _GNUNET_CRYPTO_mpi_print_unsigned($1,32,$40);
-  _gcry_mpi_release($40);
-  $49 = HEAP32[$3>>2]|0;
-  _gcry_ctx_release($49);
-  STACKTOP = sp;return;
- }
- $42 = HEAP32[9395]|0;
- $43 = ($42|0)==(-1);
- if ($43) {
-  $44 = (_GNUNET_get_log_call_status(1,0,41470,41765,296)|0);
-  HEAP32[9395] = $44;
- }
- $45 = (_GNUNET_get_log_skip()|0);
- $46 = ($45|0)>(0);
- if ($46) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $47 = HEAP32[9395]|0;
- $48 = ($47|0)==(0);
- if ($48) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer20>>2] = 41470;
- $vararg_ptr23 = ((($vararg_buffer20)) + 4|0);
- HEAP32[$vararg_ptr23>>2] = 296;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer20);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_CRYPTO_ecdhe_key_create() {
- var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (_GNUNET_xmalloc_(32,41470,545)|0);
- $1 = (_GNUNET_CRYPTO_ecdhe_key_create2($0)|0);
- $2 = ($1|0)==(1);
- if ($2) {
-  $$0 = $0;
-  return ($$0|0);
- }
- _GNUNET_xfree_($0,41470,549);
- $$0 = 0;
- return ($$0|0);
-}
-function _GNUNET_CRYPTO_ecdhe_key_create2($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0, 
$vararg_buffer6 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, 
$vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 64|0;
- $2 = sp + 60|0;
- $3 = sp + 56|0;
- $4 = (_gcry_sexp_build($2,0,41800,$vararg_buffer)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP32[9396]|0;
-  $7 = ($6|0)==(-1);
-  if ($7) {
-   $8 = (_GNUNET_get_log_call_status(1,41568,41470,41855,582)|0);
-   HEAP32[9396] = $8;
-  }
-  $9 = (_GNUNET_get_log_skip()|0);
-  $10 = ($9|0)>(0);
-  if ($10) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $11 = HEAP32[9396]|0;
-  $12 = ($11|0)==(0);
-  if ($12) {
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $13 = (_gcry_strerror($4)|0);
-  HEAP32[$vararg_buffer1>>2] = 41609;
-  $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr3>>2] = 41470;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 8|0);
-  HEAP32[$vararg_ptr4>>2] = 582;
-  $vararg_ptr5 = ((($vararg_buffer1)) + 12|0);
-  HEAP32[$vararg_ptr5>>2] = $13;
-  _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer1);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = HEAP32[$2>>2]|0;
- $15 = (_gcry_pk_genkey($1,$14)|0);
- $16 = ($15|0)==(0);
- if (!($16)) {
-  $17 = HEAP32[9397]|0;
-  $18 = ($17|0)==(-1);
-  if ($18) {
-   $19 = (_GNUNET_get_log_call_status(1,41568,41470,41855,587)|0);
-   HEAP32[9397] = $19;
-  }
-  $20 = (_GNUNET_get_log_skip()|0);
-  $21 = ($20|0)>(0);
-  if ($21) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $22 = HEAP32[9397]|0;
-   $23 = ($22|0)==(0);
-   if (!($23)) {
-    $24 = (_gcry_strerror($15)|0);
-    HEAP32[$vararg_buffer6>>2] = 41887;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 41470;
-    $vararg_ptr10 = ((($vararg_buffer6)) + 8|0);
-    HEAP32[$vararg_ptr10>>2] = 587;
-    $vararg_ptr11 = ((($vararg_buffer6)) + 12|0);
-    HEAP32[$vararg_ptr11>>2] = $24;
-    _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer6);
-   }
-  }
-  $25 = HEAP32[$2>>2]|0;
-  _gcry_sexp_release($25);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $26 = HEAP32[$2>>2]|0;
- _gcry_sexp_release($26);
- $27 = HEAP32[$1>>2]|0;
- $28 = (_key_from_sexp($3,$27,59743,57460)|0);
- $29 = ($28|0)==(0);
- if ($29) {
-  $39 = HEAP32[$1>>2]|0;
-  _gcry_sexp_release($39);
-  $40 = HEAP32[$3>>2]|0;
-  _GNUNET_CRYPTO_mpi_print_unsigned($0,32,$40);
-  _gcry_mpi_release($40);
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $30 = HEAP32[9398]|0;
- $31 = ($30|0)==(-1);
- if ($31) {
-  $32 = (_GNUNET_get_log_call_status(1,41568,41470,41855,602)|0);
-  HEAP32[9398] = $32;
- }
- $33 = (_GNUNET_get_log_skip()|0);
- $34 = ($33|0)>(0);
- if ($34) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $35 = HEAP32[9398]|0;
-  $36 = ($35|0)==(0);
-  if (!($36)) {
-   $37 = (_gcry_strerror($28)|0);
-   HEAP32[$vararg_buffer12>>2] = 41902;
-   $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-   HEAP32[$vararg_ptr15>>2] = 41470;
-   $vararg_ptr16 = ((($vararg_buffer12)) + 8|0);
-   HEAP32[$vararg_ptr16>>2] = 602;
-   $vararg_ptr17 = ((($vararg_buffer12)) + 12|0);
-   HEAP32[$vararg_ptr17>>2] = $37;
-   _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer12);
-  }
- }
- $38 = HEAP32[$1>>2]|0;
- _gcry_sexp_release($38);
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _key_from_sexp($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$04550 = 0, $$04655 = 0, $$047 = 0, $$056 = 0, $$151 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 
= 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $exitcond = 0, $exitcond62 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (_gcry_sexp_find_token($1,$2,0)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $$047 = 1;
-  return ($$047|0);
- }
- $6 = (_gcry_sexp_cadr($4)|0);
- _gcry_sexp_release($4);
- $7 = ($6|0)==(0|0);
- if ($7) {
-  $$047 = 2;
-  return ($$047|0);
- }
- $8 = HEAP8[$3>>0]|0;
- $9 = ($8<<24>>24)==(0);
- L7: do {
-  if (!($9)) {
-   $$04655 = $3;$$056 = 0;
-   while(1) {
-    $10 = (_gcry_sexp_find_token($6,$$04655,1)|0);
-    $11 = ($10|0)==(0|0);
-    if ($11) {
-     label = 6;
-     break;
-    }
-    $16 = (_gcry_sexp_nth_mpi($10,1,5)|0);
-    $17 = (($0) + ($$056<<2)|0);
-    HEAP32[$17>>2] = $16;
-    _gcry_sexp_release($10);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ($18|0)==(0|0);
-    if ($19) {
-     label = 11;
-     break;
-    }
-    $24 = ((($$04655)) + 1|0);
-    $25 = (($$056) + 1)|0;
-    $26 = HEAP8[$24>>0]|0;
-    $27 = ($26<<24>>24)==(0);
-    if ($27) {
-     break L7;
-    } else {
-     $$04655 = $24;$$056 = $25;
-    }
-   }
-   if ((label|0) == 6) {
-    $12 = ($$056|0)==(0);
-    if (!($12)) {
-     $$04550 = 0;
-     while(1) {
-      $13 = (($0) + ($$04550<<2)|0);
-      $14 = HEAP32[$13>>2]|0;
-      _gcry_free($14);
-      HEAP32[$13>>2] = 0;
-      $15 = (($$04550) + 1)|0;
-      $exitcond = ($15|0)==($$056|0);
-      if ($exitcond) {
-       break;
-      } else {
-       $$04550 = $15;
-      }
-     }
-    }
-    _gcry_sexp_release($6);
-    $$047 = 3;
-    return ($$047|0);
-   }
-   else if ((label|0) == 11) {
-    $20 = ($$056|0)==(0);
-    if (!($20)) {
-     $$151 = 0;
-     while(1) {
-      $21 = (($0) + ($$151<<2)|0);
-      $22 = HEAP32[$21>>2]|0;
-      _gcry_free($22);
-      HEAP32[$21>>2] = 0;
-      $23 = (($$151) + 1)|0;
-      $exitcond62 = ($23|0)==($$056|0);
-      if ($exitcond62) {
-       break;
-      } else {
-       $$151 = $23;
-      }
-     }
-    }
-    _gcry_sexp_release($6);
-    $$047 = 4;
-    return ($$047|0);
-   }
-  }
- } while(0);
- _gcry_sexp_release($6);
- $$047 = 0;
- return ($$047|0);
-}
-function _GNUNET_CRYPTO_ecdsa_key_create() {
- var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 
= 0, $vararg_buffer6 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 
0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = sp + 64|0;
- $1 = sp + 60|0;
- $2 = sp + 56|0;
- $3 = (_gcry_sexp_build($1,0,41916,$vararg_buffer)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9399]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,41568,41470,41954,636)|0);
-   HEAP32[9399] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $10 = HEAP32[9399]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $12 = (_gcry_strerror($3)|0);
-  HEAP32[$vararg_buffer1>>2] = 41609;
-  $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr3>>2] = 41470;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 8|0);
-  HEAP32[$vararg_ptr4>>2] = 636;
-  $vararg_ptr5 = ((($vararg_buffer1)) + 12|0);
-  HEAP32[$vararg_ptr5>>2] = $12;
-  _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer1);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$1>>2]|0;
- $14 = (_gcry_pk_genkey($0,$13)|0);
- $15 = ($14|0)==(0);
- if (!($15)) {
-  $16 = HEAP32[9400]|0;
-  $17 = ($16|0)==(-1);
-  if ($17) {
-   $18 = (_GNUNET_get_log_call_status(1,41568,41470,41954,641)|0);
-   HEAP32[9400] = $18;
-  }
-  $19 = (_GNUNET_get_log_skip()|0);
-  $20 = ($19|0)>(0);
-  if ($20) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $21 = HEAP32[9400]|0;
-   $22 = ($21|0)==(0);
-   if (!($22)) {
-    $23 = (_gcry_strerror($14)|0);
-    HEAP32[$vararg_buffer6>>2] = 41887;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 41470;
-    $vararg_ptr10 = ((($vararg_buffer6)) + 8|0);
-    HEAP32[$vararg_ptr10>>2] = 641;
-    $vararg_ptr11 = ((($vararg_buffer6)) + 12|0);
-    HEAP32[$vararg_ptr11>>2] = $23;
-    _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer6);
-   }
-  }
-  $24 = HEAP32[$1>>2]|0;
-  _gcry_sexp_release($24);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $25 = HEAP32[$1>>2]|0;
- _gcry_sexp_release($25);
- $26 = HEAP32[$0>>2]|0;
- $27 = (_key_from_sexp($2,$26,59743,57460)|0);
- $28 = ($27|0)==(0);
- if ($28) {
-  $38 = HEAP32[$0>>2]|0;
-  _gcry_sexp_release($38);
-  $39 = (_GNUNET_xmalloc_(32,41470,661)|0);
-  $40 = HEAP32[$2>>2]|0;
-  _GNUNET_CRYPTO_mpi_print_unsigned($39,32,$40);
-  _gcry_mpi_release($40);
-  $$0 = $39;
-  STACKTOP = sp;return ($$0|0);
- }
- $29 = HEAP32[9401]|0;
- $30 = ($29|0)==(-1);
- if ($30) {
-  $31 = (_GNUNET_get_log_call_status(1,41568,41470,41954,656)|0);
-  HEAP32[9401] = $31;
- }
- $32 = (_GNUNET_get_log_skip()|0);
- $33 = ($32|0)>(0);
- if ($33) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $34 = HEAP32[9401]|0;
-  $35 = ($34|0)==(0);
-  if (!($35)) {
-   $36 = (_gcry_strerror($27)|0);
-   HEAP32[$vararg_buffer12>>2] = 41902;
-   $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-   HEAP32[$vararg_ptr15>>2] = 41470;
-   $vararg_ptr16 = ((($vararg_buffer12)) + 8|0);
-   HEAP32[$vararg_ptr16>>2] = 656;
-   $vararg_ptr17 = ((($vararg_buffer12)) + 12|0);
-   HEAP32[$vararg_ptr17>>2] = $36;
-   _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer12);
-  }
- }
- $37 = HEAP32[$0>>2]|0;
- _gcry_sexp_release($37);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_eddsa_key_create() {
- var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 
= 0, $vararg_buffer6 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 
0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = sp + 64|0;
- $1 = sp + 60|0;
- $2 = sp + 56|0;
- $3 = (_gcry_sexp_build($1,0,41985,$vararg_buffer)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9402]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,41568,41470,42029,693)|0);
-   HEAP32[9402] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $10 = HEAP32[9402]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $12 = (_gcry_strerror($3)|0);
-  HEAP32[$vararg_buffer1>>2] = 41609;
-  $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr3>>2] = 41470;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 8|0);
-  HEAP32[$vararg_ptr4>>2] = 693;
-  $vararg_ptr5 = ((($vararg_buffer1)) + 12|0);
-  HEAP32[$vararg_ptr5>>2] = $12;
-  _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer1);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$1>>2]|0;
- $14 = (_gcry_pk_genkey($0,$13)|0);
- $15 = ($14|0)==(0);
- if (!($15)) {
-  $16 = HEAP32[9403]|0;
-  $17 = ($16|0)==(-1);
-  if ($17) {
-   $18 = (_GNUNET_get_log_call_status(1,41568,41470,42029,698)|0);
-   HEAP32[9403] = $18;
-  }
-  $19 = (_GNUNET_get_log_skip()|0);
-  $20 = ($19|0)>(0);
-  if ($20) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $21 = HEAP32[9403]|0;
-   $22 = ($21|0)==(0);
-   if (!($22)) {
-    $23 = (_gcry_strerror($14)|0);
-    HEAP32[$vararg_buffer6>>2] = 41887;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 41470;
-    $vararg_ptr10 = ((($vararg_buffer6)) + 8|0);
-    HEAP32[$vararg_ptr10>>2] = 698;
-    $vararg_ptr11 = ((($vararg_buffer6)) + 12|0);
-    HEAP32[$vararg_ptr11>>2] = $23;
-    _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer6);
-   }
-  }
-  $24 = HEAP32[$1>>2]|0;
-  _gcry_sexp_release($24);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $25 = HEAP32[$1>>2]|0;
- _gcry_sexp_release($25);
- $26 = HEAP32[$0>>2]|0;
- $27 = (_key_from_sexp($2,$26,59743,57460)|0);
- $28 = ($27|0)==(0);
- if ($28) {
-  $38 = HEAP32[$0>>2]|0;
-  _gcry_sexp_release($38);
-  $39 = (_GNUNET_xmalloc_(32,41470,718)|0);
-  $40 = HEAP32[$2>>2]|0;
-  _GNUNET_CRYPTO_mpi_print_unsigned($39,32,$40);
-  _gcry_mpi_release($40);
-  $$0 = $39;
-  STACKTOP = sp;return ($$0|0);
- }
- $29 = HEAP32[9404]|0;
- $30 = ($29|0)==(-1);
- if ($30) {
-  $31 = (_GNUNET_get_log_call_status(1,41568,41470,42029,713)|0);
-  HEAP32[9404] = $31;
- }
- $32 = (_GNUNET_get_log_skip()|0);
- $33 = ($32|0)>(0);
- if ($33) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $34 = HEAP32[9404]|0;
-  $35 = ($34|0)==(0);
-  if (!($35)) {
-   $36 = (_gcry_strerror($27)|0);
-   HEAP32[$vararg_buffer12>>2] = 41902;
-   $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-   HEAP32[$vararg_ptr15>>2] = 41470;
-   $vararg_ptr16 = ((($vararg_buffer12)) + 8|0);
-   HEAP32[$vararg_ptr16>>2] = 713;
-   $vararg_ptr17 = ((($vararg_buffer12)) + 12|0);
-   HEAP32[$vararg_ptr17>>2] = $36;
-   _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer12);
-  }
- }
- $37 = HEAP32[$0>>2]|0;
- _gcry_sexp_release($37);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_eddsa_sign($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, $vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer = sp;
- $3 = sp + 32|0;
- $4 = sp + 24|0;
- $5 = (_decode_private_eddsa_key($0)|0);
- $6 = (_data_to_eddsa_value($1)|0);
- $7 = (_gcry_pk_sign($3,$6,$5)|0);
- $8 = ($7|0)==(0);
- if (!($8)) {
-  $9 = HEAP32[9405]|0;
-  $10 = ($9|0)==(-1);
-  if ($10) {
-   $11 = (_GNUNET_get_log_call_status(2,41568,41470,42060,916)|0);
-   HEAP32[9405] = $11;
-  }
-  $12 = (_GNUNET_get_log_skip()|0);
-  $13 = ($12|0)>(0);
-  if ($13) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $14 = HEAP32[9405]|0;
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $16 = (_gcry_strerror($7)|0);
-    HEAP32[$vararg_buffer>>2] = 41470;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 916;
-    $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-    HEAP32[$vararg_ptr2>>2] = $16;
-    _GNUNET_log_from_nocheck(2,41568,42085,$vararg_buffer);
-   }
-  }
-  _gcry_sexp_release($6);
-  _gcry_sexp_release($5);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- _gcry_sexp_release($5);
- _gcry_sexp_release($6);
- $17 = HEAP32[$3>>2]|0;
- $18 = (_key_from_sexp($4,$17,59605,64702)|0);
- $19 = ($18|0)==(0);
- if ($19) {
-  $28 = HEAP32[$3>>2]|0;
-  _gcry_sexp_release($28);
-  $29 = HEAP32[$4>>2]|0;
-  _GNUNET_CRYPTO_mpi_print_unsigned($2,32,$29);
-  $30 = ((($2)) + 32|0);
-  $31 = ((($4)) + 4|0);
-  $32 = HEAP32[$31>>2]|0;
-  _GNUNET_CRYPTO_mpi_print_unsigned($30,32,$32);
-  _gcry_mpi_release($29);
-  _gcry_mpi_release($32);
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $20 = HEAP32[9406]|0;
- $21 = ($20|0)==(-1);
- if ($21) {
-  $22 = (_GNUNET_get_log_call_status(1,0,41470,42060,928)|0);
-  HEAP32[9406] = $22;
- }
- $23 = (_GNUNET_get_log_skip()|0);
- $24 = ($23|0)>(0);
- if ($24) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $25 = HEAP32[9406]|0;
-  $26 = ($25|0)==(0);
-  if (!($26)) {
-   HEAP32[$vararg_buffer3>>2] = 41470;
-   $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-   HEAP32[$vararg_ptr6>>2] = 928;
-   _GNUNET_log_nocheck(1,43837,$vararg_buffer3);
-  }
- }
- $27 = HEAP32[$3>>2]|0;
- _gcry_sexp_release($27);
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _data_to_eddsa_value($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 
= 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 
0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0;
- var $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer = sp;
- $1 = sp + 40|0;
- $2 = sp + 32|0;
- $3 = 
HEAPU8[$0>>0]|(HEAPU8[$0+1>>0]<<8)|(HEAPU8[$0+2>>0]<<16)|(HEAPU8[$0+3>>0]<<24);
- $4 = (_ntohl($3)|0);
- _GNUNET_CRYPTO_hash($0,$4,$1);
- HEAP32[$vararg_buffer>>2] = 59685;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 64;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $1;
- $5 = (_gcry_sexp_build($2,0,42120,$vararg_buffer)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $15 = HEAP32[$2>>2]|0;
-  $$0 = $15;
-  STACKTOP = sp;return ($$0|0);
- }
- $7 = HEAP32[9407]|0;
- $8 = ($7|0)==(-1);
- if ($8) {
-  $9 = (_GNUNET_get_log_call_status(1,41568,41470,42164,800)|0);
-  HEAP32[9407] = $9;
- }
- $10 = (_GNUNET_get_log_skip()|0);
- $11 = ($10|0)>(0);
- if ($11) {
-  _GNUNET_log_skip(-1,0);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $12 = HEAP32[9407]|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = (_gcry_strerror($5)|0);
- HEAP32[$vararg_buffer3>>2] = 41609;
- $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
- HEAP32[$vararg_ptr6>>2] = 41470;
- $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
- HEAP32[$vararg_ptr7>>2] = 800;
- $vararg_ptr8 = ((($vararg_buffer3)) + 12|0);
- HEAP32[$vararg_ptr8>>2] = $14;
- _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer3);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_eddsa_verify($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer14 = 0, $vararg_buffer4 
= 0;
- var $vararg_ptr1 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 
0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, 
$vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer14 = sp + 40|0;
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer = sp;
- $4 = sp + 56|0;
- $5 = sp + 52|0;
- $6 = ((($1)) + 4|0);
- $7 = 
HEAPU8[$6>>0]|(HEAPU8[$6+1>>0]<<8)|(HEAPU8[$6+2>>0]<<16)|(HEAPU8[$6+3>>0]<<24);
- $8 = (_ntohl($7)|0);
- $9 = ($8|0)==($0|0);
- if (!($9)) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $10 = ((($2)) + 32|0);
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $2;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = 32;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $10;
- $11 = (_gcry_sexp_build($4,0,42223,$vararg_buffer)|0);
- $12 = ($11|0)==(0);
- if (!($12)) {
-  $13 = HEAP32[9408]|0;
-  $14 = ($13|0)==(-1);
-  if ($14) {
-   $15 = (_GNUNET_get_log_call_status(1,41568,41470,42252,1036)|0);
-   HEAP32[9408] = $15;
-  }
-  $16 = (_GNUNET_get_log_skip()|0);
-  $17 = ($16|0)>(0);
-  if ($17) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $18 = HEAP32[9408]|0;
-  $19 = ($18|0)==(0);
-  if ($19) {
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $20 = (_gcry_strerror($11)|0);
-  HEAP32[$vararg_buffer4>>2] = 41609;
-  $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
-  HEAP32[$vararg_ptr7>>2] = 41470;
-  $vararg_ptr8 = ((($vararg_buffer4)) + 8|0);
-  HEAP32[$vararg_ptr8>>2] = 1036;
-  $vararg_ptr9 = ((($vararg_buffer4)) + 12|0);
-  HEAP32[$vararg_ptr9>>2] = $20;
-  _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer4);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $21 = (_data_to_eddsa_value($1)|0);
- HEAP32[$vararg_buffer10>>2] = 32;
- $vararg_ptr13 = ((($vararg_buffer10)) + 4|0);
- HEAP32[$vararg_ptr13>>2] = $3;
- $22 = (_gcry_sexp_build($5,0,42279,$vararg_buffer10)|0);
- $23 = ($22|0)==(0);
- if (!($23)) {
-  _gcry_sexp_release($21);
-  $24 = HEAP32[$4>>2]|0;
-  _gcry_sexp_release($24);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $25 = HEAP32[$4>>2]|0;
- $26 = HEAP32[$5>>2]|0;
- $27 = (_gcry_pk_verify($25,$21,$26)|0);
- $28 = HEAP32[$5>>2]|0;
- _gcry_sexp_release($28);
- _gcry_sexp_release($21);
- $29 = HEAP32[$4>>2]|0;
- _gcry_sexp_release($29);
- $30 = ($27|0)==(0);
- if ($30) {
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $31 = HEAP32[9409]|0;
- $32 = ($31|0)==(-1);
- if ($32) {
-  $33 = (_GNUNET_get_log_call_status(8,41568,41470,42252,1056)|0);
-  HEAP32[9409] = $33;
- }
- $34 = (_GNUNET_get_log_skip()|0);
- $35 = ($34|0)>(0);
- if ($35) {
-  _GNUNET_log_skip(-1,0);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $36 = HEAP32[9409]|0;
- $37 = ($36|0)==(0);
- if ($37) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $38 = (_gcry_strerror($27)|0);
- HEAP32[$vararg_buffer14>>2] = 41470;
- $vararg_ptr17 = ((($vararg_buffer14)) + 4|0);
- HEAP32[$vararg_ptr17>>2] = 1056;
- $vararg_ptr18 = ((($vararg_buffer14)) + 8|0);
- HEAP32[$vararg_ptr18>>2] = $38;
- _GNUNET_log_from_nocheck(8,41568,42331,$vararg_buffer14);
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_ecc_ecdh($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, $vararg_buffer12 = 0;
- var $vararg_buffer16 = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, 
$vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, 
$vararg_ptr19 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(96|0);
- $vararg_buffer16 = sp + 72|0;
- $vararg_buffer12 = sp + 64|0;
- $vararg_buffer6 = sp + 48|0;
- $vararg_buffer2 = sp + 40|0;
- $vararg_buffer = sp + 32|0;
- $3 = sp + 92|0;
- $4 = sp + 88|0;
- $5 = sp + 84|0;
- $6 = sp;
- $7 = sp + 80|0;
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $8 = (_gcry_sexp_build($5,0,42184,$vararg_buffer)|0);
- $9 = ($8|0)==(0);
- if (!($9)) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $10 = HEAP32[$5>>2]|0;
- $11 = (_gcry_mpi_ec_new($4,$10,0)|0);
- $12 = ($11|0)==(0);
- if (!($12)) {
-  $13 = HEAP32[9410]|0;
-  $14 = ($13|0)==(-1);
-  if ($14) {
-   $15 = (_GNUNET_get_log_call_status(1,0,41470,42381,1094)|0);
-   HEAP32[9410] = $15;
-  }
-  $16 = (_GNUNET_get_log_skip()|0);
-  $17 = ($16|0)>(0);
-  if ($17) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $18 = HEAP32[9410]|0;
-  $19 = ($18|0)==(0);
-  if ($19) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 41470;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 1094;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $20 = HEAP32[$5>>2]|0;
- _gcry_sexp_release($20);
- $21 = HEAP32[$4>>2]|0;
- $22 = (_gcry_mpi_ec_get_point(64743,$21,0)|0);
- _GNUNET_CRYPTO_mpi_scan_unsigned($3,$0,32);
- $23 = (_gcry_mpi_point_new(0)|0);
- $24 = HEAP32[$3>>2]|0;
- $25 = HEAP32[$4>>2]|0;
- _gcry_mpi_ec_mul($23,$24,$22,$25);
- _gcry_mpi_point_release($22);
- $26 = HEAP32[$3>>2]|0;
- _gcry_mpi_release($26);
- $27 = (_gcry_mpi_new(256)|0);
- $28 = HEAP32[$4>>2]|0;
- $29 = (_gcry_mpi_ec_get_affine($27,0,$23,$28)|0);
- $30 = ($29|0)==(0);
- if (!($30)) {
-  $31 = HEAP32[9411]|0;
-  $32 = ($31|0)==(-1);
-  if ($32) {
-   $33 = (_GNUNET_get_log_call_status(1,41568,41470,42381,1111)|0);
-   HEAP32[9411] = $33;
-  }
-  $34 = (_GNUNET_get_log_skip()|0);
-  $35 = ($34|0)>(0);
-  if ($35) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $36 = HEAP32[9411]|0;
-   $37 = ($36|0)==(0);
-   if (!($37)) {
-    $38 = (_gcry_strerror(0)|0);
-    HEAP32[$vararg_buffer6>>2] = 42404;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 41470;
-    $vararg_ptr10 = ((($vararg_buffer6)) + 8|0);
-    HEAP32[$vararg_ptr10>>2] = 1111;
-    $vararg_ptr11 = ((($vararg_buffer6)) + 12|0);
-    HEAP32[$vararg_ptr11>>2] = $38;
-    _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer6);
-   }
-  }
-  _gcry_mpi_point_release($23);
-  $39 = HEAP32[$4>>2]|0;
-  _gcry_ctx_release($39);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- _gcry_mpi_point_release($23);
- $40 = HEAP32[$4>>2]|0;
- _gcry_ctx_release($40);
- HEAP32[$7>>2] = 32;
- $41 = (_gcry_mpi_get_flag($27,2)|0);
- $42 = ($41|0)==(0);
- if (!($42)) {
-  $43 = HEAP32[9412]|0;
-  $44 = ($43|0)==(-1);
-  if ($44) {
-   $45 = (_GNUNET_get_log_call_status(1,0,41470,42381,1120)|0);
-   HEAP32[9412] = $45;
-  }
-  $46 = (_GNUNET_get_log_skip()|0);
-  $47 = ($46|0)>(0);
-  if ($47) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $48 = HEAP32[9412]|0;
-  $49 = ($48|0)==(0);
-  if ($49) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer12>>2] = 41470;
-  $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-  HEAP32[$vararg_ptr15>>2] = 1120;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer12);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $50 = (_gcry_mpi_print(1,$6,32,$7,$27)|0);
- $51 = ($50|0)==(0);
- if ($51) {
-  $59 = HEAP32[$7>>2]|0;
-  _GNUNET_CRYPTO_hash($6,$59,$2);
-  _gcry_mpi_release($27);
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $52 = HEAP32[9413]|0;
- $53 = ($52|0)==(-1);
- if ($53) {
-  $54 = (_GNUNET_get_log_call_status(1,0,41470,42381,1127)|0);
-  HEAP32[9413] = $54;
- }
- $55 = (_GNUNET_get_log_skip()|0);
- $56 = ($55|0)>(0);
- if ($56) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $57 = HEAP32[9413]|0;
- $58 = ($57|0)==(0);
- if ($58) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer16>>2] = 41470;
- $vararg_ptr19 = ((($vararg_buffer16)) + 4|0);
- HEAP32[$vararg_ptr19>>2] = 1127;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer16);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _point_to_hash($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer4 = 0, 
$vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr2 = 0, 
$vararg_ptr3 = 0;
- var $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer8 = sp + 56|0;
- $vararg_buffer4 = sp + 48|0;
- $vararg_buffer = sp + 32|0;
- $3 = sp;
- $4 = sp + 64|0;
- $5 = (_gcry_mpi_new(256)|0);
- $6 = (_gcry_mpi_ec_get_affine($5,0,$0,$1)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = HEAP32[9414]|0;
-  $9 = ($8|0)==(-1);
-  if ($9) {
-   $10 = (_GNUNET_get_log_call_status(1,41568,41470,42422,1372)|0);
-   HEAP32[9414] = $10;
-  }
-  $11 = (_GNUNET_get_log_skip()|0);
-  $12 = ($11|0)>(0);
-  if ($12) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $13 = HEAP32[9414]|0;
-  $14 = ($13|0)==(0);
-  if ($14) {
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $15 = (_gcry_strerror(0)|0);
-  HEAP32[$vararg_buffer>>2] = 42404;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 41470;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = 1372;
-  $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-  HEAP32[$vararg_ptr3>>2] = $15;
-  _GNUNET_log_from_nocheck(1,41568,42643,$vararg_buffer);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP32[$4>>2] = 32;
- $16 = (_gcry_mpi_get_flag($5,2)|0);
- $17 = ($16|0)==(0);
- if (!($17)) {
-  $18 = HEAP32[9415]|0;
-  $19 = ($18|0)==(-1);
-  if ($19) {
-   $20 = (_GNUNET_get_log_call_status(1,0,41470,42422,1377)|0);
-   HEAP32[9415] = $20;
-  }
-  $21 = (_GNUNET_get_log_skip()|0);
-  $22 = ($21|0)>(0);
-  if ($22) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $23 = HEAP32[9415]|0;
-  $24 = ($23|0)==(0);
-  if ($24) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer4>>2] = 41470;
-  $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
-  HEAP32[$vararg_ptr7>>2] = 1377;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer4);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $25 = (_gcry_mpi_print(1,$3,32,$4,$5)|0);
- $26 = ($25|0)==(0);
- if ($26) {
-  $34 = HEAP32[$4>>2]|0;
-  _GNUNET_CRYPTO_hash($3,$34,$2);
-  _gcry_mpi_release($5);
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $27 = HEAP32[9416]|0;
- $28 = ($27|0)==(-1);
- if ($28) {
-  $29 = (_GNUNET_get_log_call_status(1,0,41470,42422,1384)|0);
-  HEAP32[9416] = $29;
- }
- $30 = (_GNUNET_get_log_skip()|0);
- $31 = ($30|0)>(0);
- if ($31) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $32 = HEAP32[9416]|0;
- $33 = ($32|0)==(0);
- if ($33) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer8>>2] = 41470;
- $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
- HEAP32[$vararg_ptr11>>2] = 1384;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_ecdh_eddsa($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $3 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 24|0;
- $4 = sp + 20|0;
- $5 = sp + 16|0;
- HEAP32[$vararg_buffer>>2] = 32;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $6 = (_gcry_sexp_build($5,0,42184,$vararg_buffer)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = HEAP32[$5>>2]|0;
- $9 = (_gcry_mpi_ec_new($4,$8,0)|0);
- $10 = ($9|0)==(0);
- if ($10) {
-  $18 = HEAP32[$5>>2]|0;
-  _gcry_sexp_release($18);
-  $19 = HEAP32[$4>>2]|0;
-  $20 = (_gcry_mpi_ec_get_point(64743,$19,0)|0);
-  _GNUNET_CRYPTO_mpi_scan_unsigned($3,$0,32);
-  $21 = (_gcry_mpi_point_new(0)|0);
-  $22 = HEAP32[$3>>2]|0;
-  $23 = HEAP32[$4>>2]|0;
-  _gcry_mpi_ec_mul($21,$22,$20,$23);
-  _gcry_mpi_point_release($20);
-  $24 = HEAP32[$3>>2]|0;
-  _gcry_mpi_release($24);
-  $25 = HEAP32[$4>>2]|0;
-  $26 = (_point_to_hash($21,$25,$2)|0);
-  _gcry_mpi_point_release($21);
-  $27 = HEAP32[$4>>2]|0;
-  _gcry_ctx_release($27);
-  $$0 = $26;
-  STACKTOP = sp;return ($$0|0);
- }
- $11 = HEAP32[9417]|0;
- $12 = ($11|0)==(-1);
- if ($12) {
-  $13 = (_GNUNET_get_log_call_status(1,0,41470,42436,1533)|0);
-  HEAP32[9417] = $13;
- }
- $14 = (_GNUNET_get_log_skip()|0);
- $15 = ($14|0)>(0);
- if ($15) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $16 = HEAP32[9417]|0;
- $17 = ($16|0)==(0);
- if ($17) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer2>>2] = 41470;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = 1533;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_hash($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- _gcry_md_hash_buffer(10,$2,$0,$1);
- return;
-}
-function _GNUNET_CRYPTO_hash_create_random($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $3 = ((($1)) + 60|0);
- HEAP32[$3>>2] = $2;
- $4 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $5 = ((($1)) + 56|0);
- HEAP32[$5>>2] = $4;
- $6 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $7 = ((($1)) + 52|0);
- HEAP32[$7>>2] = $6;
- $8 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $9 = ((($1)) + 48|0);
- HEAP32[$9>>2] = $8;
- $10 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $11 = ((($1)) + 44|0);
- HEAP32[$11>>2] = $10;
- $12 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $13 = ((($1)) + 40|0);
- HEAP32[$13>>2] = $12;
- $14 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $15 = ((($1)) + 36|0);
- HEAP32[$15>>2] = $14;
- $16 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $17 = ((($1)) + 32|0);
- HEAP32[$17>>2] = $16;
- $18 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $19 = ((($1)) + 28|0);
- HEAP32[$19>>2] = $18;
- $20 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $21 = ((($1)) + 24|0);
- HEAP32[$21>>2] = $20;
- $22 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $23 = ((($1)) + 20|0);
- HEAP32[$23>>2] = $22;
- $24 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $25 = ((($1)) + 16|0);
- HEAP32[$25>>2] = $24;
- $26 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $27 = ((($1)) + 12|0);
- HEAP32[$27>>2] = $26;
- $28 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $29 = ((($1)) + 8|0);
- HEAP32[$29>>2] = $28;
- $30 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- $31 = ((($1)) + 4|0);
- HEAP32[$31>>2] = $30;
- $32 = (_GNUNET_CRYPTO_random_u32($0,-1)|0);
- HEAP32[$1>>2] = $32;
- return;
-}
-function _GNUNET_CRYPTO_hash_context_start() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = (_GNUNET_xmalloc_(4,42461,450)|0);
- $1 = (_gcry_md_open($0,10,0)|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  STACKTOP = sp;return ($0|0);
- }
- $3 = HEAP32[9418]|0;
- $4 = ($3|0)==(-1);
- if ($4) {
-  $5 = (_GNUNET_get_log_call_status(1,0,42461,42475,454)|0);
-  HEAP32[9418] = $5;
- }
- $6 = (_GNUNET_get_log_skip()|0);
- $7 = ($6|0)>(0);
- if ($7) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $8 = HEAP32[9418]|0;
- $9 = ($8|0)==(0);
- if ($9) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 42461;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 454;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_hash_context_read($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$0>>2]|0;
- _gcry_md_write($3,$1,$2);
- return;
-}
-function _GNUNET_CRYPTO_hash_context_finish($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, dest = 0, 
label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = HEAP32[$0>>2]|0;
- $3 = (_gcry_md_read($2,0)|0);
- $4 = ($3|0)==(0|0);
- if (!($4)) {
-  $12 = ($1|0)==(0|0);
-  if ($12) {
-   $13 = HEAP32[$0>>2]|0;
-   _gcry_md_close($13);
-   _GNUNET_xfree_($0,42461,513);
-   STACKTOP = sp;return;
-  }
-  dest=$1; src=$3; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  $13 = HEAP32[$0>>2]|0;
-  _gcry_md_close($13);
-  _GNUNET_xfree_($0,42461,513);
-  STACKTOP = sp;return;
- }
- $5 = HEAP32[9419]|0;
- $6 = ($5|0)==(-1);
- if ($6) {
-  $7 = (_GNUNET_get_log_call_status(1,0,42461,42508,494)|0);
-  HEAP32[9419] = $7;
- }
- $8 = (_GNUNET_get_log_skip()|0);
- $9 = ($8|0)>(0);
- if ($9) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $10 = HEAP32[9419]|0;
- $11 = ($10|0)==(0);
- if ($11) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 42461;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 494;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_CRYPTO_hash_context_abort($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- _gcry_md_close($1);
- _GNUNET_xfree_($0,42461,513);
- return;
-}
-function _GNUNET_CRYPTO_hkdf_v($0,$1,$2,$3,$4,$5,$6,$7,$8) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- $8 = $8|0;
- var $$0 = 0, $$0113 = 0, $$0115127 = 0, $$0116$lcssa = 0, $$0116124$us = 0, 
$$0120$lcssa = 0, $$0120131 = 0, $$1$lcssa = 0, $$1117 = 0, $$1119 = 0, 
$$1125$us = 0, $$alloca_mul = 0, $$alloca_mul63 = 0, $10 = 0, $100 = 0, $101 = 
0, $102 = 0, $103 = 0, $104 = 0, $105 = 0;
- var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 
= 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 
0, $56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 
0, $76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, 
$arglist_current14 = 0, $arglist_current17 = 0, $arglist_current2 = 0, 
$arglist_current5 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next15 
= 0, $arglist_next18 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $expanded = 
0, $expanded19 = 0, $expanded21 = 0, $expanded22 = 0, $expanded23 = 0, 
$expanded25 = 0;
- var $expanded26 = 0, $expanded28 = 0, $expanded29 = 0, $expanded30 = 0, 
$expanded32 = 0, $expanded33 = 0, $expanded35 = 0, $expanded36 = 0, $expanded37 
= 0, $expanded39 = 0, $expanded40 = 0, $expanded42 = 0, $expanded43 = 0, 
$expanded44 = 0, $expanded46 = 0, $expanded47 = 0, $expanded49 = 0, $expanded50 
= 0, $expanded51 = 0, $expanded53 = 0;
- var $expanded54 = 0, $expanded56 = 0, $expanded57 = 0, $expanded58 = 0, 
$vacopy_currentptr = 0, $vacopy_currentptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $9 = sp + 20|0;
- $10 = sp + 16|0;
- $11 = sp;
- $12 = (_gcry_md_get_algo_dlen($3)|0);
- $13 = (_gcry_md_get_algo_dlen($2)|0);
- $14 = (_llvm_stacksave()|0);
- $$alloca_mul = $13;
- $15 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
- $16 = ($12|0)==(0);
- if ($16) {
-  $$0 = -1;
-  _llvm_stackrestore(($14|0));
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = (_gcry_md_open($9,$2,2)|0);
- $18 = ($17|0)==(0);
- if (!($18)) {
-  $$0 = -1;
-  _llvm_stackrestore(($14|0));
-  STACKTOP = sp;return ($$0|0);
- }
- $19 = (_gcry_md_open($10,$3,2)|0);
- $20 = ($19|0)==(0);
- if (!($20)) {
-  $21 = HEAP32[$9>>2]|0;
-  _gcry_md_close($21);
-  $$0 = -1;
-  _llvm_stackrestore(($14|0));
-  STACKTOP = sp;return ($$0|0);
- }
- $vacopy_currentptr = HEAP32[$8>>2]|0;
- HEAP32[$11>>2] = $vacopy_currentptr;
- $arglist_current = HEAP32[$11>>2]|0;
- $22 = $arglist_current;
- $23 = ((0) + 4|0);
- $expanded19 = $23;
- $expanded = (($expanded19) - 1)|0;
- $24 = (($22) + ($expanded))|0;
- $25 = ((0) + 4|0);
- $expanded23 = $25;
- $expanded22 = (($expanded23) - 1)|0;
- $expanded21 = $expanded22 ^ -1;
- $26 = $24 & $expanded21;
- $27 = $26;
- $28 = HEAP32[$27>>2]|0;
- $arglist_next = ((($27)) + 4|0);
- HEAP32[$11>>2] = $arglist_next;
- $29 = ($28|0)==(0|0);
- if ($29) {
-  $$0120$lcssa = 0;
- } else {
-  $$0120131 = 0;
-  while(1) {
-   $arglist_current2 = HEAP32[$11>>2]|0;
-   $30 = $arglist_current2;
-   $31 = ((0) + 4|0);
-   $expanded26 = $31;
-   $expanded25 = (($expanded26) - 1)|0;
-   $32 = (($30) + ($expanded25))|0;
-   $33 = ((0) + 4|0);
-   $expanded30 = $33;
-   $expanded29 = (($expanded30) - 1)|0;
-   $expanded28 = $expanded29 ^ -1;
-   $34 = $32 & $expanded28;
-   $35 = $34;
-   $36 = HEAP32[$35>>2]|0;
-   $arglist_next3 = ((($35)) + 4|0);
-   HEAP32[$11>>2] = $arglist_next3;
-   $37 = (($36) + ($$0120131))|0;
-   $arglist_current5 = HEAP32[$11>>2]|0;
-   $38 = $arglist_current5;
-   $39 = ((0) + 4|0);
-   $expanded33 = $39;
-   $expanded32 = (($expanded33) - 1)|0;
-   $40 = (($38) + ($expanded32))|0;
-   $41 = ((0) + 4|0);
-   $expanded37 = $41;
-   $expanded36 = (($expanded37) - 1)|0;
-   $expanded35 = $expanded36 ^ -1;
-   $42 = $40 & $expanded35;
-   $43 = $42;
-   $44 = HEAP32[$43>>2]|0;
-   $arglist_next6 = ((($43)) + 4|0);
-   HEAP32[$11>>2] = $arglist_next6;
-   $45 = ($44|0)==(0|0);
-   if ($45) {
-    $$0120$lcssa = $37;
-    break;
-   } else {
-    $$0120131 = $37;
-   }
-  }
- }
- _memset(($0|0),0,($1|0))|0;
- $46 = HEAP32[$9>>2]|0;
- (_gcry_md_setkey($46,$4,$5)|0);
- _gcry_md_write($46,$6,$7);
- $47 = (_gcry_md_read($46,0)|0);
- $48 = ($47|0)==(0|0);
- L16: do {
-  if ($48) {
-   $$1119 = -1;
-  } else {
-   $49 = (_gcry_md_get_algo($46)|0);
-   $50 = (_gcry_md_get_algo_dlen($49)|0);
-   $51 = ($50|0)==(0);
-   if (!($51)) {
-    $52 = (_gcry_md_get_algo($46)|0);
-    $53 = (_gcry_md_get_algo_dlen($52)|0);
-    _memcpy(($15|0),($47|0),($53|0))|0;
-   }
-   $54 = (($1>>>0) / ($12>>>0))&-1;
-   $55 = Math_imul($54, $12)|0;
-   $56 = (($1) - ($55))|0;
-   $57 = (($$0120$lcssa) + 1)|0;
-   $58 = (($57) + ($12))|0;
-   $59 = (_llvm_stacksave()|0);
-   $$alloca_mul63 = $58;
-   $60 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul63)|0)+15)&-16)|0; 
if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul63)|0)+15)&-16)|0);;
-   $61 = (($60) + ($12)|0);
-   $vacopy_currentptr9 = HEAP32[$8>>2]|0;
-   HEAP32[$11>>2] = $vacopy_currentptr9;
-   $arglist_current11 = HEAP32[$11>>2]|0;
-   $62 = $arglist_current11;
-   $63 = ((0) + 4|0);
-   $expanded40 = $63;
-   $expanded39 = (($expanded40) - 1)|0;
-   $64 = (($62) + ($expanded39))|0;
-   $65 = ((0) + 4|0);
-   $expanded44 = $65;
-   $expanded43 = (($expanded44) - 1)|0;
-   $expanded42 = $expanded43 ^ -1;
-   $66 = $64 & $expanded42;
-   $67 = $66;
-   $68 = HEAP32[$67>>2]|0;
-   $arglist_next12 = ((($67)) + 4|0);
-   HEAP32[$11>>2] = $arglist_next12;
-   $69 = ($68|0)==(0|0);
-   if (!($69)) {
-    $$0115127 = $61;$78 = $68;
-    while(1) {
-     $arglist_current14 = HEAP32[$11>>2]|0;
-     $70 = $arglist_current14;
-     $71 = ((0) + 4|0);
-     $expanded47 = $71;
-     $expanded46 = (($expanded47) - 1)|0;
-     $72 = (($70) + ($expanded46))|0;
-     $73 = ((0) + 4|0);
-     $expanded51 = $73;
-     $expanded50 = (($expanded51) - 1)|0;
-     $expanded49 = $expanded50 ^ -1;
-     $74 = $72 & $expanded49;
-     $75 = $74;
-     $76 = HEAP32[$75>>2]|0;
-     $arglist_next15 = ((($75)) + 4|0);
-     HEAP32[$11>>2] = $arglist_next15;
-     $77 = ($76|0)==(0);
-     if (!($77)) {
-      _memcpy(($$0115127|0),($78|0),($76|0))|0;
-     }
-     $79 = (($$0115127) + ($76)|0);
-     $arglist_current17 = HEAP32[$11>>2]|0;
-     $80 = $arglist_current17;
-     $81 = ((0) + 4|0);
-     $expanded54 = $81;
-     $expanded53 = (($expanded54) - 1)|0;
-     $82 = (($80) + ($expanded53))|0;
-     $83 = ((0) + 4|0);
-     $expanded58 = $83;
-     $expanded57 = (($expanded58) - 1)|0;
-     $expanded56 = $expanded57 ^ -1;
-     $84 = $82 & $expanded56;
-     $85 = $84;
-     $86 = HEAP32[$85>>2]|0;
-     $arglist_next18 = ((($85)) + 4|0);
-     HEAP32[$11>>2] = $arglist_next18;
-     $87 = ($86|0)==(0|0);
-     if ($87) {
-      break;
-     } else {
-      $$0115127 = $79;$78 = $86;
-     }
-    }
-   }
-   $88 = ($12>>>0)<=($1>>>0);
-   if ($88) {
-    $89 = (($61) + ($$0120$lcssa)|0);
-    HEAP8[$89>>0] = 1;
-    $90 = HEAP32[$10>>2]|0;
-    (_gcry_md_setkey($90,$15,$13)|0);
-    _gcry_md_write($90,$61,$57);
-    $91 = (_gcry_md_read($90,0)|0);
-    $92 = ($91|0)==(0|0);
-    if (!($92)) {
-     _memcpy(($0|0),($91|0),($12|0))|0;
-     $93 = (($0) + ($12)|0);
-     $$0113 = $93;
-     label = 19;
-    }
-   } else {
-    $$0113 = $0;
-    label = 19;
-   }
-   L32: do {
-    if ((label|0) == 19) {
-     $94 = ($54>>>0)>(1);
-     if ($94) {
-      $95 = (0 - ($12))|0;
-      $96 = (($61) + ($$0120$lcssa)|0);
-      $$0116124$us = 1;$$1125$us = $$0113;
-      while(1) {
-       $97 = (($$1125$us) + ($95)|0);
-       _memcpy(($60|0),($97|0),($12|0))|0;
-       $98 = (($$0116124$us) + 1)|0;
-       $99 = $98&255;
-       _memset(($96|0),($99|0),1)|0;
-       $100 = HEAP32[$10>>2]|0;
-       _gcry_md_reset($100);
-       $101 = HEAP32[$10>>2]|0;
-       (_gcry_md_setkey($101,$15,$13)|0);
-       _gcry_md_write($101,$60,$58);
-       $102 = (_gcry_md_read($101,0)|0);
-       $103 = ($102|0)==(0|0);
-       if ($103) {
-        break L32;
-       }
-       _memcpy(($$1125$us|0),($102|0),($12|0))|0;
-       $104 = (($$1125$us) + ($12)|0);
-       $105 = ($98>>>0)<($54>>>0);
-       if ($105) {
-        $$0116124$us = $98;$$1125$us = $104;
-       } else {
-        $$0116$lcssa = $98;$$1$lcssa = $104;
-        break;
-       }
-      }
-     } else {
-      $$0116$lcssa = 1;$$1$lcssa = $$0113;
-     }
-     $106 = ($56|0)==(0);
-     if (!($106)) {
-      if ($88) {
-       $107 = (0 - ($12))|0;
-       $108 = (($$1$lcssa) + ($107)|0);
-       _memcpy(($60|0),($108|0),($12|0))|0;
-       $109 = (($$0116$lcssa) + 1)|0;
-       $$1117 = $109;
-      } else {
-       $$1117 = $$0116$lcssa;
-      }
-      $110 = (($61) + ($$0120$lcssa)|0);
-      $111 = $$1117&255;
-      _memset(($110|0),($111|0),1)|0;
-      $112 = HEAP32[$10>>2]|0;
-      _gcry_md_reset($112);
-      $113 = HEAP32[$10>>2]|0;
-      (_gcry_md_setkey($113,$15,$13)|0);
-      if ($88) {
-       _gcry_md_write($113,$60,$58);
-      } else {
-       _gcry_md_write($113,$61,$57);
-      }
-      $114 = (_gcry_md_read($113,0)|0);
-      $115 = ($114|0)==(0|0);
-      if ($115) {
-       break;
-      }
-      _memcpy(($$1$lcssa|0),($114|0),($56|0))|0;
-     }
-     _llvm_stackrestore(($59|0));
-     $$1119 = 1;
-     break L16;
-    }
-   } while(0);
-   _llvm_stackrestore(($59|0));
-   $$1119 = -1;
-  }
- } while(0);
- $116 = HEAP32[$9>>2]|0;
- _gcry_md_close($116);
- $117 = HEAP32[$10>>2]|0;
- _gcry_md_close($117);
- $$0 = $$1119;
- _llvm_stackrestore(($14|0));
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_hkdf($0,$1,$2,$3,$4,$5,$6,$7,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- $varargs = $varargs|0;
- var $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $8 = sp;
- HEAP32[$8>>2] = $varargs;
- $9 = (_GNUNET_CRYPTO_hkdf_v($0,$1,$2,$3,$4,$5,$6,$7,$8)|0);
- STACKTOP = sp;return ($9|0);
-}
-function _GNUNET_CRYPTO_kdf($0,$1,$2,$3,$4,$5,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $varargs = $varargs|0;
- var $6 = 0, $7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $6 = sp;
- HEAP32[$6>>2] = $varargs;
- $7 = (_GNUNET_CRYPTO_hkdf_v($0,$1,10,8,$2,$3,$4,$5,$6)|0);
- STACKTOP = sp;return ($7|0);
-}
-function _GNUNET_CRYPTO_kdf_mod_mpi($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$alloca_mul = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $50 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer10 = 0, $vararg_buffer14 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 
0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, 
$vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer14 = sp + 40|0;
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer = sp;
- $7 = sp + 52|0;
- $8 = sp + 48|0;
- $9 = (_gcry_mpi_get_nbits($1)|0);
- HEAP32[$8>>2] = 0;
- $10 = (($9) + -1)|0;
- $11 = $10 >>> 3;
- $12 = (($11) + 1)|0;
- while(1) {
-  $13 = (_llvm_stacksave()|0);
-  $$alloca_mul = $12;
-  $14 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
-  $15 = (_strlen($6)|0);
-  HEAP32[$vararg_buffer>>2] = $6;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $15;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = $8;
-  $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-  HEAP32[$vararg_ptr3>>2] = 4;
-  $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-  HEAP32[$vararg_ptr4>>2] = 0;
-  $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-  HEAP32[$vararg_ptr5>>2] = 0;
-  $16 = (_GNUNET_CRYPTO_kdf($14,$12,$2,$3,$4,$5,$vararg_buffer)|0);
-  $17 = ($16|0)==(1);
-  if (!($17)) {
-   label = 3;
-   break;
-  }
-  $25 = (_gcry_mpi_scan($0,5,$14,$12,$7)|0);
-  $26 = ($25|0)==(0);
-  if (!($26)) {
-   label = 11;
-   break;
-  }
-  $34 = HEAP32[$0>>2]|0;
-  _gcry_mpi_clear_highbit($34,$9);
-  $35 = HEAP32[$0>>2]|0;
-  $36 = (_gcry_mpi_test_bit($35,$9)|0);
-  $37 = ($36|0)==(0);
-  if (!($37)) {
-   label = 19;
-   break;
-  }
-  $45 = HEAP32[$8>>2]|0;
-  $46 = (($45) + 1)|0;
-  HEAP32[$8>>2] = $46;
-  $47 = HEAP32[$0>>2]|0;
-  $48 = (_gcry_mpi_cmp($47,$1)|0);
-  $49 = ($48|0)<(0);
-  if ($49) {
-   label = 28;
-   break;
-  }
-  $50 = HEAP32[$0>>2]|0;
-  _gcry_mpi_release($50);
-  _llvm_stackrestore(($13|0));
- }
- if ((label|0) == 3) {
-  $18 = HEAP32[9420]|0;
-  $19 = ($18|0)==(-1);
-  if ($19) {
-   $20 = (_GNUNET_get_log_call_status(1,0,42542,42555,153)|0);
-   HEAP32[9420] = $20;
-  }
-  $21 = (_GNUNET_get_log_skip()|0);
-  $22 = ($21|0)>(0);
-  if ($22) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $23 = HEAP32[9420]|0;
-  $24 = ($23|0)==(0);
-  if ($24) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer6>>2] = 42542;
-  $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-  HEAP32[$vararg_ptr9>>2] = 153;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
-  _GNUNET_abort_();
-  // unreachable;
- }
- else if ((label|0) == 11) {
-  $27 = HEAP32[9421]|0;
-  $28 = ($27|0)==(-1);
-  if ($28) {
-   $29 = (_GNUNET_get_log_call_status(1,0,42542,42555,160)|0);
-   HEAP32[9421] = $29;
-  }
-  $30 = (_GNUNET_get_log_skip()|0);
-  $31 = ($30|0)>(0);
-  if ($31) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $32 = HEAP32[9421]|0;
-  $33 = ($32|0)==(0);
-  if ($33) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer10>>2] = 42542;
-  $vararg_ptr13 = ((($vararg_buffer10)) + 4|0);
-  HEAP32[$vararg_ptr13>>2] = 160;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer10);
-  _GNUNET_abort_();
-  // unreachable;
- }
- else if ((label|0) == 19) {
-  $38 = HEAP32[9422]|0;
-  $39 = ($38|0)==(-1);
-  if ($39) {
-   $40 = (_GNUNET_get_log_call_status(1,0,42542,42555,163)|0);
-   HEAP32[9422] = $40;
-  }
-  $41 = (_GNUNET_get_log_skip()|0);
-  $42 = ($41|0)>(0);
-  if ($42) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $43 = HEAP32[9422]|0;
-  $44 = ($43|0)==(0);
-  if ($44) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer14>>2] = 42542;
-  $vararg_ptr17 = ((($vararg_buffer14)) + 4|0);
-  HEAP32[$vararg_ptr17>>2] = 163;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer14);
-  _GNUNET_abort_();
-  // unreachable;
- }
- else if ((label|0) == 28) {
-  _llvm_stackrestore(($13|0));
-  STACKTOP = sp;return;
- }
-}
-function _GNUNET_CRYPTO_mpi_print_unsigned($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $spec$select = 0, $vararg_buffer = 0, $vararg_buffer2 = 
0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr5 = 0, 
$vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 36|0;
- $4 = sp + 32|0;
- $5 = (_gcry_mpi_get_flag($2,2)|0);
- $6 = ($5|0)==(0);
- if (!($6)) {
-  $7 = (_gcry_mpi_get_opaque($2,$4)|0);
-  $8 = ($7|0)==(0|0);
-  if (!($8)) {
-   $16 = HEAP32[$4>>2]|0;
-   $17 = (($16) + 7)|0;
-   $18 = $17 >>> 3;
-   $19 = ($18>>>0)>($1>>>0);
-   $spec$select = $19 ? $1 : $18;
-   HEAP32[$3>>2] = $spec$select;
-   $20 = ($spec$select|0)==(0);
-   if (!($20)) {
-    _memcpy(($0|0),($7|0),($spec$select|0))|0;
-   }
-   $21 = ($18>>>0)<($1>>>0);
-   if ($21) {
-    $22 = (($1) - ($spec$select))|0;
-    $23 = (($0) + ($spec$select)|0);
-    _memset(($23|0),0,($22|0))|0;
-   }
-   STACKTOP = sp;return;
-  }
-  $9 = HEAP32[9423]|0;
-  $10 = ($9|0)==(-1);
-  if ($10) {
-   $11 = (_GNUNET_get_log_call_status(1,0,42581,42594,87)|0);
-   HEAP32[9423] = $11;
-  }
-  $12 = (_GNUNET_get_log_skip()|0);
-  $13 = ($12|0)>(0);
-  if ($13) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $14 = HEAP32[9423]|0;
-  $15 = ($14|0)==(0);
-  if ($15) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 42581;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 87;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$3>>2] = $1;
- $24 = (_gcry_mpi_print(5,$0,$1,$3,$2)|0);
- $25 = ($24|0)==(0);
- if ($25) {
-  $41 = HEAP32[$3>>2]|0;
-  $42 = ($41>>>0)<($1>>>0);
-  $43 = (($1) - ($41))|0;
-  if (!($42)) {
-   STACKTOP = sp;return;
-  }
-  $44 = (($0) + ($43)|0);
-  _memmove(($44|0),($0|0),($41|0))|0;
-  _memset(($0|0),0,($43|0))|0;
-  STACKTOP = sp;return;
- }
- $26 = HEAP32[9424]|0;
- $27 = ($26|0)==(-1);
- if ($27) {
-  $28 = (_GNUNET_get_log_call_status(1,42627,42581,42594,108)|0);
-  HEAP32[9424] = $28;
- }
- $29 = (_GNUNET_get_log_skip()|0);
- $30 = ($29|0)>(0);
- if ($30) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $31 = HEAP32[9424]|0;
-  $32 = ($31|0)==(0);
-  if (!($32)) {
-   $33 = (_gcry_strerror($24)|0);
-   HEAP32[$vararg_buffer2>>2] = 42680;
-   $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-   HEAP32[$vararg_ptr5>>2] = 42581;
-   $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-   HEAP32[$vararg_ptr6>>2] = 108;
-   $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-   HEAP32[$vararg_ptr7>>2] = $33;
-   _GNUNET_log_from_nocheck(1,42627,42643,$vararg_buffer2);
-  }
- }
- $34 = HEAP32[9425]|0;
- $35 = ($34|0)==(-1);
- if ($35) {
-  $36 = (_GNUNET_get_log_call_status(1,0,42581,42594,109)|0);
-  HEAP32[9425] = $36;
- }
- $37 = (_GNUNET_get_log_skip()|0);
- $38 = ($37|0)>(0);
- if ($38) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $39 = HEAP32[9425]|0;
- $40 = ($39|0)==(0);
- if ($40) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer8>>2] = 42581;
- $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
- HEAP32[$vararg_ptr11>>2] = 109;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer8);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_CRYPTO_mpi_scan_unsigned($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $vararg_buffer = 0, $vararg_buffer4 = 0;
- var $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer = sp;
- $3 = sp + 24|0;
- HEAP32[$3>>2] = $2;
- $4 = (_gcry_mpi_scan($0,5,$1,$2,$3)|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  STACKTOP = sp;return;
- }
- $6 = HEAP32[9426]|0;
- $7 = ($6|0)==(-1);
- if ($7) {
-  $8 = (_GNUNET_get_log_call_status(1,42627,42581,42695,138)|0);
-  HEAP32[9426] = $8;
- }
- $9 = (_GNUNET_get_log_skip()|0);
- $10 = ($9|0)>(0);
- if ($10) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $11 = HEAP32[9426]|0;
-  $12 = ($11|0)==(0);
-  if (!($12)) {
-   $13 = (_gcry_strerror($4)|0);
-   HEAP32[$vararg_buffer>>2] = 42727;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 42581;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = 138;
-   $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-   HEAP32[$vararg_ptr3>>2] = $13;
-   _GNUNET_log_from_nocheck(1,42627,42643,$vararg_buffer);
-  }
- }
- $14 = HEAP32[9427]|0;
- $15 = ($14|0)==(-1);
- if ($15) {
-  $16 = (_GNUNET_get_log_call_status(1,0,42581,42695,139)|0);
-  HEAP32[9427] = $16;
- }
- $17 = (_GNUNET_get_log_skip()|0);
- $18 = ($17|0)>(0);
- if ($18) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $19 = HEAP32[9427]|0;
- $20 = ($19|0)==(0);
- if ($20) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer4>>2] = 42581;
- $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
- HEAP32[$vararg_ptr7>>2] = 139;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer4);
- _GNUNET_abort_();
- // unreachable;
-}
-function _GNUNET_CRYPTO_random_init() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer12 = 0, $vararg_buffer15 = 0, $vararg_buffer19 = 0, 
$vararg_buffer22 = 0, $vararg_buffer5 = 0, $vararg_buffer8 = 0, $vararg_ptr11 = 
0, $vararg_ptr18 = 0, $vararg_ptr4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer22 = sp + 56|0;
- $vararg_buffer19 = sp + 48|0;
- $vararg_buffer15 = sp + 40|0;
- $vararg_buffer12 = sp + 32|0;
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer5 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = sp + 60|0;
- $1 = (_gcry_check_version(42741)|0);
- $2 = ($1|0)==(0|0);
- if (!($2)) {
-  _gcry_set_allocation_handler(54,54,55,56,57);
-  HEAP32[$vararg_buffer5>>2] = 0;
-  $11 = (_gcry_control(37,$vararg_buffer5)|0);
-  $12 = ($11|0)==(0);
-  if (!($12)) {
-   $13 = HEAP32[10138]|0;
-   $14 = (_gcry_strerror($11)|0);
-   HEAP32[$vararg_buffer8>>2] = 42894;
-   $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-   HEAP32[$vararg_ptr11>>2] = $14;
-   (_fprintf($13,42855,$vararg_buffer8)|0);
-  }
-  HEAP32[$vararg_buffer12>>2] = 0;
-  $15 = (_gcry_control(44,$vararg_buffer12)|0);
-  $16 = ($15|0)==(0);
-  if (!($16)) {
-   $17 = HEAP32[10138]|0;
-   $18 = (_gcry_strerror($15)|0);
-   HEAP32[$vararg_buffer15>>2] = 42909;
-   $vararg_ptr18 = ((($vararg_buffer15)) + 4|0);
-   HEAP32[$vararg_ptr18>>2] = $18;
-   (_fprintf($17,42855,$vararg_buffer15)|0);
-  }
-  HEAP32[$vararg_buffer19>>2] = 0;
-  (_gcry_control(38,$vararg_buffer19)|0);
-  HEAP32[$vararg_buffer22>>2] = 0;
-  (_gcry_control(48,$vararg_buffer22)|0);
-  $19 = (_time((0|0))|0);
-  while(1) {
-   _gcry_create_nonce($0,4);
-   $20 = HEAP32[$0>>2]|0;
-   $21 = ($20|0)==(-1);
-   if (!($21)) {
-    break;
-   }
-  }
-  $22 = $20 ^ $19;
-  _srandom($22);
-  STACKTOP = sp;return;
- }
- $3 = HEAP32[10138]|0;
- HEAP32[$vararg_buffer>>2] = 42741;
- (_fprintf($3,42747,$vararg_buffer)|0);
- $4 = HEAP32[9428]|0;
- $5 = ($4|0)==(-1);
- if ($5) {
-  $6 = (_GNUNET_get_log_call_status(1,0,42813,42829,306)|0);
-  HEAP32[9428] = $6;
- }
- $7 = (_GNUNET_get_log_skip()|0);
- $8 = ($7|0)>(0);
- if ($8) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $9 = HEAP32[9428]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer1>>2] = 42813;
- $vararg_ptr4 = ((($vararg_buffer1)) + 4|0);
- HEAP32[$vararg_ptr4>>2] = 306;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer1);
- _GNUNET_abort_();
- // unreachable;
-}
-function _w_malloc($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_calloc($0,1)|0);
- return ($1|0);
-}
-function _w_check($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function _GNUNET_CRYPTO_random_fini() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- _gcry_set_progress_handler(0,0);
- return;
-}
-function _GNUNET_CRYPTO_random_block($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, $vararg_buffer4 = 0, $vararg_ptr7 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- switch ($0|0) {
- case 1:  {
-  $3 = HEAP32[18078]|0;
-  $4 = (($3) + 1)|0;
-  HEAP32[18078] = $4;
-  $5 = $3 & 255;
-  $6 = ($5|0)==(0);
-  if ($6) {
-   HEAP32[$vararg_buffer>>2] = 0;
-   (_gcry_control(48,$vararg_buffer)|0);
-  }
-  _gcry_randomize($1,$2,1);
-  STACKTOP = sp;return;
-  break;
- }
- case 2:  {
-  _gcry_create_nonce($1,$2);
-  STACKTOP = sp;return;
-  break;
- }
- case 0:  {
-  $7 = HEAP32[18078]|0;
-  $8 = (($7) + 1)|0;
-  HEAP32[18078] = $8;
-  $9 = $7 & 255;
-  $10 = ($9|0)==(0);
-  if ($10) {
-   HEAP32[$vararg_buffer1>>2] = 0;
-   (_gcry_control(48,$vararg_buffer1)|0);
-  }
-  _gcry_randomize($1,$2,0);
-  STACKTOP = sp;return;
-  break;
- }
- default: {
-  $11 = HEAP32[9429]|0;
-  $12 = ($11|0)==(-1);
-  if ($12) {
-   $13 = (_GNUNET_get_log_call_status(1,0,42813,42929,133)|0);
-   HEAP32[9429] = $13;
-  }
-  $14 = (_GNUNET_get_log_skip()|0);
-  $15 = ($14|0)>(0);
-  if ($15) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $16 = HEAP32[9429]|0;
-  $17 = ($16|0)==(0);
-  if ($17) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer4>>2] = 42813;
-  $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
-  HEAP32[$vararg_ptr7>>2] = 133;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer4);
-  _GNUNET_abort_();
-  // unreachable;
- }
- }
-}
-function _GNUNET_CRYPTO_random_u32($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0.0, $26 = 0, $27 = 0.0;
- var $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $spec$select = 0;
- var $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, 
$vararg_ptr1 = 0, $vararg_ptr8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer5 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 24|0;
- $3 = ($1|0)==(0);
- if ($3) {
-  $4 = HEAP32[9430]|0;
-  $5 = ($4|0)==(-1);
-  if ($5) {
-   $6 = (_GNUNET_get_log_call_status(1,0,42813,42956,155)|0);
-   HEAP32[9430] = $6;
-  }
-  $7 = (_GNUNET_get_log_skip()|0);
-  $8 = ($7|0)>(0);
-  if ($8) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $9 = HEAP32[9430]|0;
-  $10 = ($9|0)==(0);
-  if ($10) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 42813;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 155;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- switch ($0|0) {
- case 1:  {
-  $11 = HEAP32[18079]|0;
-  $12 = (($11) + 1)|0;
-  HEAP32[18079] = $12;
-  $13 = $11 & 255;
-  $14 = ($13|0)==(0);
-  if ($14) {
-   HEAP32[$vararg_buffer2>>2] = 0;
-   (_gcry_control(48,$vararg_buffer2)|0);
-  }
-  $15 = (4294967295 % ($1>>>0))&-1;
-  $16 = $15 ^ -1;
-  while(1) {
-   _gcry_randomize($2,4,1);
-   $17 = HEAP32[$2>>2]|0;
-   $18 = ($17>>>0)<($16>>>0);
-   if ($18) {
-    break;
-   }
-  }
-  $19 = (($17>>>0) % ($1>>>0))&-1;
-  $$0 = $19;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 2:  {
-  $20 = (4294967295 % ($1>>>0))&-1;
-  $21 = $20 ^ -1;
-  while(1) {
-   _gcry_create_nonce($2,4);
-   $22 = HEAP32[$2>>2]|0;
-   $23 = ($22>>>0)<($21>>>0);
-   if ($23) {
-    break;
-   }
-  }
-  $24 = (($22>>>0) % ($1>>>0))&-1;
-  $$0 = $24;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 0:  {
-  $25 = (+($1>>>0));
-  $26 = (_random()|0);
-  $27 = (+($26|0));
-  $28 = $27 / 2147483647.0;
-  $29 = $28 * $25;
-  $30 = (~~(($29))>>>0);
-  $31 = ($30>>>0)<($1>>>0);
-  $32 = (($1) + -1)|0;
-  $spec$select = $31 ? $30 : $32;
-  HEAP32[$2>>2] = $spec$select;
-  $$0 = $spec$select;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- default: {
-  $33 = HEAP32[9431]|0;
-  $34 = ($33|0)==(-1);
-  if ($34) {
-   $35 = (_GNUNET_get_log_call_status(1,0,42813,42956,187)|0);
-   HEAP32[9431] = $35;
-  }
-  $36 = (_GNUNET_get_log_skip()|0);
-  $37 = ($36|0)>(0);
-  if ($37) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $38 = HEAP32[9431]|0;
-  $39 = ($38|0)==(0);
-  if ($39) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer5>>2] = 42813;
-  $vararg_ptr8 = ((($vararg_buffer5)) + 4|0);
-  HEAP32[$vararg_ptr8>>2] = 187;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer5);
-  _GNUNET_abort_();
-  // unreachable;
- }
- }
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_private_key_create($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$3 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer5 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer5 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 28|0;
- $2 = sp + 24|0;
- HEAP32[$vararg_buffer>>2] = $0;
- $3 = (_gcry_sexp_build($2,0,42981,$vararg_buffer)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9432]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,43005,43018,159)|0);
-   HEAP32[9432] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9432]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer1>>2] = 43005;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr4>>2] = 159;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer1);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[$2>>2]|0;
- $13 = (_gcry_pk_genkey($1,$12)|0);
- $14 = ($13|0)==(0);
- if ($14) {
-  $22 = HEAP32[$2>>2]|0;
-  _gcry_sexp_release($22);
-  $23 = (_GNUNET_xmalloc_(4,43005,168)|0);
-  $24 = HEAP32[$1>>2]|0;
-  HEAP32[$23>>2] = $24;
-  STACKTOP = sp;return ($23|0);
- }
- $15 = HEAP32[9433]|0;
- $16 = ($15|0)==(-1);
- if ($16) {
-  $17 = (_GNUNET_get_log_call_status(1,0,43005,43018,162)|0);
-  HEAP32[9433] = $17;
- }
- $18 = (_GNUNET_get_log_skip()|0);
- $19 = ($18|0)>(0);
- if ($19) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $20 = HEAP32[9433]|0;
- $21 = ($20|0)==(0);
- if ($21) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer5>>2] = 43005;
- $vararg_ptr8 = ((($vararg_buffer5)) + 4|0);
- HEAP32[$vararg_ptr8>>2] = 162;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer5);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_private_key_free($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- _gcry_sexp_release($1);
- _GNUNET_xfree_($0,43005,184);
- return;
-}
-function _GNUNET_CRYPTO_rsa_private_key_encode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = HEAP32[$0>>2]|0;
- $3 = (_gcry_sexp_sprint($2,0,0,0)|0);
- $4 = (_GNUNET_xmalloc_($3,43005,207)|0);
- $5 = (($3) + -1)|0;
- $6 = HEAP32[$0>>2]|0;
- $7 = (_gcry_sexp_sprint($6,0,$4,$3)|0);
- $8 = ($5|0)==($7|0);
- if ($8) {
-  HEAP32[$1>>2] = $4;
-  STACKTOP = sp;return ($3|0);
- }
- $9 = HEAP32[9434]|0;
- $10 = ($9|0)==(-1);
- if ($10) {
-  $11 = (_GNUNET_get_log_call_status(1,0,43005,43055,212)|0);
-  HEAP32[9434] = $11;
- }
- $12 = (_GNUNET_get_log_skip()|0);
- $13 = ($12|0)>(0);
- if ($13) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $14 = HEAP32[9434]|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 43005;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 212;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_private_key_decode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = (_GNUNET_xmalloc_(4,43005,231)|0);
- $3 = (_gcry_sexp_new($2,$0,$1,0)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[9435]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(2,43092,43005,43108,239)|0);
-   HEAP32[9435] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $10 = HEAP32[9435]|0;
-   $11 = ($10|0)==(0);
-   if (!($11)) {
-    _GNUNET_log_from_nocheck(2,43092,43145,$vararg_buffer);
-   }
-  }
-  _GNUNET_xfree_($2,43005,240);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $12 = HEAP32[$2>>2]|0;
- $13 = (_gcry_pk_testkey($12)|0);
- $14 = ($13|0)==(0);
- if ($14) {
-  $$0 = $2;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = HEAP32[9436]|0;
- $16 = ($15|0)==(-1);
- if ($16) {
-  $17 = (_GNUNET_get_log_call_status(2,43092,43005,43108,246)|0);
-  HEAP32[9436] = $17;
- }
- $18 = (_GNUNET_get_log_skip()|0);
- $19 = ($18|0)>(0);
- if ($19) {
-  _GNUNET_log_skip(-1,0);
- } else {
-  $20 = HEAP32[9436]|0;
-  $21 = ($20|0)==(0);
-  if (!($21)) {
-   _GNUNET_log_from_nocheck(2,43092,43145,$vararg_buffer1);
-  }
- }
- $22 = HEAP32[$2>>2]|0;
- _gcry_sexp_release($22);
- _GNUNET_xfree_($2,43005,184);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_rsa_private_key_get_public($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$3 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, 
$vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 24|0;
- $2 = sp + 16|0;
- $3 = HEAP32[$0>>2]|0;
- $4 = (_key_from_sexp_105($1,$3,59755,60969)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP32[$0>>2]|0;
-  $7 = (_key_from_sexp_105($1,$6,59743,60969)|0);
-  $8 = ($7|0)==(0);
-  if (!($8)) {
-   $9 = HEAP32[$0>>2]|0;
-   $10 = (_key_from_sexp_105($1,$9,61102,60969)|0);
-   $11 = ($10|0)==(0);
-   if (!($11)) {
-    $12 = HEAP32[9437]|0;
-    $13 = ($12|0)==(-1);
-    if ($13) {
-     $14 = (_GNUNET_get_log_call_status(2,0,43005,43179,277)|0);
-     HEAP32[9437] = $14;
-    }
-    $15 = (_GNUNET_get_log_skip()|0);
-    $16 = ($15|0)>(0);
-    if ($16) {
-     _GNUNET_log_skip(-1,0);
-     $$0 = 0;
-     STACKTOP = sp;return ($$0|0);
-    }
-    $17 = HEAP32[9437]|0;
-    $18 = ($17|0)==(0);
-    if ($18) {
-     $$0 = 0;
-     STACKTOP = sp;return ($$0|0);
-    }
-    HEAP32[$vararg_buffer>>2] = 43005;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 277;
-    _GNUNET_log_nocheck(66,43220,$vararg_buffer);
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- }
- $19 = HEAP32[$1>>2]|0;
- $20 = ((($1)) + 4|0);
- $21 = HEAP32[$20>>2]|0;
- HEAP32[$vararg_buffer2>>2] = $19;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = $21;
- (_gcry_sexp_build($2,0,43268,$vararg_buffer2)|0);
- _gcry_mpi_release($19);
- _gcry_mpi_release($21);
- $22 = (_GNUNET_xmalloc_(4,43005,287)|0);
- $23 = HEAP32[$2>>2]|0;
- HEAP32[$22>>2] = $23;
- $$0 = $22;
- STACKTOP = sp;return ($$0|0);
-}
-function _key_from_sexp_105($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$04551 = 0, $$04657 = 0, $$04756 = 0, $$048 = 0, $$052 = 0, $10 = 0, $11 
= 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $exitcond = 0, $exitcond63 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (_gcry_sexp_find_token($1,$2,0)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $$048 = 1;
-  return ($$048|0);
- }
- $6 = (_gcry_sexp_cadr($4)|0);
- _gcry_sexp_release($4);
- $7 = ($6|0)==(0|0);
- if ($7) {
-  $$048 = 2;
-  return ($$048|0);
- }
- $8 = HEAP8[$3>>0]|0;
- $9 = ($8<<24>>24)==(0);
- L7: do {
-  if (!($9)) {
-   $$04657 = 0;$$04756 = $3;
-   while(1) {
-    $10 = (_gcry_sexp_find_token($6,$$04756,1)|0);
-    $11 = ($10|0)==(0|0);
-    if ($11) {
-     label = 6;
-     break;
-    }
-    $16 = (_gcry_sexp_nth_mpi($10,1,5)|0);
-    $17 = (($0) + ($$04657<<2)|0);
-    HEAP32[$17>>2] = $16;
-    _gcry_sexp_release($10);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ($18|0)==(0|0);
-    if ($19) {
-     label = 11;
-     break;
-    }
-    $24 = ((($$04756)) + 1|0);
-    $25 = (($$04657) + 1)|0;
-    $26 = HEAP8[$24>>0]|0;
-    $27 = ($26<<24>>24)==(0);
-    if ($27) {
-     break L7;
-    } else {
-     $$04657 = $25;$$04756 = $24;
-    }
-   }
-   if ((label|0) == 6) {
-    $12 = ($$04657|0)==(0);
-    if (!($12)) {
-     $$04551 = 0;
-     while(1) {
-      $13 = (($0) + ($$04551<<2)|0);
-      $14 = HEAP32[$13>>2]|0;
-      _gcry_free($14);
-      HEAP32[$13>>2] = 0;
-      $15 = (($$04551) + 1)|0;
-      $exitcond = ($15|0)==($$04657|0);
-      if ($exitcond) {
-       break;
-      } else {
-       $$04551 = $15;
-      }
-     }
-    }
-    _gcry_sexp_release($6);
-    $$048 = 3;
-    return ($$048|0);
-   }
-   else if ((label|0) == 11) {
-    $20 = ($$04657|0)==(0);
-    if (!($20)) {
-     $$052 = 0;
-     while(1) {
-      $21 = (($0) + ($$052<<2)|0);
-      $22 = HEAP32[$21>>2]|0;
-      _gcry_free($22);
-      HEAP32[$21>>2] = 0;
-      $23 = (($$052) + 1)|0;
-      $exitcond63 = ($23|0)==($$04657|0);
-      if ($exitcond63) {
-       break;
-      } else {
-       $$052 = $23;
-      }
-     }
-    }
-    _gcry_sexp_release($6);
-    $$048 = 4;
-    return ($$048|0);
-   }
-  }
- } while(0);
- _gcry_sexp_release($6);
- $$048 = 0;
- return ($$048|0);
-}
-function _GNUNET_CRYPTO_rsa_public_key_free($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- _gcry_sexp_release($1);
- _GNUNET_xfree_($0,43005,303);
- return;
-}
-function _GNUNET_CRYPTO_rsa_public_key_encode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = HEAP32[$0>>2]|0;
- $3 = (_gcry_sexp_sprint($2,3,0,0)|0);
- $4 = (_GNUNET_xmalloc_($3,43005,326)|0);
- $5 = (($3) + -1)|0;
- $6 = HEAP32[$0>>2]|0;
- $7 = (_gcry_sexp_sprint($6,3,$4,$3)|0);
- $8 = ($5|0)==($7|0);
- if ($8) {
-  HEAP32[$1>>2] = $4;
-  STACKTOP = sp;return ($3|0);
- }
- $9 = HEAP32[9438]|0;
- $10 = ($9|0)==(-1);
- if ($10) {
-  $11 = (_GNUNET_get_log_call_status(1,0,43005,43298,331)|0);
-  HEAP32[9438] = $11;
- }
- $12 = (_GNUNET_get_log_skip()|0);
- $13 = ($12|0)>(0);
- if ($13) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $14 = HEAP32[9438]|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 43005;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 331;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_public_key_decode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 
0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 16|0;
- $3 = (_GNUNET_xmalloc_(4,43005,375)|0);
- $4 = (_gcry_sexp_new($3,$0,$1,0)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP32[9439]|0;
-  $7 = ($6|0)==(-1);
-  if ($7) {
-   $8 = (_GNUNET_get_log_call_status(2,0,43005,43334,382)|0);
-   HEAP32[9439] = $8;
-  }
-  $9 = (_GNUNET_get_log_skip()|0);
-  $10 = ($9|0)>(0);
-  if ($10) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $11 = HEAP32[9439]|0;
-   $12 = ($11|0)==(0);
-   if (!($12)) {
-    HEAP32[$vararg_buffer>>2] = 43005;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 382;
-    _GNUNET_log_nocheck(66,43220,$vararg_buffer);
-   }
-  }
-  _GNUNET_xfree_($3,43005,383);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$3>>2]|0;
- $14 = (_key_from_sexp_105($2,$13,59755,60983)|0);
- $15 = ($14|0)==(0);
- if (!($15)) {
-  $16 = HEAP32[$3>>2]|0;
-  $17 = (_key_from_sexp_105($2,$16,61102,60983)|0);
-  $18 = ($17|0)==(0);
-  if (!($18)) {
-   $19 = HEAP32[9440]|0;
-   $20 = ($19|0)==(-1);
-   if ($20) {
-    $21 = (_GNUNET_get_log_call_status(1,0,43005,43334,393)|0);
-    HEAP32[9440] = $21;
-   }
-   $22 = (_GNUNET_get_log_skip()|0);
-   $23 = ($22|0)>(0);
-   if ($23) {
-    _GNUNET_log_skip(-1,0);
-   } else {
-    $24 = HEAP32[9440]|0;
-    $25 = ($24|0)==(0);
-    if (!($25)) {
-     HEAP32[$vararg_buffer2>>2] = 43005;
-     $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-     HEAP32[$vararg_ptr5>>2] = 393;
-     _GNUNET_log_nocheck(1,43837,$vararg_buffer2);
-    }
-   }
-   $26 = HEAP32[$3>>2]|0;
-   _gcry_sexp_release($26);
-   _GNUNET_xfree_($3,43005,395);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $27 = HEAP32[$2>>2]|0;
- _gcry_mpi_release($27);
- $$0 = $3;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_rsa_signature_encode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = HEAP32[$0>>2]|0;
- $3 = (_gcry_sexp_sprint($2,3,0,0)|0);
- $4 = (_GNUNET_xmalloc_($3,43005,974)|0);
- $5 = (($3) + -1)|0;
- $6 = HEAP32[$0>>2]|0;
- $7 = (_gcry_sexp_sprint($6,3,$4,$3)|0);
- $8 = ($5|0)==($7|0);
- if ($8) {
-  HEAP32[$1>>2] = $4;
-  STACKTOP = sp;return ($3|0);
- }
- $9 = HEAP32[9441]|0;
- $10 = ($9|0)==(-1);
- if ($10) {
-  $11 = (_GNUNET_get_log_call_status(1,0,43005,43370,979)|0);
-  HEAP32[9441] = $11;
- }
- $12 = (_GNUNET_get_log_skip()|0);
- $13 = ($12|0)>(0);
- if ($13) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $14 = HEAP32[9441]|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 43005;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 979;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_blind($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, 
$vararg_ptr9 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $5 = sp + 36|0;
- $6 = sp + 32|0;
- $7 = sp + 24|0;
- $8 = ($3|0)!=(0|0);
- $9 = ($4|0)!=(0|0);
- $or$cond = $8 & $9;
- if (!($or$cond)) {
-  $10 = HEAP32[9442]|0;
-  $11 = ($10|0)==(-1);
-  if ($11) {
-   $12 = (_GNUNET_get_log_call_status(1,0,43005,43405,748)|0);
-   HEAP32[9442] = $12;
-  }
-  $13 = (_GNUNET_get_log_skip()|0);
-  $14 = ($13|0)>(0);
-  if ($14) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $15 = HEAP32[9442]|0;
-  $16 = ($15|0)==(0);
-  if ($16) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 43005;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 748;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $17 = HEAP32[$2>>2]|0;
- $18 = (_key_from_sexp_105($7,$17,59755,60969)|0);
- $19 = ($18|0)==(0);
- if (!($19)) {
-  $20 = HEAP32[$2>>2]|0;
-  $21 = (_key_from_sexp_105($7,$20,61102,60969)|0);
-  $22 = ($21|0)==(0);
-  if (!($22)) {
-   $23 = HEAP32[9443]|0;
-   $24 = ($23|0)==(-1);
-   if ($24) {
-    $25 = (_GNUNET_get_log_call_status(1,0,43005,43405,754)|0);
-    HEAP32[9443] = $25;
-   }
-   $26 = (_GNUNET_get_log_skip()|0);
-   $27 = ($26|0)>(0);
-   if ($27) {
-    _GNUNET_log_skip(-1,0);
-   } else {
-    $28 = HEAP32[9443]|0;
-    $29 = ($28|0)==(0);
-    if (!($29)) {
-     HEAP32[$vararg_buffer2>>2] = 43005;
-     $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-     HEAP32[$vararg_ptr5>>2] = 754;
-     _GNUNET_log_nocheck(1,43837,$vararg_buffer2);
-    }
-   }
-   HEAP32[$3>>2] = 0;
-   HEAP32[$4>>2] = 0;
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $30 = (_rsa_full_domain_hash($2,$0)|0);
- $31 = ($30|0)==(0|0);
- do {
-  if (!($31)) {
-   $32 = (_rsa_blinding_key_derive($2,$1)|0);
-   $33 = ($32|0)==(0|0);
-   if ($33) {
-    _gcry_mpi_release($30);
-    break;
-   }
-   $34 = (_gcry_mpi_new(0)|0);
-   $35 = HEAP32[$32>>2]|0;
-   $36 = ((($7)) + 4|0);
-   $37 = HEAP32[$36>>2]|0;
-   $38 = HEAP32[$7>>2]|0;
-   _gcry_mpi_powm($34,$35,$37,$38);
-   $39 = (_gcry_mpi_new(0)|0);
-   _gcry_mpi_mulm($39,$30,$34,$38);
-   _gcry_mpi_release($30);
-   _gcry_mpi_release($38);
-   _gcry_mpi_release($37);
-   _gcry_mpi_release($34);
-   $40 = HEAP32[$32>>2]|0;
-   _gcry_mpi_release($40);
-   _GNUNET_xfree_($32,43005,639);
-   (_gcry_mpi_print(5,0,0,$5,$39)|0);
-   $41 = HEAP32[$5>>2]|0;
-   $42 = (_GNUNET_xmalloc_($41,43005,663)|0);
-   $43 = HEAP32[$5>>2]|0;
-   $44 = (_gcry_mpi_print(5,$42,$43,$6,$39)|0);
-   $45 = ($44|0)==(0);
-   if ($45) {
-    HEAP32[$3>>2] = $42;
-    $53 = HEAP32[$5>>2]|0;
-    HEAP32[$4>>2] = $53;
-    _gcry_mpi_release($39);
-    $$0 = 1;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $46 = HEAP32[9444]|0;
-   $47 = ($46|0)==(-1);
-   if ($47) {
-    $48 = (_GNUNET_get_log_call_status(1,0,43005,43429,669)|0);
-    HEAP32[9444] = $48;
-   }
-   $49 = (_GNUNET_get_log_skip()|0);
-   $50 = ($49|0)>(0);
-   if ($50) {
-    _GNUNET_log_skip(-1,0);
-    _GNUNET_abort_();
-    // unreachable;
-   }
-   $51 = HEAP32[9444]|0;
-   $52 = ($51|0)==(0);
-   if ($52) {
-    _GNUNET_abort_();
-    // unreachable;
-   }
-   HEAP32[$vararg_buffer6>>2] = 43005;
-   $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-   HEAP32[$vararg_ptr9>>2] = 669;
-   _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
-   _GNUNET_abort_();
-   // unreachable;
-  }
- } while(0);
- $54 = HEAP32[$7>>2]|0;
- _gcry_mpi_release($54);
- $55 = ((($7)) + 4|0);
- $56 = HEAP32[$55>>2]|0;
- _gcry_mpi_release($56);
- HEAP32[$3>>2] = 0;
- HEAP32[$4>>2] = 0;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _rsa_full_domain_hash($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, 
$vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 24|0;
- $3 = sp + 20|0;
- $4 = sp + 16|0;
- $5 = HEAP32[$0>>2]|0;
- $6 = (_key_from_sexp_105($3,$5,61102,60983)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = HEAP32[9448]|0;
-  $9 = ($8|0)==(-1);
-  if ($9) {
-   $10 = (_GNUNET_get_log_call_status(1,0,43005,43523,697)|0);
-   HEAP32[9448] = $10;
-  }
-  $11 = (_GNUNET_get_log_skip()|0);
-  $12 = ($11|0)>(0);
-  if ($12) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $13 = HEAP32[9448]|0;
-  $14 = ($13|0)==(0);
-  if ($14) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 43005;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 697;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $15 = HEAP32[$3>>2]|0;
- $16 = (_gcry_mpi_get_flag($15,2)|0);
- $17 = ($16|0)==(0);
- if ($17) {
-  $25 = (_GNUNET_CRYPTO_rsa_public_key_encode($0,$4)|0);
-  $26 = HEAP32[$4>>2]|0;
-  _GNUNET_CRYPTO_kdf_mod_mpi($2,$15,$26,$25,$1,64,43544);
-  _GNUNET_xfree_($26,43005,712);
-  $27 = HEAP32[$2>>2]|0;
-  $28 = (_gcry_mpi_new(0)|0);
-  $29 = (_gcry_mpi_gcd($28,$27,$15)|0);
-  _gcry_mpi_release($28);
-  _gcry_mpi_release($15);
-  $30 = ($29|0)==(0);
-  $31 = HEAP32[$2>>2]|0;
-  if (!($30)) {
-   $$0 = $31;
-   STACKTOP = sp;return ($$0|0);
-  }
-  _gcry_mpi_release($31);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = HEAP32[9449]|0;
- $19 = ($18|0)==(-1);
- if ($19) {
-  $20 = (_GNUNET_get_log_call_status(1,0,43005,43523,699)|0);
-  HEAP32[9449] = $20;
- }
- $21 = (_GNUNET_get_log_skip()|0);
- $22 = ($21|0)>(0);
- if ($22) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $23 = HEAP32[9449]|0;
- $24 = ($23|0)==(0);
- if ($24) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer2>>2] = 43005;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = 699;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _rsa_blinding_key_derive($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0;
- var $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 24|0;
- $3 = (_GNUNET_xmalloc_(4,43005,442)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $5 = HEAP32[9445]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(1,0,43005,43455,443)|0);
-   HEAP32[9445] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $10 = HEAP32[9445]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer>>2] = 43005;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 443;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[$0>>2]|0;
- $13 = (_key_from_sexp_105($2,$12,61102,60983)|0);
- $14 = ($13|0)==(0);
- if (!($14)) {
-  $15 = HEAP32[9446]|0;
-  $16 = ($15|0)==(-1);
-  if ($16) {
-   $17 = (_GNUNET_get_log_call_status(1,0,43005,43455,446)|0);
-   HEAP32[9446] = $17;
-  }
-  $18 = (_GNUNET_get_log_skip()|0);
-  $19 = ($18|0)>(0);
-  if ($19) {
-   _GNUNET_log_skip(-1,0);
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  $20 = HEAP32[9446]|0;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   _GNUNET_abort_();
-   // unreachable;
-  }
-  HEAP32[$vararg_buffer2>>2] = 43005;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 446;
-  _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $22 = HEAP32[$2>>2]|0;
- $23 = (_gcry_mpi_get_flag($22,2)|0);
- $24 = ($23|0)==(0);
- if ($24) {
-  _GNUNET_CRYPTO_kdf_mod_mpi($3,$22,43479,30,$1,32,43510);
-  $32 = HEAP32[$3>>2]|0;
-  $33 = (_gcry_mpi_new(0)|0);
-  $34 = (_gcry_mpi_gcd($33,$32,$22)|0);
-  _gcry_mpi_release($33);
-  $35 = ($34|0)==(0);
-  if (!($35)) {
-   $$0 = $3;
-   _gcry_mpi_release($22);
-   STACKTOP = sp;return ($$0|0);
-  }
-  _GNUNET_xfree_($3,43005,456);
-  $$0 = 0;
-  _gcry_mpi_release($22);
-  STACKTOP = sp;return ($$0|0);
- }
- $25 = HEAP32[9447]|0;
- $26 = ($25|0)==(-1);
- if ($26) {
-  $27 = (_GNUNET_get_log_call_status(1,0,43005,43455,448)|0);
-  HEAP32[9447] = $27;
- }
- $28 = (_GNUNET_get_log_skip()|0);
- $29 = ($28|0)>(0);
- if ($29) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $30 = HEAP32[9447]|0;
- $31 = ($30|0)==(0);
- if ($31) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer6>>2] = 43005;
- $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
- HEAP32[$vararg_ptr9>>2] = 448;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _mpi_to_sexp($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 16|0;
- HEAP32[$1>>2] = 0;
- HEAP32[$vararg_buffer>>2] = $0;
- $2 = (_gcry_sexp_build($1,0,43559,$vararg_buffer)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  $11 = HEAP32[$1>>2]|0;
-  STACKTOP = sp;return ($11|0);
- }
- $4 = HEAP32[9450]|0;
- $5 = ($4|0)==(-1);
- if ($5) {
-  $6 = (_GNUNET_get_log_call_status(1,0,43005,43589,819)|0);
-  HEAP32[9450] = $6;
- }
- $7 = (_GNUNET_get_log_skip()|0);
- $8 = ($7|0)>(0);
- if ($8) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $9 = HEAP32[9450]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer1>>2] = 43005;
- $vararg_ptr4 = ((($vararg_buffer1)) + 4|0);
- HEAP32[$vararg_ptr4>>2] = 819;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer1);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_signature_free($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- _gcry_sexp_release($1);
- _GNUNET_xfree_($0,43005,952);
- return;
-}
-function _GNUNET_CRYPTO_rsa_signature_decode($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 
0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 16|0;
- $3 = (_GNUNET_xmalloc_(4,43005,1001)|0);
- $4 = (_gcry_sexp_new($3,$0,$1,0)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP32[9451]|0;
-  $7 = ($6|0)==(-1);
-  if ($7) {
-   $8 = (_GNUNET_get_log_call_status(2,0,43005,43601,1008)|0);
-   HEAP32[9451] = $8;
-  }
-  $9 = (_GNUNET_get_log_skip()|0);
-  $10 = ($9|0)>(0);
-  if ($10) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $11 = HEAP32[9451]|0;
-   $12 = ($11|0)==(0);
-   if (!($12)) {
-    HEAP32[$vararg_buffer>>2] = 43005;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 1008;
-    _GNUNET_log_nocheck(66,43220,$vararg_buffer);
-   }
-  }
-  _GNUNET_xfree_($3,43005,1009);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$3>>2]|0;
- $14 = (_key_from_sexp_105($2,$13,59605,60981)|0);
- $15 = ($14|0)==(0);
- if (!($15)) {
-  $16 = HEAP32[$3>>2]|0;
-  $17 = (_key_from_sexp_105($2,$16,61102,60981)|0);
-  $18 = ($17|0)==(0);
-  if (!($18)) {
-   $19 = HEAP32[9452]|0;
-   $20 = ($19|0)==(-1);
-   if ($20) {
-    $21 = (_GNUNET_get_log_call_status(2,0,43005,43601,1019)|0);
-    HEAP32[9452] = $21;
-   }
-   $22 = (_GNUNET_get_log_skip()|0);
-   $23 = ($22|0)>(0);
-   if ($23) {
-    _GNUNET_log_skip(-1,0);
-   } else {
-    $24 = HEAP32[9452]|0;
-    $25 = ($24|0)==(0);
-    if (!($25)) {
-     HEAP32[$vararg_buffer2>>2] = 43005;
-     $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-     HEAP32[$vararg_ptr5>>2] = 1019;
-     _GNUNET_log_nocheck(66,43220,$vararg_buffer2);
-    }
-   }
-   $26 = HEAP32[$3>>2]|0;
-   _gcry_sexp_release($26);
-   _GNUNET_xfree_($3,43005,1021);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $27 = HEAP32[$2>>2]|0;
- _gcry_mpi_release($27);
- $$0 = $3;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_CRYPTO_rsa_unblind($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer14 = 0, 
$vararg_buffer17 = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 
0, $vararg_ptr13 = 0, $vararg_ptr20 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, 
label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer17 = sp + 40|0;
- $vararg_buffer14 = sp + 32|0;
- $vararg_buffer10 = sp + 24|0;
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 52|0;
- $4 = sp + 48|0;
- $5 = HEAP32[$2>>2]|0;
- $6 = (_key_from_sexp_105($3,$5,59755,60983)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = HEAP32[$2>>2]|0;
-  $9 = (_key_from_sexp_105($3,$8,61102,60983)|0);
-  $10 = ($9|0)==(0);
-  if (!($10)) {
-   $11 = HEAP32[9453]|0;
-   $12 = ($11|0)==(-1);
-   if ($12) {
-    $13 = (_GNUNET_get_log_call_status(2,0,43005,43636,1084)|0);
-    HEAP32[9453] = $13;
-   }
-   $14 = (_GNUNET_get_log_skip()|0);
-   $15 = ($14|0)>(0);
-   if ($15) {
-    _GNUNET_log_skip(-1,0);
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $16 = HEAP32[9453]|0;
-   $17 = ($16|0)==(0);
-   if ($17) {
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-   HEAP32[$vararg_buffer>>2] = 43005;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 1084;
-   _GNUNET_log_nocheck(66,43220,$vararg_buffer);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $18 = HEAP32[$0>>2]|0;
- $19 = (_key_from_sexp_105($4,$18,59605,60981)|0);
- $20 = ($19|0)==(0);
- if (!($20)) {
-  $21 = HEAP32[$0>>2]|0;
-  $22 = (_key_from_sexp_105($4,$21,61102,60981)|0);
-  $23 = ($22|0)==(0);
-  if (!($23)) {
-   $24 = HEAP32[$3>>2]|0;
-   _gcry_mpi_release($24);
-   $25 = HEAP32[9454]|0;
-   $26 = ($25|0)==(-1);
-   if ($26) {
-    $27 = (_GNUNET_get_log_call_status(2,0,43005,43636,1093)|0);
-    HEAP32[9454] = $27;
-   }
-   $28 = (_GNUNET_get_log_skip()|0);
-   $29 = ($28|0)>(0);
-   if ($29) {
-    _GNUNET_log_skip(-1,0);
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $30 = HEAP32[9454]|0;
-   $31 = ($30|0)==(0);
-   if ($31) {
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-   HEAP32[$vararg_buffer2>>2] = 43005;
-   $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-   HEAP32[$vararg_ptr5>>2] = 1093;
-   _GNUNET_log_nocheck(66,43220,$vararg_buffer2);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $32 = (_rsa_blinding_key_derive($2,$1)|0);
- $33 = ($32|0)==(0|0);
- if ($33) {
-  $34 = HEAP32[9455]|0;
-  $35 = ($34|0)==(-1);
-  if ($35) {
-   $36 = (_GNUNET_get_log_call_status(2,0,43005,43636,1104)|0);
-   HEAP32[9455] = $36;
-  }
-  $37 = (_GNUNET_get_log_skip()|0);
-  $38 = ($37|0)>(0);
-  if ($38) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $39 = HEAP32[9455]|0;
-   $40 = ($39|0)==(0);
-   if (!($40)) {
-    HEAP32[$vararg_buffer6>>2] = 43005;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 1104;
-    _GNUNET_log_nocheck(66,43220,$vararg_buffer6);
-   }
-  }
-  $41 = HEAP32[$3>>2]|0;
-  _gcry_mpi_release($41);
-  $42 = HEAP32[$4>>2]|0;
-  _gcry_mpi_release($42);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $43 = (_gcry_mpi_new(0)|0);
- $44 = HEAP32[$32>>2]|0;
- $45 = HEAP32[$3>>2]|0;
- $46 = (_gcry_mpi_invm($43,$44,$45)|0);
- $47 = ($46|0)==(1);
- if (!($47)) {
-  $48 = HEAP32[9456]|0;
-  $49 = ($48|0)==(-1);
-  if ($49) {
-   $50 = (_GNUNET_get_log_call_status(2,0,43005,43636,1118)|0);
-   HEAP32[9456] = $50;
-  }
-  $51 = (_GNUNET_get_log_skip()|0);
-  $52 = ($51|0)>(0);
-  if ($52) {
-   _GNUNET_log_skip(-1,0);
-  } else {
-   $53 = HEAP32[9456]|0;
-   $54 = ($53|0)==(0);
-   if (!($54)) {
-    HEAP32[$vararg_buffer10>>2] = 43005;
-    $vararg_ptr13 = ((($vararg_buffer10)) + 4|0);
-    HEAP32[$vararg_ptr13>>2] = 1118;
-    _GNUNET_log_nocheck(66,43220,$vararg_buffer10);
-   }
-  }
-  _gcry_mpi_release($43);
-  $55 = HEAP32[$32>>2]|0;
-  _gcry_mpi_release($55);
-  _GNUNET_xfree_($32,43005,639);
-  _gcry_mpi_release($45);
-  $56 = HEAP32[$4>>2]|0;
-  _gcry_mpi_release($56);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $57 = (_gcry_mpi_new(0)|0);
- $58 = HEAP32[$4>>2]|0;
- _gcry_mpi_mulm($57,$58,$43,$45);
- _gcry_mpi_release($45);
- _gcry_mpi_release($43);
- _gcry_mpi_release($58);
- $59 = HEAP32[$32>>2]|0;
- _gcry_mpi_release($59);
- _GNUNET_xfree_($32,43005,639);
- $60 = (_GNUNET_xmalloc_(4,43005,1133)|0);
- HEAP32[$vararg_buffer14>>2] = $57;
- $61 = (_gcry_sexp_build($60,0,43662,$vararg_buffer14)|0);
- $62 = ($61|0)==(0);
- if ($62) {
-  _gcry_mpi_release($57);
-  $$0 = $60;
-  STACKTOP = sp;return ($$0|0);
- }
- $63 = HEAP32[9457]|0;
- $64 = ($63|0)==(-1);
- if ($64) {
-  $65 = (_GNUNET_get_log_call_status(1,0,43005,43636,1138)|0);
-  HEAP32[9457] = $65;
- }
- $66 = (_GNUNET_get_log_skip()|0);
- $67 = ($66|0)>(0);
- if ($67) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $68 = HEAP32[9457]|0;
- $69 = ($68|0)==(0);
- if ($69) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer17>>2] = 43005;
- $vararg_ptr20 = ((($vararg_buffer17)) + 4|0);
- HEAP32[$vararg_ptr20>>2] = 1138;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer17);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _GNUNET_CRYPTO_rsa_verify($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, 
$4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, 
$vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = (_rsa_full_domain_hash($2,$0)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $5 = HEAP32[9458]|0;
-  $6 = ($5|0)==(-1);
-  if ($6) {
-   $7 = (_GNUNET_get_log_call_status(2,0,43005,43685,1167)|0);
-   HEAP32[9458] = $7;
-  }
-  $8 = (_GNUNET_get_log_skip()|0);
-  $9 = ($8|0)>(0);
-  if ($9) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $10 = HEAP32[9458]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  HEAP32[$vararg_buffer>>2] = 43005;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 1167;
-  _GNUNET_log_nocheck(66,43220,$vararg_buffer);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $12 = (_mpi_to_sexp($3)|0);
- _gcry_mpi_release($3);
- $13 = HEAP32[$1>>2]|0;
- $14 = HEAP32[$2>>2]|0;
- $15 = (_gcry_pk_verify($13,$12,$14)|0);
- _gcry_sexp_release($12);
- $16 = ($15|0)==(0);
- if ($16) {
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = HEAP32[9459]|0;
- $18 = ($17|0)==(-1);
- if ($18) {
-  $19 = (_GNUNET_get_log_call_status(2,43092,43005,43685,1190)|0);
-  HEAP32[9459] = $19;
- }
- $20 = (_GNUNET_get_log_skip()|0);
- $21 = ($20|0)>(0);
- if ($21) {
-  _GNUNET_log_skip(-1,0);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $22 = HEAP32[9459]|0;
- $23 = ($22|0)==(0);
- if ($23) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $24 = (_gcry_strerror($15)|0);
- HEAP32[$vararg_buffer2>>2] = 43005;
- $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
- HEAP32[$vararg_ptr5>>2] = 1189;
- $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
- HEAP32[$vararg_ptr6>>2] = $24;
- _GNUNET_log_from_nocheck(2,43092,43710,$vararg_buffer2);
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_STRINGS_relative_time_to_string($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$ = 0, $$0 = 0, $$036 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $or$cond = 0, $or$cond3 = 0, 
$or$cond38 = 0, $or$cond40 = 0, $or$cond42 = 0, $or$cond44 = 0, $or$cond46 = 0;
- var $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $vararg_buffer = 0, 
$vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = $0;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = (_GNUNET_TIME_relative_get_forever_()|0);
- $9 = tempRet0;
- $10 = ($8|0)==($4|0);
- $11 = ($9|0)==($7|0);
- $12 = $10 & $11;
- if ($12) {
-  $$0 = 43776;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = ($4|0)==(0);
- $14 = ($7|0)==(0);
- $15 = $13 & $14;
- if ($15) {
-  $$0 = 43802;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = ($1|0)==(1);
- $17 = ($7>>>0)>(0);
- $18 = ($4>>>0)>(5000);
- $19 = ($7|0)==(0);
- $20 = $19 & $18;
- $21 = $17 | $20;
- $or$cond = $16 & $21;
- $22 = (___udivdi3(($4|0),($7|0),1000,0)|0);
- $23 = tempRet0;
- $24 = (___muldi3(($22|0),($23|0),1000,0)|0);
- $25 = tempRet0;
- $26 = (_i64Subtract(($4|0),($7|0),($24|0),($25|0))|0);
- $27 = tempRet0;
- $28 = ($26|0)==(0);
- $29 = ($27|0)==(0);
- $30 = $28 & $29;
- $or$cond38 = $or$cond | $30;
- if ($or$cond38) {
-  $31 = ($7>>>0)>(0);
-  $32 = ($4>>>0)>(5000999);
-  $33 = ($7|0)==(0);
-  $34 = $33 & $32;
-  $35 = $31 | $34;
-  $or$cond3 = $16 & $35;
-  $36 = (___uremdi3(($22|0),($23|0),1000,0)|0);
-  $37 = tempRet0;
-  $38 = ($36|0)==(0);
-  $39 = ($37|0)==(0);
-  $40 = $38 & $39;
-  $or$cond40 = $or$cond3 | $40;
-  if ($or$cond40) {
-   $41 = (___udivdi3(($4|0),($7|0),1000000,0)|0);
-   $42 = tempRet0;
-   $43 = ($7>>>0)>(0);
-   $44 = ($4>>>0)>(300999999);
-   $45 = ($7|0)==(0);
-   $46 = $45 & $44;
-   $47 = $43 | $46;
-   $or$cond5 = $16 & $47;
-   $48 = (___uremdi3(($41|0),($42|0),60,0)|0);
-   $49 = tempRet0;
-   $50 = ($48|0)==(0);
-   $51 = ($49|0)==(0);
-   $52 = $50 & $51;
-   $or$cond42 = $or$cond5 | $52;
-   if ($or$cond42) {
-    $53 = (___udivdi3(($4|0),($7|0),60000000,0)|0);
-    $54 = tempRet0;
-    $55 = ($7>>>0)>(4);
-    $56 = ($4>>>0)>(880130815);
-    $57 = ($7|0)==(4);
-    $58 = $57 & $56;
-    $59 = $55 | $58;
-    $or$cond7 = $16 & $59;
-    $60 = (___uremdi3(($53|0),($54|0),60,0)|0);
-    $61 = tempRet0;
-    $62 = ($60|0)==(0);
-    $63 = ($61|0)==(0);
-    $64 = $62 & $63;
-    $or$cond44 = $or$cond7 | $64;
-    if ($or$cond44) {
-     $65 = (___udivdi3(($4|0),($7|0),-694967296,0)|0);
-     $66 = tempRet0;
-     $67 = ($7>>>0)>(101);
-     $68 = ($4>>>0)>(1808303103);
-     $69 = ($7|0)==(101);
-     $70 = $69 & $68;
-     $71 = $67 | $70;
-     $or$cond9 = $16 & $71;
-     $72 = (___uremdi3(($65|0),($66|0),24,0)|0);
-     $73 = tempRet0;
-     $74 = ($72|0)==(0);
-     $75 = ($73|0)==(0);
-     $76 = $74 & $75;
-     $or$cond46 = $or$cond9 | $76;
-     if ($or$cond46) {
-      $77 = (_i64Add(($4|0),($7|0),-500654080,-21)|0);
-      $78 = tempRet0;
-      $79 = ($78>>>0)<(20);
-      $80 = ($77>>>0)<(500654080);
-      $81 = ($78|0)==(20);
-      $82 = $81 & $80;
-      $83 = $79 | $82;
-      $$ = $83 ? 43789 : 43793;
-      $84 = (___udivdi3(($4|0),($7|0),500654080,20)|0);
-      $85 = tempRet0;
-      $$036 = $$;$88 = $84;$91 = $85;
-     } else {
-      $$036 = 57458;$88 = $65;$91 = $66;
-     }
-    } else {
-     $$036 = 43787;$88 = $53;$91 = $54;
-    }
-   } else {
-    $$036 = 60981;$88 = $41;$91 = $42;
-   }
-  } else {
-   $$036 = 43784;$88 = $22;$91 = $23;
-  }
- } else {
-  $$036 = 43798;$88 = $4;$91 = $7;
- }
- $86 = $vararg_buffer;
- $87 = $86;
- HEAP32[$87>>2] = $88;
- $89 = (($86) + 4)|0;
- $90 = $89;
- HEAP32[$90>>2] = $91;
- $vararg_ptr1 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr1>>2] = $$036;
- (_GNUNET_snprintf(70992,128,43768,$vararg_buffer)|0);
- $$0 = 70992;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_STRINGS_data_to_string($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$0103$lcssa = 0, $$0103134 = 0, $$0105133 = 0, $$0107132 = 0, 
$$0109131 = 0, $$1135 = 0, $$2 = 0, $$2111 = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 
0, $38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, 
$vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = $1 << 3;
- $5 = $4 | 4;
- $6 = (($5>>>0) / 5)&-1;
- $7 = ($6>>>0)>($3>>>0);
- if ($7) {
-  $8 = HEAP32[9460]|0;
-  $9 = ($8|0)==(-1);
-  if ($9) {
-   $10 = (_GNUNET_get_log_call_status(1,0,43758,43807,914)|0);
-   HEAP32[9460] = $10;
-  }
-  $11 = (_GNUNET_get_log_skip()|0);
-  $12 = ($11|0)>(0);
-  if ($12) {
-   _GNUNET_log_skip(-1,0);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $13 = HEAP32[9460]|0;
-  $14 = ($13|0)==(0);
-  if ($14) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  HEAP32[$vararg_buffer>>2] = 43758;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 914;
-  _GNUNET_log_nocheck(1,43837,$vararg_buffer);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = ($1|0)==(0);
- L15: do {
-  if ($15) {
-   $$0103$lcssa = 0;
-  } else {
-   $16 = (($4>>>0) % 5)&-1;
-   $17 = (5 - ($16))|0;
-   $$0103134 = 0;$$0105133 = 0;$$0107132 = 0;$$0109131 = 0;$19 = 1;
-   while(1) {
-    $18 = ($$0109131>>>0)<(5);
-    $or$cond = $18 & $19;
-    if ($or$cond) {
-     $20 = (($$0109131) + 8)|0;
-     $21 = (($0) + ($$0105133)|0);
-     $22 = (($$0105133) + 1)|0;
-     $23 = $$0107132 << 8;
-     $24 = HEAP8[$21>>0]|0;
-     $25 = $24&255;
-     $26 = $23 | $25;
-     $$1135 = $22;$$2 = $26;$$2111 = $20;
-    } else {
-     $27 = ($$0109131>>>0)<(5);
-     if ($27) {
-      $28 = ($$0109131|0)==($16|0);
-      if (!($28)) {
-       label = 14;
-       break;
-      }
-      $36 = $$0107132 << $17;
-      $$1135 = $$0105133;$$2 = $36;$$2111 = 5;
-     } else {
-      $$1135 = $$0105133;$$2 = $$0107132;$$2111 = $$0109131;
-     }
-    }
-    $37 = ($$0103134>>>0)<($3>>>0);
-    if (!($37)) {
-     label = 23;
-     break;
-    }
-    $45 = (($$2111) + -5)|0;
-    $46 = $$2 >>> $45;
-    $47 = $46 & 31;
-    $48 = (43865 + ($47)|0);
-    $49 = HEAP8[$48>>0]|0;
-    $50 = (($$0103134) + 1)|0;
-    $51 = (($2) + ($$0103134)|0);
-    HEAP8[$51>>0] = $49;
-    $52 = ($$1135>>>0)<($1>>>0);
-    $53 = ($45|0)!=(0);
-    $54 = $53 | $52;
-    if ($54) {
-     $$0103134 = $50;$$0105133 = $$1135;$$0107132 = $$2;$$0109131 = $45;$19 = 
$52;
-    } else {
-     $$0103$lcssa = $50;
-     break L15;
-    }
-   }
-   if ((label|0) == 14) {
-    $29 = HEAP32[9461]|0;
-    $30 = ($29|0)==(-1);
-    if ($30) {
-     $31 = (_GNUNET_get_log_call_status(1,0,43758,43807,931)|0);
-     HEAP32[9461] = $31;
-    }
-    $32 = (_GNUNET_get_log_skip()|0);
-    $33 = ($32|0)>(0);
-    if ($33) {
-     _GNUNET_log_skip(-1,0);
-     _GNUNET_abort_();
-     // unreachable;
-    }
-    $34 = HEAP32[9461]|0;
-    $35 = ($34|0)==(0);
-    if ($35) {
-     _GNUNET_abort_();
-     // unreachable;
-    }
-    HEAP32[$vararg_buffer2>>2] = 43758;
-    $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-    HEAP32[$vararg_ptr5>>2] = 931;
-    _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-    _GNUNET_abort_();
-    // unreachable;
-   }
-   else if ((label|0) == 23) {
-    $38 = HEAP32[9462]|0;
-    $39 = ($38|0)==(-1);
-    if ($39) {
-     $40 = (_GNUNET_get_log_call_status(1,0,43758,43807,936)|0);
-     HEAP32[9462] = $40;
-    }
-    $41 = (_GNUNET_get_log_skip()|0);
-    $42 = ($41|0)>(0);
-    if ($42) {
-     _GNUNET_log_skip(-1,0);
-     $$0 = 0;
-     STACKTOP = sp;return ($$0|0);
-    }
-    $43 = HEAP32[9462]|0;
-    $44 = ($43|0)==(0);
-    if ($44) {
-     $$0 = 0;
-     STACKTOP = sp;return ($$0|0);
-    }
-    HEAP32[$vararg_buffer6>>2] = 43758;
-    $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-    HEAP32[$vararg_ptr9>>2] = 936;
-    _GNUNET_log_nocheck(1,43837,$vararg_buffer6);
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- } while(0);
- $55 = ($$0103$lcssa>>>0)<($3>>>0);
- $56 = (($2) + ($$0103$lcssa)|0);
- if (!($55)) {
-  $$0 = $56;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP8[$56>>0] = 0;
- $$0 = $56;
- STACKTOP = sp;return ($$0|0);
-}
-function _GNUNET_STRINGS_data_to_string_alloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$019 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = $1 << 3;
- $3 = (($2>>>0) % 5)&-1;
- $4 = ($3|0)==(0);
- $5 = (5 - ($3))|0;
- $6 = $4 ? 0 : $5;
- $$019 = (($6) + ($2))|0;
- $7 = (($$019>>>0) / 5)&-1;
- $8 = (($7) + 1)|0;
- $9 = (_GNUNET_xmalloc_($8,43758,970)|0);
- $10 = (_GNUNET_STRINGS_data_to_string($0,$1,$9,$7)|0);
- $11 = ($10|0)==(0|0);
- if ($11) {
-  _GNUNET_xfree_($9,43758,974);
-  $$0 = 0;
-  return ($$0|0);
- } else {
-  HEAP8[$10>>0] = 0;
-  $$0 = $9;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _GNUNET_STRINGS_string_to_data($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$ = 0, $$0 = 0, $$065 = 0, $$06787 = 0, $$070 = 0, $$072 = 0, $$075 = 0, 
$$076 = 0, $$1$lcssa = 0, $$168 = 0, $$17186 = 0, $$173$lcssa = 0, $$17385 = 0, 
$$188 = 0, $$2 = 0, $$274 = 0, $$80 = 0, $10 = 0, $11 = 0, $12 = 0;
- var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 
0, $30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $4 = $3 << 3;
- $5 = ($1|0)==(0);
- if ($5) {
-  $6 = ($3|0)==(0);
-  $$ = $6 ? 1 : -1;
-  $$0 = $$;
-  STACKTOP = sp;return ($$0|0);
- }
- $7 = (($4>>>0) % 5)&-1;
- $8 = ($7|0)==(0);
- if ($8) {
-  $15 = (($1) + -1)|0;
-  $16 = (($0) + ($15)|0);
-  $17 = HEAP8[$16>>0]|0;
-  $18 = (_getValue__($17)|0);
-  $$065 = $15;$$070 = $18;$$072 = 5;$$075 = $18;$$076 = 0;
- } else {
-  $9 = (5 - ($7))|0;
-  $10 = (($1) + -1)|0;
-  $11 = (($0) + ($10)|0);
-  $12 = HEAP8[$11>>0]|0;
-  $13 = (_getValue__($12)|0);
-  $14 = $13 >> $9;
-  $$065 = $10;$$070 = $14;$$072 = $7;$$075 = $13;$$076 = $9;
- }
- $19 = (($$076) + ($4))|0;
- $20 = (($19>>>0) / 5)&-1;
- $21 = ($20|0)!=($1|0);
- $22 = ($$075|0)==(-1);
- $or$cond = $22 | $21;
- if ($or$cond) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $23 = ($3|0)==(0);
- L12: do {
-  if ($23) {
-   $$1$lcssa = $$065;$$173$lcssa = $$072;
-  } else {
-   $$06787 = $3;$$17186 = $$070;$$17385 = $$072;$$188 = $$065;
-   while(1) {
-    $24 = ($$188|0)==(0);
-    if ($24) {
-     break;
-    }
-    $32 = (($$188) + -1)|0;
-    $33 = (($0) + ($32)|0);
-    $34 = HEAP8[$33>>0]|0;
-    $35 = (_getValue__($34)|0);
-    $36 = $35 << $$17385;
-    $37 = $36 | $$17186;
-    $38 = ($35|0)==(-1);
-    if ($38) {
-     $$0 = -1;
-     label = 21;
-     break;
-    }
-    $39 = (($$17385) + 5)|0;
-    $40 = ($39>>>0)>(7);
-    $41 = (($$06787) + -1)|0;
-    if ($40) {
-     $42 = (($$17385) + -3)|0;
-     $43 = $37 >>> 8;
-     $44 = (($2) + ($41)|0);
-     $45 = $37&255;
-     HEAP8[$44>>0] = $45;
-     $$168 = $41;$$2 = $43;$$274 = $42;
-    } else {
-     $$168 = $$06787;$$2 = $37;$$274 = $39;
-    }
-    $46 = ($$168|0)==(0);
-    if ($46) {
-     $$1$lcssa = $32;$$173$lcssa = $$274;
-     break L12;
-    } else {
-     $$06787 = $$168;$$17186 = $$2;$$17385 = $$274;$$188 = $32;
-    }
-   }
-   if ((label|0) == 21) {
-    STACKTOP = sp;return ($$0|0);
-   }
-   $25 = HEAP32[9463]|0;
-   $26 = ($25|0)==(-1);
-   if ($26) {
-    $27 = (_GNUNET_get_log_call_status(1,0,43758,43898,1034)|0);
-    HEAP32[9463] = $27;
-   }
-   $28 = (_GNUNET_get_log_skip()|0);
-   $29 = ($28|0)>(0);
-   if ($29) {
-    _GNUNET_log_skip(-1,0);
-    $$0 = -1;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $30 = HEAP32[9463]|0;
-   $31 = ($30|0)==(0);
-   if ($31) {
-    $$0 = -1;
-    STACKTOP = sp;return ($$0|0);
-   }
-   HEAP32[$vararg_buffer>>2] = 43758;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 1034;
-   _GNUNET_log_nocheck(1,43837,$vararg_buffer);
-   $$0 = -1;
-   STACKTOP = sp;return ($$0|0);
-  }
- } while(0);
- $47 = $$1$lcssa | $$173$lcssa;
- $48 = ($47|0)==(0);
- $$80 = $48 ? 1 : -1;
- $$0 = $$80;
- STACKTOP = sp;return ($$0|0);
-}
-function _getValue__($0) {
- $0 = $0|0;
- var $$021$off = 0, $$021$off31 = 0, $$023 = 0, $$122 = 0, $$122$off = 0, 
$$1223538 = 0, $$1223539 = 0, $$3$neg = 0, $$neg = 0, $$neg32 = 0, $1 = 0, $10 
= 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $spec$select = 0, $spec$select26$neg = 0, label = 0, sp = 0;
- sp = STACKTOP;
- L1: do {
-  switch ($0<<24>>24) {
-  case 111: case 79:  {
-   $4 = 48;
-   label = 4;
-   break;
-  }
-  case 76: case 108: case 73: case 105:  {
-   $4 = 49;
-   label = 4;
-   break;
-  }
-  case 85: case 117:  {
-   $$1223539 = 86;$19 = 2;$20 = 86;
-   label = 9;
-   break;
-  }
-  default: {
-   $1 = $0&255;
-   $$021$off = (($0) + -48)<<24>>24;
-   $2 = ($$021$off&255)<(10);
-   if ($2) {
-    $4 = $1;
-    label = 4;
-   } else {
-    $$021$off31 = (($0) + -97)<<24>>24;
-    $5 = ($$021$off31&255)<(26);
-    if ($5) {
-     $6 = (_toupper($1)|0);
-     $7 = $6&255;
-     $$122 = $7;
-    } else {
-     $$122 = $0;
-    }
-    $$122$off = (($$122) + -65)<<24>>24;
-    $8 = ($$122$off&255)<(26);
-    if ($8) {
-     $9 = $$122&255;
-     $10 = ($$122&255)>(73);
-     $spec$select = $10&1;
-     $11 = ($$122&255)>(76);
-     $12 = $10 ? 2 : 1;
-     if ($11) {
-      $$1223539 = $$122;$19 = $12;$20 = $9;
-      label = 9;
-      break L1;
-     } else {
-      $$1223538 = $$122;$15 = $9;$18 = $spec$select;
-      break L1;
-     }
-    } else {
-     $$023 = -1;
-     return ($$023|0);
-    }
-   }
-  }
-  }
- } while(0);
- if ((label|0) == 4) {
-  $3 = (($4) + -48)|0;
-  $$023 = $3;
-  return ($$023|0);
- }
- else if ((label|0) == 9) {
-  $$1223538 = $$1223539;$15 = $20;$18 = $19;
- }
- $13 = ($$1223538&255)>(79);
- $14 = ($$1223538&255)>(85);
- $$neg = $14 << 31 >> 31;
- $$neg32 = $13 << 31 >> 31;
- $spec$select26$neg = (($15) + -55)|0;
- $$3$neg = (($spec$select26$neg) + ($$neg32))|0;
- $16 = (($$3$neg) + ($$neg))|0;
- $17 = (($16) - ($18))|0;
- $$023 = $17;
- return ($$023|0);
-}
-function _GNUNET_TIME_get_offset() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- tempRet0 = (0);
- return 0;
-}
-function _GNUNET_TIME_relative_get_forever_() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- tempRet0 = (-1);
- return -1;
-}
-function _GNUNET_TIME_absolute_get() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $0 = sp;
- (_gettimeofday(($0|0),(0|0))|0);
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)<(0);
- $3 = $2 << 31 >> 31;
- $4 = (___muldi3(($1|0),($3|0),1000000,0)|0);
- $5 = tempRet0;
- $6 = ((($0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)<(0);
- $9 = $8 << 31 >> 31;
- $10 = (_i64Add(($4|0),($5|0),($7|0),($9|0))|0);
- $11 = tempRet0;
- $12 = (_i64Add(($10|0),($11|0),0,0)|0);
- $13 = tempRet0;
- tempRet0 = ($13);
- STACKTOP = sp;return ($12|0);
-}
-function _GNUNET_TIME_absolute_get_duration($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- (_gettimeofday(($1|0),(0|0))|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)<(0);
- $4 = $3 << 31 >> 31;
- $5 = (___muldi3(($2|0),($4|0),1000000,0)|0);
- $6 = tempRet0;
- $7 = ((($1)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)<(0);
- $10 = $9 << 31 >> 31;
- $11 = (_i64Add(($5|0),($6|0),($8|0),($10|0))|0);
- $12 = tempRet0;
- $13 = (_i64Add(($11|0),($12|0),0,0)|0);
- $14 = tempRet0;
- $15 = $0;
- $16 = $15;
- $17 = HEAP32[$16>>2]|0;
- $18 = (($15) + 4)|0;
- $19 = $18;
- $20 = HEAP32[$19>>2]|0;
- $21 = ($14>>>0)<($20>>>0);
- $22 = ($13>>>0)<($17>>>0);
- $23 = ($14|0)==($20|0);
- $24 = $23 & $22;
- $25 = $21 | $24;
- $26 = (_i64Subtract(($13|0),($14|0),($17|0),($20|0))|0);
- $27 = tempRet0;
- $28 = $25 ? 0 : $26;
- $29 = $25 ? 0 : $27;
- tempRet0 = ($29);
- STACKTOP = sp;return ($28|0);
-}
-function _GNUNET_htonll($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (_htonl($0)|0);
- $3 = (_htonl($1)|0);
- tempRet0 = ($2);
- return ($3|0);
-}
-function _GNUNET_ntohll($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (_ntohl($0)|0);
- $3 = (_ntohl($1)|0);
- tempRet0 = ($2);
- return ($3|0);
-}
-function _gcry_strerror($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_gpg_strerror($0)|0);
- return ($1|0);
-}
-function _gcry_check_version($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_check_version($0)|0);
- return ($1|0);
-}
-function _gcry_control($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $spec$select$i$i = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- $2 = (__gcry_vcontrol($0,$1)|0);
- $3 = ($2|0)==(0);
- $4 = $2 & 65535;
- $5 = $4 | 16777216;
- $spec$select$i$i = $3 ? 0 : $5;
- STACKTOP = sp;return ($spec$select$i$i|0);
-}
-function _gcry_sexp_new($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_sexp_new($0,$1,$2,$3)|0);
- $5 = ($4|0)==(0);
- $6 = $4 & 65535;
- $7 = $6 | 16777216;
- $spec$select$i$i = $5 ? 0 : $7;
- return ($spec$select$i$i|0);
-}
-function _gcry_sexp_build($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $spec$select$i$i = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- HEAP32[$3>>2] = $varargs;
- $4 = (__gcry_sexp_vbuild($0,$1,$2,$3)|0);
- $5 = ($4|0)==(0);
- $6 = $4 & 65535;
- $7 = $6 | 16777216;
- $spec$select$i$i = $5 ? 0 : $7;
- STACKTOP = sp;return ($spec$select$i$i|0);
-}
-function _gcry_sexp_release($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_sexp_release($0);
- return;
-}
-function _gcry_sexp_sprint($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_sexp_sprint($0,$1,$2,$3)|0);
- return ($4|0);
-}
-function _gcry_sexp_find_token($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_sexp_find_token($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_sexp_cadr($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_sexp_cadr($0)|0);
- return ($1|0);
-}
-function _gcry_sexp_nth_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_sexp_nth_mpi($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_mpi_new($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_mpi_new($0)|0);
- return ($1|0);
-}
-function _gcry_mpi_release($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_release($0);
- return;
-}
-function _gcry_mpi_cmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_cmp($0,$1)|0);
- return ($2|0);
-}
-function _gcry_mpi_scan($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (__gcry_mpi_scan($0,$1,$2,$3,$4)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 16777216;
- $spec$select$i$i = $6 ? 0 : $8;
- return ($spec$select$i$i|0);
-}
-function _gcry_mpi_print($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (__gcry_mpi_print($0,$1,$2,$3,$4)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 16777216;
- $spec$select$i$i = $6 ? 0 : $8;
- return ($spec$select$i$i|0);
-}
-function _gcry_mpi_mulm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_mulm($0,$1,$2,$3);
- return;
-}
-function _gcry_mpi_powm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_powm($0,$1,$2,$3);
- return;
-}
-function _gcry_mpi_gcd($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_gcd($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_mpi_invm($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_invm($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_mpi_point_new($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_mpi_point_new($0)|0);
- return ($1|0);
-}
-function _gcry_mpi_point_release($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_point_release($0);
- return;
-}
-function _gcry_mpi_ec_new($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_ec_new($0,$1,$2)|0);
- $4 = ($3|0)==(0);
- $5 = $3 & 65535;
- $6 = $5 | 16777216;
- $spec$select$i$i = $4 ? 0 : $6;
- return ($spec$select$i$i|0);
-}
-function _gcry_mpi_ec_get_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_ec_get_mpi($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_mpi_ec_get_point($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_ec_get_point($0,$1,$2)|0);
- return ($3|0);
-}
-function _gcry_mpi_ec_get_affine($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_ctx_get_pointer($3,1)|0);
- $5 = (__gcry_mpi_ec_get_affine($0,$1,$2,$4)|0);
- return ($5|0);
-}
-function _gcry_mpi_ec_mul($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_ctx_get_pointer($3,1)|0);
- __gcry_mpi_ec_mul_point($0,$1,$2,$4);
- return;
-}
-function _gcry_mpi_get_nbits($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_mpi_get_nbits($0)|0);
- return ($1|0);
-}
-function _gcry_mpi_test_bit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_test_bit($0,$1)|0);
- return ($2|0);
-}
-function _gcry_mpi_clear_highbit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_clear_highbit($0,$1);
- return;
-}
-function _gcry_mpi_get_opaque($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_get_opaque($0,$1)|0);
- return ($2|0);
-}
-function _gcry_mpi_get_flag($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_get_flag($0,$1)|0);
- return ($2|0);
-}
-function _gcry_cipher_open($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_global_is_operational()|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  HEAP32[$0>>2] = 0;
-  $$0 = 16777392;
-  return ($$0|0);
- } else {
-  $6 = (__gcry_cipher_open($0,$1,$2,$3)|0);
-  $7 = ($6|0)==(0);
-  $8 = $6 & 65535;
-  $9 = $8 | 16777216;
-  $spec$select$i$i = $7 ? 0 : $9;
-  $$0 = $spec$select$i$i;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _gcry_cipher_close($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_cipher_close($0);
- return;
-}
-function _gcry_cipher_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$spec$select$i$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $5 = (__gcry_cipher_setkey($0,$1,$2)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 536870912;
- $spec$select$i$i$i = $6 ? 0 : $8;
- $$0 = $spec$select$i$i$i;
- return ($$0|0);
-}
-function _gcry_cipher_setiv($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$spec$select$i$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $5 = (__gcry_cipher_setiv($0,$1,$2)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 536870912;
- $spec$select$i$i$i = $6 ? 0 : $8;
- $$0 = $spec$select$i$i$i;
- return ($$0|0);
-}
-function _gcry_cipher_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $11 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (__gcry_global_is_operational()|0);
- $6 = ($5|0)==(0);
- if (!($6)) {
-  $8 = (__gcry_cipher_encrypt($0,$1,$2,$3,$4)|0);
-  $9 = ($8|0)==(0);
-  $10 = $8 & 65535;
-  $11 = $10 | 16777216;
-  $spec$select$i$i = $9 ? 0 : $11;
-  $$0 = $spec$select$i$i;
-  return ($$0|0);
- }
- $7 = ($1|0)==(0|0);
- if ($7) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- _memset(($1|0),66,($2|0))|0;
- $$0 = 16777392;
- return ($$0|0);
-}
-function _gcry_cipher_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (__gcry_global_is_operational()|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $7 = (__gcry_cipher_decrypt($0,$1,$2,$3,$4)|0);
- $8 = ($7|0)==(0);
- $9 = $7 & 65535;
- $10 = $9 | 16777216;
- $spec$select$i$i = $8 ? 0 : $10;
- $$0 = $spec$select$i$i;
- return ($$0|0);
-}
-function _gcry_pk_sign($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  HEAP32[$0>>2] = 0;
-  $$0 = 16777392;
-  return ($$0|0);
- } else {
-  $5 = (__gcry_pk_sign($0,$1,$2)|0);
-  $6 = ($5|0)==(0);
-  $7 = $5 & 65535;
-  $8 = $7 | 16777216;
-  $spec$select$i$i = $6 ? 0 : $8;
-  $$0 = $spec$select$i$i;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _gcry_pk_verify($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $5 = (__gcry_pk_verify($0,$1,$2)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 16777216;
- $spec$select$i$i = $6 ? 0 : $8;
- $$0 = $spec$select$i$i;
- return ($$0|0);
-}
-function _gcry_pk_testkey($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_global_is_operational()|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $3 = (__gcry_pk_testkey($0)|0);
- $4 = ($3|0)==(0);
- $5 = $3 & 65535;
- $6 = $5 | 16777216;
- $spec$select$i$i = $4 ? 0 : $6;
- $$0 = $spec$select$i$i;
- return ($$0|0);
-}
-function _gcry_pk_genkey($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_global_is_operational()|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  HEAP32[$0>>2] = 0;
-  $$0 = 16777392;
-  return ($$0|0);
- } else {
-  $4 = (__gcry_pk_genkey($0,$1)|0);
-  $5 = ($4|0)==(0);
-  $6 = $4 & 65535;
-  $7 = $6 | 16777216;
-  $spec$select$i$i = $5 ? 0 : $7;
-  $$0 = $spec$select$i$i;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _gcry_md_open($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  HEAP32[$0>>2] = 0;
-  $$0 = 16777392;
-  return ($$0|0);
- } else {
-  $5 = (__gcry_md_open($0,$1,$2)|0);
-  $6 = ($5|0)==(0);
-  $7 = $5 & 65535;
-  $8 = $7 | 16777216;
-  $spec$select$i$i = $6 ? 0 : $8;
-  $$0 = $spec$select$i$i;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _gcry_md_close($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_md_close($0);
- return;
-}
-function _gcry_md_reset($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_md_reset($0);
- return;
-}
-function _gcry_md_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  return;
- }
- __gcry_md_write($0,$1,$2);
- return;
-}
-function _gcry_md_read($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_md_read($0,$1)|0);
- return ($2|0);
-}
-function _gcry_md_hash_buffer($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_global_is_operational()|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  __gcry_fips_signal_error(43928,1175,43941,0,43961);
- }
- __gcry_md_hash_buffer($0,$1,$2,$3);
- return;
-}
-function _gcry_md_get_algo($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_global_is_operational()|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  __gcry_fips_signal_error(43928,1198,43993,0,44010);
-  $$0 = 0;
-  return ($$0|0);
- } else {
-  $3 = (__gcry_md_get_algo($0)|0);
-  $$0 = $3;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _gcry_md_get_algo_dlen($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_md_get_algo_dlen($0)|0);
- return ($1|0);
-}
-function _gcry_md_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec$select$i$i 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 16777392;
-  return ($$0|0);
- }
- $5 = (__gcry_md_setkey($0,$1,$2)|0);
- $6 = ($5|0)==(0);
- $7 = $5 & 65535;
- $8 = $7 | 16777216;
- $spec$select$i$i = $6 ? 0 : $8;
- $$0 = $spec$select$i$i;
- return ($$0|0);
-}
-function _gcry_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_global_is_operational()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  __gcry_fips_signal_error(43928,1287,44040,1,43961);
-  __gcry_fips_noreturn();
-  // unreachable;
- } else {
-  __gcry_randomize($0,$1,$2);
-  return;
- }
-}
-function _gcry_create_nonce($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_global_is_operational()|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  __gcry_fips_signal_error(43928,1340,44055,1,43961);
-  __gcry_fips_noreturn();
-  // unreachable;
- } else {
-  __gcry_create_nonce($0,$1);
-  return;
- }
-}
-function _gcry_ctx_release($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_ctx_release($0);
- return;
-}
-function _gcry_set_progress_handler($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_set_progress_handler($0,$1);
- return;
-}
-function _gcry_set_allocation_handler($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_set_allocation_handler($0,$1,$2,$3,$4);
- return;
-}
-function _gcry_set_fatalerror_handler($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_set_fatalerror_handler($0,$1);
- return;
-}
-function _gcry_free($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_free($0);
- return;
-}
-function __gcry_gettext($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function __gcry_set_fatalerror_handler($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18080] = $1;
- HEAP32[18081] = $0;
- return;
-}
-function __gcry_fatal_error($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $3 = (_gpg_strerror($0)|0);
-  $$0 = $3;
- } else {
-  $$0 = $1;
- }
- $4 = HEAP32[18081]|0;
- $5 = ($4|0)==(0|0);
- if (!($5)) {
-  $6 = (__gcry_fips_mode()|0);
-  $7 = ($6|0)==(0);
-  if ($7) {
-   $8 = HEAP32[18081]|0;
-   $9 = HEAP32[18080]|0;
-   FUNCTION_TABLE_viii[$8 & 127]($9,$0,$$0);
-  }
- }
- __gcry_fips_signal_error(44073,86,44080,1,$$0);
- _write2stderr(44098);
- _write2stderr($$0);
- _write2stderr(44529);
- __gcry_secmem_term();
- _abort();
- // unreachable;
-}
-function _write2stderr($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_strlen($0)|0);
- (_write(2,$0,$1)|0);
- return;
-}
-function __gcry_set_log_verbosity($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18082] = $0;
- return;
-}
-function __gcry_log_verbosity($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18082]|0;
- $2 = ($1|0)>=($0|0);
- $3 = $2&1;
- return ($3|0);
-}
-function __gcry_logv($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $vararg_buffer = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- switch ($0|0) {
- case 30: case 20: case 10: case 0:  {
-  break;
- }
- case 40:  {
-  $3 = HEAP32[10138]|0;
-  (_fwrite(44113,7,1,$3)|0);
-  break;
- }
- case 50:  {
-  $4 = HEAP32[10138]|0;
-  (_fwrite(44121,13,1,$4)|0);
-  break;
- }
- case 100:  {
-  $5 = HEAP32[10138]|0;
-  (_fwrite(44135,5,1,$5)|0);
-  break;
- }
- default: {
-  $6 = HEAP32[10138]|0;
-  HEAP32[$vararg_buffer>>2] = $0;
-  (_fprintf($6,44141,$vararg_buffer)|0);
- }
- }
- $7 = HEAP32[10138]|0;
- (_vfprintf($7,$1,$2)|0);
- switch ($0|0) {
- case 40: case 50:  {
-  __gcry_fips_signal_error(44073,140,44166,1,44177);
-  __gcry_secmem_term();
-  _abort();
-  // unreachable;
-  break;
- }
- default: {
-  STACKTOP = sp;return;
- }
- }
-}
-function __gcry_log($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- HEAP32[$2>>2] = $varargs;
- __gcry_logv($0,$1,$2);
- STACKTOP = sp;return;
-}
-function __gcry_bug($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $2;
- __gcry_log(50,44207,$vararg_buffer);
- _abort();
- // unreachable;
-}
-function __gcry_assert_failed($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $2;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $3;
- __gcry_log(50,44237,$vararg_buffer);
- _abort();
- // unreachable;
-}
-function __gcry_log_info($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- $2 = HEAP32[10138]|0;
- (_vfprintf($2,$0,$1)|0);
- STACKTOP = sp;return;
-}
-function __gcry_log_info_with_dummy_fp($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- HEAP32[$2>>2] = $varargs;
- $3 = HEAP32[10138]|0;
- (_vfprintf($3,$1,$2)|0);
- STACKTOP = sp;return 0;
-}
-function __gcry_log_error($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- $2 = HEAP32[10138]|0;
- (_vfprintf($2,$0,$1)|0);
- STACKTOP = sp;return;
-}
-function __gcry_log_fatal($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- __gcry_logv(40,$0,$1);
- _abort();
- // unreachable;
-}
-function __gcry_log_bug($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- __gcry_logv(50,$0,$1);
- _abort();
- // unreachable;
-}
-function __gcry_log_debug($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = $varargs;
- $2 = HEAP32[10138]|0;
- (_fwrite(44135,5,1,$2)|0);
- (_vfprintf($2,$0,$1)|0);
- STACKTOP = sp;return;
-}
-function __gcry_log_printf($0,$varargs) {
- $0 = $0|0;
- $varargs = $varargs|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  STACKTOP = sp;return;
- }
- HEAP32[$1>>2] = $varargs;
- $3 = HEAP32[10138]|0;
- (_vfprintf($3,$0,$1)|0);
- STACKTOP = sp;return;
-}
-function __gcry_log_printhex($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- _do_printhex($0,44271,$1,$2);
- return;
-}
-function _do_printhex($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$02834 = 0, $$029 = 0, $$0313237 = 0, $$035 = 0, $$035$us = 0, $$1 = 0, 
$10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$or$cond = 0, $or$cond3 = 0, $or$cond5 = 0;
- var $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer14 = 0, 
$vararg_buffer16 = 0, $vararg_buffer2 = 0, $vararg_buffer22 = 0, 
$vararg_buffer4 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr19 = 0, 
$vararg_ptr20 = 0, $vararg_ptr21 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer22 = sp + 64|0;
- $vararg_buffer16 = sp + 48|0;
- $vararg_buffer14 = sp + 40|0;
- $vararg_buffer11 = sp + 32|0;
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = ($0|0)!=(0|0);
- if ($4) {
-  $5 = HEAP8[$0>>0]|0;
-  $6 = ($5<<24>>24)==(0);
-  if ($6) {
-   $$029 = 0;
-   label = 5;
-  } else {
-   HEAP32[$vararg_buffer>>2] = $0;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $1;
-   __gcry_log_debug(44273,$vararg_buffer);
-   $7 = ((($1)) + 1|0);
-   $8 = HEAP8[$7>>0]|0;
-   $9 = ($8<<24>>24)==(91);
-   $10 = ($3|0)!=(0);
-   $or$cond = $10 & $9;
-   $11 = ($2|0)!=(0|0);
-   $or$cond3 = $11 & $or$cond;
-   if ($or$cond3) {
-    __gcry_log_printf(44529,$vararg_buffer2);
-    $12 = (_strlen($0)|0);
-    HEAP32[$vararg_buffer4>>2] = $12;
-    $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
-    HEAP32[$vararg_ptr7>>2] = 73338;
-    __gcry_log_debug(44279,$vararg_buffer4);
-    $13 = (($3) + -1)|0;
-    $$0313237 = 44271;$34 = $13;
-    label = 9;
-   } else {
-    $$029 = 1;
-    label = 5;
-   }
-  }
- } else {
-  $$029 = 0;
-  label = 5;
- }
- if ((label|0) == 5) {
-  $14 = ($3|0)==(0);
-  if (!($14)) {
-   $15 = (($3) + -1)|0;
-   $16 = ($$029|0)==(0);
-   if ($16) {
-    $$035$us = $2;$21 = $15;
-    while(1) {
-     $17 = HEAP8[$$035$us>>0]|0;
-     $18 = $17&255;
-     HEAP32[$vararg_buffer8>>2] = $18;
-     __gcry_log_printf(44285,$vararg_buffer8);
-     $19 = ((($$035$us)) + 1|0);
-     $20 = (($21) + -1)|0;
-     $22 = ($21|0)==(0);
-     if ($22) {
-      break;
-     } else {
-      $$035$us = $19;$21 = $20;
-     }
-    }
-   } else {
-    $$0313237 = $1;$34 = $15;
-    label = 9;
-   }
-  }
- }
- if ((label|0) == 9) {
-  $$02834 = 0;$$035 = $2;$28 = $34;
-  while(1) {
-   $23 = HEAP8[$$035>>0]|0;
-   $24 = $23&255;
-   HEAP32[$vararg_buffer11>>2] = $24;
-   __gcry_log_printf(44285,$vararg_buffer11);
-   $25 = (($$02834) + 1)|0;
-   $26 = ($25|0)==(32);
-   $27 = ($28|0)!=(0);
-   $or$cond5 = $27 & $26;
-   if ($or$cond5) {
-    __gcry_log_printf(44290,$vararg_buffer14);
-    $29 = (_strlen($0)|0);
-    $30 = (_strlen($$0313237)|0);
-    HEAP32[$vararg_buffer16>>2] = $29;
-    $vararg_ptr19 = ((($vararg_buffer16)) + 4|0);
-    HEAP32[$vararg_ptr19>>2] = 73338;
-    $vararg_ptr20 = ((($vararg_buffer16)) + 8|0);
-    HEAP32[$vararg_ptr20>>2] = $30;
-    $vararg_ptr21 = ((($vararg_buffer16)) + 12|0);
-    HEAP32[$vararg_ptr21>>2] = 73338;
-    __gcry_log_debug(44294,$vararg_buffer16);
-    $$1 = 0;
-   } else {
-    $$1 = $25;
-   }
-   $31 = ((($$035)) + 1|0);
-   $32 = (($28) + -1)|0;
-   $33 = ($28|0)==(0);
-   if ($33) {
-    break;
-   } else {
-    $$02834 = $$1;$$035 = $31;$28 = $32;
-   }
-  }
- }
- if (!($4)) {
-  STACKTOP = sp;return;
- }
- __gcry_log_printf(44529,$vararg_buffer22);
- STACKTOP = sp;return;
-}
-function __gcry_log_printmpi($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer2 = 
0, $vararg_buffer4 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer11 = sp + 64|0;
- $vararg_buffer7 = sp + 56|0;
- $vararg_buffer4 = sp + 48|0;
- $vararg_buffer2 = sp + 40|0;
- $vararg_buffer = sp + 32|0;
- $2 = sp + 76|0;
- $3 = sp + 72|0;
- $4 = sp + 68|0;
- $5 = sp;
- $6 = ($1|0)==(0|0);
- if ($6) {
-  $7 = ($0|0)==(0|0);
-  $8 = $7 ? 44271 : $0;
-  $9 = HEAP8[$8>>0]|0;
-  $10 = ($9<<24>>24)==(0);
-  if (!($10)) {
-   HEAP32[$vararg_buffer>>2] = $8;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 44302;
-   __gcry_log_debug(44273,$vararg_buffer);
-  }
-  __gcry_log_printf(44529,$vararg_buffer2);
-  STACKTOP = sp;return;
- }
- $11 = ((($1)) + 12|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = $12 & 4;
- $14 = ($13|0)==(0);
- if (!($14)) {
-  $15 = (__gcry_mpi_get_opaque($1,$4)|0);
-  $16 = HEAP32[$4>>2]|0;
-  HEAP32[$vararg_buffer4>>2] = $16;
-  (_snprintf($5,30,44310,$vararg_buffer4)|0);
-  $17 = ($0|0)==(0|0);
-  $18 = $17 ? 44271 : $0;
-  $19 = HEAP32[$4>>2]|0;
-  $20 = (($19) + 7)|0;
-  $21 = $20 >>> 3;
-  _do_printhex($18,$5,$15,$21);
-  STACKTOP = sp;return;
- }
- $22 = (__gcry_mpi_get_buffer($1,0,$2,$3)|0);
- $23 = ($22|0)==(0|0);
- if ($23) {
-  $24 = ($0|0)==(0|0);
-  $25 = $24 ? 44271 : $0;
-  $26 = HEAP8[$25>>0]|0;
-  $27 = ($26<<24>>24)==(0);
-  if (!($27)) {
-   HEAP32[$vararg_buffer7>>2] = $25;
-   $vararg_ptr10 = ((($vararg_buffer7)) + 4|0);
-   HEAP32[$vararg_ptr10>>2] = 44320;
-   __gcry_log_debug(44273,$vararg_buffer7);
-  }
-  __gcry_log_printf(44529,$vararg_buffer11);
-  STACKTOP = sp;return;
- }
- $28 = HEAP32[$2>>2]|0;
- $29 = ($28|0)==(0);
- $30 = HEAP32[$3>>2]|0;
- $31 = ($30|0)==(0);
- $32 = $31 ? 44335 : 44337;
- if ($29) {
-  _do_printhex($0,$32,73338,1);
- } else {
-  _do_printhex($0,$32,$22,$28);
- }
- __gcry_free($22);
- STACKTOP = sp;return;
-}
-function ___gcry_burn_stack($0) {
- $0 = $0|0;
- var $$1 = 0, $$135 = 0, $$alloca_mul = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- $2 = $1&1;
- $3 = (($0) + 63)|0;
- $4 = (($3) + ($2))|0;
- $5 = $4 & -64;
- $$alloca_mul = $5;
- $6 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if 
((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(((((1*$$alloca_mul)|0)+15)&-16)|0);;
- $7 = ($5|0)==(0);
- if ($7) {
-  STACKTOP = sp;return;
- }
- $$1 = $6;$$135 = $5;
- while(1) {
-  $8 = $$1;
-  $9 = $8;
-  HEAP32[$9>>2] = 0;
-  $10 = (($8) + 4)|0;
-  $11 = $10;
-  HEAP32[$11>>2] = 0;
-  $12 = (($$135) + -8)|0;
-  $13 = ((($$1)) + 8|0);
-  $14 = ($12|0)==(0);
-  if ($14) {
-   break;
-  } else {
-   $$1 = $13;$$135 = $12;
-  }
- }
- STACKTOP = sp;return;
-}
-function ___gcry_burn_stack_dummy() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function __gcry_divide_by_zero() {
- var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- _gpg_err_set_errno(33);
- $0 = (___errno_location()|0);
- $1 = HEAP32[$0>>2]|0;
- $2 = (_gpg_err_code_from_errno($1)|0);
- __gcry_fatal_error($2,44339);
- // unreachable;
-}
-function __gcry_global_is_operational() {
- var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18083]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  _global_init();
- }
- $2 = (__gcry_fips_is_operational()|0);
- return ($2|0);
-}
-function _global_init() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 
0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18083]|0;
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return;
- }
- HEAP32[18083] = 1;
- __gcry_set_preferred_rng_type(0);
- $2 = HEAP32[18084]|0;
- __gcry_initialize_fips_mode($2);
- __gcry_detect_hw_features();
- $3 = (__gcry_cipher_init()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $5 = (__gcry_md_init()|0);
-  $6 = ($5|0)==(0);
-  if ($6) {
-   $7 = (__gcry_pk_init()|0);
-   $8 = ($7|0)==(0);
-   if ($8) {
-    $9 = (__gcry_primegen_init()|0);
-    $10 = ($9|0)==(0);
-    if ($10) {
-     $11 = (__gcry_secmem_module_init()|0);
-     $12 = ($11|0)==(0);
-     if ($12) {
-      $13 = (__gcry_mpi_init()|0);
-      $14 = ($13|0)==(0);
-      if ($14) {
-       return;
-      }
-     }
-    }
-   }
-  }
- }
- __gcry_bug(44354,123,44363);
- // unreachable;
-}
-function __gcry_check_version($0) {
- $0 = $0|0;
- var $$0 = 0, $$01217$i$i29 = 0, $$01217$i44 = 0, $$01217$i59 = 0, $$018$i$i28 
= 0, $$018$i43 = 0, $$018$i58 = 0, $$096 = 0, $$194 = 0, $$2 = 0, $1 = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $isdigit$i$i31 = 0, 
$isdigit$i46 = 0, $isdigit$i61 = 0, $isdigit14$i$i = 0, $isdigit14$i37 = 0, 
$isdigit14$i52 = 0, $isdigit16$i$i = 0, $isdigit16$i39 = 0, $isdigit16$i54 = 0, 
$isdigittmp$i$i30 = 0, $isdigittmp$i45 = 0, $isdigittmp$i60 = 0, 
$isdigittmp13$i$i = 0, $isdigittmp13$i36 = 0;
- var $isdigittmp13$i51 = 0, $isdigittmp15$i$i = 0, $isdigittmp15$i38 = 0, 
$isdigittmp15$i53 = 0, $isdigittmp19$i$i27 = 0, $isdigittmp19$i42 = 0, 
$isdigittmp19$i57 = 0, $or$cond108 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  _global_init();
-  $$0 = 44375;
-  return ($$0|0);
- }
- $2 = HEAP8[$0>>0]|0;
- $3 = ($2<<24>>24)==(1);
- if ($3) {
-  $4 = ((($0)) + 1|0);
-  $5 = HEAP8[$4>>0]|0;
-  $6 = ($5<<24>>24)==(1);
-  if ($6) {
-   $7 = (__gcry_compat_identification()|0);
-   $$0 = $7;
-   return ($$0|0);
-  }
- }
- _global_init();
- $8 = HEAP8[$0>>0]|0;
- $9 = ($8<<24>>24)==(48);
- if ($9) {
-  $10 = ((($0)) + 1|0);
-  $11 = HEAP8[$10>>0]|0;
-  $12 = $11 << 24 >> 24;
-  $isdigittmp13$i$i = (($12) + -48)|0;
-  $isdigit14$i$i = ($isdigittmp13$i$i>>>0)<(10);
-  if ($isdigit14$i$i) {
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $13 = $8 << 24 >> 24;
- $isdigittmp15$i$i = (($13) + -48)|0;
- $isdigit16$i$i = ($isdigittmp15$i$i>>>0)<(10);
- if ($isdigit16$i$i) {
-  $$01217$i$i29 = $0;$$018$i$i28 = 0;$isdigittmp19$i$i27 = $isdigittmp15$i$i;
-  while(1) {
-   $14 = ($$018$i$i28*10)|0;
-   $15 = (($14) + ($isdigittmp19$i$i27))|0;
-   $16 = ((($$01217$i$i29)) + 1|0);
-   $17 = HEAP8[$16>>0]|0;
-   $18 = $17 << 24 >> 24;
-   $isdigittmp$i$i30 = (($18) + -48)|0;
-   $isdigit$i$i31 = ($isdigittmp$i$i30>>>0)<(10);
-   if ($isdigit$i$i31) {
-    $$01217$i$i29 = $16;$$018$i$i28 = $15;$isdigittmp19$i$i27 = 
$isdigittmp$i$i30;
-   } else {
-    break;
-   }
-  }
-  $19 = ($15|0)<(0);
-  if ($19) {
-   $$0 = 0;
-   return ($$0|0);
-  } else {
-   $$096 = $15;$21 = $17;$23 = $16;
-  }
- } else {
-  $$096 = 0;$21 = $8;$23 = $0;
- }
- $20 = ($21<<24>>24)==(46);
- if (!($20)) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $22 = ((($23)) + 1|0);
- $24 = HEAP8[$22>>0]|0;
- $25 = ($24<<24>>24)==(48);
- if ($25) {
-  $26 = ((($23)) + 2|0);
-  $27 = HEAP8[$26>>0]|0;
-  $28 = $27 << 24 >> 24;
-  $isdigittmp13$i36 = (($28) + -48)|0;
-  $isdigit14$i37 = ($isdigittmp13$i36>>>0)<(10);
-  if ($isdigit14$i37) {
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $29 = $24 << 24 >> 24;
- $isdigittmp15$i38 = (($29) + -48)|0;
- $isdigit16$i39 = ($isdigittmp15$i38>>>0)<(10);
- if ($isdigit16$i39) {
-  $$01217$i44 = $22;$$018$i43 = 0;$isdigittmp19$i42 = $isdigittmp15$i38;
-  while(1) {
-   $30 = ($$018$i43*10)|0;
-   $31 = (($30) + ($isdigittmp19$i42))|0;
-   $32 = ((($$01217$i44)) + 1|0);
-   $33 = HEAP8[$32>>0]|0;
-   $34 = $33 << 24 >> 24;
-   $isdigittmp$i45 = (($34) + -48)|0;
-   $isdigit$i46 = ($isdigittmp$i45>>>0)<(10);
-   if ($isdigit$i46) {
-    $$01217$i44 = $32;$$018$i43 = $31;$isdigittmp19$i42 = $isdigittmp$i45;
-   } else {
-    break;
-   }
-  }
-  $35 = ($31|0)<(0);
-  if ($35) {
-   $$0 = 0;
-   return ($$0|0);
-  } else {
-   $$194 = $31;$37 = $33;$39 = $32;
-  }
- } else {
-  $$194 = 0;$37 = $24;$39 = $22;
- }
- $36 = ($37<<24>>24)==(46);
- if (!($36)) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $38 = ((($39)) + 1|0);
- $40 = HEAP8[$38>>0]|0;
- $41 = ($40<<24>>24)==(48);
- if ($41) {
-  $42 = ((($39)) + 2|0);
-  $43 = HEAP8[$42>>0]|0;
-  $44 = $43 << 24 >> 24;
-  $isdigittmp13$i51 = (($44) + -48)|0;
-  $isdigit14$i52 = ($isdigittmp13$i51>>>0)<(10);
-  if ($isdigit14$i52) {
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $45 = $40 << 24 >> 24;
- $isdigittmp15$i53 = (($45) + -48)|0;
- $isdigit16$i54 = ($isdigittmp15$i53>>>0)<(10);
- if ($isdigit16$i54) {
-  $$01217$i59 = $38;$$018$i58 = 0;$isdigittmp19$i57 = $isdigittmp15$i53;
-  while(1) {
-   $46 = ($$018$i58*10)|0;
-   $47 = (($46) + ($isdigittmp19$i57))|0;
-   $48 = ((($$01217$i59)) + 1|0);
-   $49 = HEAP8[$48>>0]|0;
-   $50 = $49 << 24 >> 24;
-   $isdigittmp$i60 = (($50) + -48)|0;
-   $isdigit$i61 = ($isdigittmp$i60>>>0)<(10);
-   if ($isdigit$i61) {
-    $$01217$i59 = $48;$$018$i58 = $47;$isdigittmp19$i57 = $isdigittmp$i60;
-   } else {
-    break;
-   }
-  }
-  $51 = ($47|0)<(0);
-  if ($51) {
-   $$0 = 0;
-   return ($$0|0);
-  } else {
-   $$2 = $47;
-  }
- } else {
-  $$2 = 0;
- }
- $52 = ($$096|0)<(1);
- if ($52) {
-  $$0 = 44375;
-  return ($$0|0);
- }
- $53 = ($$096|0)==(1);
- if ($53) {
-  $54 = ($$194|0)<(7);
-  if ($54) {
-   $$0 = 44375;
-   return ($$0|0);
-  }
-  $55 = ($$194|0)==(7);
-  $56 = ($$2|0)==(0);
-  $or$cond108 = $55 & $56;
-  if ($or$cond108) {
-   $$0 = 44375;
-   return ($$0|0);
-  }
- }
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_vcontrol($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$i = 0, $$03536$i = 0, $$2 = 0, $$lobit = 0, $10 = 0, $100 = 0, $101 = 
0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 
0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, 
$164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0;
- var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 
= 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0;
- var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 
= 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 
0, $200 = 0, $201 = 0, $202 = 0, $203 = 0;
- var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 
= 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 
= 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0;
- var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, 
$229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, 
$236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0;
- var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, 
$247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, 
$254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0;
- var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $27 = 0, $28 = 0, $29 = 
0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 
0, $38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, 
$arglist_current101 = 0, $arglist_current104 = 0, $arglist_current107 = 0, 
$arglist_current11 = 0, $arglist_current110 = 0, $arglist_current14 = 0, 
$arglist_current17 = 0, $arglist_current2 = 0, $arglist_current20 = 0, 
$arglist_current5 = 0, $arglist_current65 = 0, $arglist_current68 = 0, 
$arglist_current71 = 0, $arglist_current74 = 0;
- var $arglist_current77 = 0, $arglist_current8 = 0, $arglist_current80 = 0, 
$arglist_current83 = 0, $arglist_current86 = 0, $arglist_current89 = 0, 
$arglist_current92 = 0, $arglist_current95 = 0, $arglist_current98 = 0, 
$arglist_next = 0, $arglist_next102 = 0, $arglist_next105 = 0, $arglist_next108 
= 0, $arglist_next111 = 0, $arglist_next12 = 0, $arglist_next15 = 0, 
$arglist_next18 = 0, $arglist_next21 = 0, $arglist_next3 = 0, $arglist_next6 = 
0;
- var $arglist_next66 = 0, $arglist_next69 = 0, $arglist_next72 = 0, 
$arglist_next75 = 0, $arglist_next78 = 0, $arglist_next81 = 0, $arglist_next84 
= 0, $arglist_next87 = 0, $arglist_next9 = 0, $arglist_next90 = 0, 
$arglist_next93 = 0, $arglist_next96 = 0, $arglist_next99 = 0, $expanded = 0, 
$expanded112 = 0, $expanded114 = 0, $expanded115 = 0, $expanded116 = 0, 
$expanded118 = 0, $expanded119 = 0;
- var $expanded121 = 0, $expanded122 = 0, $expanded123 = 0, $expanded125 = 0, 
$expanded126 = 0, $expanded128 = 0, $expanded129 = 0, $expanded130 = 0, 
$expanded132 = 0, $expanded133 = 0, $expanded135 = 0, $expanded136 = 0, 
$expanded137 = 0, $expanded139 = 0, $expanded140 = 0, $expanded142 = 0, 
$expanded143 = 0, $expanded144 = 0, $expanded146 = 0, $expanded147 = 0;
- var $expanded149 = 0, $expanded150 = 0, $expanded151 = 0, $expanded153 = 0, 
$expanded154 = 0, $expanded156 = 0, $expanded157 = 0, $expanded158 = 0, 
$expanded160 = 0, $expanded161 = 0, $expanded163 = 0, $expanded164 = 0, 
$expanded165 = 0, $expanded167 = 0, $expanded168 = 0, $expanded170 = 0, 
$expanded171 = 0, $expanded172 = 0, $expanded174 = 0, $expanded175 = 0;
- var $expanded177 = 0, $expanded178 = 0, $expanded179 = 0, $expanded181 = 0, 
$expanded182 = 0, $expanded184 = 0, $expanded185 = 0, $expanded186 = 0, 
$expanded188 = 0, $expanded189 = 0, $expanded191 = 0, $expanded192 = 0, 
$expanded193 = 0, $expanded195 = 0, $expanded196 = 0, $expanded198 = 0, 
$expanded199 = 0, $expanded200 = 0, $expanded202 = 0, $expanded203 = 0;
- var $expanded205 = 0, $expanded206 = 0, $expanded207 = 0, $expanded209 = 0, 
$expanded210 = 0, $expanded212 = 0, $expanded213 = 0, $expanded214 = 0, 
$expanded216 = 0, $expanded217 = 0, $expanded219 = 0, $expanded220 = 0, 
$expanded221 = 0, $expanded223 = 0, $expanded224 = 0, $expanded226 = 0, 
$expanded227 = 0, $expanded228 = 0, $expanded230 = 0, $expanded231 = 0;
- var $expanded233 = 0, $expanded234 = 0, $expanded235 = 0, $expanded237 = 0, 
$expanded238 = 0, $expanded240 = 0, $expanded241 = 0, $expanded242 = 0, 
$expanded244 = 0, $expanded245 = 0, $expanded247 = 0, $expanded248 = 0, 
$expanded249 = 0, $expanded251 = 0, $expanded252 = 0, $expanded254 = 0, 
$expanded255 = 0, $expanded256 = 0, $expanded258 = 0, $expanded259 = 0;
- var $expanded261 = 0, $expanded262 = 0, $expanded263 = 0, $expanded265 = 0, 
$expanded266 = 0, $expanded268 = 0, $expanded269 = 0, $expanded270 = 0, 
$expanded272 = 0, $expanded273 = 0, $expanded275 = 0, $expanded276 = 0, 
$expanded277 = 0, $spec$select = 0, $spec$select105 = 0, $spec$select106 = 0, 
$spec$select107 = 0, $vararg_buffer = 0, $vararg_buffer22 = 0, $vararg_buffer26 
= 0;
- var $vararg_buffer30 = 0, $vararg_buffer34 = 0, $vararg_buffer37 = 0, 
$vararg_buffer40 = 0, $vararg_buffer44 = 0, $vararg_buffer47 = 0, 
$vararg_buffer51 = 0, $vararg_buffer54 = 0, $vararg_buffer59 = 0, $vararg_ptr57 
= 0, $vararg_ptr62 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $vararg_buffer59 = sp + 88|0;
- $vararg_buffer54 = sp + 80|0;
- $vararg_buffer51 = sp + 72|0;
- $vararg_buffer47 = sp + 64|0;
- $vararg_buffer44 = sp + 56|0;
- $vararg_buffer40 = sp + 48|0;
- $vararg_buffer37 = sp + 40|0;
- $vararg_buffer34 = sp + 32|0;
- $vararg_buffer30 = sp + 24|0;
- $vararg_buffer26 = sp + 16|0;
- $vararg_buffer22 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 96|0;
- do {
-  switch ($0|0) {
-  case 31:  {
-   __gcry_private_enable_m_guard();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 44:  {
-   __gcry_set_preferred_rng_type(0);
-   __gcry_enable_quick_random_gen();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 51:  {
-   $3 = (__gcry_random_is_faked()|0);
-   $4 = ($3|0)!=(0);
-   $spec$select = $4&1;
-   $$2 = $spec$select;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 13:  {
-   __gcry_random_dump_stats();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 14:  {
-   __gcry_secmem_dump_stats();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 30:  {
-   _global_init();
-   __gcry_secmem_init(0);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 37:  {
-   _global_init();
-   HEAP32[18085] = 1;
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 24:  {
-   _global_init();
-   $arglist_current = HEAP32[$1>>2]|0;
-   $5 = $arglist_current;
-   $6 = ((0) + 4|0);
-   $expanded112 = $6;
-   $expanded = (($expanded112) - 1)|0;
-   $7 = (($5) + ($expanded))|0;
-   $8 = ((0) + 4|0);
-   $expanded116 = $8;
-   $expanded115 = (($expanded116) - 1)|0;
-   $expanded114 = $expanded115 ^ -1;
-   $9 = $7 & $expanded114;
-   $10 = $9;
-   $11 = HEAP32[$10>>2]|0;
-   $arglist_next = ((($10)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next;
-   __gcry_secmem_init($11);
-   $12 = (__gcry_secmem_get_flags()|0);
-   $13 = $12 >>> 2;
-   $$lobit = $13 & 1;
-   $$2 = $$lobit;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 25:  {
-   _global_init();
-   __gcry_secmem_term();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 27:  {
-   __gcry_set_preferred_rng_type(0);
-   $14 = (__gcry_secmem_get_flags()|0);
-   $15 = $14 | 1;
-   __gcry_secmem_set_flags($15);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 28:  {
-   __gcry_set_preferred_rng_type(0);
-   $16 = (__gcry_secmem_get_flags()|0);
-   $17 = $16 | 2;
-   __gcry_secmem_set_flags($17);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 29:  {
-   __gcry_set_preferred_rng_type(0);
-   $18 = (__gcry_secmem_get_flags()|0);
-   $19 = $18 & -3;
-   __gcry_secmem_set_flags($19);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 22:  {
-   _global_init();
-   __gcry_secure_random_alloc();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 45:  {
-   __gcry_set_preferred_rng_type(0);
-   $arglist_current2 = HEAP32[$1>>2]|0;
-   $20 = $arglist_current2;
-   $21 = ((0) + 4|0);
-   $expanded119 = $21;
-   $expanded118 = (($expanded119) - 1)|0;
-   $22 = (($20) + ($expanded118))|0;
-   $23 = ((0) + 4|0);
-   $expanded123 = $23;
-   $expanded122 = (($expanded123) - 1)|0;
-   $expanded121 = $expanded122 ^ -1;
-   $24 = $22 & $expanded121;
-   $25 = $24;
-   $26 = HEAP32[$25>>2]|0;
-   $arglist_next3 = ((($25)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next3;
-   __gcry_set_random_seed_file($26);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 46:  {
-   __gcry_set_preferred_rng_type(0);
-   $27 = HEAP32[18083]|0;
-   $28 = ($27|0)==(0);
-   if ($28) {
-    _global_init();
-   }
-   $29 = (__gcry_fips_is_operational()|0);
-   $30 = ($29|0)==(0);
-   if ($30) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   __gcry_update_random_seed_file();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 19:  {
-   __gcry_set_preferred_rng_type(0);
-   $arglist_current5 = HEAP32[$1>>2]|0;
-   $31 = $arglist_current5;
-   $32 = ((0) + 4|0);
-   $expanded126 = $32;
-   $expanded125 = (($expanded126) - 1)|0;
-   $33 = (($31) + ($expanded125))|0;
-   $34 = ((0) + 4|0);
-   $expanded130 = $34;
-   $expanded129 = (($expanded130) - 1)|0;
-   $expanded128 = $expanded129 ^ -1;
-   $35 = $33 & $expanded128;
-   $36 = $35;
-   $37 = HEAP32[$36>>2]|0;
-   $arglist_next6 = ((($36)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next6;
-   __gcry_set_log_verbosity($37);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 20:  {
-   $arglist_current8 = HEAP32[$1>>2]|0;
-   $38 = $arglist_current8;
-   $39 = ((0) + 4|0);
-   $expanded133 = $39;
-   $expanded132 = (($expanded133) - 1)|0;
-   $40 = (($38) + ($expanded132))|0;
-   $41 = ((0) + 4|0);
-   $expanded137 = $41;
-   $expanded136 = (($expanded137) - 1)|0;
-   $expanded135 = $expanded136 ^ -1;
-   $42 = $40 & $expanded135;
-   $43 = $42;
-   $44 = HEAP32[$43>>2]|0;
-   $arglist_next9 = ((($43)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next9;
-   $45 = HEAP32[18086]|0;
-   $46 = $45 | $44;
-   HEAP32[18086] = $46;
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 21:  {
-   $arglist_current11 = HEAP32[$1>>2]|0;
-   $47 = $arglist_current11;
-   $48 = ((0) + 4|0);
-   $expanded140 = $48;
-   $expanded139 = (($expanded140) - 1)|0;
-   $49 = (($47) + ($expanded139))|0;
-   $50 = ((0) + 4|0);
-   $expanded144 = $50;
-   $expanded143 = (($expanded144) - 1)|0;
-   $expanded142 = $expanded143 ^ -1;
-   $51 = $49 & $expanded142;
-   $52 = $51;
-   $53 = HEAP32[$52>>2]|0;
-   $arglist_next12 = ((($52)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next12;
-   $54 = $53 ^ -1;
-   $55 = HEAP32[18086]|0;
-   $56 = $55 & $54;
-   HEAP32[18086] = $56;
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 36:  {
-   _global_init();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 40:  {
-   $57 = HEAP32[18083]|0;
-   $$2 = $57;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 39:  {
-   $58 = HEAP32[18087]|0;
-   $$2 = $58;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 38:  {
-   $59 = HEAP32[18087]|0;
-   $60 = ($59|0)==(0);
-   if (!($60)) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   _global_init();
-   __gcry_random_initialize(0);
-   HEAP32[18087] = 1;
-   $61 = HEAP32[18083]|0;
-   $62 = ($61|0)==(0);
-   if ($62) {
-    _global_init();
-   }
-   (__gcry_fips_is_operational()|0);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 47:  {
-   __gcry_set_preferred_rng_type(0);
-   _global_init();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 48:  {
-   __gcry_set_preferred_rng_type(0);
-   __gcry_random_initialize(1);
-   $63 = HEAP32[18083]|0;
-   $64 = ($63|0)==(0);
-   if ($64) {
-    _global_init();
-   }
-   $65 = (__gcry_fips_is_operational()|0);
-   $66 = ($65|0)==(0);
-   if ($66) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   __gcry_fast_random_poll();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 52:  {
-   $$2 = 16777276;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 49:  {
-   __gcry_set_preferred_rng_type(0);
-   $arglist_current14 = HEAP32[$1>>2]|0;
-   $67 = $arglist_current14;
-   $68 = ((0) + 4|0);
-   $expanded147 = $68;
-   $expanded146 = (($expanded147) - 1)|0;
-   $69 = (($67) + ($expanded146))|0;
-   $70 = ((0) + 4|0);
-   $expanded151 = $70;
-   $expanded150 = (($expanded151) - 1)|0;
-   $expanded149 = $expanded150 ^ -1;
-   $71 = $69 & $expanded149;
-   $72 = $71;
-   $73 = HEAP32[$72>>2]|0;
-   $arglist_next15 = ((($72)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next15;
-   __gcry_set_random_daemon_socket($73);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 50:  {
-   __gcry_set_preferred_rng_type(0);
-   __gcry_random_initialize(1);
-   $arglist_current17 = HEAP32[$1>>2]|0;
-   $74 = $arglist_current17;
-   $75 = ((0) + 4|0);
-   $expanded154 = $75;
-   $expanded153 = (($expanded154) - 1)|0;
-   $76 = (($74) + ($expanded153))|0;
-   $77 = ((0) + 4|0);
-   $expanded158 = $77;
-   $expanded157 = (($expanded158) - 1)|0;
-   $expanded156 = $expanded157 ^ -1;
-   $78 = $76 & $expanded156;
-   $79 = $78;
-   $80 = HEAP32[$79>>2]|0;
-   $arglist_next18 = ((($79)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next18;
-   $81 = ($80|0)!=(0);
-   $82 = $81&1;
-   (__gcry_use_random_daemon($82)|0);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 70:  {
-   __gcry_random_close_fds();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 53:  {
-   $arglist_current20 = HEAP32[$1>>2]|0;
-   $83 = $arglist_current20;
-   $84 = ((0) + 4|0);
-   $expanded161 = $84;
-   $expanded160 = (($expanded161) - 1)|0;
-   $85 = (($83) + ($expanded160))|0;
-   $86 = ((0) + 4|0);
-   $expanded165 = $86;
-   $expanded164 = (($expanded165) - 1)|0;
-   $expanded163 = $expanded164 ^ -1;
-   $87 = $85 & $expanded163;
-   $88 = $87;
-   $89 = HEAP32[$88>>2]|0;
-   $arglist_next21 = ((($88)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next21;
-   __gcry_set_preferred_rng_type(0);
-   $90 = ($89|0)==(0|0);
-   $91 = $90 ? 58 : 59;
-   HEAP32[$vararg_buffer>>2] = 44375;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44389,$vararg_buffer)|0);
-   HEAP32[$vararg_buffer22>>2] = 44415;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44402,$vararg_buffer22)|0);
-   HEAP32[$vararg_buffer26>>2] = 44440;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44427,$vararg_buffer26)|0);
-   HEAP32[$vararg_buffer30>>2] = 44461;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44448,$vararg_buffer30)|0);
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44475,$vararg_buffer34)|0);
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44491,$vararg_buffer37)|0);
-   $92 = (__gcry_mpi_get_hw_config()|0);
-   HEAP32[$vararg_buffer40>>2] = $92;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44503,$vararg_buffer40)|0);
-   $93 = (__gcry_get_hw_features()|0);
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44516,$vararg_buffer44)|0);
-   $94 = (__gcry_enum_hw_features(0,$2)|0);
-   $95 = ($94|0)==(0|0);
-   if (!($95)) {
-    $$03536$i = 0;$99 = $94;
-    while(1) {
-     $96 = HEAP32[$2>>2]|0;
-     $97 = $96 & $93;
-     $98 = ($97|0)==(0);
-     if (!($98)) {
-      HEAP32[$vararg_buffer47>>2] = $99;
-      (FUNCTION_TABLE_iiii[$91 & 127]($89,44525,$vararg_buffer47)|0);
-     }
-     $100 = (($$03536$i) + 1)|0;
-     $101 = (__gcry_enum_hw_features($100,$2)|0);
-     $102 = ($101|0)==(0|0);
-     if ($102) {
-      break;
-     } else {
-      $$03536$i = $100;$99 = $101;
-     }
-    }
-   }
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44529,$vararg_buffer51)|0);
-   $103 = (__gcry_fips_mode()|0);
-   $104 = ($103|0)==(0);
-   $105 = $104 ? 110 : 121;
-   $106 = (__gcry_enforced_fips_mode()|0);
-   $107 = ($106|0)==(0);
-   $108 = $107 ? 110 : 121;
-   HEAP32[$vararg_buffer54>>2] = $105;
-   $vararg_ptr57 = ((($vararg_buffer54)) + 4|0);
-   HEAP32[$vararg_ptr57>>2] = $108;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44531,$vararg_buffer54)|0);
-   $109 = (__gcry_get_rng_type(0)|0);
-   switch ($109|0) {
-   case 1:  {
-    $$0$i = 44574;
-    break;
-   }
-   case 2:  {
-    $$0$i = 44569;
-    break;
-   }
-   case 3:  {
-    $$0$i = 44562;
-    break;
-   }
-   default: {
-    __gcry_bug(44354,321,44549);
-    // unreachable;
-   }
-   }
-   HEAP32[$vararg_buffer59>>2] = $$0$i;
-   $vararg_ptr62 = ((($vararg_buffer59)) + 4|0);
-   HEAP32[$vararg_ptr62>>2] = $109;
-   (FUNCTION_TABLE_iiii[$91 & 127]($89,44583,$vararg_buffer59)|0);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 54:  {
-   __gcry_set_preferred_rng_type(0);
-   $110 = (__gcry_fips_test_operational()|0);
-   $111 = ($110|0)!=(0);
-   $spec$select105 = $111&1;
-   $$2 = $spec$select105;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 55:  {
-   $112 = (__gcry_fips_mode()|0);
-   $113 = ($112|0)==(0);
-   if ($113) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $114 = (__gcry_is_fips_mode_inactive()|0);
-   $115 = HEAP32[18085]|0;
-   $116 = $115 | $114;
-   $117 = ($116|0)==(0);
-   $spec$select106 = $117&1;
-   $$2 = $spec$select106;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 56:  {
-   __gcry_set_preferred_rng_type(0);
-   $118 = HEAP32[18083]|0;
-   $119 = ($118|0)==(0);
-   if ($119) {
-    HEAP32[18084] = 1;
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $120 = (__gcry_fips_test_error_or_operational()|0);
-   $121 = ($120|0)==(0);
-   if ($121) {
-    $122 = (__gcry_fips_is_operational()|0);
-    $123 = ($122|0)!=(0);
-    $spec$select107 = $123&1;
-    STACKTOP = sp;return ($spec$select107|0);
-   }
-   (__gcry_fips_run_selftests(1)|0);
-   $122 = (__gcry_fips_is_operational()|0);
-   $123 = ($122|0)!=(0);
-   $spec$select107 = $123&1;
-   STACKTOP = sp;return ($spec$select107|0);
-   break;
-  }
-  case 57:  {
-   _global_init();
-   $124 = (__gcry_fips_run_selftests(1)|0);
-   $$2 = $124;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 58:  {
-   $arglist_current65 = HEAP32[$1>>2]|0;
-   $125 = $arglist_current65;
-   $126 = ((0) + 4|0);
-   $expanded168 = $126;
-   $expanded167 = (($expanded168) - 1)|0;
-   $127 = (($125) + ($expanded167))|0;
-   $128 = ((0) + 4|0);
-   $expanded172 = $128;
-   $expanded171 = (($expanded172) - 1)|0;
-   $expanded170 = $expanded171 ^ -1;
-   $129 = $127 & $expanded170;
-   $130 = $129;
-   $131 = HEAP32[$130>>2]|0;
-   $arglist_next66 = ((($130)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next66;
-   $arglist_current68 = HEAP32[$1>>2]|0;
-   $132 = $arglist_current68;
-   $133 = ((0) + 4|0);
-   $expanded175 = $133;
-   $expanded174 = (($expanded175) - 1)|0;
-   $134 = (($132) + ($expanded174))|0;
-   $135 = ((0) + 4|0);
-   $expanded179 = $135;
-   $expanded178 = (($expanded179) - 1)|0;
-   $expanded177 = $expanded178 ^ -1;
-   $136 = $134 & $expanded177;
-   $137 = $136;
-   $138 = HEAP32[$137>>2]|0;
-   $arglist_next69 = ((($137)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next69;
-   $arglist_current71 = HEAP32[$1>>2]|0;
-   $139 = $arglist_current71;
-   $140 = ((0) + 4|0);
-   $expanded182 = $140;
-   $expanded181 = (($expanded182) - 1)|0;
-   $141 = (($139) + ($expanded181))|0;
-   $142 = ((0) + 4|0);
-   $expanded186 = $142;
-   $expanded185 = (($expanded186) - 1)|0;
-   $expanded184 = $expanded185 ^ -1;
-   $143 = $141 & $expanded184;
-   $144 = $143;
-   $145 = HEAP32[$144>>2]|0;
-   $arglist_next72 = ((($144)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next72;
-   $arglist_current74 = HEAP32[$1>>2]|0;
-   $146 = $arglist_current74;
-   $147 = ((0) + 4|0);
-   $expanded189 = $147;
-   $expanded188 = (($expanded189) - 1)|0;
-   $148 = (($146) + ($expanded188))|0;
-   $149 = ((0) + 4|0);
-   $expanded193 = $149;
-   $expanded192 = (($expanded193) - 1)|0;
-   $expanded191 = $expanded192 ^ -1;
-   $150 = $148 & $expanded191;
-   $151 = $150;
-   $152 = HEAP32[$151>>2]|0;
-   $arglist_next75 = ((($151)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next75;
-   $arglist_current77 = HEAP32[$1>>2]|0;
-   $153 = $arglist_current77;
-   $154 = ((0) + 4|0);
-   $expanded196 = $154;
-   $expanded195 = (($expanded196) - 1)|0;
-   $155 = (($153) + ($expanded195))|0;
-   $156 = ((0) + 4|0);
-   $expanded200 = $156;
-   $expanded199 = (($expanded200) - 1)|0;
-   $expanded198 = $expanded199 ^ -1;
-   $157 = $155 & $expanded198;
-   $158 = $157;
-   $159 = HEAP32[$158>>2]|0;
-   $arglist_next78 = ((($158)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next78;
-   $arglist_current80 = HEAP32[$1>>2]|0;
-   $160 = $arglist_current80;
-   $161 = ((0) + 4|0);
-   $expanded203 = $161;
-   $expanded202 = (($expanded203) - 1)|0;
-   $162 = (($160) + ($expanded202))|0;
-   $163 = ((0) + 4|0);
-   $expanded207 = $163;
-   $expanded206 = (($expanded207) - 1)|0;
-   $expanded205 = $expanded206 ^ -1;
-   $164 = $162 & $expanded205;
-   $165 = $164;
-   $166 = HEAP32[$165>>2]|0;
-   $arglist_next81 = ((($165)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next81;
-   $arglist_current83 = HEAP32[$1>>2]|0;
-   $167 = $arglist_current83;
-   $168 = ((0) + 4|0);
-   $expanded210 = $168;
-   $expanded209 = (($expanded210) - 1)|0;
-   $169 = (($167) + ($expanded209))|0;
-   $170 = ((0) + 4|0);
-   $expanded214 = $170;
-   $expanded213 = (($expanded214) - 1)|0;
-   $expanded212 = $expanded213 ^ -1;
-   $171 = $169 & $expanded212;
-   $172 = $171;
-   $173 = HEAP32[$172>>2]|0;
-   $arglist_next84 = ((($172)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next84;
-   $arglist_current86 = HEAP32[$1>>2]|0;
-   $174 = $arglist_current86;
-   $175 = ((0) + 4|0);
-   $expanded217 = $175;
-   $expanded216 = (($expanded217) - 1)|0;
-   $176 = (($174) + ($expanded216))|0;
-   $177 = ((0) + 4|0);
-   $expanded221 = $177;
-   $expanded220 = (($expanded221) - 1)|0;
-   $expanded219 = $expanded220 ^ -1;
-   $178 = $176 & $expanded219;
-   $179 = $178;
-   $180 = HEAP32[$179>>2]|0;
-   $arglist_next87 = ((($179)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next87;
-   $181 = HEAP32[18083]|0;
-   $182 = ($181|0)==(0);
-   if ($182) {
-    _global_init();
-   }
-   $183 = (__gcry_fips_is_operational()|0);
-   $184 = ($183|0)==(0);
-   if ($184) {
-    $$2 = 176;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $185 = 
(__gcry_random_init_external_test($131,$138,$145,$152,$159,$166,$173,$180)|0);
-   $$2 = $185;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 59:  {
-   $arglist_current89 = HEAP32[$1>>2]|0;
-   $186 = $arglist_current89;
-   $187 = ((0) + 4|0);
-   $expanded224 = $187;
-   $expanded223 = (($expanded224) - 1)|0;
-   $188 = (($186) + ($expanded223))|0;
-   $189 = ((0) + 4|0);
-   $expanded228 = $189;
-   $expanded227 = (($expanded228) - 1)|0;
-   $expanded226 = $expanded227 ^ -1;
-   $190 = $188 & $expanded226;
-   $191 = $190;
-   $192 = HEAP32[$191>>2]|0;
-   $arglist_next90 = ((($191)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next90;
-   $arglist_current92 = HEAP32[$1>>2]|0;
-   $193 = $arglist_current92;
-   $194 = ((0) + 4|0);
-   $expanded231 = $194;
-   $expanded230 = (($expanded231) - 1)|0;
-   $195 = (($193) + ($expanded230))|0;
-   $196 = ((0) + 4|0);
-   $expanded235 = $196;
-   $expanded234 = (($expanded235) - 1)|0;
-   $expanded233 = $expanded234 ^ -1;
-   $197 = $195 & $expanded233;
-   $198 = $197;
-   $199 = HEAP32[$198>>2]|0;
-   $arglist_next93 = ((($198)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next93;
-   $arglist_current95 = HEAP32[$1>>2]|0;
-   $200 = $arglist_current95;
-   $201 = ((0) + 4|0);
-   $expanded238 = $201;
-   $expanded237 = (($expanded238) - 1)|0;
-   $202 = (($200) + ($expanded237))|0;
-   $203 = ((0) + 4|0);
-   $expanded242 = $203;
-   $expanded241 = (($expanded242) - 1)|0;
-   $expanded240 = $expanded241 ^ -1;
-   $204 = $202 & $expanded240;
-   $205 = $204;
-   $206 = HEAP32[$205>>2]|0;
-   $arglist_next96 = ((($205)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next96;
-   $207 = HEAP32[18083]|0;
-   $208 = ($207|0)==(0);
-   if ($208) {
-    _global_init();
-   }
-   $209 = (__gcry_fips_is_operational()|0);
-   $210 = ($209|0)==(0);
-   if ($210) {
-    $$2 = 176;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $211 = (__gcry_random_run_external_test($192,$199,$206)|0);
-   $$2 = $211;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 60:  {
-   $arglist_current98 = HEAP32[$1>>2]|0;
-   $212 = $arglist_current98;
-   $213 = ((0) + 4|0);
-   $expanded245 = $213;
-   $expanded244 = (($expanded245) - 1)|0;
-   $214 = (($212) + ($expanded244))|0;
-   $215 = ((0) + 4|0);
-   $expanded249 = $215;
-   $expanded248 = (($expanded249) - 1)|0;
-   $expanded247 = $expanded248 ^ -1;
-   $216 = $214 & $expanded247;
-   $217 = $216;
-   $218 = HEAP32[$217>>2]|0;
-   $arglist_next99 = ((($217)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next99;
-   __gcry_random_deinit_external_test($218);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 61:  {
-   $arglist_current101 = HEAP32[$1>>2]|0;
-   $219 = $arglist_current101;
-   $220 = ((0) + 4|0);
-   $expanded252 = $220;
-   $expanded251 = (($expanded252) - 1)|0;
-   $221 = (($219) + ($expanded251))|0;
-   $222 = ((0) + 4|0);
-   $expanded256 = $222;
-   $expanded255 = (($expanded256) - 1)|0;
-   $expanded254 = $expanded255 ^ -1;
-   $223 = $221 & $expanded254;
-   $224 = $223;
-   $225 = HEAP32[$224>>2]|0;
-   $arglist_next102 = ((($224)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next102;
-   switch ($225|0) {
-   case 30111:  {
-    $226 = (_gpgrt_lock_init(37856)|0);
-    $$2 = $226;
-    STACKTOP = sp;return ($$2|0);
-    break;
-   }
-   case 30112:  {
-    $227 = (_gpgrt_lock_lock(37856)|0);
-    $$2 = $227;
-    STACKTOP = sp;return ($$2|0);
-    break;
-   }
-   case 30113:  {
-    $228 = (_gpgrt_lock_unlock(37856)|0);
-    $$2 = $228;
-    STACKTOP = sp;return ($$2|0);
-    break;
-   }
-   case 30114:  {
-    $229 = (_gpgrt_lock_destroy(37856)|0);
-    $$2 = $229;
-    STACKTOP = sp;return ($$2|0);
-    break;
-   }
-   default: {
-    $$2 = 61;
-    STACKTOP = sp;return ($$2|0);
-   }
-   }
-   break;
-  }
-  case 63:  {
-   $arglist_current104 = HEAP32[$1>>2]|0;
-   $230 = $arglist_current104;
-   $231 = ((0) + 4|0);
-   $expanded259 = $231;
-   $expanded258 = (($expanded259) - 1)|0;
-   $232 = (($230) + ($expanded258))|0;
-   $233 = ((0) + 4|0);
-   $expanded263 = $233;
-   $expanded262 = (($expanded263) - 1)|0;
-   $expanded261 = $expanded262 ^ -1;
-   $234 = $232 & $expanded261;
-   $235 = $234;
-   $236 = HEAP32[$235>>2]|0;
-   $arglist_next105 = ((($235)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next105;
-   $237 = (__gcry_disable_hw_feature($236)|0);
-   $$2 = $237;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 64:  {
-   $238 = HEAP32[18083]|0;
-   $239 = ($238|0)==(0);
-   if (!($239)) {
-    $$2 = 1;
-    STACKTOP = sp;return ($$2|0);
-   }
-   __gcry_set_preferred_rng_type(0);
-   __gcry_set_enforced_fips_mode();
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 65:  {
-   $arglist_current107 = HEAP32[$1>>2]|0;
-   $240 = $arglist_current107;
-   $241 = ((0) + 4|0);
-   $expanded266 = $241;
-   $expanded265 = (($expanded266) - 1)|0;
-   $242 = (($240) + ($expanded265))|0;
-   $243 = ((0) + 4|0);
-   $expanded270 = $243;
-   $expanded269 = (($expanded270) - 1)|0;
-   $expanded268 = $expanded269 ^ -1;
-   $244 = $242 & $expanded268;
-   $245 = $244;
-   $246 = HEAP32[$245>>2]|0;
-   $arglist_next108 = ((($245)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next108;
-   $247 = ($246|0)>(0);
-   if (!($247)) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   __gcry_set_preferred_rng_type($246);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 66:  {
-   $arglist_current110 = HEAP32[$1>>2]|0;
-   $248 = $arglist_current110;
-   $249 = ((0) + 4|0);
-   $expanded273 = $249;
-   $expanded272 = (($expanded273) - 1)|0;
-   $250 = (($248) + ($expanded272))|0;
-   $251 = ((0) + 4|0);
-   $expanded277 = $251;
-   $expanded276 = (($expanded277) - 1)|0;
-   $expanded275 = $expanded276 ^ -1;
-   $252 = $250 & $expanded275;
-   $253 = $252;
-   $254 = HEAP32[$253>>2]|0;
-   $arglist_next111 = ((($253)) + 4|0);
-   HEAP32[$1>>2] = $arglist_next111;
-   $255 = ($254|0)==(0|0);
-   if ($255) {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $256 = HEAP32[18083]|0;
-   $257 = $256 ^ 1;
-   $258 = (__gcry_get_rng_type($257)|0);
-   HEAP32[$254>>2] = $258;
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 67:  {
-   __gcry_set_preferred_rng_type(0);
-   $259 = (__gcry_secmem_get_flags()|0);
-   $260 = $259 | 8;
-   __gcry_secmem_set_flags($260);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 68:  {
-   __gcry_set_preferred_rng_type(0);
-   $261 = (__gcry_secmem_get_flags()|0);
-   $262 = $261 | 16;
-   __gcry_secmem_set_flags($262);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 72: case 71:  {
-   $$2 = 69;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  case 62: case 23:  {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-   break;
-  }
-  default: {
-   __gcry_set_preferred_rng_type(0);
-   $$2 = 61;
-   STACKTOP = sp;return ($$2|0);
-  }
-  }
- } while(0);
- return (0)|0;
-}
-function __gcry_set_allocation_handler($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- _global_init();
- $5 = (__gcry_fips_mode()|0);
- $6 = ($5|0)==(0);
- if (!($6)) {
-  __gcry_inactivate_fips_mode(44600);
- }
- HEAP32[18088] = $0;
- HEAP32[18089] = $1;
- HEAP32[18090] = $2;
- HEAP32[18091] = $3;
- HEAP32[18092] = $4;
- return;
-}
-function __gcry_malloc($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18088]|0;
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $4 = (__gcry_private_malloc($0)|0);
-  $$0$i = $4;
- } else {
-  $3 = (FUNCTION_TABLE_ii[$1 & 63]($0)|0);
-  $$0$i = $3;
- }
- $5 = ($$0$i|0)==(0|0);
- if (!($5)) {
-  $$0 = $$0$i;
-  return ($$0|0);
- }
- $6 = (___errno_location()|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0);
- if ($8) {
-  _gpg_err_set_errno(12);
- }
- $9 = (___errno_location()|0);
- $10 = HEAP32[$9>>2]|0;
- (_gpg_err_code_from_errno($10)|0);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_malloc_secure($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18085]|0;
- $2 = ($1|0)==(0);
- do {
-  if ($2) {
-   label = 5;
-  } else {
-   $3 = (__gcry_enforced_fips_mode()|0);
-   $4 = ($3|0)==(0);
-   if (!($4)) {
-    HEAP32[18085] = 0;
-    label = 5;
-    break;
-   }
-   $5 = HEAP32[18085]|0;
-   $6 = ($5|0)==(0);
-   if ($6) {
-    label = 5;
-   } else {
-    $11 = HEAP32[18088]|0;
-    $12 = ($11|0)==(0|0);
-    if ($12) {
-     $14 = (__gcry_private_malloc($0)|0);
-     $$0$i = $14;
-     break;
-    } else {
-     $13 = (FUNCTION_TABLE_ii[$11 & 63]($0)|0);
-     $$0$i = $13;
-     break;
-    }
-   }
-  }
- } while(0);
- do {
-  if ((label|0) == 5) {
-   $7 = HEAP32[18089]|0;
-   $8 = ($7|0)==(0|0);
-   if ($8) {
-    $10 = (__gcry_private_malloc_secure($0)|0);
-    $$0$i = $10;
-    break;
-   } else {
-    $9 = (FUNCTION_TABLE_ii[$7 & 63]($0)|0);
-    $$0$i = $9;
-    break;
-   }
-  }
- } while(0);
- $15 = ($$0$i|0)==(0|0);
- if (!($15)) {
-  $$0 = $$0$i;
-  return ($$0|0);
- }
- $16 = (___errno_location()|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = ($17|0)==(0);
- if ($18) {
-  _gpg_err_set_errno(12);
- }
- $19 = (___errno_location()|0);
- $20 = HEAP32[$19>>2]|0;
- (_gpg_err_code_from_errno($20)|0);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_is_secure($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18085]|0;
- $2 = ($1|0)==(0);
- do {
-  if (!($2)) {
-   $3 = (__gcry_enforced_fips_mode()|0);
-   $4 = ($3|0)==(0);
-   if (!($4)) {
-    HEAP32[18085] = 0;
-    break;
-   }
-   $5 = HEAP32[18085]|0;
-   $6 = ($5|0)==(0);
-   if (!($6)) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-  }
- } while(0);
- $7 = HEAP32[18090]|0;
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $10 = (__gcry_private_is_secure($0)|0);
-  $$0 = $10;
-  return ($$0|0);
- } else {
-  $9 = (FUNCTION_TABLE_ii[$7 & 63]($0)|0);
-  $$0 = $9;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_realloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$i$i = 0, $$010 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 
= 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $3 = HEAP32[18088]|0;
-  $4 = ($3|0)==(0|0);
-  if ($4) {
-   $6 = (__gcry_private_malloc($1)|0);
-   $$0$i$i = $6;
-  } else {
-   $5 = (FUNCTION_TABLE_ii[$3 & 63]($1)|0);
-   $$0$i$i = $5;
-  }
-  $7 = ($$0$i$i|0)==(0|0);
-  if (!($7)) {
-   $$010 = $$0$i$i;
-   return ($$010|0);
-  }
-  $8 = (___errno_location()|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9|0)==(0);
-  if ($10) {
-   _gpg_err_set_errno(12);
-  }
-  $11 = (___errno_location()|0);
-  $12 = HEAP32[$11>>2]|0;
-  (_gpg_err_code_from_errno($12)|0);
-  $$010 = 0;
-  return ($$010|0);
- }
- $13 = ($1|0)==(0);
- if ($13) {
-  $14 = (___errno_location()|0);
-  $15 = HEAP32[$14>>2]|0;
-  $16 = HEAP32[18092]|0;
-  $17 = ($16|0)==(0|0);
-  if ($17) {
-   __gcry_private_free($0);
-  } else {
-   FUNCTION_TABLE_vi[$16 & 127]($0);
-  }
-  $18 = ($15|0)==(0);
-  if ($18) {
-   $$010 = 0;
-   return ($$010|0);
-  }
-  _gpg_err_set_errno($15);
-  $$010 = 0;
-  return ($$010|0);
- }
- $19 = HEAP32[18091]|0;
- $20 = ($19|0)==(0|0);
- if ($20) {
-  $22 = (__gcry_private_realloc($0,$1)|0);
-  $$0 = $22;
- } else {
-  $21 = (FUNCTION_TABLE_iii[$19 & 127]($0,$1)|0);
-  $$0 = $21;
- }
- $23 = ($$0|0)==(0|0);
- if (!($23)) {
-  $$010 = $$0;
-  return ($$010|0);
- }
- $24 = (___errno_location()|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = ($25|0)==(0);
- if (!($26)) {
-  $$010 = 0;
-  return ($$010|0);
- }
- _gpg_err_set_errno(12);
- $$010 = 0;
- return ($$010|0);
-}
-function __gcry_free($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = (___errno_location()|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = HEAP32[18092]|0;
- $5 = ($4|0)==(0|0);
- if ($5) {
-  __gcry_private_free($0);
- } else {
-  FUNCTION_TABLE_vi[$4 & 127]($0);
- }
- $6 = ($3|0)==(0);
- if ($6) {
-  return;
- }
- _gpg_err_set_errno($3);
- return;
-}
-function __gcry_calloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$i$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $2 = Math_imul($1, $0)|0;
- $3 = ($1|0)==(0);
- if (!($3)) {
-  $4 = (($2>>>0) / ($1>>>0))&-1;
-  $5 = ($4|0)==($0|0);
-  if (!($5)) {
-   _gpg_err_set_errno(12);
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $6 = HEAP32[18088]|0;
- $7 = ($6|0)==(0|0);
- if ($7) {
-  $9 = (__gcry_private_malloc($2)|0);
-  $$0$i$i = $9;
- } else {
-  $8 = (FUNCTION_TABLE_ii[$6 & 63]($2)|0);
-  $$0$i$i = $8;
- }
- $10 = ($$0$i$i|0)==(0|0);
- if (!($10)) {
-  _memset(($$0$i$i|0),0,($2|0))|0;
-  $$0 = $$0$i$i;
-  return ($$0|0);
- }
- $11 = (___errno_location()|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  _gpg_err_set_errno(12);
- }
- $14 = (___errno_location()|0);
- $15 = HEAP32[$14>>2]|0;
- (_gpg_err_code_from_errno($15)|0);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_calloc_secure($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $2 = Math_imul($1, $0)|0;
- $3 = ($1|0)==(0);
- if (!($3)) {
-  $4 = (($2>>>0) / ($1>>>0))&-1;
-  $5 = ($4|0)==($0|0);
-  if (!($5)) {
-   _gpg_err_set_errno(12);
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $6 = (__gcry_malloc_secure($2)|0);
- $7 = ($6|0)==(0|0);
- if ($7) {
-  $$0 = 0;
-  return ($$0|0);
- }
- _memset(($6|0),0,($2|0))|0;
- $$0 = $6;
- return ($$0|0);
-}
-function __gcry_strdup($0) {
- $0 = $0|0;
- var $$0$i = 0, $$0$i$i = 0, $$010 = 0, $$012 = 0, $1 = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_strlen($0)|0);
- $2 = HEAP32[18085]|0;
- $3 = ($2|0)==(0);
- do {
-  if ($3) {
-   label = 6;
-  } else {
-   $4 = (__gcry_enforced_fips_mode()|0);
-   $5 = ($4|0)==(0);
-   if (!($5)) {
-    HEAP32[18085] = 0;
-    label = 6;
-    break;
-   }
-   $6 = HEAP32[18085]|0;
-   $7 = ($6|0)==(0);
-   if ($7) {
-    label = 6;
-   } else {
-    $8 = (($1) + 1)|0;
-    $17 = $8;
-    label = 10;
-   }
-  }
- } while(0);
- if ((label|0) == 6) {
-  $9 = HEAP32[18090]|0;
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $12 = (__gcry_private_is_secure($0)|0);
-   $$0$i = $12;
-  } else {
-   $11 = (FUNCTION_TABLE_ii[$9 & 63]($0)|0);
-   $$0$i = $11;
-  }
-  $13 = ($$0$i|0)==(0);
-  $14 = (($1) + 1)|0;
-  if ($13) {
-   $17 = $14;
-   label = 10;
-  } else {
-   $26 = (__gcry_malloc_secure($14)|0);
-   $27 = ($26|0)==(0|0);
-   if ($27) {
-    $$010 = 0;
-    return ($$010|0);
-   } else {
-    $$012 = $26;
-   }
-  }
- }
- if ((label|0) == 10) {
-  $15 = HEAP32[18088]|0;
-  $16 = ($15|0)==(0|0);
-  if ($16) {
-   $19 = (__gcry_private_malloc($17)|0);
-   $$0$i$i = $19;
-  } else {
-   $18 = (FUNCTION_TABLE_ii[$15 & 63]($17)|0);
-   $$0$i$i = $18;
-  }
-  $20 = ($$0$i$i|0)==(0|0);
-  if ($20) {
-   $21 = (___errno_location()|0);
-   $22 = HEAP32[$21>>2]|0;
-   $23 = ($22|0)==(0);
-   if ($23) {
-    _gpg_err_set_errno(12);
-   }
-   $24 = (___errno_location()|0);
-   $25 = HEAP32[$24>>2]|0;
-   (_gpg_err_code_from_errno($25)|0);
-   $$010 = 0;
-   return ($$010|0);
-  } else {
-   $$012 = $$0$i$i;
-  }
- }
- (_strcpy($$012,$0)|0);
- $$010 = $$012;
- return ($$010|0);
-}
-function __gcry_xmalloc($0) {
- $0 = $0|0;
- var $$0$i$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, 
$4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18088]|0;
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $4 = (__gcry_private_malloc($0)|0);
-  $$0$i$i = $4;
- } else {
-  $3 = (FUNCTION_TABLE_ii[$1 & 63]($0)|0);
-  $$0$i$i = $3;
- }
- $5 = ($$0$i$i|0)==(0|0);
- if (!($5)) {
-  return ($$0$i$i|0);
- }
- $6 = (___errno_location()|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0);
- if ($8) {
-  _gpg_err_set_errno(12);
- }
- $9 = (___errno_location()|0);
- $10 = HEAP32[$9>>2]|0;
- (_gpg_err_code_from_errno($10)|0);
- $11 = (___errno_location()|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = (_gpg_err_code_from_errno($12)|0);
- __gcry_fatal_error($13,0);
- // unreachable;
- return (0)|0;
-}
-function __gcry_xrealloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_realloc($0,$1)|0);
- $3 = ($2|0)==(0|0);
- if (!($3)) {
-  return ($2|0);
- }
- $4 = (__gcry_fips_mode()|0);
- $5 = ($4|0)==(0);
- $6 = (0|0)!=(0|0);
- $or$cond = $5 & $6;
- if (!($or$cond)) {
-  $13 = (___errno_location()|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = (_gpg_err_code_from_errno($14)|0);
-  __gcry_fatal_error($15,0);
-  // unreachable;
- }
- $7 = HEAP32[18085]|0;
- $8 = ($7|0)==(0);
- if (!($8)) {
-  $9 = (__gcry_enforced_fips_mode()|0);
-  $10 = ($9|0)==(0);
-  if (!($10)) {
-   HEAP32[18085] = 0;
-  }
- }
- $11 = HEAP32[18090]|0;
- $12 = ($11|0)==(0|0);
- if ($12) {
-  (__gcry_private_is_secure($0)|0);
-  // unreachable;
- } else {
-  (FUNCTION_TABLE_ii[$11 & 63]($0)|0);
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_xmalloc_secure($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_malloc_secure($0)|0);
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $3 = (___errno_location()|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = (_gpg_err_code_from_errno($4)|0);
-  $6 = (__gcry_gettext(44626)|0);
-  __gcry_fatal_error($5,$6);
-  // unreachable;
- } else {
-  return ($1|0);
- }
- return (0)|0;
-}
-function __gcry_xcalloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = Math_imul($1, $0)|0;
- $3 = ($1|0)==(0);
- if (!($3)) {
-  $4 = (($2>>>0) / ($1>>>0))&-1;
-  $5 = ($4|0)==($0|0);
-  if (!($5)) {
-   _gpg_err_set_errno(12);
-   $6 = (___errno_location()|0);
-   $7 = HEAP32[$6>>2]|0;
-   $8 = (_gpg_err_code_from_errno($7)|0);
-   __gcry_fatal_error($8,0);
-   // unreachable;
-  }
- }
- $9 = (__gcry_xmalloc($2)|0);
- _memset(($9|0),0,($2|0))|0;
- return ($9|0);
-}
-function __gcry_xcalloc_secure($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = Math_imul($1, $0)|0;
- $3 = ($1|0)==(0);
- if (!($3)) {
-  $4 = (($2>>>0) / ($1>>>0))&-1;
-  $5 = ($4|0)==($0|0);
-  if (!($5)) {
-   _gpg_err_set_errno(12);
-   $6 = (___errno_location()|0);
-   $7 = HEAP32[$6>>2]|0;
-   $8 = (_gpg_err_code_from_errno($7)|0);
-   __gcry_fatal_error($8,0);
-   // unreachable;
-  }
- }
- $9 = (__gcry_xmalloc_secure($2)|0);
- _memset(($9|0),0,($2|0))|0;
- return ($9|0);
-}
-function __gcry_xstrdup($0) {
- $0 = $0|0;
- var $$0$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_strdup($0)|0);
- $2 = ($1|0)==(0|0);
- if (!($2)) {
-  return ($1|0);
- }
- $3 = HEAP32[18085]|0;
- $4 = ($3|0)==(0);
- do {
-  if ($4) {
-   label = 6;
-  } else {
-   $5 = (__gcry_enforced_fips_mode()|0);
-   $6 = ($5|0)==(0);
-   if ($6) {
-    $7 = HEAP32[18085]|0;
-    $8 = ($7|0)==(0);
-    if ($8) {
-     label = 6;
-     break;
-    } else {
-     $$0$i = 0;
-     break;
-    }
-   } else {
-    HEAP32[18085] = 0;
-    label = 6;
-    break;
-   }
-  }
- } while(0);
- do {
-  if ((label|0) == 6) {
-   $9 = HEAP32[18090]|0;
-   $10 = ($9|0)==(0|0);
-   if ($10) {
-    $12 = (__gcry_private_is_secure($0)|0);
-    $$0$i = $12;
-    break;
-   } else {
-    $11 = (FUNCTION_TABLE_ii[$9 & 63]($0)|0);
-    $$0$i = $11;
-    break;
-   }
-  }
- } while(0);
- $13 = ($$0$i|0)!=(0);
- $14 = (___errno_location()|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (_gpg_err_code_from_errno($15)|0);
- if (!($13)) {
-  $18 = 0;
-  __gcry_fatal_error($16,$18);
-  // unreachable;
- }
- $17 = (__gcry_gettext(44626)|0);
- $18 = $17;
- __gcry_fatal_error($16,$18);
- // unreachable;
- return (0)|0;
-}
-function __gcry_get_debug_flag($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- $3 = HEAP32[18086]|0;
- $4 = $3 & $0;
- $$0 = $2 ? $4 : 0;
- return ($$0|0);
-}
-function __gcry_set_progress_handler($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_register_primegen_progress($0,$1);
- __gcry_register_random_progress($0,$1);
- return;
-}
-function __gcry_sexp_canon_len($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0134 = 0, $$087133 = 0, $$089132 = 0, $$091131 = 0, $$093130 = 0, $$095 
= 0, $$097 = 0, $$1 = 0, $$188 = 0, $$190 = 0, $$192 = 0, $$194 = 0, $$off = 0, 
$$off110 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 
0, $32 = 0, $33 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp + 4|0;
- $5 = sp;
- $6 = ($2|0)==(0|0);
- $spec$select = $6 ? $4 : $2;
- $7 = ($3|0)==(0|0);
- $$095 = $7 ? $5 : $3;
- HEAP32[$$095>>2] = 0;
- HEAP32[$spec$select>>2] = 0;
- $8 = ($0|0)==(0|0);
- L1: do {
-  if ($8) {
-   $$097 = 0;
-  } else {
-   $9 = HEAP8[$0>>0]|0;
-   $10 = ($9<<24>>24)==(40);
-   if (!($10)) {
-    HEAP32[$$095>>2] = 204;
-    $$097 = 0;
-    break;
-   }
-   $11 = (($1) + -1)|0;
-   $$0134 = 0;$$087133 = 0;$$089132 = 0;$$091131 = 0;$$093130 = $0;$15 = 40;
-   L6: while(1) {
-    $13 = ($$089132|0)==(0);
-    $14 = $15&255;
-    L8: do {
-     if ($13) {
-      switch ($15<<24>>24) {
-      case 40:  {
-       $24 = ($$091131|0)==(0|0);
-       if (!($24)) {
-        label = 16;
-        break L6;
-       }
-       $25 = (($$0134) + 1)|0;
-       $$1 = $25;$$188 = $$087133;$$190 = 0;$$192 = 0;$$194 = $$093130;
-       break L8;
-       break;
-      }
-      case 41:  {
-       $26 = ($$0134|0)==(0);
-       if ($26) {
-        label = 19;
-        break L6;
-       }
-       $27 = ($$091131|0)==(0|0);
-       if (!($27)) {
-        label = 21;
-        break L6;
-       }
-       $28 = (($$0134) + -1)|0;
-       $29 = ($28|0)==(0);
-       if ($29) {
-        label = 23;
-        break L6;
-       } else {
-        $$1 = $28;$$188 = $$087133;$$190 = 0;$$192 = 0;$$194 = $$093130;
-        break L8;
-       }
-       break;
-      }
-      case 91:  {
-       $31 = ($$091131|0)==(0|0);
-       if ($31) {
-        $$1 = $$0134;$$188 = $$087133;$$190 = 0;$$192 = $$093130;$$194 = 
$$093130;
-        break L8;
-       } else {
-        label = 25;
-        break L6;
-       }
-       break;
-      }
-      case 93:  {
-       $32 = ($$091131|0)==(0|0);
-       if ($32) {
-        label = 27;
-        break L6;
-       } else {
-        $$1 = $$0134;$$188 = $$087133;$$190 = 0;$$192 = 0;$$194 = $$093130;
-        break L8;
-       }
-       break;
-      }
-      default: {
-       $$off110 = (($15) + -48)<<24>>24;
-       $33 = ($$off110&255)<(10);
-       if (!($33)) {
-        label = 32;
-        break L6;
-       }
-       $34 = ($15<<24>>24)==(48);
-       if ($34) {
-        label = 30;
-        break L6;
-       }
-       $35 = (($14) + -48)|0;
-       $$1 = $$0134;$$188 = $$087133;$$190 = $35;$$192 = $$091131;$$194 = 
$$093130;
-       break L8;
-      }
-      }
-     } else {
-      $16 = ($15<<24>>24)==(58);
-      if ($16) {
-       $17 = (($$087133) + ($$089132))|0;
-       $18 = ($11>>>0)<($17>>>0);
-       if ($18) {
-        label = 9;
-        break L6;
-       }
-       $19 = (($$093130) + ($$089132)|0);
-       $$1 = $$0134;$$188 = $17;$$190 = 0;$$192 = $$091131;$$194 = $19;
-       break;
-      } else {
-       $$off = (($15) + -48)<<24>>24;
-       $20 = ($$off&255)<(10);
-       if (!($20)) {
-        label = 13;
-        break L6;
-       }
-       $21 = ($$089132*10)|0;
-       $22 = (($14) + -48)|0;
-       $23 = (($22) + ($21))|0;
-       $$1 = $$0134;$$188 = $$087133;$$190 = $23;$$192 = $$091131;$$194 = 
$$093130;
-       break;
-      }
-     }
-    } while(0);
-    $36 = ((($$194)) + 1|0);
-    $12 = (($$188) + 1)|0;
-    $37 = ($11>>>0)<($12>>>0);
-    if ($37) {
-     label = 5;
-     break;
-    }
-    $$pre = HEAP8[$36>>0]|0;
-    $$0134 = $$1;$$087133 = $12;$$089132 = $$190;$$091131 = $$192;$$093130 = 
$36;$15 = $$pre;
-   }
-   switch (label|0) {
-    case 5: {
-     HEAP32[$spec$select>>2] = $12;
-     HEAP32[$$095>>2] = 202;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 9: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 202;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 13: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 201;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 16: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 209;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 19: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 203;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 21: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 209;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 23: {
-     $30 = (($$087133) + 1)|0;
-     $$097 = $30;
-     break L1;
-     break;
-    }
-    case 25: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 208;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 27: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 209;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 30: {
-     HEAP32[$spec$select>>2] = $$087133;
-     HEAP32[$$095>>2] = 207;
-     $$097 = 0;
-     break L1;
-     break;
-    }
-    case 32: {
-     switch ($15<<24>>24) {
-     case 92: case 38:  {
-      HEAP32[$spec$select>>2] = $$087133;
-      HEAP32[$$095>>2] = 210;
-      $$097 = 0;
-      break L1;
-      break;
-     }
-     default: {
-      HEAP32[$spec$select>>2] = $$087133;
-      HEAP32[$$095>>2] = 205;
-      $$097 = 0;
-      break L1;
-     }
-     }
-     break;
-    }
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$097|0);
-}
-function _do_sexp_sscan($0,$1,$2,$3,$4,$5,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $varargs = $varargs|0;
- var $6 = 0, $7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $6 = sp;
- HEAP32[$6>>2] = $varargs;
- $7 = (_do_vsexp_sscan($0,$1,$2,$3,$4,$5,$6)|0);
- STACKTOP = sp;return ($7|0);
-}
-function _do_vsexp_sscan($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0 = 0, $$0$copyload$i = 0, $$0$copyload$i740 = 0, $$0$i738 = 0, 
$$0112$i = 0, $$02830$i = 0, $$031$i = 0, $$048$lcssa$i = 0, $$04859$i = 0, 
$$050$lcssa$i = 0, $$05058$i = 0, $$0575$lcssa = 0, $$05751592 = 0, 
$$0576$lcssa = 0, $$05761591 = 0, $$0584$lcssa = 0, $$05841619 = 0, $$05881618 
= 0, $$05921617 = 0, $$05941616 = 0;
- var $$05971615 = 0, $$0600 = 0, $$0601$pn1600 = 0, $$06011614 = 0, $$06061613 
= 0, $$06081612 = 0, $$06101611 = 0, $$0612 = 0, $$06131610 = 0, $$06151609 = 
0, $$06171608 = 0, $$062$i = 0, $$0627 = 0, $$0628$lcssa = 0, $$06281607 = 0, 
$$0657 = 0, $$0658 = 0, $$0659 = 0, $$0660 = 0, $$0661999 = 0;
- var $$072$lcssa$i$ph = 0, $$072111$i = 0, $$075110$i = 0, $$078109$i = 0, 
$$0880 = 0, $$1 = 0, $$1$i695904 = 0, $$1$i697920 = 0, $$1$i712934 = 0, 
$$1$i714948 = 0, $$1$i716967 = 0, $$1$i718986 = 0, $$1$i7201009 = 0, 
$$1$i7221029 = 0, $$1$i7241048 = 0, $$1$i727 = 0, $$1$i7281067 = 0, 
$$1$i7301084 = 0, $$1$i7321099 = 0, $$1$i7361114 = 0;
- var $$1$i741 = 0, $$1$i891 = 0, $$10 = 0, $$129$i = 0, $$149$i = 0, $$15$ph = 
0, $$151$i = 0, $$1577 = 0, $$1593 = 0, $$1598 = 0, $$1602 = 0, $$1602$val = 0, 
$$16021598 = 0, $$16021601 = 0, $$1607 = 0, $$1609 = 0, $$1611 = 0, $$1614 = 0, 
$$1616 = 0, $$1618 = 0;
- var $$1629 = 0, $$179$i = 0, $$2 = 0, $$2$i = 0, $$2$i742 = 0, $$252$i = 0, 
$$2578 = 0, $$2596 = 0, $$2599 = 0, $$2603$val = 0, $$26031169 = 0, $$26031595 
= 0, $$2619 = 0, $$274$i = 0, $$277$i = 0, $$2882 = 0, $$31 = 0, $$31$ph = 0, 
$$31$ph1947 = 0, $$311119 = 0;
- var $$31590 = 0, $$35356$i = 0, $$357$i = 0, $$35791589 = 0, $$3587 = 0, 
$$3591 = 0, $$3604 = 0, $$4605 = 0, $$4621 = 0, $$5622 = 0, $$6623 = 0, $$7624 
= 0, $$9626 = 0, $$cast = 0, $$cast665 = 0, $$cast666 = 0, $$off = 0, $$off$i = 
0, $$off$i699 = 0, $$off$i704 = 0;
- var $$off1133 = 0, $$off1139 = 0, $$off1140 = 0, $$off13$i = 0, $$off13$i705 
= 0, $$off14$i = 0, $$off14$i706 = 0, $$off95$i = 0, $$pn = 0, $$pn1138 = 0, 
$$pre$phi1937Z2D = 0, $$pre$phi1940Z2D = 0, $$pre$phiZ2D = 0, $$pre1939 = 0, 
$$sroa$0$0 = 0, $$sroa$0$0$in = 0, $$sroa$0$1$lcssa = 0, $$sroa$0$10 = 0, 
$$sroa$0$10$ph = 0, $$sroa$0$11606 = 0;
- var $$sroa$0$11962$ph = 0, $$sroa$0$13 = 0, $$sroa$0$15 = 0, $$sroa$0$15$ph = 
0, $$sroa$0$16981$ph = 0, $$sroa$0$171004$ph = 0, $$sroa$0$19 = 0, 
$$sroa$0$211024$ph = 0, $$sroa$0$221043$ph = 0, $$sroa$0$231062$ph = 0, 
$$sroa$0$251079$ph = 0, $$sroa$0$261094$ph = 0, $$sroa$0$27 = 0, 
$$sroa$0$281109$ph = 0, $$sroa$0$2886$ph = 0, $$sroa$0$29 = 0, $$sroa$0$29$ph = 
0, $$sroa$0$29$ph1946 = 0, $$sroa$0$291118 = 0, $$sroa$0$291950 = 0;
- var $$sroa$0$3 = 0, $$sroa$0$4899$ph = 0, $$sroa$0$5915$ph = 0, 
$$sroa$0$6929$ph = 0, $$sroa$0$7943$ph = 0, $$sroa$0$9 = 0, $$sroa$47$0$lcssa = 
0, $$sroa$47$01605 = 0, $$sroa$47$10 = 0, $$sroa$47$10$ph = 0, 
$$sroa$47$11980$ph = 0, $$sroa$47$121003$ph = 0, $$sroa$47$131023$ph = 0, 
$$sroa$47$141042$ph = 0, $$sroa$47$151061$ph = 0, $$sroa$47$171078$ph = 0, 
$$sroa$47$181093$ph = 0, $$sroa$47$1885$ph = 0, $$sroa$47$19 = 0, $$sroa$47$2 = 
0;
- var $$sroa$47$201108$ph = 0, $$sroa$47$21 = 0, $$sroa$47$21$ph = 0, 
$$sroa$47$21$ph1945 = 0, $$sroa$47$211117 = 0, $$sroa$47$3898$ph = 0, 
$$sroa$47$4914$ph = 0, $$sroa$47$5928$ph = 0, $$sroa$47$6942$ph = 0, 
$$sroa$47$7 = 0, $$sroa$47$7$ph = 0, $$sroa$47$8960$ph = 0, $$sroa$81$0$lcssa = 
0, $$sroa$81$0$ptr = 0, $$sroa$81$0$ptr$lcssa = 0, $$sroa$81$0$ptr$le = 0, 
$$sroa$81$0$ptr1621 = 0, $$sroa$81$01604 = 0, $$sroa$81$11$ptr = 0, 
$$sroa$81$12$ph = 0;
- var $$sroa$81$13959$ph = 0, $$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D = 0, 
$$sroa$81$15$ptr = 0, $$sroa$81$17 = 0, $$sroa$81$1884$ph$ptr = 0, 
$$sroa$81$18979$ph$ptr = 0, $$sroa$81$2 = 0, $$sroa$81$2$ptr = 0, 
$$sroa$81$201002$ph = 0, $$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D = 0, 
$$sroa$81$22$ptr = 0, $$sroa$81$241022$ph$ptr = 0, $$sroa$81$261041$ph$ptr = 0, 
$$sroa$81$281060$ph$ptr = 0, $$sroa$81$301077$ph$ptr = 0, 
$$sroa$81$311092$ph$ptr = 0, $$sroa$81$32 = 0, $$sroa$81$331107$ptr$ph = 0, $$ 
[...]
- var $$sroa$81$61599 = 0, $$sroa$81$7 = 0, $$sroa$81$8927$ph$ptr = 0, 
$$sroa$81$9941$ph = 0, $$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D = 0, $$v$i = 0, 
$$v80$i = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0;
- var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 
= 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0;
- var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0;
- var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 
= 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 
= 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0;
- var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 
= 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0;
- var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 
= 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 
= 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0;
- var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $30 
= 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 
= 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0;
- var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, 
$318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, 
$325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0;
- var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 
= 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 
= 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0;
- var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 
= 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 
= 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0;
- var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 
= 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 
= 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0;
- var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 
= 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 
= 0, $399 = 0, $40 = 0, $400 = 0, $401 = 0;
- var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, 
$409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, 
$416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0;
- var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, 
$427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, 
$434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0;
- var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 
= 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 
= 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0;
- var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 
= 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 
= 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0;
- var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 
= 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 
= 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0;
- var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $50 
= 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 
= 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0;
- var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, 
$518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, 
$525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0;
- var $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 
= 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 
= 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0;
- var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 
= 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 
= 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0;
- var $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 
= 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 
= 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0;
- var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 
= 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 
= 0, $599 = 0, $60 = 0, $600 = 0, $601 = 0;
- var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, 
$609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, 
$616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0;
- var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, 
$627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, 
$634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0;
- var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 
= 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 
= 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0;
- var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 
= 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 
= 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0;
- var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 
= 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 
= 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0;
- var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 
= 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 
= 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0;
- var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, 
$717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, 
$724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0;
- var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 
= 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 
= 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0;
- var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 
= 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 
= 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0;
- var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 
= 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 
= 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0;
- var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 
= 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 
= 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0;
- var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, 
$807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, 
$814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0;
- var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 
= 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 
= 0, $833 = 0, $84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, 
$arglist_current11 = 0, $arglist_current14 = 0, $arglist_current2 = 0, 
$arglist_current20 = 0, $arglist_current5 = 0;
- var $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, 
$arglist_next15 = 0, $arglist_next21 = 0, $arglist_next3 = 0, $arglist_next6 = 
0, $arglist_next9 = 0, $cond$i = 0, $expanded = 0, $expanded22 = 0, $expanded24 
= 0, $expanded25 = 0, $expanded26 = 0, $expanded28 = 0, $expanded29 = 0, 
$expanded31 = 0, $expanded32 = 0, $expanded33 = 0, $expanded35 = 0;
- var $expanded36 = 0, $expanded38 = 0, $expanded39 = 0, $expanded40 = 0, 
$expanded42 = 0, $expanded43 = 0, $expanded45 = 0, $expanded46 = 0, $expanded47 
= 0, $expanded49 = 0, $expanded50 = 0, $expanded52 = 0, $expanded53 = 0, 
$expanded54 = 0, $expanded56 = 0, $expanded57 = 0, $expanded59 = 0, $expanded60 
= 0, $expanded61 = 0, $expanded63 = 0;
- var $expanded64 = 0, $expanded66 = 0, $expanded67 = 0, $expanded68 = 0, 
$memchr = 0, $memchr663 = 0, $memchr664 = 0, $or$cond = 0, $or$cond1130 = 0, 
$or$cond14 = 0, $scevgep = 0, $scevgep$i = 0, $spec$select = 0, $spec$select$i 
= 0, $spec$select$i700 = 0, $spec$select$i707 = 0, $spec$select1129 = 0, 
$spec$select675 = 0, $spec$select676 = 0, $spec$select677 = 0;
- var $spec$select678 = 0, $spec$select682 = 0, $spec$select81$i = 0, 
$spec$select82$i = 0, $spec$select83$i = 0, $vararg_buffer = 0, 
$vararg_buffer16 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $vararg_buffer16 = sp + 96|0;
- $vararg_buffer = sp + 88|0;
- $7 = sp + 108|0;
- $8 = sp + 104|0;
- $9 = sp + 100|0;
- $10 = sp + 48|0;
- $11 = sp;
- $12 = ($0|0)==(0|0);
- if ($12) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP32[$0>>2] = 0;
- $13 = ($2|0)==(0|0);
- if ($13) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = ($1|0)==(0|0);
- $spec$select = $14 ? $7 : $1;
- $15 = (($3) + 2)|0;
- $16 = ($3|0)==(0);
- if ($16) {
-  label = 6;
- } else {
-  $17 = (__gcry_is_secure($2)|0);
-  $18 = ($17|0)==(0);
-  if ($18) {
-   label = 6;
-  } else {
-   $19 = (__gcry_malloc_secure($15)|0);
-   $$sroa$0$0$in = $19;
-  }
- }
- if ((label|0) == 6) {
-  $20 = (__gcry_malloc($15)|0);
-  $$sroa$0$0$in = $20;
- }
- $$sroa$0$0 = $$sroa$0$0$in;
- $21 = ($$sroa$0$0$in|0)==(0|0);
- L13: do {
-  if ($21) {
-   $22 = (___errno_location()|0);
-   $23 = HEAP32[$22>>2]|0;
-   $24 = (_gpg_err_code_from_errno($23)|0);
-   HEAP32[$spec$select>>2] = 0;
-   $$31 = $24;$$sroa$0$29 = $$sroa$0$0;$$sroa$47$21 = $15;
-   label = 287;
-  } else {
-   L16: do {
-    if ($16) {
-     $$0584$lcssa = $2;$$0628$lcssa = 0;$$sroa$0$1$lcssa = 
$$sroa$0$0;$$sroa$47$0$lcssa = 2;$$sroa$81$0$lcssa = 
$$sroa$0$0;$$sroa$81$0$ptr$lcssa = $$sroa$0$0$in;
-    } else {
-     $25 = ($5|0)==(0|0);
-     $26 = ($4|0)!=(0);
-     $$05841619 = $2;$$05881618 = $3;$$05921617 = 0;$$05941616 = 0;$$05971615 
= 0;$$06011614 = 0;$$06061613 = 0;$$06081612 = 0;$$06101611 = 0;$$06131610 = 
0;$$06151609 = 0;$$06171608 = 0;$$06281607 = 0;$$sroa$0$11606 = 
$$sroa$0$0;$$sroa$47$01605 = $15;$$sroa$81$0$ptr1621 = 
$$sroa$0$0$in;$$sroa$81$01604 = $$sroa$0$0;
-     L18: while(1) {
-      $27 = ($$05971615|0)==(0|0);
-      $28 = ($$06011614|0)!=(0|0);
-      $or$cond = $28 | $27;
-      if ($or$cond) {
-       $$1598 = $$05971615;$$sroa$0$3 = $$sroa$0$11606;$$sroa$47$2 = 
$$sroa$47$01605;$$sroa$81$2 = $$sroa$81$01604;
-       label = 20;
-      } else {
-       $29 = HEAP8[$$05841619>>0]|0;
-       $30 = $29 << 24 >> 24;
-       $memchr = (_memchr(16,$30,71)|0);
-       $31 = ($memchr|0)==(0|0);
-       if ($31) {
-        $32 = $$05841619;
-        $33 = $$05971615;
-        $34 = (($32) - ($33))|0;
-        $35 = $$sroa$0$11606;
-        $36 = (($$sroa$81$01604) - ($$sroa$0$11606))|0;
-        $37 = (($36) + 3)|0;
-        $38 = (($37) + ($34))|0;
-        $39 = ($38>>>0)<($$sroa$47$01605>>>0);
-        do {
-         if ($39) {
-          $$sroa$0$2886$ph = $$sroa$0$11606;$$sroa$47$1885$ph = 
$$sroa$47$01605;$$sroa$81$1884$ph$ptr = $$sroa$81$0$ptr1621;
-         } else {
-          $40 = $34 << 1;
-          $41 = (($$sroa$47$01605) + 6)|0;
-          $42 = (($41) + ($40))|0;
-          $43 = ($42>>>0)>($$sroa$47$01605>>>0);
-          if (!($43)) {
-           $$1$i891 = 67;
-           label = 18;
-           break L18;
-          }
-          $44 = (__gcry_realloc($35,$42)|0);
-          $45 = ($44|0)==(0|0);
-          if ($45) {
-           $48 = (___errno_location()|0);
-           $49 = HEAP32[$48>>2]|0;
-           $50 = (_gpg_err_code_from_errno($49)|0);
-           $51 = ($50|0)==(0);
-           if ($51) {
-            $$sroa$0$2886$ph = $$sroa$0$11606;$$sroa$47$1885$ph = 
$$sroa$47$01605;$$sroa$81$1884$ph$ptr = $$sroa$81$0$ptr1621;
-            break;
-           } else {
-            $$1$i891 = $50;
-            label = 18;
-            break L18;
-           }
-          } else {
-           $46 = (($44) + ($36)|0);
-           $47 = $44;
-           $$sroa$0$2886$ph = $47;$$sroa$47$1885$ph = 
$42;$$sroa$81$1884$ph$ptr = $46;
-           break;
-          }
-         }
-        } while(0);
-        $54 = ((($$sroa$81$1884$ph$ptr)) + 1|0);
-        HEAP8[$$sroa$81$1884$ph$ptr>>0] = 1;
-        $55 = $34&65535;
-        HEAP8[$54>>0]=$55&255;HEAP8[$54+1>>0]=$55>>8;
-        $56 = ((($$sroa$81$1884$ph$ptr)) + 3|0);
-        _memcpy(($56|0),($$05971615|0),($34|0))|0;
-        $57 = (($56) + ($34)|0);
-        $58 = $57;
-        $$1598 = 0;$$sroa$0$3 = $$sroa$0$2886$ph;$$sroa$47$2 = 
$$sroa$47$1885$ph;$$sroa$81$2 = $58;
-        label = 20;
-       } else {
-        $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$05971615;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
0;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$11606;$$sroa$47$19 = 
$$sroa$47$01605;$$sroa$81$32 = $$sroa$81$01604;
-       }
-      }
-      L30: do {
-       if ((label|0) == 20) {
-        label = 0;
-        $$sroa$81$2$ptr = $$sroa$81$2;
-        $59 = ($$05941616|0)==(0|0);
-        if (!($59)) {
-         $60 = ($$06151609|0)==(0);
-         $61 = HEAP8[$$05841619>>0]|0;
-         if (!($60)) {
-          $62 = $61 << 24 >> 24;
-          switch ($62|0) {
-          case 92: case 39: case 34: case 114: case 102: case 110: case 118: 
case 116: case 98:  {
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
$$06011614;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = 
$$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-           break L30;
-           break;
-          }
-          case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 
48:  {
-           $63 = ($$05881618>>>0)>(2);
-           if (!($63)) {
-            label = 26;
-            break L18;
-           }
-           $64 = ((($$05841619)) + 1|0);
-           $65 = HEAP8[$64>>0]|0;
-           $66 = $65 & -8;
-           $67 = ($66<<24>>24)==(48);
-           if (!($67)) {
-            label = 26;
-            break L18;
-           }
-           $68 = ((($$05841619)) + 2|0);
-           $69 = HEAP8[$68>>0]|0;
-           $70 = $69 & -8;
-           $71 = ($70<<24>>24)==(48);
-           if (!($71)) {
-            label = 26;
-            break L18;
-           }
-           $75 = (($$05881618) + -2)|0;
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $68;$$3591 = $75;$$4605 = $$06011614;$$9626 
= $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-           break;
-          }
-          case 120:  {
-           $76 = ($$05881618>>>0)>(2);
-           if (!($76)) {
-            label = 33;
-            break L18;
-           }
-           $77 = ((($$05841619)) + 1|0);
-           $78 = HEAP8[$77>>0]|0;
-           $$off = (($78) + -48)<<24>>24;
-           $79 = ($$off&255)<(10);
-           if (!($79)) {
-            switch ($78<<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: {
-             label = 33;
-             break L18;
-            }
-            }
-           }
-           $80 = ((($$05841619)) + 2|0);
-           $81 = HEAP8[$80>>0]|0;
-           $$off1133 = (($81) + -48)<<24>>24;
-           $82 = ($$off1133&255)<(10);
-           if (!($82)) {
-            switch ($81<<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: {
-             label = 33;
-             break L18;
-            }
-            }
-           }
-           $86 = (($$05881618) + -2)|0;
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $80;$$3591 = $86;$$4605 = $$06011614;$$9626 
= $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-           break;
-          }
-          case 13:  {
-           $87 = ((($$05841619)) + 1|0);
-           $88 = HEAP8[$87>>0]|0;
-           $89 = ($88<<24>>24)==(10);
-           $90 = $89 << 31 >> 31;
-           $spec$select675 = (($$05881618) + ($90))|0;
-           $spec$select676 = $89 ? $87 : $$05841619;
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $spec$select676;$$3591 = 
$spec$select675;$$4605 = $$06011614;$$9626 = $$06171608;$$sroa$0$27 = 
$$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-           break L30;
-           break;
-          }
-          case 10:  {
-           $91 = ((($$05841619)) + 1|0);
-           $92 = HEAP8[$91>>0]|0;
-           $93 = ($92<<24>>24)==(13);
-           $94 = $93 << 31 >> 31;
-           $spec$select677 = (($$05881618) + ($94))|0;
-           $spec$select678 = $93 ? $91 : $$05841619;
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $spec$select678;$$3591 = 
$spec$select677;$$4605 = $$06011614;$$9626 = $$06171608;$$sroa$0$27 = 
$$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-           break L30;
-           break;
-          }
-          default: {
-           label = 37;
-           break L18;
-          }
-          }
-         }
-         switch ($61<<24>>24) {
-         case 92:  {
-          $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = 1;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
$$06011614;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = 
$$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 34:  {
-          break;
-         }
-         default: {
-          $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 
$$05941616;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
$$06011614;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = 
$$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-          break L30;
-         }
-         }
-         $98 = ((($$05941616)) + 1|0);
-         $99 = $$05841619;
-         $100 = $98;
-         $101 = (($99) - ($100))|0;
-         $102 = $$sroa$0$3;
-         $103 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $104 = (($101) + 3)|0;
-         $105 = (($104) + ($103))|0;
-         $106 = ($105>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($106) {
-           $$sroa$0$4899$ph = $$sroa$0$3;$$sroa$47$3898$ph = 
$$sroa$47$2;$$sroa$81$3897$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $107 = $101 << 1;
-           $108 = (($$sroa$47$2) + 6)|0;
-           $109 = (($108) + ($107))|0;
-           $110 = ($109>>>0)>($$sroa$47$2>>>0);
-           if (!($110)) {
-            $$1$i695904 = 67;
-            label = 82;
-            break L18;
-           }
-           $111 = (__gcry_realloc($102,$109)|0);
-           $112 = ($111|0)==(0|0);
-           if ($112) {
-            $115 = (___errno_location()|0);
-            $116 = HEAP32[$115>>2]|0;
-            $117 = (_gpg_err_code_from_errno($116)|0);
-            $118 = ($117|0)==(0);
-            if ($118) {
-             $$sroa$0$4899$ph = $$sroa$0$3;$$sroa$47$3898$ph = 
$$sroa$47$2;$$sroa$81$3897$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i695904 = $117;
-             label = 82;
-             break L18;
-            }
-           } else {
-            $113 = (($111) + ($103)|0);
-            $114 = $111;
-            $$sroa$0$4899$ph = $114;$$sroa$47$3898$ph = 
$109;$$sroa$81$3897$ph$ptr = $113;
-            break;
-           }
-          }
-         } while(0);
-         $119 = ((($$sroa$81$3897$ph$ptr)) + 1|0);
-         HEAP8[$$sroa$81$3897$ph$ptr>>0] = 1;
-         HEAP8[$119>>0]=0&255;HEAP8[$119+1>>0]=0>>8;
-         $120 = ((($$sroa$81$3897$ph$ptr)) + 3|0);
-         $121 = $120;
-         $122 = ($101|0)==(0);
-         if ($122) {
-          $$pre$phi1940Z2D = $121;
-         } else {
-          $$0112$i = $101;$$072111$i = $120;$$075110$i = $98;$$078109$i = 0;
-          L64: while(1) {
-           $123 = ($$078109$i|0)==(0);
-           $124 = HEAP8[$$075110$i>>0]|0;
-           $125 = $124&255;
-           L66: do {
-            if ($123) {
-             $191 = ($124<<24>>24)==(92);
-             if ($191) {
-              $$179$i = 1;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-             } else {
-              $192 = ((($$072111$i)) + 1|0);
-              HEAP8[$$072111$i>>0] = $124;
-              $$179$i = 0;$$2$i = $$0112$i;$$274$i = $192;$$277$i = $$075110$i;
-             }
-            } else {
-             do {
-              switch ($124<<24>>24) {
-              case 98:  {
-               $126 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 8;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $126;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 116:  {
-               $127 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 9;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $127;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 118:  {
-               $128 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 11;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $128;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 110:  {
-               $129 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 10;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $129;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 102:  {
-               $130 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 12;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $130;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 114:  {
-               $131 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 13;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $131;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 34:  {
-               $132 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 34;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $132;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 39:  {
-               $133 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 39;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $133;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 92:  {
-               $134 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = 92;
-               $$179$i = 0;$$2$i = $$0112$i;$$274$i = $134;$$277$i = 
$$075110$i;
-               break L66;
-               break;
-              }
-              case 13:  {
-               $135 = ($$0112$i>>>0)>(1);
-               $136 = ((($$075110$i)) + 1|0);
-               if (!($135)) {
-                $$072$lcssa$i$ph = $$072111$i;
-                break L64;
-               }
-               $137 = HEAP8[$136>>0]|0;
-               $138 = ($137<<24>>24)==(10);
-               $spec$select$i = $138 ? $136 : $$075110$i;
-               $139 = $138 << 31 >> 31;
-               $spec$select81$i = (($$0112$i) + ($139))|0;
-               $$179$i = 0;$$2$i = $spec$select81$i;$$274$i = 
$$072111$i;$$277$i = $spec$select$i;
-               break L66;
-               break;
-              }
-              case 10:  {
-               $140 = ($$0112$i>>>0)>(1);
-               $141 = ((($$075110$i)) + 1|0);
-               if (!($140)) {
-                $$072$lcssa$i$ph = $$072111$i;
-                break L64;
-               }
-               $142 = HEAP8[$141>>0]|0;
-               $143 = ($142<<24>>24)==(13);
-               $spec$select82$i = $143 ? $141 : $$075110$i;
-               $144 = $143 << 31 >> 31;
-               $spec$select83$i = (($$0112$i) + ($144))|0;
-               $$179$i = 0;$$2$i = $spec$select83$i;$$274$i = 
$$072111$i;$$277$i = $spec$select82$i;
-               break L66;
-               break;
-              }
-              case 120:  {
-               $145 = ($$0112$i>>>0)>(2);
-               if (!($145)) {
-                $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                break L66;
-               }
-               $146 = ((($$075110$i)) + 1|0);
-               $147 = HEAP8[$146>>0]|0;
-               $148 = ($147&255)<(58);
-               $$off$i = (($147) + -48)<<24>>24;
-               $149 = ($$off$i&255)<(10);
-               if (!($149)) {
-                switch ($147<<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: {
-                 $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                 break L66;
-                }
-                }
-               }
-               $150 = ((($$075110$i)) + 2|0);
-               $151 = HEAP8[$150>>0]|0;
-               $152 = ($151&255)<(58);
-               $$off95$i = (($151) + -48)<<24>>24;
-               $153 = ($$off95$i&255)<(10);
-               if (!($153)) {
-                switch ($151<<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: {
-                 $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                 break L66;
-                }
-                }
-               }
-               $154 = $147&255;
-               if ($148) {
-                $155 = (($154) + -48)|0;
-                $159 = $155;
-               } else {
-                $156 = ($147&255)<(71);
-                $$v$i = $156 ? -55 : -87;
-                $157 = (($$v$i) + ($154))|0;
-                $159 = $157;
-               }
-               $158 = $159 << 4;
-               $160 = $151&255;
-               if ($152) {
-                $161 = (($160) + -48)|0;
-                $165 = $161;
-               } else {
-                $162 = ($151&255)<(71);
-                $$v80$i = $162 ? -55 : -87;
-                $163 = (($$v80$i) + ($160))|0;
-                $165 = $163;
-               }
-               $164 = (($165) + ($158))|0;
-               $166 = $164&255;
-               $167 = ((($$072111$i)) + 1|0);
-               HEAP8[$$072111$i>>0] = $166;
-               $168 = (($$0112$i) + -2)|0;
-               $$179$i = 0;$$2$i = $168;$$274$i = $167;$$277$i = $150;
-               break L66;
-               break;
-              }
-              default: {
-               $169 = ($$0112$i>>>0)>(2);
-               $170 = $124 & -8;
-               $171 = ($170<<24>>24)==(48);
-               $172 = $169 & $171;
-               if (!($172)) {
-                $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                break L66;
-               }
-               $173 = ((($$075110$i)) + 1|0);
-               $174 = HEAP8[$173>>0]|0;
-               $175 = $174 & -8;
-               $176 = ($175<<24>>24)==(48);
-               if (!($176)) {
-                $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                break L66;
-               }
-               $177 = ((($$075110$i)) + 2|0);
-               $178 = HEAP8[$177>>0]|0;
-               $179 = $178 & -8;
-               $180 = ($179<<24>>24)==(48);
-               if (!($180)) {
-                $$179$i = 0;$$2$i = $$0112$i;$$274$i = $$072111$i;$$277$i = 
$$075110$i;
-                break L66;
-               }
-               $181 = (($$0112$i) + -2)|0;
-               $182 = ((($$072111$i)) + 1|0);
-               $183 = $125 << 6;
-               $184 = $174&255;
-               $185 = $184 << 3;
-               $186 = $178&255;
-               $187 = (($183) + 80)|0;
-               $188 = (($187) + ($185))|0;
-               $189 = (($188) + ($186))|0;
-               $190 = $189&255;
-               HEAP8[$$072111$i>>0] = $190;
-               $$179$i = 0;$$2$i = $181;$$274$i = $182;$$277$i = $177;
-               break L66;
-              }
-              }
-             } while(0);
-            }
-           } while(0);
-           $193 = (($$2$i) + -1)|0;
-           $194 = ((($$277$i)) + 1|0);
-           $195 = ($193|0)==(0);
-           if ($195) {
-            $$072$lcssa$i$ph = $$274$i;
-            break;
-           } else {
-            $$0112$i = $193;$$072111$i = $$274$i;$$075110$i = $194;$$078109$i 
= $$179$i;
-           }
-          }
-          $$pre1939 = $$072$lcssa$i$ph;
-          $$pre$phi1940Z2D = $$pre1939;
-         }
-         $196 = (($$pre$phi1940Z2D) - ($121))|0;
-         $197 = $196&65535;
-         HEAP8[$119>>0]=$197&255;HEAP8[$119+1>>0]=$197>>8;
-         $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = 0;$$2599 
= $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = $$06011614;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$4899$ph;$$sroa$47$19 = 
$$sroa$47$3898$ph;$$sroa$81$32 = $$pre$phi1940Z2D;
-         break;
-        }
-        if ($28) {
-         $200 = HEAP8[$$05841619>>0]|0;
-         $201 = $200 << 24 >> 24;
-         $202 = (_isxdigit($201)|0);
-         $203 = ($202|0)==(0);
-         if (!($203)) {
-          $204 = (($$06131610) + 1)|0;
-          $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $204;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
$$06011614;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = 
$$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-          break;
-         }
-         $205 = ($200<<24>>24)==(35);
-         if (!($205)) {
-          switch ($201|0) {
-          case 10: case 13: case 12: case 11: case 9: case 32:  {
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 
= 0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 
$$06011614;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = 
$$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-           break L30;
-           break;
-          }
-          default: {
-           label = 114;
-           break L18;
-          }
-          }
-         }
-         $206 = $$06131610 & 1;
-         $207 = ($206|0)==(0);
-         if (!($207)) {
-          label = 88;
-          break L18;
-         }
-         $211 = (($$06131610|0) / 2)&-1;
-         $212 = $$sroa$0$3;
-         $213 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $214 = (($211) + 3)|0;
-         $215 = (($214) + ($213))|0;
-         $216 = ($215>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($216) {
-           $$sroa$0$5915$ph = $$sroa$0$3;$$sroa$47$4914$ph = 
$$sroa$47$2;$$sroa$81$5913$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $217 = $211 << 1;
-           $218 = (($$sroa$47$2) + 6)|0;
-           $219 = (($218) + ($217))|0;
-           $220 = ($219>>>0)>($$sroa$47$2>>>0);
-           if (!($220)) {
-            $$1$i697920 = 67;
-            label = 94;
-            break L18;
-           }
-           $221 = (__gcry_realloc($212,$219)|0);
-           $222 = ($221|0)==(0|0);
-           if ($222) {
-            $225 = (___errno_location()|0);
-            $226 = HEAP32[$225>>2]|0;
-            $227 = (_gpg_err_code_from_errno($226)|0);
-            $228 = ($227|0)==(0);
-            if ($228) {
-             $$sroa$0$5915$ph = $$sroa$0$3;$$sroa$47$4914$ph = 
$$sroa$47$2;$$sroa$81$5913$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i697920 = $227;
-             label = 94;
-             break L18;
-            }
-           } else {
-            $223 = (($221) + ($213)|0);
-            $224 = $221;
-            $$sroa$0$5915$ph = $224;$$sroa$47$4914$ph = 
$219;$$sroa$81$5913$ph$ptr = $223;
-            break;
-           }
-          }
-         } while(0);
-         $232 = ((($$sroa$81$5913$ph$ptr)) + 1|0);
-         HEAP8[$$sroa$81$5913$ph$ptr>>0] = 1;
-         $233 = $211&65535;
-         HEAP8[$232>>0]=$233&255;HEAP8[$232+1>>0]=$233>>8;
-         $234 = ((($$sroa$81$5913$ph$ptr)) + 3|0);
-         $235 = $234;
-         $$16021598 = ((($$06011614)) + 1|0);
-         $236 = ($$16021598>>>0)<($$05841619>>>0);
-         if (!($236)) {
-          $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$5915$ph;$$sroa$47$19 = 
$$sroa$47$4914$ph;$$sroa$81$32 = $235;
-          break;
-         }
-         $$0601$pn1600 = $$06011614;$$16021601 = $$16021598;$$sroa$81$61599 = 
$235;
-         while(1) {
-          $$1602$val = HEAP8[$$16021601>>0]|0;
-          $237 = $$1602$val << 24 >> 24;
-          switch ($237|0) {
-          case 10: case 13: case 12: case 11: case 9: case 32:  {
-           $$3604 = $$16021601;$$sroa$81$7 = $$sroa$81$61599;
-           break;
-          }
-          default: {
-           $238 = $$1602$val&255;
-           $$off$i699 = (($238) + -48)|0;
-           $239 = ($$off$i699>>>0)<(10);
-           do {
-            if ($239) {
-             $250 = $$off$i699;
-            } else {
-             $$off13$i = (($238) + -65)|0;
-             $240 = ($$off13$i>>>0)<(6);
-             if ($240) {
-              $241 = (($238) + -55)|0;
-              $250 = $241;
-              break;
-             } else {
-              $$off14$i = (($238) + -97)|0;
-              $242 = ($$off14$i>>>0)<(6);
-              $243 = (($238) + -87)|0;
-              $spec$select$i700 = $242 ? $243 : 0;
-              $250 = $spec$select$i700;
-              break;
-             }
-            }
-           } while(0);
-           $244 = ((($$0601$pn1600)) + 2|0);
-           $245 = ($244>>>0)<($$05841619>>>0);
-           L135: do {
-            if ($245) {
-             $$26031595 = $244;
-             L137: while(1) {
-              $$2603$val = HEAP8[$$26031595>>0]|0;
-              $246 = $$2603$val << 24 >> 24;
-              switch ($246|0) {
-              case 10: case 13: case 12: case 11: case 9: case 32:  {
-               break;
-              }
-              default: {
-               break L137;
-              }
-              }
-              $247 = ((($$26031595)) + 1|0);
-              $248 = ($247>>>0)<($$05841619>>>0);
-              if ($248) {
-               $$26031595 = $247;
-              } else {
-               $$0657 = $250;$$26031169 = $247;
-               break L135;
-              }
-             }
-             $249 = $250 << 4;
-             $251 = $$2603$val&255;
-             $$off$i704 = (($251) + -48)|0;
-             $252 = ($$off$i704>>>0)<(10);
-             do {
-              if ($252) {
-               $258 = $$off$i704;
-              } else {
-               $$off13$i705 = (($251) + -65)|0;
-               $253 = ($$off13$i705>>>0)<(6);
-               if ($253) {
-                $254 = (($251) + -55)|0;
-                $258 = $254;
-                break;
-               } else {
-                $$off14$i706 = (($251) + -97)|0;
-                $255 = ($$off14$i706>>>0)<(6);
-                $256 = (($251) + -87)|0;
-                $spec$select$i707 = $255 ? $256 : 0;
-                $258 = $spec$select$i707;
-                break;
-               }
-              }
-             } while(0);
-             $257 = (($258) + ($249))|0;
-             $$0657 = $257;$$26031169 = $$26031595;
-            } else {
-             $$0657 = $250;$$26031169 = $244;
-            }
-           } while(0);
-           $259 = $$0657&255;
-           $260 = $$sroa$81$61599;
-           $261 = ((($260)) + 1|0);
-           $262 = $261;
-           HEAP8[$260>>0] = $259;
-           $$3604 = $$26031169;$$sroa$81$7 = $262;
-          }
-          }
-          $$1602 = ((($$3604)) + 1|0);
-          $263 = ($$1602>>>0)<($$05841619>>>0);
-          if ($263) {
-           $$0601$pn1600 = $$3604;$$16021601 = $$1602;$$sroa$81$61599 = 
$$sroa$81$7;
-          } else {
-           $$1593 = $$05921617;$$1607 = $$06061613;$$1609 = $$06081612;$$1611 
= $$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 
= 0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$5915$ph;$$sroa$47$19 = 
$$sroa$47$4914$ph;$$sroa$81$32 = $$sroa$81$7;
-           break L30;
-          }
-         }
-        }
-        $267 = ($$06061613|0)==(0|0);
-        if (!($267)) {
-         $268 = HEAP8[$$05841619>>0]|0;
-         $269 = ($268<<24>>24)==(124);
-         $spec$select682 = $269 ? 0 : $$06061613;
-         $$1593 = $$05921617;$$1607 = $spec$select682;$$1609 = 
$$06081612;$$1611 = $$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = 
$$06281607;$$2596 = 0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = 
$$05881618;$$4605 = 0;$$9626 = $$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 
= $$sroa$47$2;$$sroa$81$32 = $$sroa$81$2;
-         break;
-        }
-        $270 = ($$05921617|0)==(0|0);
-        if (!($270)) {
-         $271 = HEAP8[$$05841619>>0]|0;
-         $$off1139 = (($271) + -48)<<24>>24;
-         $272 = ($$off1139&255)<(10);
-         if ($272) {
-          $$1593 = $$05921617;$$1607 = 0;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break;
-         }
-         switch ($271<<24>>24) {
-         case 34:  {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = $$06101611;$$1614 
= $$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = $$05841619;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 58:  {
-          $273 = (_atoi($$05921617)|0);
-          $274 = (($$05881618) + -1)|0;
-          $275 = ($273>>>0)>($274>>>0);
-          if ($275) {
-           label = 121;
-           break L18;
-          }
-          $279 = $$sroa$0$3;
-          $280 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-          $281 = (($280) + 3)|0;
-          $282 = (($281) + ($273))|0;
-          $283 = ($282>>>0)<($$sroa$47$2>>>0);
-          do {
-           if ($283) {
-            $$sroa$0$6929$ph = $$sroa$0$3;$$sroa$47$5928$ph = 
$$sroa$47$2;$$sroa$81$8927$ph$ptr = $$sroa$81$2$ptr;
-           } else {
-            $284 = $273 << 1;
-            $285 = (($$sroa$47$2) + 6)|0;
-            $286 = (($285) + ($284))|0;
-            $287 = ($286>>>0)>($$sroa$47$2>>>0);
-            if (!($287)) {
-             $$1$i712934 = 67;
-             label = 127;
-             break L18;
-            }
-            $288 = (__gcry_realloc($279,$286)|0);
-            $289 = ($288|0)==(0|0);
-            if ($289) {
-             $292 = (___errno_location()|0);
-             $293 = HEAP32[$292>>2]|0;
-             $294 = (_gpg_err_code_from_errno($293)|0);
-             $295 = ($294|0)==(0);
-             if ($295) {
-              $$sroa$0$6929$ph = $$sroa$0$3;$$sroa$47$5928$ph = 
$$sroa$47$2;$$sroa$81$8927$ph$ptr = $$sroa$81$2$ptr;
-              break;
-             } else {
-              $$1$i712934 = $294;
-              label = 127;
-              break L18;
-             }
-            } else {
-             $290 = (($288) + ($280)|0);
-             $291 = $288;
-             $$sroa$0$6929$ph = $291;$$sroa$47$5928$ph = 
$286;$$sroa$81$8927$ph$ptr = $290;
-             break;
-            }
-           }
-          } while(0);
-          $299 = ((($$sroa$81$8927$ph$ptr)) + 1|0);
-          HEAP8[$$sroa$81$8927$ph$ptr>>0] = 1;
-          $300 = $273&65535;
-          HEAP8[$299>>0]=$300&255;HEAP8[$299+1>>0]=$300>>8;
-          $301 = ((($$sroa$81$8927$ph$ptr)) + 3|0);
-          $302 = ((($$05841619)) + 1|0);
-          _memcpy(($301|0),($302|0),($273|0))|0;
-          $303 = (($301) + ($273)|0);
-          $304 = $303;
-          $305 = (($$05881618) - ($273))|0;
-          $306 = (($$05841619) + ($273)|0);
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = $$06101611;$$1614 
= $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $306;$$3591 = $305;$$4605 = 0;$$9626 = $$06171608;$$sroa$0$27 = 
$$sroa$0$6929$ph;$$sroa$47$19 = $$sroa$47$5928$ph;$$sroa$81$32 = $304;
-          break L30;
-          break;
-         }
-         case 35:  {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = $$06101611;$$1614 
= 0;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = $$1598;$$3587 = 
$$05841619;$$3591 = $$05881618;$$4605 = $$05841619;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 124:  {
-          $$1593 = 0;$$1607 = $$05841619;$$1609 = $$06081612;$$1611 = 
$$06101611;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         default: {
-          label = 131;
-          break L18;
-         }
-         }
-        }
-        $310 = ($$06101611|0)==(0|0);
-        $311 = HEAP8[$$05841619>>0]|0;
-        if ($310) {
-         switch ($311<<24>>24) {
-         case 34:  {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = 0;$$1629 = $$06281607;$$2596 = $$05841619;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 40:  {
-          $652 = ($$06081612|0)==(0|0);
-          if (!($652)) {
-           label = 239;
-           break L18;
-          }
-          $656 = $$sroa$0$3;
-          $657 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-          $658 = (($657) + 3)|0;
-          $659 = ($658>>>0)<($$sroa$47$2>>>0);
-          do {
-           if ($659) {
-            $$sroa$0$251079$ph = $$sroa$0$3;$$sroa$47$171078$ph = 
$$sroa$47$2;$$sroa$81$301077$ph$ptr = $$sroa$81$2$ptr;
-           } else {
-            $660 = (($$sroa$47$2) + 6)|0;
-            $661 = ($$sroa$47$2>>>0)<(4294967290);
-            if (!($661)) {
-             $$1$i7301084 = 67;
-             label = 245;
-             break L18;
-            }
-            $662 = (__gcry_realloc($656,$660)|0);
-            $663 = ($662|0)==(0|0);
-            if ($663) {
-             $666 = (___errno_location()|0);
-             $667 = HEAP32[$666>>2]|0;
-             $668 = (_gpg_err_code_from_errno($667)|0);
-             $669 = ($668|0)==(0);
-             if ($669) {
-              $$sroa$0$251079$ph = $$sroa$0$3;$$sroa$47$171078$ph = 
$$sroa$47$2;$$sroa$81$301077$ph$ptr = $$sroa$81$2$ptr;
-              break;
-             } else {
-              $$1$i7301084 = $668;
-              label = 245;
-              break L18;
-             }
-            } else {
-             $664 = (($662) + ($657)|0);
-             $665 = $662;
-             $$sroa$0$251079$ph = $665;$$sroa$47$171078$ph = 
$660;$$sroa$81$301077$ph$ptr = $664;
-             break;
-            }
-           }
-          } while(0);
-          $673 = ((($$sroa$81$301077$ph$ptr)) + 1|0);
-          $674 = $673;
-          HEAP8[$$sroa$81$301077$ph$ptr>>0] = 3;
-          $675 = (($$06281607) + 1)|0;
-          $$1593 = 0;$$1607 = 0;$$1609 = 0;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $675;$$2596 = 0;$$2599 = $$1598;$$3587 
= $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = $$06171608;$$sroa$0$27 = 
$$sroa$0$251079$ph;$$sroa$47$19 = $$sroa$47$171078$ph;$$sroa$81$32 = $674;
-          break L30;
-          break;
-         }
-         case 41:  {
-          $676 = ($$06081612|0)==(0|0);
-          if (!($676)) {
-           label = 248;
-           break L18;
-          }
-          $680 = $$sroa$0$3;
-          $681 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-          $682 = (($681) + 3)|0;
-          $683 = ($682>>>0)<($$sroa$47$2>>>0);
-          do {
-           if ($683) {
-            $$sroa$0$261094$ph = $$sroa$0$3;$$sroa$47$181093$ph = 
$$sroa$47$2;$$sroa$81$311092$ph$ptr = $$sroa$81$2$ptr;
-           } else {
-            $684 = (($$sroa$47$2) + 6)|0;
-            $685 = ($$sroa$47$2>>>0)<(4294967290);
-            if (!($685)) {
-             $$1$i7321099 = 67;
-             label = 254;
-             break L18;
-            }
-            $686 = (__gcry_realloc($680,$684)|0);
-            $687 = ($686|0)==(0|0);
-            if ($687) {
-             $690 = (___errno_location()|0);
-             $691 = HEAP32[$690>>2]|0;
-             $692 = (_gpg_err_code_from_errno($691)|0);
-             $693 = ($692|0)==(0);
-             if ($693) {
-              $$sroa$0$261094$ph = $$sroa$0$3;$$sroa$47$181093$ph = 
$$sroa$47$2;$$sroa$81$311092$ph$ptr = $$sroa$81$2$ptr;
-              break;
-             } else {
-              $$1$i7321099 = $692;
-              label = 254;
-              break L18;
-             }
-            } else {
-             $688 = (($686) + ($681)|0);
-             $689 = $686;
-             $$sroa$0$261094$ph = $689;$$sroa$47$181093$ph = 
$684;$$sroa$81$311092$ph$ptr = $688;
-             break;
-            }
-           }
-          } while(0);
-          $697 = ((($$sroa$81$311092$ph$ptr)) + 1|0);
-          $698 = $697;
-          HEAP8[$$sroa$81$311092$ph$ptr>>0] = 4;
-          $699 = (($$06281607) + -1)|0;
-          $$1593 = 0;$$1607 = 0;$$1609 = 0;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $699;$$2596 = 0;$$2599 = $$1598;$$3587 
= $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = $$06171608;$$sroa$0$27 = 
$$sroa$0$261094$ph;$$sroa$47$19 = $$sroa$47$181093$ph;$$sroa$81$32 = $698;
-          break L30;
-          break;
-         }
-         case 35:  {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
0;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = $$1598;$$3587 = 
$$05841619;$$3591 = $$05881618;$$4605 = $$05841619;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 124:  {
-          $$1593 = 0;$$1607 = $$05841619;$$1609 = $$06081612;$$1611 = 0;$$1614 
= $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-          break;
-         }
-         case 91:  {
-          $700 = ($$06081612|0)==(0|0);
-          if ($700) {
-           $$1593 = 0;$$1607 = 0;$$1609 = $$05841619;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-          } else {
-           label = 259;
-           break L18;
-          }
-          break;
-         }
-         case 93:  {
-          $704 = ($$06081612|0)==(0|0);
-          if ($704) {
-           label = 261;
-           break L18;
-          } else {
-           $$1593 = 0;$$1607 = 0;$$1609 = 0;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-          }
-          break;
-         }
-         default: {
-          $$off1140 = (($311) + -48)<<24>>24;
-          $708 = ($$off1140&255)<(10);
-          if ($708) {
-           $709 = ($311<<24>>24)==(48);
-           if ($709) {
-            label = 264;
-            break L18;
-           } else {
-            $$1593 = $$05841619;$$1607 = 0;$$1609 = $$06081612;$$1611 = 
0;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 
= $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-            break L30;
-           }
-          }
-          $713 = $311 << 24 >> 24;
-          $memchr663 = (_memchr(16,$713,71)|0);
-          $714 = ($memchr663|0)==(0|0);
-          if (!($714)) {
-           $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$05841619;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-          }
-          switch ($713|0) {
-          case 10: case 13: case 12: case 11: case 9: case 32:  {
-           $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-           break;
-          }
-          default: {
-          }
-          }
-          $715 = ($311<<24>>24)==(123);
-          if ($715) {
-           label = 268;
-           break L18;
-          }
-          $memchr664 = (_memchr(44690,$713,3)|0);
-          $719 = ($memchr664|0)==(0|0);
-          if (!($719)) {
-           label = 270;
-           break L18;
-          }
-          $723 = ($311<<24>>24)==(37);
-          $or$cond1130 = $26 & $723;
-          if ($or$cond1130) {
-           $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 
$$05841619;$$1614 = $$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 
0;$$2599 = $$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$06171608;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-          } else {
-           label = 272;
-           break L18;
-          }
-         }
-         }
-        }
-        switch ($311<<24>>24) {
-        case 77: case 109:  {
-         HEAP32[$8>>2] = 0;
-         $312 = HEAP8[$$05841619>>0]|0;
-         $313 = ($312<<24>>24)==(109);
-         $314 = $313 ? 1 : 5;
-         if ($25) {
-          $arglist_current = HEAP32[$6>>2]|0;
-          $315 = $arglist_current;
-          $316 = ((0) + 4|0);
-          $expanded22 = $316;
-          $expanded = (($expanded22) - 1)|0;
-          $317 = (($315) + ($expanded))|0;
-          $318 = ((0) + 4|0);
-          $expanded26 = $318;
-          $expanded25 = (($expanded26) - 1)|0;
-          $expanded24 = $expanded25 ^ -1;
-          $319 = $317 & $expanded24;
-          $320 = $319;
-          $321 = HEAP32[$320>>2]|0;
-          $arglist_next = ((($320)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next;
-          $$0658 = $321;$$1618 = $$06171608;
-         } else {
-          $322 = (($$06171608) + 1)|0;
-          $323 = (($5) + ($$06171608<<2)|0);
-          $324 = HEAP32[$323>>2]|0;
-          $325 = HEAP32[$324>>2]|0;
-          $$0658 = $325;$$1618 = $322;
-         }
-         $326 = (__gcry_mpi_get_flag($$0658,2)|0);
-         $327 = ($326|0)==(0);
-         if ($327) {
-          $375 = (__gcry_mpi_print($314,0,0,$8,$$0658)|0);
-          $376 = ($375|0)==(0);
-          if (!($376)) {
-           label = 154;
-           break L18;
-          }
-          $377 = HEAP32[$8>>2]|0;
-          $378 = $$sroa$0$3;
-          $379 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-          $380 = (($379) + 3)|0;
-          $381 = (($380) + ($377))|0;
-          $382 = ($381>>>0)<($$sroa$47$2>>>0);
-          do {
-           if ($382) {
-            $$pre$phiZ2D = $378;$$sroa$0$11962$ph = 
$$sroa$0$3;$$sroa$47$8960$ph = $$sroa$47$2;$$sroa$81$13959$ph = 
$$sroa$81$2;$$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-           } else {
-            $383 = $377 << 1;
-            $384 = (($$sroa$47$2) + 6)|0;
-            $385 = (($384) + ($383))|0;
-            $386 = ($385>>>0)>($$sroa$47$2>>>0);
-            if (!($386)) {
-             $$1$i716967 = 67;
-             label = 160;
-             break L18;
-            }
-            $387 = (__gcry_realloc($378,$385)|0);
-            $388 = ($387|0)==(0|0);
-            if ($388) {
-             $392 = (___errno_location()|0);
-             $393 = HEAP32[$392>>2]|0;
-             $394 = (_gpg_err_code_from_errno($393)|0);
-             $395 = ($394|0)==(0);
-             if ($395) {
-              $$pre$phiZ2D = $378;$$sroa$0$11962$ph = 
$$sroa$0$3;$$sroa$47$8960$ph = $$sroa$47$2;$$sroa$81$13959$ph = 
$$sroa$81$2;$$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-              break;
-             } else {
-              $$1$i716967 = $394;
-              label = 160;
-              break L18;
-             }
-            } else {
-             $389 = (($387) + ($379)|0);
-             $390 = $389;
-             $391 = $387;
-             $$pre$phiZ2D = $387;$$sroa$0$11962$ph = $391;$$sroa$47$8960$ph = 
$385;$$sroa$81$13959$ph = $390;$$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D = $389;
-             break;
-            }
-           }
-          } while(0);
-          $399 = (__gcry_is_secure($$pre$phiZ2D)|0);
-          $400 = ($399|0)==(0);
-          do {
-           if ($400) {
-            $401 = (__gcry_mpi_get_flag($$0658,1)|0);
-            $402 = ($401|0)==(0);
-            if ($402) {
-             $$sroa$0$13 = $$sroa$0$11962$ph;$$sroa$81$15$ptr = 
$$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D;
-             break;
-            }
-            $403 = (__gcry_malloc_secure($$sroa$47$8960$ph)|0);
-            $404 = ($403|0)==(0|0);
-            if ($404) {
-             label = 165;
-             break L18;
-            }
-            $405 = (($$sroa$81$13959$ph) - ($$sroa$0$11962$ph))|0;
-            _memcpy(($403|0),($$pre$phiZ2D|0),($405|0))|0;
-            $406 = (($403) + ($405)|0);
-            $$cast665 = $$sroa$0$11962$ph;
-            __gcry_free($$cast665);
-            $407 = $403;
-            $$sroa$0$13 = $407;$$sroa$81$15$ptr = $406;
-           } else {
-            $$sroa$0$13 = $$sroa$0$11962$ph;$$sroa$81$15$ptr = 
$$sroa$81$13959$ph$ptr$pre$phiZZZZZZ2D;
-           }
-          } while(0);
-          $411 = ((($$sroa$81$15$ptr)) + 1|0);
-          HEAP8[$$sroa$81$15$ptr>>0] = 1;
-          $412 = HEAP32[$8>>2]|0;
-          $413 = $412&65535;
-          HEAP8[$411>>0]=$413&255;HEAP8[$411+1>>0]=$413>>8;
-          $414 = ((($$sroa$81$15$ptr)) + 3|0);
-          $415 = HEAP32[$8>>2]|0;
-          $416 = (__gcry_mpi_print($314,$414,$415,$8,$$0658)|0);
-          $417 = ($416|0)==(0);
-          if (!($417)) {
-           label = 167;
-           break L18;
-          }
-          $418 = HEAP32[$8>>2]|0;
-          $419 = (($414) + ($418)|0);
-          $420 = $419;
-          $$sroa$0$15 = $$sroa$0$13;$$sroa$47$10 = 
$$sroa$47$8960$ph;$$sroa$81$17 = $420;
-         } else {
-          $328 = (__gcry_mpi_get_opaque($$0658,$9)|0);
-          $329 = HEAP32[$9>>2]|0;
-          $330 = (($329) + 7)|0;
-          $331 = $330 >>> 3;
-          HEAP32[$8>>2] = $331;
-          $332 = ($328|0)!=(0|0);
-          $333 = ($331|0)!=(0);
-          $or$cond14 = $332 & $333;
-          if ($or$cond14) {
-           $334 = $$sroa$0$3;
-           $335 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-           $336 = (($335) + 3)|0;
-           $337 = (($336) + ($331))|0;
-           $338 = ($337>>>0)<($$sroa$47$2>>>0);
-           do {
-            if ($338) {
-             $$pre$phi1937Z2D = $334;$$sroa$0$7943$ph = 
$$sroa$0$3;$$sroa$47$6942$ph = $$sroa$47$2;$$sroa$81$9941$ph = 
$$sroa$81$2;$$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-            } else {
-             $339 = $331 << 1;
-             $340 = (($$sroa$47$2) + 6)|0;
-             $341 = (($340) + ($339))|0;
-             $342 = ($341>>>0)>($$sroa$47$2>>>0);
-             if (!($342)) {
-              $$1$i714948 = 67;
-              label = 144;
-              break L18;
-             }
-             $343 = (__gcry_realloc($334,$341)|0);
-             $344 = ($343|0)==(0|0);
-             if ($344) {
-              $348 = (___errno_location()|0);
-              $349 = HEAP32[$348>>2]|0;
-              $350 = (_gpg_err_code_from_errno($349)|0);
-              $351 = ($350|0)==(0);
-              if ($351) {
-               $$pre$phi1937Z2D = $334;$$sroa$0$7943$ph = 
$$sroa$0$3;$$sroa$47$6942$ph = $$sroa$47$2;$$sroa$81$9941$ph = 
$$sroa$81$2;$$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-               break;
-              } else {
-               $$1$i714948 = $350;
-               label = 144;
-               break L18;
-              }
-             } else {
-              $345 = (($343) + ($335)|0);
-              $346 = $345;
-              $347 = $343;
-              $$pre$phi1937Z2D = $343;$$sroa$0$7943$ph = 
$347;$$sroa$47$6942$ph = $341;$$sroa$81$9941$ph = 
$346;$$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D = $345;
-              break;
-             }
-            }
-           } while(0);
-           $355 = (__gcry_is_secure($$pre$phi1937Z2D)|0);
-           $356 = ($355|0)==(0);
-           do {
-            if ($356) {
-             $357 = (__gcry_mpi_get_flag($$0658,1)|0);
-             $358 = ($357|0)==(0);
-             if ($358) {
-              $$sroa$0$9 = $$sroa$0$7943$ph;$$sroa$81$11$ptr = 
$$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D;
-              break;
-             }
-             $359 = (__gcry_malloc_secure($$sroa$47$6942$ph)|0);
-             $360 = ($359|0)==(0|0);
-             if ($360) {
-              label = 149;
-              break L18;
-             }
-             $361 = (($$sroa$81$9941$ph) - ($$sroa$0$7943$ph))|0;
-             _memcpy(($359|0),($$pre$phi1937Z2D|0),($361|0))|0;
-             $362 = (($359) + ($361)|0);
-             $$cast666 = $$sroa$0$7943$ph;
-             __gcry_free($$cast666);
-             $363 = $359;
-             $$sroa$0$9 = $363;$$sroa$81$11$ptr = $362;
-            } else {
-             $$sroa$0$9 = $$sroa$0$7943$ph;$$sroa$81$11$ptr = 
$$sroa$81$9941$ph$ptr$pre$phiZZZZZZ2D;
-            }
-           } while(0);
-           $367 = ((($$sroa$81$11$ptr)) + 1|0);
-           HEAP8[$$sroa$81$11$ptr>>0] = 1;
-           $368 = HEAP32[$8>>2]|0;
-           $369 = $368&65535;
-           HEAP8[$367>>0]=$369&255;HEAP8[$367+1>>0]=$369>>8;
-           $370 = ((($$sroa$81$11$ptr)) + 3|0);
-           $371 = HEAP32[$8>>2]|0;
-           _memcpy(($370|0),($328|0),($371|0))|0;
-           $372 = HEAP32[$8>>2]|0;
-           $373 = (($370) + ($372)|0);
-           $374 = $373;
-           $$sroa$0$10$ph = $$sroa$0$9;$$sroa$47$7$ph = 
$$sroa$47$6942$ph;$$sroa$81$12$ph = $374;
-          } else {
-           $$sroa$0$10$ph = $$sroa$0$3;$$sroa$47$7$ph = 
$$sroa$47$2;$$sroa$81$12$ph = $$sroa$81$2;
-          }
-          $$sroa$0$15 = $$sroa$0$10$ph;$$sroa$47$10 = 
$$sroa$47$7$ph;$$sroa$81$17 = $$sroa$81$12$ph;
-         }
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$1618;$$sroa$0$27 = $$sroa$0$15;$$sroa$47$19 = $$sroa$47$10;$$sroa$81$32 = 
$$sroa$81$17;
-         break L30;
-         break;
-        }
-        case 115:  {
-         if ($25) {
-          $arglist_current2 = HEAP32[$6>>2]|0;
-          $421 = $arglist_current2;
-          $422 = ((0) + 4|0);
-          $expanded29 = $422;
-          $expanded28 = (($expanded29) - 1)|0;
-          $423 = (($421) + ($expanded28))|0;
-          $424 = ((0) + 4|0);
-          $expanded33 = $424;
-          $expanded32 = (($expanded33) - 1)|0;
-          $expanded31 = $expanded32 ^ -1;
-          $425 = $423 & $expanded31;
-          $426 = $425;
-          $427 = HEAP32[$426>>2]|0;
-          $arglist_next3 = ((($426)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next3;
-          $$0659 = $427;$$2619 = $$06171608;
-         } else {
-          $428 = (($$06171608) + 1)|0;
-          $429 = (($5) + ($$06171608<<2)|0);
-          $430 = HEAP32[$429>>2]|0;
-          $431 = HEAP32[$430>>2]|0;
-          $$0659 = $431;$$2619 = $428;
-         }
-         $432 = (_strlen($$0659)|0);
-         $433 = $$sroa$0$3;
-         $434 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $435 = (($434) + 3)|0;
-         $436 = (($435) + ($432))|0;
-         $437 = ($436>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($437) {
-           $$sroa$0$16981$ph = $$sroa$0$3;$$sroa$47$11980$ph = 
$$sroa$47$2;$$sroa$81$18979$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $438 = $432 << 1;
-           $439 = (($$sroa$47$2) + 6)|0;
-           $440 = (($439) + ($438))|0;
-           $441 = ($440>>>0)>($$sroa$47$2>>>0);
-           if (!($441)) {
-            $$1$i718986 = 67;
-            label = 180;
-            break L18;
-           }
-           $442 = (__gcry_realloc($433,$440)|0);
-           $443 = ($442|0)==(0|0);
-           if ($443) {
-            $446 = (___errno_location()|0);
-            $447 = HEAP32[$446>>2]|0;
-            $448 = (_gpg_err_code_from_errno($447)|0);
-            $449 = ($448|0)==(0);
-            if ($449) {
-             $$sroa$0$16981$ph = $$sroa$0$3;$$sroa$47$11980$ph = 
$$sroa$47$2;$$sroa$81$18979$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i718986 = $448;
-             label = 180;
-             break L18;
-            }
-           } else {
-            $444 = (($442) + ($434)|0);
-            $445 = $442;
-            $$sroa$0$16981$ph = $445;$$sroa$47$11980$ph = 
$440;$$sroa$81$18979$ph$ptr = $444;
-            break;
-           }
-          }
-         } while(0);
-         $450 = ((($$sroa$81$18979$ph$ptr)) + 1|0);
-         HEAP8[$$sroa$81$18979$ph$ptr>>0] = 1;
-         $451 = $432&65535;
-         HEAP8[$450>>0]=$451&255;HEAP8[$450+1>>0]=$451>>8;
-         $452 = ((($$sroa$81$18979$ph$ptr)) + 3|0);
-         _memcpy(($452|0),($$0659|0),($432|0))|0;
-         $453 = (($452) + ($432)|0);
-         $454 = $453;
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$2619;$$sroa$0$27 = $$sroa$0$16981$ph;$$sroa$47$19 = 
$$sroa$47$11980$ph;$$sroa$81$32 = $454;
-         break L30;
-         break;
-        }
-        case 98:  {
-         if ($25) {
-          $arglist_current5 = HEAP32[$6>>2]|0;
-          $458 = $arglist_current5;
-          $459 = ((0) + 4|0);
-          $expanded36 = $459;
-          $expanded35 = (($expanded36) - 1)|0;
-          $460 = (($458) + ($expanded35))|0;
-          $461 = ((0) + 4|0);
-          $expanded40 = $461;
-          $expanded39 = (($expanded40) - 1)|0;
-          $expanded38 = $expanded39 ^ -1;
-          $462 = $460 & $expanded38;
-          $463 = $462;
-          $464 = HEAP32[$463>>2]|0;
-          $arglist_next6 = ((($463)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next6;
-          $arglist_current8 = HEAP32[$6>>2]|0;
-          $465 = $arglist_current8;
-          $466 = ((0) + 4|0);
-          $expanded43 = $466;
-          $expanded42 = (($expanded43) - 1)|0;
-          $467 = (($465) + ($expanded42))|0;
-          $468 = ((0) + 4|0);
-          $expanded47 = $468;
-          $expanded46 = (($expanded47) - 1)|0;
-          $expanded45 = $expanded46 ^ -1;
-          $469 = $467 & $expanded45;
-          $470 = $469;
-          $471 = HEAP32[$470>>2]|0;
-          $arglist_next9 = ((($470)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next9;
-          $$0660 = $471;$$0661999 = $464;$$4621 = $$06171608;
-         } else {
-          $472 = (($$06171608) + 1)|0;
-          $473 = (($5) + ($$06171608<<2)|0);
-          $474 = HEAP32[$473>>2]|0;
-          $475 = HEAP32[$474>>2]|0;
-          $476 = (($$06171608) + 2)|0;
-          $477 = (($5) + ($472<<2)|0);
-          $478 = HEAP32[$477>>2]|0;
-          $479 = HEAP32[$478>>2]|0;
-          $$0660 = $479;$$0661999 = $475;$$4621 = $476;
-         }
-         $480 = $$sroa$0$3;
-         $481 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $482 = (($481) + 3)|0;
-         $483 = (($482) + ($$0661999))|0;
-         $484 = ($483>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($484) {
-           $$sroa$0$171004$ph = $$sroa$0$3;$$sroa$47$121003$ph = 
$$sroa$47$2;$$sroa$81$201002$ph = 
$$sroa$81$2;$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-          } else {
-           $485 = $$0661999 << 1;
-           $486 = (($$sroa$47$2) + 6)|0;
-           $487 = (($486) + ($485))|0;
-           $488 = ($487>>>0)>($$sroa$47$2>>>0);
-           if (!($488)) {
-            $$1$i7201009 = 67;
-            label = 189;
-            break L18;
-           }
-           $489 = (__gcry_realloc($480,$487)|0);
-           $490 = ($489|0)==(0|0);
-           if ($490) {
-            $494 = (___errno_location()|0);
-            $495 = HEAP32[$494>>2]|0;
-            $496 = (_gpg_err_code_from_errno($495)|0);
-            $497 = ($496|0)==(0);
-            if ($497) {
-             $$sroa$0$171004$ph = $$sroa$0$3;$$sroa$47$121003$ph = 
$$sroa$47$2;$$sroa$81$201002$ph = 
$$sroa$81$2;$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i7201009 = $496;
-             label = 189;
-             break L18;
-            }
-           } else {
-            $491 = (($489) + ($481)|0);
-            $492 = $491;
-            $493 = $489;
-            $$sroa$0$171004$ph = $493;$$sroa$47$121003$ph = 
$487;$$sroa$81$201002$ph = $492;$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D = $491;
-            break;
-           }
-          }
-         } while(0);
-         $502 = ($$0661999|0)==(0);
-         do {
-          if ($502) {
-           $$sroa$0$19 = $$sroa$0$171004$ph;$$sroa$81$22$ptr = 
$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D;
-          } else {
-           $503 = $$sroa$0$171004$ph;
-           $504 = (__gcry_is_secure($503)|0);
-           $505 = ($504|0)==(0);
-           if (!($505)) {
-            $$sroa$0$19 = $$sroa$0$171004$ph;$$sroa$81$22$ptr = 
$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D;
-            break;
-           }
-           $506 = (__gcry_is_secure($$0660)|0);
-           $507 = ($506|0)==(0);
-           if ($507) {
-            $$sroa$0$19 = $$sroa$0$171004$ph;$$sroa$81$22$ptr = 
$$sroa$81$201002$ph$ptr$pre$phiZZZZZZ2D;
-            break;
-           }
-           $508 = (__gcry_malloc_secure($$sroa$47$121003$ph)|0);
-           $509 = ($508|0)==(0|0);
-           if ($509) {
-            label = 195;
-            break L18;
-           }
-           $510 = (($$sroa$81$201002$ph) - ($$sroa$0$171004$ph))|0;
-           _memcpy(($508|0),($503|0),($510|0))|0;
-           $511 = (($508) + ($510)|0);
-           $$cast = $$sroa$0$171004$ph;
-           __gcry_free($$cast);
-           $512 = $508;
-           $$sroa$0$19 = $512;$$sroa$81$22$ptr = $511;
-          }
-         } while(0);
-         $516 = ((($$sroa$81$22$ptr)) + 1|0);
-         HEAP8[$$sroa$81$22$ptr>>0] = 1;
-         $517 = $$0661999&65535;
-         HEAP8[$516>>0]=$517&255;HEAP8[$516+1>>0]=$517>>8;
-         $518 = ((($$sroa$81$22$ptr)) + 3|0);
-         _memcpy(($518|0),($$0660|0),($$0661999|0))|0;
-         $519 = (($518) + ($$0661999)|0);
-         $520 = $519;
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$4621;$$sroa$0$27 = $$sroa$0$19;$$sroa$47$19 = 
$$sroa$47$121003$ph;$$sroa$81$32 = $520;
-         break L30;
-         break;
-        }
-        case 100:  {
-         if ($25) {
-          $arglist_current11 = HEAP32[$6>>2]|0;
-          $521 = $arglist_current11;
-          $522 = ((0) + 4|0);
-          $expanded50 = $522;
-          $expanded49 = (($expanded50) - 1)|0;
-          $523 = (($521) + ($expanded49))|0;
-          $524 = ((0) + 4|0);
-          $expanded54 = $524;
-          $expanded53 = (($expanded54) - 1)|0;
-          $expanded52 = $expanded53 ^ -1;
-          $525 = $523 & $expanded52;
-          $526 = $525;
-          $527 = HEAP32[$526>>2]|0;
-          $arglist_next12 = ((($526)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next12;
-          $$0627 = $527;$$5622 = $$06171608;
-         } else {
-          $528 = (($$06171608) + 1)|0;
-          $529 = (($5) + ($$06171608<<2)|0);
-          $530 = HEAP32[$529>>2]|0;
-          $531 = HEAP32[$530>>2]|0;
-          $$0627 = $531;$$5622 = $528;
-         }
-         HEAP32[$vararg_buffer>>2] = $$0627;
-         (_sprintf($10,44684,$vararg_buffer)|0);
-         $532 = (_strlen($10)|0);
-         $533 = $$sroa$0$3;
-         $534 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $535 = (($534) + 3)|0;
-         $536 = (($535) + ($532))|0;
-         $537 = ($536>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($537) {
-           $$sroa$0$211024$ph = $$sroa$0$3;$$sroa$47$131023$ph = 
$$sroa$47$2;$$sroa$81$241022$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $538 = $532 << 1;
-           $539 = (($$sroa$47$2) + 6)|0;
-           $540 = (($539) + ($538))|0;
-           $541 = ($540>>>0)>($$sroa$47$2>>>0);
-           if (!($541)) {
-            $$1$i7221029 = 67;
-            label = 206;
-            break L18;
-           }
-           $542 = (__gcry_realloc($533,$540)|0);
-           $543 = ($542|0)==(0|0);
-           if ($543) {
-            $546 = (___errno_location()|0);
-            $547 = HEAP32[$546>>2]|0;
-            $548 = (_gpg_err_code_from_errno($547)|0);
-            $549 = ($548|0)==(0);
-            if ($549) {
-             $$sroa$0$211024$ph = $$sroa$0$3;$$sroa$47$131023$ph = 
$$sroa$47$2;$$sroa$81$241022$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i7221029 = $548;
-             label = 206;
-             break L18;
-            }
-           } else {
-            $544 = (($542) + ($534)|0);
-            $545 = $542;
-            $$sroa$0$211024$ph = $545;$$sroa$47$131023$ph = 
$540;$$sroa$81$241022$ph$ptr = $544;
-            break;
-           }
-          }
-         } while(0);
-         $550 = ((($$sroa$81$241022$ph$ptr)) + 1|0);
-         HEAP8[$$sroa$81$241022$ph$ptr>>0] = 1;
-         $551 = $532&65535;
-         HEAP8[$550>>0]=$551&255;HEAP8[$550+1>>0]=$551>>8;
-         $552 = ((($$sroa$81$241022$ph$ptr)) + 3|0);
-         _memcpy(($552|0),($10|0),($532|0))|0;
-         $553 = (($552) + ($532)|0);
-         $554 = $553;
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$5622;$$sroa$0$27 = $$sroa$0$211024$ph;$$sroa$47$19 = 
$$sroa$47$131023$ph;$$sroa$81$32 = $554;
-         break L30;
-         break;
-        }
-        case 117:  {
-         if ($25) {
-          $arglist_current14 = HEAP32[$6>>2]|0;
-          $558 = $arglist_current14;
-          $559 = ((0) + 4|0);
-          $expanded57 = $559;
-          $expanded56 = (($expanded57) - 1)|0;
-          $560 = (($558) + ($expanded56))|0;
-          $561 = ((0) + 4|0);
-          $expanded61 = $561;
-          $expanded60 = (($expanded61) - 1)|0;
-          $expanded59 = $expanded60 ^ -1;
-          $562 = $560 & $expanded59;
-          $563 = $562;
-          $564 = HEAP32[$563>>2]|0;
-          $arglist_next15 = ((($563)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next15;
-          $$0612 = $564;$$6623 = $$06171608;
-         } else {
-          $565 = (($$06171608) + 1)|0;
-          $566 = (($5) + ($$06171608<<2)|0);
-          $567 = HEAP32[$566>>2]|0;
-          $568 = HEAP32[$567>>2]|0;
-          $$0612 = $568;$$6623 = $565;
-         }
-         HEAP32[$vararg_buffer16>>2] = $$0612;
-         (_sprintf($11,44687,$vararg_buffer16)|0);
-         $569 = (_strlen($11)|0);
-         $570 = $$sroa$0$3;
-         $571 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $572 = (($571) + 3)|0;
-         $573 = (($572) + ($569))|0;
-         $574 = ($573>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($574) {
-           $$sroa$0$221043$ph = $$sroa$0$3;$$sroa$47$141042$ph = 
$$sroa$47$2;$$sroa$81$261041$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $575 = $569 << 1;
-           $576 = (($$sroa$47$2) + 6)|0;
-           $577 = (($576) + ($575))|0;
-           $578 = ($577>>>0)>($$sroa$47$2>>>0);
-           if (!($578)) {
-            $$1$i7241048 = 67;
-            label = 216;
-            break L18;
-           }
-           $579 = (__gcry_realloc($570,$577)|0);
-           $580 = ($579|0)==(0|0);
-           if ($580) {
-            $583 = (___errno_location()|0);
-            $584 = HEAP32[$583>>2]|0;
-            $585 = (_gpg_err_code_from_errno($584)|0);
-            $586 = ($585|0)==(0);
-            if ($586) {
-             $$sroa$0$221043$ph = $$sroa$0$3;$$sroa$47$141042$ph = 
$$sroa$47$2;$$sroa$81$261041$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i7241048 = $585;
-             label = 216;
-             break L18;
-            }
-           } else {
-            $581 = (($579) + ($571)|0);
-            $582 = $579;
-            $$sroa$0$221043$ph = $582;$$sroa$47$141042$ph = 
$577;$$sroa$81$261041$ph$ptr = $581;
-            break;
-           }
-          }
-         } while(0);
-         $587 = ((($$sroa$81$261041$ph$ptr)) + 1|0);
-         HEAP8[$$sroa$81$261041$ph$ptr>>0] = 1;
-         $588 = $569&65535;
-         HEAP8[$587>>0]=$588&255;HEAP8[$587+1>>0]=$588>>8;
-         $589 = ((($$sroa$81$261041$ph$ptr)) + 3|0);
-         _memcpy(($589|0),($11|0),($569|0))|0;
-         $590 = (($589) + ($569)|0);
-         $591 = $590;
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$6623;$$sroa$0$27 = $$sroa$0$221043$ph;$$sroa$47$19 = 
$$sroa$47$141042$ph;$$sroa$81$32 = $591;
-         break L30;
-         break;
-        }
-        case 83:  {
-         if ($25) {
-          $arglist_current20 = HEAP32[$6>>2]|0;
-          $595 = $arglist_current20;
-          $596 = ((0) + 4|0);
-          $expanded64 = $596;
-          $expanded63 = (($expanded64) - 1)|0;
-          $597 = (($595) + ($expanded63))|0;
-          $598 = ((0) + 4|0);
-          $expanded68 = $598;
-          $expanded67 = (($expanded68) - 1)|0;
-          $expanded66 = $expanded67 ^ -1;
-          $599 = $597 & $expanded66;
-          $600 = $599;
-          $601 = HEAP32[$600>>2]|0;
-          $arglist_next21 = ((($600)) + 4|0);
-          HEAP32[$6>>2] = $arglist_next21;
-          $$0600 = $601;$$7624 = $$06171608;
-         } else {
-          $602 = (($$06171608) + 1)|0;
-          $603 = (($5) + ($$06171608<<2)|0);
-          $604 = HEAP32[$603>>2]|0;
-          $605 = HEAP32[$604>>2]|0;
-          $$0600 = $605;$$7624 = $602;
-         }
-         $606 = ($$0600|0)==(0|0);
-         if ($606) {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$7624;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-         }
-         $607 = HEAP8[$$0600>>0]|0;
-         $608 = ($607<<24>>24)==(0);
-         if ($608) {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$7624;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-         }
-         $609 = $$0600;
-         $$02830$i = $$0600;$$031$i = 0;$$0880 = 0;$611 = $607;
-         L303: while(1) {
-          $610 = ((($$02830$i)) + 1|0);
-          switch ($611<<24>>24) {
-          case 1:  {
-           $$0$copyload$i = HEAPU8[$610>>0]|(HEAPU8[$610+1>>0]<<8);
-           $612 = $$0$copyload$i&65535;
-           $613 = (($612) + 2)|0;
-           $614 = (($610) + ($613)|0);
-           $$1$i727 = $$031$i;$$129$i = $614;$$2882 = $$0880;
-           break;
-          }
-          case 3:  {
-           $615 = ($$031$i|0)==(0);
-           $616 = $$02830$i;
-           $617 = (($616) - ($609))|0;
-           $spec$select1129 = $615 ? $617 : $$0880;
-           $618 = (($$031$i) + 1)|0;
-           $$1$i727 = $618;$$129$i = $610;$$2882 = $spec$select1129;
-           break;
-          }
-          case 4:  {
-           $619 = (($$031$i) + -1)|0;
-           $620 = ($619|0)==(0);
-           if ($620) {
-            break L303;
-           } else {
-            $$1$i727 = $619;$$129$i = $610;$$2882 = $$0880;
-           }
-           break;
-          }
-          default: {
-           $$1$i727 = $$031$i;$$129$i = $610;$$2882 = $$0880;
-          }
-          }
-          $621 = HEAP8[$$129$i>>0]|0;
-          $622 = ($621<<24>>24)==(0);
-          if ($622) {
-           $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$7624;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-           break L30;
-          } else {
-           $$02830$i = $$129$i;$$031$i = $$1$i727;$$0880 = $$2882;$611 = $621;
-          }
-         }
-         $623 = $610;
-         $624 = (($623) - ($609))|0;
-         $625 = ($624|0)==(0);
-         if ($625) {
-          $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$7624;$$sroa$0$27 = $$sroa$0$3;$$sroa$47$19 = $$sroa$47$2;$$sroa$81$32 = 
$$sroa$81$2;
-          break L30;
-         }
-         $626 = $$sroa$0$3;
-         $627 = (($$sroa$81$2) - ($$sroa$0$3))|0;
-         $628 = (($627) + 3)|0;
-         $629 = (($628) + ($624))|0;
-         $630 = ($629>>>0)<($$sroa$47$2>>>0);
-         do {
-          if ($630) {
-           $$sroa$0$231062$ph = $$sroa$0$3;$$sroa$47$151061$ph = 
$$sroa$47$2;$$sroa$81$281060$ph$ptr = $$sroa$81$2$ptr;
-          } else {
-           $631 = $624 << 1;
-           $632 = (($$sroa$47$2) + 6)|0;
-           $633 = (($632) + ($631))|0;
-           $634 = ($633>>>0)>($$sroa$47$2>>>0);
-           if (!($634)) {
-            $$1$i7281067 = 67;
-            label = 235;
-            break L18;
-           }
-           $635 = (__gcry_realloc($626,$633)|0);
-           $636 = ($635|0)==(0|0);
-           if ($636) {
-            $639 = (___errno_location()|0);
-            $640 = HEAP32[$639>>2]|0;
-            $641 = (_gpg_err_code_from_errno($640)|0);
-            $642 = ($641|0)==(0);
-            if ($642) {
-             $$sroa$0$231062$ph = $$sroa$0$3;$$sroa$47$151061$ph = 
$$sroa$47$2;$$sroa$81$281060$ph$ptr = $$sroa$81$2$ptr;
-             break;
-            } else {
-             $$1$i7281067 = $641;
-             label = 235;
-             break L18;
-            }
-           } else {
-            $637 = (($635) + ($627)|0);
-            $638 = $635;
-            $$sroa$0$231062$ph = $638;$$sroa$47$151061$ph = 
$633;$$sroa$81$281060$ph$ptr = $637;
-            break;
-           }
-          }
-         } while(0);
-         $643 = (($$0600) + ($$0880)|0);
-         _memcpy(($$sroa$81$281060$ph$ptr|0),($643|0),($624|0))|0;
-         $644 = (($$sroa$81$281060$ph$ptr) + ($624)|0);
-         $645 = $644;
-         $$1593 = 0;$$1607 = 0;$$1609 = $$06081612;$$1611 = 0;$$1614 = 
$$06131610;$$1616 = $$06151609;$$1629 = $$06281607;$$2596 = 0;$$2599 = 
$$1598;$$3587 = $$05841619;$$3591 = $$05881618;$$4605 = 0;$$9626 = 
$$7624;$$sroa$0$27 = $$sroa$0$231062$ph;$$sroa$47$19 = 
$$sroa$47$151061$ph;$$sroa$81$32 = $645;
-         break L30;
-         break;
-        }
-        default: {
-         label = 236;
-         break L18;
-        }
-        }
-       }
-      } while(0);
-      $727 = ((($$3587)) + 1|0);
-      $728 = (($$3591) + -1)|0;
-      $$sroa$81$0$ptr = $$sroa$81$32;
-      $729 = ($728|0)==(0);
-      if ($729) {
-       label = 275;
-       break;
-      } else {
-       $$05841619 = $727;$$05881618 = $728;$$05921617 = $$1593;$$05941616 = 
$$2596;$$05971615 = $$2599;$$06011614 = $$4605;$$06061613 = $$1607;$$06081612 = 
$$1609;$$06101611 = $$1611;$$06131610 = $$1614;$$06151609 = $$1616;$$06171608 = 
$$9626;$$06281607 = $$1629;$$sroa$0$11606 = $$sroa$0$27;$$sroa$47$01605 = 
$$sroa$47$19;$$sroa$81$0$ptr1621 = $$sroa$81$0$ptr;$$sroa$81$01604 = 
$$sroa$81$32;
-      }
-     }
-     switch (label|0) {
-      case 18: {
-       $52 = $$05841619;
-       $$pn = $2;
-       $53 = (($52) - ($$pn))|0;
-       HEAP32[$spec$select>>2] = $53;
-       $$31$ph = $$1$i891;$$sroa$0$29$ph = $$sroa$0$11606;$$sroa$47$21$ph = 
$$sroa$47$01605;
-       label = 284;
-       break;
-      }
-      case 26: {
-       $72 = $$05841619;
-       $73 = $2;
-       $74 = (($72) - ($73))|0;
-       HEAP32[$spec$select>>2] = $74;
-       $$31$ph = 206;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 33: {
-       $83 = $$05841619;
-       $84 = $2;
-       $85 = (($83) - ($84))|0;
-       HEAP32[$spec$select>>2] = $85;
-       $$31$ph = 206;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 37: {
-       $95 = $$05841619;
-       $96 = $2;
-       $97 = (($95) - ($96))|0;
-       HEAP32[$spec$select>>2] = $97;
-       $$31$ph = 206;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 82: {
-       $198 = $$05841619;
-       $$pn1138 = $2;
-       $199 = (($198) - ($$pn1138))|0;
-       HEAP32[$spec$select>>2] = $199;
-       $$31$ph = $$1$i695904;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 88: {
-       $208 = $$05841619;
-       $209 = $2;
-       $210 = (($208) - ($209))|0;
-       HEAP32[$spec$select>>2] = $210;
-       $$31$ph = 212;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 94: {
-       $229 = $$05841619;
-       $230 = $2;
-       $231 = (($229) - ($230))|0;
-       HEAP32[$spec$select>>2] = $231;
-       $$31$ph = $$1$i697920;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 114: {
-       $264 = $$05841619;
-       $265 = $2;
-       $266 = (($264) - ($265))|0;
-       HEAP32[$spec$select>>2] = $266;
-       $$31$ph = 211;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 121: {
-       $276 = $$05841619;
-       $277 = $2;
-       $278 = (($276) - ($277))|0;
-       HEAP32[$spec$select>>2] = $278;
-       $$31$ph = 202;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 127: {
-       $296 = $$05841619;
-       $297 = $2;
-       $298 = (($296) - ($297))|0;
-       HEAP32[$spec$select>>2] = $298;
-       $$31$ph = $$1$i712934;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 131: {
-       $307 = $$05841619;
-       $308 = $2;
-       $309 = (($307) - ($308))|0;
-       HEAP32[$spec$select>>2] = $309;
-       $$31$ph = 201;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 144: {
-       $352 = $$05841619;
-       $353 = $2;
-       $354 = (($352) - ($353))|0;
-       HEAP32[$spec$select>>2] = $354;
-       $$10 = $$1$i714948;$$sroa$0$10 = $$sroa$0$3;$$sroa$47$7 = $$sroa$47$2;
-       label = 152;
-       break;
-      }
-      case 149: {
-       $364 = (___errno_location()|0);
-       $365 = HEAP32[$364>>2]|0;
-       $366 = (_gpg_err_code_from_errno($365)|0);
-       $$10 = $366;$$sroa$0$10 = $$sroa$0$7943$ph;$$sroa$47$7 = 
$$sroa$47$6942$ph;
-       label = 152;
-       break;
-      }
-      case 154: {
-       __gcry_bug(44662,1433,44669);
-       // unreachable;
-       break;
-      }
-      case 160: {
-       $396 = $$05841619;
-       $397 = $2;
-       $398 = (($396) - ($397))|0;
-       HEAP32[$spec$select>>2] = $398;
-       $$15$ph = $$1$i716967;$$sroa$0$15$ph = $$sroa$0$3;$$sroa$47$10$ph = 
$$sroa$47$2;
-       break;
-      }
-      case 165: {
-       $408 = (___errno_location()|0);
-       $409 = HEAP32[$408>>2]|0;
-       $410 = (_gpg_err_code_from_errno($409)|0);
-       $$15$ph = $410;$$sroa$0$15$ph = $$sroa$0$11962$ph;$$sroa$47$10$ph = 
$$sroa$47$8960$ph;
-       break;
-      }
-      case 167: {
-       __gcry_bug(44662,1460,44669);
-       // unreachable;
-       break;
-      }
-      case 180: {
-       $455 = $$05841619;
-       $456 = $2;
-       $457 = (($455) - ($456))|0;
-       HEAP32[$spec$select>>2] = $457;
-       $$31$ph = $$1$i718986;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 189: {
-       $498 = $$05841619;
-       $499 = $2;
-       $500 = (($498) - ($499))|0;
-       $501 = $$sroa$0$3;
-       HEAP32[$spec$select>>2] = $500;
-       $$311119 = $$1$i7201009;$$sroa$0$291118 = $$sroa$0$3;$$sroa$47$211117 = 
$$sroa$47$2;$758 = $501;
-       label = 288;
-       break L13;
-       break;
-      }
-      case 195: {
-       $513 = (___errno_location()|0);
-       $514 = HEAP32[$513>>2]|0;
-       $515 = (_gpg_err_code_from_errno($514)|0);
-       $$31 = $515;$$sroa$0$29 = $$sroa$0$171004$ph;$$sroa$47$21 = 
$$sroa$47$121003$ph;
-       label = 287;
-       break L13;
-       break;
-      }
-      case 206: {
-       $555 = $$05841619;
-       $556 = $2;
-       $557 = (($555) - ($556))|0;
-       HEAP32[$spec$select>>2] = $557;
-       $$31$ph = $$1$i7221029;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 216: {
-       $592 = $$05841619;
-       $593 = $2;
-       $594 = (($592) - ($593))|0;
-       HEAP32[$spec$select>>2] = $594;
-       $$31$ph = $$1$i7241048;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 235: {
-       $646 = $$05841619;
-       $647 = $2;
-       $648 = (($646) - ($647))|0;
-       HEAP32[$spec$select>>2] = $648;
-       $$31$ph = $$1$i7281067;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 236: {
-       $649 = $$05841619;
-       $650 = $2;
-       $651 = (($649) - ($650))|0;
-       HEAP32[$spec$select>>2] = $651;
-       $$31$ph = 201;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 239: {
-       $653 = $$05841619;
-       $654 = $2;
-       $655 = (($653) - ($654))|0;
-       HEAP32[$spec$select>>2] = $655;
-       $$31$ph = 209;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 245: {
-       $670 = $$05841619;
-       $671 = $2;
-       $672 = (($670) - ($671))|0;
-       HEAP32[$spec$select>>2] = $672;
-       $$31$ph = $$1$i7301084;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 248: {
-       $677 = $$05841619;
-       $678 = $2;
-       $679 = (($677) - ($678))|0;
-       HEAP32[$spec$select>>2] = $679;
-       $$31$ph = 209;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 254: {
-       $694 = $$05841619;
-       $695 = $2;
-       $696 = (($694) - ($695))|0;
-       HEAP32[$spec$select>>2] = $696;
-       $$31$ph = $$1$i7321099;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = 
$$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 259: {
-       $701 = $$05841619;
-       $702 = $2;
-       $703 = (($701) - ($702))|0;
-       HEAP32[$spec$select>>2] = $703;
-       $$31$ph = 208;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 261: {
-       $705 = $$05841619;
-       $706 = $2;
-       $707 = (($705) - ($706))|0;
-       HEAP32[$spec$select>>2] = $707;
-       $$31$ph = 209;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 264: {
-       $710 = $$05841619;
-       $711 = $2;
-       $712 = (($710) - ($711))|0;
-       HEAP32[$spec$select>>2] = $712;
-       $$31$ph = 207;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 268: {
-       $716 = $$05841619;
-       $717 = $2;
-       $718 = (($716) - ($717))|0;
-       HEAP32[$spec$select>>2] = $718;
-       $$31$ph = 210;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 270: {
-       $720 = $$05841619;
-       $721 = $2;
-       $722 = (($720) - ($721))|0;
-       HEAP32[$spec$select>>2] = $722;
-       $$31$ph = 210;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 272: {
-       $724 = $$05841619;
-       $725 = $2;
-       $726 = (($724) - ($725))|0;
-       HEAP32[$spec$select>>2] = $726;
-       $$31$ph = 205;$$sroa$0$29$ph = $$sroa$0$3;$$sroa$47$21$ph = $$sroa$47$2;
-       label = 284;
-       break;
-      }
-      case 275: {
-       $$sroa$81$0$ptr$le = $$sroa$81$32;
-       $$0584$lcssa = $727;$$0628$lcssa = $$1629;$$sroa$0$1$lcssa = 
$$sroa$0$27;$$sroa$47$0$lcssa = $$sroa$47$19;$$sroa$81$0$lcssa = 
$$sroa$81$32;$$sroa$81$0$ptr$lcssa = $$sroa$81$0$ptr$le;
-       break L16;
-       break;
-      }
-     }
-     if ((label|0) == 152) {
-      $$15$ph = $$10;$$sroa$0$15$ph = $$sroa$0$10;$$sroa$47$10$ph = 
$$sroa$47$7;
-     }
-     else if ((label|0) == 284) {
-      $752 = $$sroa$0$29$ph;
-      $$311119 = $$31$ph;$$sroa$0$291118 = $$sroa$0$29$ph;$$sroa$47$211117 = 
$$sroa$47$21$ph;$758 = $752;
-      label = 288;
-      break L13;
-     }
-     $$31 = $$15$ph;$$sroa$0$29 = $$sroa$0$15$ph;$$sroa$47$21 = 
$$sroa$47$10$ph;
-     label = 287;
-     break L13;
-    }
-   } while(0);
-   $730 = $$sroa$0$1$lcssa;
-   $731 = (($$sroa$81$0$lcssa) - ($$sroa$0$1$lcssa))|0;
-   $732 = (($731) + 3)|0;
-   $733 = ($732>>>0)<($$sroa$47$0$lcssa>>>0);
-   L361: do {
-    if ($733) {
-     $$sroa$0$281109$ph = $$sroa$0$1$lcssa;$$sroa$47$201108$ph = 
$$sroa$47$0$lcssa;$$sroa$81$331107$ptr$ph = $$sroa$81$0$ptr$lcssa;
-     label = 283;
-    } else {
-     $734 = (($$sroa$47$0$lcssa) + 6)|0;
-     $735 = ($$sroa$47$0$lcssa>>>0)<(4294967290);
-     do {
-      if ($735) {
-       $739 = (__gcry_realloc($730,$734)|0);
-       $740 = ($739|0)==(0|0);
-       if ($740) {
-        $743 = (___errno_location()|0);
-        $744 = HEAP32[$743>>2]|0;
-        $745 = (_gpg_err_code_from_errno($744)|0);
-        $746 = ($745|0)==(0);
-        $747 = $$0584$lcssa;
-        $748 = $2;
-        $749 = (($747) - ($748))|0;
-        if ($746) {
-         $$sroa$0$281109$ph = $$sroa$0$1$lcssa;$$sroa$47$201108$ph = 
$$sroa$47$0$lcssa;$$sroa$81$331107$ptr$ph = $$sroa$81$0$ptr$lcssa;
-         label = 283;
-         break L361;
-        } else {
-         $$1$i7361114 = $745;$750 = $749;
-         break;
-        }
-       } else {
-        $741 = (($739) + ($731)|0);
-        $742 = $739;
-        $$sroa$0$281109$ph = $742;$$sroa$47$201108$ph = 
$734;$$sroa$81$331107$ptr$ph = $741;
-        label = 283;
-        break L361;
-       }
-      } else {
-       $736 = $$0584$lcssa;
-       $737 = $2;
-       $738 = (($736) - ($737))|0;
-       $$1$i7361114 = 67;$750 = $738;
-      }
-     } while(0);
-     HEAP32[$spec$select>>2] = $750;
-     $$31$ph1947 = $$1$i7361114;$$sroa$0$29$ph1946 = 
$$sroa$0$1$lcssa;$$sroa$47$21$ph1945 = $$sroa$47$0$lcssa;
-    }
-   } while(0);
-   if ((label|0) == 283) {
-    $751 = ($$0628$lcssa|0)==(0);
-    HEAP8[$$sroa$81$331107$ptr$ph>>0] = 0;
-    if ($751) {
-     $753 = $$sroa$0$281109$ph;
-     $$sroa$0$291950 = $$sroa$0$281109$ph;$792 = $753;
-     break;
-    } else {
-     $$31$ph1947 = 203;$$sroa$0$29$ph1946 = 
$$sroa$0$281109$ph;$$sroa$47$21$ph1945 = $$sroa$47$201108$ph;
-    }
-   }
-   $754 = $$sroa$0$29$ph1946;
-   $$311119 = $$31$ph1947;$$sroa$0$291118 = 
$$sroa$0$29$ph1946;$$sroa$47$211117 = $$sroa$47$21$ph1945;$758 = $754;
-   label = 288;
-  }
- } while(0);
- if ((label|0) == 287) {
-  $755 = ($$31|0)==(0);
-  $756 = $$sroa$0$29;
-  if ($755) {
-   $$sroa$0$291950 = $$sroa$0$29;$792 = $756;
-  } else {
-   $$311119 = $$31;$$sroa$0$291118 = $$sroa$0$29;$$sroa$47$211117 = 
$$sroa$47$21;$758 = $756;
-   label = 288;
-  }
- }
- if ((label|0) == 288) {
-  $757 = ($758|0)==(0|0);
-  if ($757) {
-   $$0 = $$311119;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $759 = (__gcry_is_secure($758)|0);
-  $760 = ($759|0)==(0);
-  if (!($760)) {
-   $761 = $758;
-   $762 = $761 & 7;
-   $763 = ($762|0)!=(0);
-   $764 = ($$sroa$47$211117|0)!=(0);
-   $765 = $764 & $763;
-   if ($765) {
-    $$05751592 = $$sroa$47$211117;$$05761591 = $758;
-    while(1) {
-     HEAP8[$$05761591>>0] = 0;
-     $766 = ((($$05761591)) + 1|0);
-     $767 = (($$05751592) + -1)|0;
-     $768 = $766;
-     $769 = $768 & 7;
-     $770 = ($769|0)!=(0);
-     $771 = ($767|0)!=(0);
-     $772 = $771 & $770;
-     if ($772) {
-      $$05751592 = $767;$$05761591 = $766;
-     } else {
-      $$0575$lcssa = $767;$$0576$lcssa = $766;
-      break;
-     }
-    }
-   } else {
-    $$0575$lcssa = $$sroa$47$211117;$$0576$lcssa = $758;
-   }
-   $773 = ($$0575$lcssa>>>0)<(8);
-   if ($773) {
-    $$2 = $$0575$lcssa;$$2578 = $$0576$lcssa;
-   } else {
-    $774 = (($$0575$lcssa) + -8)|0;
-    $775 = $774 & -8;
-    $776 = (($775) + 8)|0;
-    $$1 = $$0575$lcssa;$$1577 = $$0576$lcssa;
-    while(1) {
-     $777 = $$1577;
-     $778 = $777;
-     HEAP32[$778>>2] = 0;
-     $779 = (($777) + 4)|0;
-     $780 = $779;
-     HEAP32[$780>>2] = 0;
-     $781 = (($$1) + -8)|0;
-     $782 = ((($$1577)) + 8|0);
-     $783 = ($781>>>0)>(7);
-     if ($783) {
-      $$1 = $781;$$1577 = $782;
-     } else {
-      break;
-     }
-    }
-    $784 = (($774) - ($775))|0;
-    $scevgep = (($$0576$lcssa) + ($776)|0);
-    $$2 = $784;$$2578 = $scevgep;
-   }
-   $785 = ($$2|0)==(0);
-   if (!($785)) {
-    $$31590 = $$2;$$35791589 = $$2578;
-    while(1) {
-     HEAP8[$$35791589>>0] = 0;
-     $786 = ((($$35791589)) + 1|0);
-     $787 = (($$31590) + -1)|0;
-     $788 = ($787|0)==(0);
-     if ($788) {
-      break;
-     } else {
-      $$31590 = $787;$$35791589 = $786;
-     }
-    }
-   }
-  }
-  $789 = $$sroa$0$291118;
-  __gcry_free($789);
-  $$0 = $$311119;
-  STACKTOP = sp;return ($$0|0);
- }
- $790 = ($$sroa$0$291950|0)==(0);
- L400: do {
-  if ($790) {
-   $$0$i738 = 0;
-  } else {
-   $791 = HEAP8[$792>>0]|0;
-   switch ($791<<24>>24) {
-   case 0:  {
-    __gcry_free($792);
-    $$0$i738 = 0;
-    break L400;
-    break;
-   }
-   case 3:  {
-    break;
-   }
-   default: {
-    $$0$i738 = $792;
-    break L400;
-   }
-   }
-   $793 = ((($792)) + 1|0);
-   $794 = HEAP8[$793>>0]|0;
-   $795 = ($794<<24>>24)==(4);
-   if ($795) {
-    $796 = (__gcry_is_secure($792)|0);
-    $797 = ($796|0)==(0);
-    if (!($797)) {
-     $$062$i = $792;$799 = 3;
-     while(1) {
-      $798 = ((($$062$i)) + 1|0);
-      $cond$i = ($799<<24>>24)==(1);
-      if ($cond$i) {
-       $$0$copyload$i740 = HEAPU8[$798>>0]|(HEAPU8[$798+1>>0]<<8);
-       $800 = ((($$062$i)) + 3|0);
-       $801 = $$0$copyload$i740&65535;
-       $802 = (($800) + ($801)|0);
-       $$1$i741 = $802;
-      } else {
-       $$1$i741 = $798;
-      }
-      $803 = HEAP8[$$1$i741>>0]|0;
-      $804 = ($803<<24>>24)==(0);
-      if ($804) {
-       break;
-      } else {
-       $$062$i = $$1$i741;$799 = $803;
-      }
-     }
-     $805 = $$1$i741;
-     $806 = (($805) - ($$sroa$0$291950))|0;
-     $807 = $$sroa$0$291950 & 7;
-     $808 = ($807|0)!=(0);
-     $809 = ($806|0)!=(0);
-     $810 = $808 & $809;
-     if ($810) {
-      $$04859$i = $792;$$05058$i = $806;
-      while(1) {
-       HEAP8[$$04859$i>>0] = 0;
-       $811 = ((($$04859$i)) + 1|0);
-       $812 = (($$05058$i) + -1)|0;
-       $813 = $811;
-       $814 = $813 & 7;
-       $815 = ($814|0)!=(0);
-       $816 = ($812|0)!=(0);
-       $817 = $816 & $815;
-       if ($817) {
-        $$04859$i = $811;$$05058$i = $812;
-       } else {
-        $$048$lcssa$i = $811;$$050$lcssa$i = $812;
-        break;
-       }
-      }
-     } else {
-      $$048$lcssa$i = $792;$$050$lcssa$i = $806;
-     }
-     $818 = ($$050$lcssa$i>>>0)<(8);
-     if ($818) {
-      $$2$i742 = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-     } else {
-      $819 = (($$050$lcssa$i) + -8)|0;
-      $820 = $819 & -8;
-      $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-      while(1) {
-       $821 = $$149$i;
-       $822 = $821;
-       HEAP32[$822>>2] = 0;
-       $823 = (($821) + 4)|0;
-       $824 = $823;
-       HEAP32[$824>>2] = 0;
-       $825 = (($$151$i) + -8)|0;
-       $826 = ((($$149$i)) + 8|0);
-       $827 = ($825>>>0)>(7);
-       if ($827) {
-        $$149$i = $826;$$151$i = $825;
-       } else {
-        break;
-       }
-      }
-      $828 = (($820) + 8)|0;
-      $829 = (($819) - ($820))|0;
-      $scevgep$i = (($$048$lcssa$i) + ($828)|0);
-      $$2$i742 = $scevgep$i;$$252$i = $829;
-     }
-     $830 = ($$252$i|0)==(0);
-     if (!($830)) {
-      $$35356$i = $$252$i;$$357$i = $$2$i742;
-      while(1) {
-       HEAP8[$$357$i>>0] = 0;
-       $831 = ((($$357$i)) + 1|0);
-       $832 = (($$35356$i) + -1)|0;
-       $833 = ($832|0)==(0);
-       if ($833) {
-        break;
-       } else {
-        $$35356$i = $832;$$357$i = $831;
-       }
-      }
-     }
-    }
-    __gcry_free($792);
-    $$0$i738 = 0;
-   } else {
-    $$0$i738 = $792;
-   }
-  }
- } while(0);
- HEAP32[$0>>2] = $$0$i738;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_sexp_new($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$i = 0, $$025$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $or$cond3$i = 0, $or$cond7$i = 0;
- var $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $4 = sp + 8|0;
- $5 = sp + 4|0;
- $6 = ($0|0)==(0|0);
- do {
-  if ($6) {
-   $$0$i = 45;
-  } else {
-   HEAP32[$0>>2] = 0;
-   $7 = ($3>>>0)<(2);
-   $8 = ($1|0)!=(0|0);
-   $or$cond3$i = $8 & $7;
-   if ($or$cond3$i) {
-    $9 = $3 | $2;
-    $10 = ($9|0)==(0);
-    if ($10) {
-     $11 = (__gcry_sexp_canon_len($1,0,0,$4)|0);
-     $12 = ($11|0)==(0);
-     if ($12) {
-      $13 = HEAP32[$4>>2]|0;
-      $$0$i = $13;
-      break;
-     } else {
-      $$025$i = $11;
-     }
-    } else {
-     $14 = ($3|0)!=(0);
-     $15 = ($2|0)==(0);
-     $or$cond7$i = $15 & $14;
-     if ($or$cond7$i) {
-      $16 = (_strlen($1)|0);
-      $$025$i = $16;
-     } else {
-      $$025$i = $2;
-     }
-    }
-    $17 = (_do_sexp_sscan($5,0,$1,$$025$i,0,0,$vararg_buffer)|0);
-    HEAP32[$4>>2] = $17;
-    $18 = ($17|0)==(0);
-    if ($18) {
-     $19 = HEAP32[$5>>2]|0;
-     HEAP32[$0>>2] = $19;
-     $$0$i = 0;
-    } else {
-     $$0$i = $17;
-    }
-   } else {
-    $$0$i = 45;
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$0$i|0);
-}
-function __gcry_sexp_release($0) {
- $0 = $0|0;
- var $$0$copyload = 0, $$0$lcssa = 0, $$048$lcssa = 0, $$04859 = 0, 
$$050$lcssa = 0, $$05058 = 0, $$062 = 0, $$1 = 0, $$149 = 0, $$151 = 0, $$2 = 
0, $$252 = 0, $$35356 = 0, $$357 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cond = 0, 
$scevgep = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = (__gcry_is_secure($0)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = HEAP8[$0>>0]|0;
-  $5 = ($4<<24>>24)==(0);
-  if ($5) {
-   $$0$lcssa = $0;
-  } else {
-   $$062 = $0;$7 = $4;
-   while(1) {
-    $6 = ((($$062)) + 1|0);
-    $cond = ($7<<24>>24)==(1);
-    if ($cond) {
-     $$0$copyload = HEAPU8[$6>>0]|(HEAPU8[$6+1>>0]<<8);
-     $8 = ((($$062)) + 3|0);
-     $9 = $$0$copyload&65535;
-     $10 = (($8) + ($9)|0);
-     $$1 = $10;
-    } else {
-     $$1 = $6;
-    }
-    $11 = HEAP8[$$1>>0]|0;
-    $12 = ($11<<24>>24)==(0);
-    if ($12) {
-     $$0$lcssa = $$1;
-     break;
-    } else {
-     $$062 = $$1;$7 = $11;
-    }
-   }
-  }
-  $13 = $$0$lcssa;
-  $14 = $0;
-  $15 = (($13) - ($14))|0;
-  $16 = $14 & 7;
-  $17 = ($16|0)!=(0);
-  $18 = ($15|0)!=(0);
-  $19 = $18 & $17;
-  if ($19) {
-   $$04859 = $0;$$05058 = $15;
-   while(1) {
-    HEAP8[$$04859>>0] = 0;
-    $20 = ((($$04859)) + 1|0);
-    $21 = (($$05058) + -1)|0;
-    $22 = $20;
-    $23 = $22 & 7;
-    $24 = ($23|0)!=(0);
-    $25 = ($21|0)!=(0);
-    $26 = $25 & $24;
-    if ($26) {
-     $$04859 = $20;$$05058 = $21;
-    } else {
-     $$048$lcssa = $20;$$050$lcssa = $21;
-     break;
-    }
-   }
-  } else {
-   $$048$lcssa = $0;$$050$lcssa = $15;
-  }
-  $27 = ($$050$lcssa>>>0)<(8);
-  if ($27) {
-   $$2 = $$048$lcssa;$$252 = $$050$lcssa;
-  } else {
-   $28 = (($$050$lcssa) + -8)|0;
-   $29 = $28 & -8;
-   $30 = (($29) + 8)|0;
-   $$149 = $$048$lcssa;$$151 = $$050$lcssa;
-   while(1) {
-    $31 = $$149;
-    $32 = $31;
-    HEAP32[$32>>2] = 0;
-    $33 = (($31) + 4)|0;
-    $34 = $33;
-    HEAP32[$34>>2] = 0;
-    $35 = (($$151) + -8)|0;
-    $36 = ((($$149)) + 8|0);
-    $37 = ($35>>>0)>(7);
-    if ($37) {
-     $$149 = $36;$$151 = $35;
-    } else {
-     break;
-    }
-   }
-   $38 = (($28) - ($29))|0;
-   $scevgep = (($$048$lcssa) + ($30)|0);
-   $$2 = $scevgep;$$252 = $38;
-  }
-  $39 = ($$252|0)==(0);
-  if (!($39)) {
-   $$35356 = $$252;$$357 = $$2;
-   while(1) {
-    HEAP8[$$357>>0] = 0;
-    $40 = ((($$357)) + 1|0);
-    $41 = (($$35356) + -1)|0;
-    $42 = ($41|0)==(0);
-    if ($42) {
-     break;
-    } else {
-     $$35356 = $41;$$357 = $40;
-    }
-   }
-  }
- }
- __gcry_free($0);
- return;
-}
-function __gcry_sexp_find_token($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$copyload = 0, $$0$copyload$i = 0, $$0$copyload22 = 0, $$0$copyload30 
= 0, $$0108 = 0, $$048$lcssa$i = 0, $$04859$i = 0, $$050$lcssa$i = 0, $$05058$i 
= 0, $$062$i = 0, $$068 = 0, $$069 = 0, $$069$be = 0, $$1 = 0, $$1$i = 0, 
$$149$i = 0, $$151$i = 0, $$170107 = 0, $$2$i = 0, $$252$i = 0;
- var $$271 = 0, $$35356$i = 0, $$357$i = 0, $$4 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 
= 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $9 = 0, $cond$i = 0, $scevgep$i = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($0|0)==(0|0);
- if ($3) {
-  $$4 = 0;
-  return ($$4|0);
- }
- $4 = ($2|0)==(0);
- if ($4) {
-  $5 = (_strlen($1)|0);
-  $$068 = $5;
- } else {
-  $$068 = $2;
- }
- $$069 = $0;
- L7: while(1) {
-  $6 = HEAP8[$$069>>0]|0;
-  switch ($6<<24>>24) {
-  case 0:  {
-   $$4 = 0;
-   label = 40;
-   break L7;
-   break;
-  }
-  case 3:  {
-   $7 = ((($$069)) + 1|0);
-   $8 = HEAP8[$7>>0]|0;
-   $9 = ($8<<24>>24)==(1);
-   if ($9) {
-    $10 = ((($$069)) + 2|0);
-    $$0$copyload = HEAPU8[$10>>0]|(HEAPU8[$10+1>>0]<<8);
-    $11 = ((($$069)) + 4|0);
-    $12 = $$0$copyload&65535;
-    $13 = ($$068|0)==($12|0);
-    if ($13) {
-     $14 = (_memcmp($11,$1,$$068)|0);
-     $15 = ($14|0)==(0);
-     if ($15) {
-      break L7;
-     }
-    }
-    $78 = (($11) + ($12)|0);
-    $$069$be = $78;
-   } else {
-    $$069$be = $7;
-   }
-   break;
-  }
-  default: {
-   $79 = ($6<<24>>24)==(1);
-   $80 = ((($$069)) + 1|0);
-   if ($79) {
-    $$0$copyload30 = HEAPU8[$80>>0]|(HEAPU8[$80+1>>0]<<8);
-    $81 = ((($$069)) + 3|0);
-    $82 = $$0$copyload30&65535;
-    $83 = (($81) + ($82)|0);
-    $$069$be = $83;
-   } else {
-    $$069$be = $80;
-   }
-  }
-  }
-  $$069 = $$069$be;
- }
- if ((label|0) == 40) {
-  return ($$4|0);
- }
- $16 = (($11) + ($$068)|0);
- $$0108 = 1;$$170107 = $16;
- L21: while(1) {
-  $17 = HEAP8[$$170107>>0]|0;
-  switch ($17<<24>>24) {
-  case 0:  {
-   label = 15;
-   break L21;
-   break;
-  }
-  case 1:  {
-   $18 = ((($$170107)) + 1|0);
-   $$0$copyload22 = HEAPU8[$18>>0]|(HEAPU8[$18+1>>0]<<8);
-   $19 = $$0$copyload22&65535;
-   $20 = (($19) + 2)|0;
-   $21 = (($18) + ($20)|0);
-   $22 = ((($21)) + -1|0);
-   $$1 = $$0108;$$271 = $22;
-   break;
-  }
-  case 3:  {
-   $23 = (($$0108) + 1)|0;
-   $$1 = $23;$$271 = $$170107;
-   break;
-  }
-  case 4:  {
-   $24 = (($$0108) + -1)|0;
-   $$1 = $24;$$271 = $$170107;
-   break;
-  }
-  default: {
-   $$1 = $$0108;$$271 = $$170107;
-  }
-  }
-  $25 = ((($$271)) + 1|0);
-  $26 = ($$1|0)==(0);
-  if ($26) {
-   break;
-  } else {
-   $$0108 = $$1;$$170107 = $25;
-  }
- }
- if ((label|0) == 15) {
-  __gcry_bug(44662,481,44693);
-  // unreachable;
- }
- $27 = $25;
- $28 = $$069;
- $29 = (($27) - ($28))|0;
- $30 = $29 & 65535;
- $31 = (($30) + 1)|0;
- $32 = (__gcry_malloc($31)|0);
- $33 = ($32|0)==(0|0);
- if ($33) {
-  $$4 = 0;
-  return ($$4|0);
- }
- _memcpy(($32|0),($$069|0),($30|0))|0;
- $34 = (($32) + ($30)|0);
- HEAP8[$34>>0] = 0;
- $35 = HEAP8[$32>>0]|0;
- switch ($35<<24>>24) {
- case 0:  {
-  __gcry_free($32);
-  $$4 = 0;
-  return ($$4|0);
-  break;
- }
- case 3:  {
-  $36 = ((($32)) + 1|0);
-  $37 = HEAP8[$36>>0]|0;
-  $38 = ($37<<24>>24)==(4);
-  if (!($38)) {
-   $$4 = $32;
-   return ($$4|0);
-  }
-  $39 = (__gcry_is_secure($32)|0);
-  $40 = ($39|0)==(0);
-  if (!($40)) {
-   $$062$i = $32;$42 = 3;
-   while(1) {
-    $41 = ((($$062$i)) + 1|0);
-    $cond$i = ($42<<24>>24)==(1);
-    if ($cond$i) {
-     $$0$copyload$i = HEAPU8[$41>>0]|(HEAPU8[$41+1>>0]<<8);
-     $43 = ((($$062$i)) + 3|0);
-     $44 = $$0$copyload$i&65535;
-     $45 = (($43) + ($44)|0);
-     $$1$i = $45;
-    } else {
-     $$1$i = $41;
-    }
-    $46 = HEAP8[$$1$i>>0]|0;
-    $47 = ($46<<24>>24)==(0);
-    if ($47) {
-     break;
-    } else {
-     $$062$i = $$1$i;$42 = $46;
-    }
-   }
-   $48 = $$1$i;
-   $49 = $32;
-   $50 = (($48) - ($49))|0;
-   $51 = $49 & 7;
-   $52 = ($51|0)!=(0);
-   $53 = ($50|0)!=(0);
-   $54 = $52 & $53;
-   if ($54) {
-    $$04859$i = $32;$$05058$i = $50;
-    while(1) {
-     HEAP8[$$04859$i>>0] = 0;
-     $55 = ((($$04859$i)) + 1|0);
-     $56 = (($$05058$i) + -1)|0;
-     $57 = $55;
-     $58 = $57 & 7;
-     $59 = ($58|0)!=(0);
-     $60 = ($56|0)!=(0);
-     $61 = $60 & $59;
-     if ($61) {
-      $$04859$i = $55;$$05058$i = $56;
-     } else {
-      $$048$lcssa$i = $55;$$050$lcssa$i = $56;
-      break;
-     }
-    }
-   } else {
-    $$048$lcssa$i = $32;$$050$lcssa$i = $50;
-   }
-   $62 = ($$050$lcssa$i>>>0)<(8);
-   if ($62) {
-    $$2$i = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-   } else {
-    $63 = (($$050$lcssa$i) + -8)|0;
-    $64 = $63 & -8;
-    $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-    while(1) {
-     $65 = $$149$i;
-     $66 = $65;
-     HEAP32[$66>>2] = 0;
-     $67 = (($65) + 4)|0;
-     $68 = $67;
-     HEAP32[$68>>2] = 0;
-     $69 = (($$151$i) + -8)|0;
-     $70 = ((($$149$i)) + 8|0);
-     $71 = ($69>>>0)>(7);
-     if ($71) {
-      $$149$i = $70;$$151$i = $69;
-     } else {
-      break;
-     }
-    }
-    $72 = (($64) + 8)|0;
-    $73 = (($63) - ($64))|0;
-    $scevgep$i = (($$048$lcssa$i) + ($72)|0);
-    $$2$i = $scevgep$i;$$252$i = $73;
-   }
-   $74 = ($$252$i|0)==(0);
-   if (!($74)) {
-    $$35356$i = $$252$i;$$357$i = $$2$i;
-    while(1) {
-     HEAP8[$$357$i>>0] = 0;
-     $75 = ((($$357$i)) + 1|0);
-     $76 = (($$35356$i) + -1)|0;
-     $77 = ($76|0)==(0);
-     if ($77) {
-      break;
-     } else {
-      $$35356$i = $76;$$357$i = $75;
-     }
-    }
-   }
-  }
-  __gcry_free($32);
-  $$4 = 0;
-  return ($$4|0);
-  break;
- }
- default: {
-  $$4 = $32;
-  return ($$4|0);
- }
- }
- return (0)|0;
-}
-function __gcry_sexp_length($0) {
- $0 = $0|0;
- var $$0$copyload = 0, $$02633 = 0, $$028 = 0, $$02932 = 0, $$034 = 0, $$1 = 
0, $$130 = 0, $$2 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, $spec$select31 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $$028 = 0;
-  return ($$028|0);
- }
- $2 = HEAP8[$0>>0]|0;
- $3 = ($2<<24>>24)==(0);
- if ($3) {
-  $$028 = 0;
-  return ($$028|0);
- }
- $$02633 = 0;$$02932 = $0;$$034 = 0;$5 = $2;
- while(1) {
-  $4 = ((($$02932)) + 1|0);
-  switch ($5<<24>>24) {
-  case 1:  {
-   $$0$copyload = HEAPU8[$4>>0]|(HEAPU8[$4+1>>0]<<8);
-   $6 = $$0$copyload&65535;
-   $7 = (($6) + 2)|0;
-   $8 = (($4) + ($7)|0);
-   $9 = ($$034|0)==(1);
-   $10 = $9&1;
-   $spec$select = (($$02633) + ($10))|0;
-   $$1 = $$034;$$130 = $8;$$2 = $spec$select;
-   break;
-  }
-  case 3:  {
-   $11 = ($$034|0)==(1);
-   $12 = $11&1;
-   $spec$select31 = (($$02633) + ($12))|0;
-   $13 = (($$034) + 1)|0;
-   $$1 = $13;$$130 = $4;$$2 = $spec$select31;
-   break;
-  }
-  case 4:  {
-   $14 = (($$034) + -1)|0;
-   $$1 = $14;$$130 = $4;$$2 = $$02633;
-   break;
-  }
-  default: {
-   $$1 = $$034;$$130 = $4;$$2 = $$02633;
-  }
-  }
-  $15 = HEAP8[$$130>>0]|0;
-  $16 = ($15<<24>>24)==(0);
-  if ($16) {
-   $$028 = $$2;
-   break;
-  } else {
-   $$02633 = $$2;$$02932 = $$130;$$034 = $$1;$5 = $15;
-  }
- }
- return ($$028|0);
-}
-function __gcry_sexp_nth($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$$sroa_idx31 = 0, $$0$copyload = 0, $$0$copyload$i = 0, $$0$copyload33 
= 0, $$0$copyload39 = 0, $$048$lcssa$i = 0, $$04859$i = 0, $$050$lcssa$i = 0, 
$$05058$i = 0, $$062$i = 0, $$076124 = 0, $$078113$in133 = 0, $$078113135 = 0, 
$$079$lcssa = 0, $$079123 = 0, $$083122 = 0, $$1 = 0, $$1$i = 0, $$149$i = 0, 
$$151$i = 0;
- var $$177 = 0, $$180 = 0, $$184 = 0, $$2 = 0, $$2$i = 0, $$252$i = 0, $$281 = 
0, $$3 = 0, $$35356$i = 0, $$357$i = 0, $$382 = 0, $$lcssa115 = 0, $$lcssa117 = 
0, $$lcssa119 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $cond$i = 0, $scevgep$i = 0, $spec$select = 0, $spec$select85 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $3 = HEAP8[$0>>0]|0;
- $4 = ($3<<24>>24)==(3);
- if (!($4)) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $5 = ($1|0)>(0);
- $6 = ((($0)) + 1|0);
- $7 = HEAP8[$6>>0]|0;
- $8 = ($7<<24>>24)==(1);
- L7: do {
-  if ($5) {
-   $$076124 = 0;$$079123 = $0;$$083122 = $1;$16 = $7;$95 = $8;$96 = $6;
-   L9: while(1) {
-    L11: do {
-     if ($95) {
-      $9 = ((($$079123)) + 2|0);
-      $$0$copyload = HEAPU8[$9>>0]|(HEAPU8[$9+1>>0]<<8);
-      $10 = $$0$copyload&65535;
-      $11 = (($10) + 2)|0;
-      $12 = (($9) + ($11)|0);
-      $13 = ((($12)) + -1|0);
-      $14 = ($$076124|0)==(0);
-      $15 = $14 << 31 >> 31;
-      $spec$select = (($$083122) + ($15))|0;
-      $$177 = $$076124;$$180 = $13;$$184 = $spec$select;
-     } else {
-      switch ($16<<24>>24) {
-      case 0:  {
-       $$1 = 0;
-       break L9;
-       break;
-      }
-      case 3:  {
-       $17 = (($$076124) + 1)|0;
-       $$177 = $17;$$180 = $96;$$184 = $$083122;
-       break L11;
-       break;
-      }
-      case 4:  {
-       $18 = (($$076124) + -1)|0;
-       $19 = ($18|0)==(0);
-       $20 = $19 << 31 >> 31;
-       $spec$select85 = (($$083122) + ($20))|0;
-       $$177 = $18;$$180 = $96;$$184 = $spec$select85;
-       break L11;
-       break;
-      }
-      default: {
-       $$177 = $$076124;$$180 = $96;$$184 = $$083122;
-       break L11;
-      }
-      }
-     }
-    } while(0);
-    $21 = ($$184|0)>(0);
-    $22 = ((($$180)) + 1|0);
-    $23 = HEAP8[$22>>0]|0;
-    $24 = ($23<<24>>24)==(1);
-    if ($21) {
-     $$076124 = $$177;$$079123 = $$180;$$083122 = $$184;$16 = $23;$95 = 
$24;$96 = $22;
-    } else {
-     $$079$lcssa = $$180;$$lcssa115 = $24;$$lcssa117 = $23;$$lcssa119 = $22;
-     break L7;
-    }
-   }
-   return ($$1|0);
-  } else {
-   $$079$lcssa = $0;$$lcssa115 = $8;$$lcssa117 = $7;$$lcssa119 = $6;
-  }
- } while(0);
- L20: do {
-  if ($$lcssa115) {
-   $$0$$sroa_idx31 = ((($$079$lcssa)) + 2|0);
-   $$0$copyload33 = 
HEAPU8[$$0$$sroa_idx31>>0]|(HEAPU8[$$0$$sroa_idx31+1>>0]<<8);
-   $25 = $$0$copyload33&65535;
-   $26 = (($25) + 6)|0;
-   $27 = (__gcry_malloc($26)|0);
-   $28 = ($27|0)==(0|0);
-   if ($28) {
-    $$1 = 0;
-    return ($$1|0);
-   } else {
-    $48 = ((($27)) + 1|0);
-    HEAP8[$27>>0] = 3;
-    $49 = (($25) + 3)|0;
-    _memcpy(($48|0),($$lcssa119|0),($49|0))|0;
-    $50 = (($48) + ($49)|0);
-    $51 = ((($50)) + 1|0);
-    HEAP8[$50>>0] = 4;
-    HEAP8[$51>>0] = 0;
-    $$078113$in133 = $27;$$078113135 = $27;
-    break;
-   }
-  } else {
-   $29 = ($$lcssa117<<24>>24)==(3);
-   if (!($29)) {
-    $$1 = 0;
-    return ($$1|0);
-   }
-   $$2 = 1;$$281 = $$lcssa119;
-   L29: while(1) {
-    $30 = ((($$281)) + 1|0);
-    $31 = HEAP8[$30>>0]|0;
-    switch ($31<<24>>24) {
-    case 0:  {
-     label = 19;
-     break L29;
-     break;
-    }
-    case 1:  {
-     $32 = ((($$281)) + 2|0);
-     $$0$copyload39 = HEAPU8[$32>>0]|(HEAPU8[$32+1>>0]<<8);
-     $33 = $$0$copyload39&65535;
-     $34 = (($33) + 2)|0;
-     $35 = (($32) + ($34)|0);
-     $36 = ((($35)) + -1|0);
-     $$3 = $$2;$$382 = $36;
-     break;
-    }
-    case 3:  {
-     $37 = (($$2) + 1)|0;
-     $$3 = $37;$$382 = $30;
-     break;
-    }
-    case 4:  {
-     $38 = (($$2) + -1)|0;
-     $$3 = $38;$$382 = $30;
-     break;
-    }
-    default: {
-     $$3 = $$2;$$382 = $30;
-    }
-    }
-    $39 = ($$3|0)==(0);
-    if ($39) {
-     break;
-    } else {
-     $$2 = $$3;$$281 = $$382;
-    }
-   }
-   if ((label|0) == 19) {
-    __gcry_bug(44662,673,44715);
-    // unreachable;
-   }
-   $40 = ((($$382)) + 1|0);
-   $41 = $40;
-   $42 = $$lcssa119;
-   $43 = (($41) - ($42))|0;
-   $44 = $43 & 65535;
-   $45 = (($44) + 1)|0;
-   $46 = (__gcry_malloc($45)|0);
-   $47 = ($46|0)==(0|0);
-   if ($47) {
-    $$1 = 0;
-    return ($$1|0);
-   }
-   _memcpy(($46|0),($$lcssa119|0),($44|0))|0;
-   $52 = (($46) + ($44)|0);
-   HEAP8[$52>>0] = 0;
-   $$pre = HEAP8[$46>>0]|0;
-   switch ($$pre<<24>>24) {
-   case 3:  {
-    $$078113$in133 = $46;$$078113135 = $46;
-    break L20;
-    break;
-   }
-   case 0:  {
-    break;
-   }
-   default: {
-    $$1 = $46;
-    return ($$1|0);
-   }
-   }
-   __gcry_free($46);
-   $$1 = 0;
-   return ($$1|0);
-  }
- } while(0);
- $53 = ((($$078113$in133)) + 1|0);
- $54 = HEAP8[$53>>0]|0;
- $55 = ($54<<24>>24)==(4);
- if (!($55)) {
-  $$1 = $$078113135;
-  return ($$1|0);
- }
- $56 = (__gcry_is_secure($$078113$in133)|0);
- $57 = ($56|0)==(0);
- if (!($57)) {
-  $$062$i = $$078113$in133;$59 = 3;
-  while(1) {
-   $58 = ((($$062$i)) + 1|0);
-   $cond$i = ($59<<24>>24)==(1);
-   if ($cond$i) {
-    $$0$copyload$i = HEAPU8[$58>>0]|(HEAPU8[$58+1>>0]<<8);
-    $60 = ((($$062$i)) + 3|0);
-    $61 = $$0$copyload$i&65535;
-    $62 = (($60) + ($61)|0);
-    $$1$i = $62;
-   } else {
-    $$1$i = $58;
-   }
-   $63 = HEAP8[$$1$i>>0]|0;
-   $64 = ($63<<24>>24)==(0);
-   if ($64) {
-    break;
-   } else {
-    $$062$i = $$1$i;$59 = $63;
-   }
-  }
-  $65 = $$1$i;
-  $66 = $$078113$in133;
-  $67 = (($65) - ($66))|0;
-  $68 = $66 & 7;
-  $69 = ($68|0)!=(0);
-  $70 = ($67|0)!=(0);
-  $71 = $69 & $70;
-  if ($71) {
-   $$04859$i = $$078113$in133;$$05058$i = $67;
-   while(1) {
-    HEAP8[$$04859$i>>0] = 0;
-    $72 = ((($$04859$i)) + 1|0);
-    $73 = (($$05058$i) + -1)|0;
-    $74 = $72;
-    $75 = $74 & 7;
-    $76 = ($75|0)!=(0);
-    $77 = ($73|0)!=(0);
-    $78 = $77 & $76;
-    if ($78) {
-     $$04859$i = $72;$$05058$i = $73;
-    } else {
-     $$048$lcssa$i = $72;$$050$lcssa$i = $73;
-     break;
-    }
-   }
-  } else {
-   $$048$lcssa$i = $$078113$in133;$$050$lcssa$i = $67;
-  }
-  $79 = ($$050$lcssa$i>>>0)<(8);
-  if ($79) {
-   $$2$i = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-  } else {
-   $80 = (($$050$lcssa$i) + -8)|0;
-   $81 = $80 & -8;
-   $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-   while(1) {
-    $82 = $$149$i;
-    $83 = $82;
-    HEAP32[$83>>2] = 0;
-    $84 = (($82) + 4)|0;
-    $85 = $84;
-    HEAP32[$85>>2] = 0;
-    $86 = (($$151$i) + -8)|0;
-    $87 = ((($$149$i)) + 8|0);
-    $88 = ($86>>>0)>(7);
-    if ($88) {
-     $$149$i = $87;$$151$i = $86;
-    } else {
-     break;
-    }
-   }
-   $89 = (($81) + 8)|0;
-   $90 = (($80) - ($81))|0;
-   $scevgep$i = (($$048$lcssa$i) + ($89)|0);
-   $$2$i = $scevgep$i;$$252$i = $90;
-  }
-  $91 = ($$252$i|0)==(0);
-  if (!($91)) {
-   $$35356$i = $$252$i;$$357$i = $$2$i;
-   while(1) {
-    HEAP8[$$357$i>>0] = 0;
-    $92 = ((($$357$i)) + 1|0);
-    $93 = (($$35356$i) + -1)|0;
-    $94 = ($93|0)==(0);
-    if ($94) {
-     break;
-    } else {
-     $$35356$i = $93;$$357$i = $92;
-    }
-   }
-  }
- }
- __gcry_free($$078113$in133);
- $$1 = 0;
- return ($$1|0);
-}
-function __gcry_sexp_nth_data($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$copyload$i = 0, $$0$copyload9$i = 0, $$036$i = 0, $$03742$i = 0, 
$$044$i = 0, $$1$i = 0, $$135$lcssa$i = 0, $$135$lcssa48$i = 0, $$13543$i = 0, 
$$138$i = 0, $$2$i = 0, $$lcssa$i = 0, $$pre$i = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $or$cond$i = 0, $spec$select$i = 0, $spec$select39$i = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- HEAP32[$2>>2] = 0;
- $3 = ($0|0)==(0|0);
- if ($3) {
-  $$036$i = 0;
-  return ($$036$i|0);
- }
- $4 = HEAP8[$0>>0]|0;
- $5 = ($4<<24>>24)==(3);
- if ($5) {
-  $8 = ((($0)) + 1|0);
-  $$pre$i = HEAP8[$8>>0]|0;
-  $9 = ($1|0)>(0);
-  $10 = ($$pre$i<<24>>24)==(1);
-  L6: do {
-   if ($9) {
-    $$03742$i = $1;$$044$i = 0;$$13543$i = $8;$18 = $$pre$i;$30 = $10;
-    L8: while(1) {
-     L10: do {
-      if ($30) {
-       $11 = ((($$13543$i)) + 1|0);
-       $$0$copyload$i = HEAPU8[$11>>0]|(HEAPU8[$11+1>>0]<<8);
-       $12 = $$0$copyload$i&65535;
-       $13 = (($12) + 2)|0;
-       $14 = (($11) + ($13)|0);
-       $15 = ((($14)) + -1|0);
-       $16 = ($$044$i|0)==(0);
-       $17 = $16 << 31 >> 31;
-       $spec$select$i = (($$03742$i) + ($17))|0;
-       $$1$i = $$044$i;$$138$i = $spec$select$i;$$2$i = $15;
-      } else {
-       switch ($18<<24>>24) {
-       case 0:  {
-        $$036$i = 0;
-        break L8;
-        break;
-       }
-       case 3:  {
-        $19 = (($$044$i) + 1)|0;
-        $$1$i = $19;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       case 4:  {
-        $20 = (($$044$i) + -1)|0;
-        $21 = ($20|0)==(0);
-        $22 = $21 << 31 >> 31;
-        $spec$select39$i = (($$03742$i) + ($22))|0;
-        $$1$i = $20;$$138$i = $spec$select39$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       default: {
-        $$1$i = $$044$i;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-       }
-       }
-      }
-     } while(0);
-     $23 = ((($$2$i)) + 1|0);
-     $24 = ($$138$i|0)>(0);
-     $25 = HEAP8[$23>>0]|0;
-     $26 = ($25<<24>>24)==(1);
-     if ($24) {
-      $$03742$i = $$138$i;$$044$i = $$1$i;$$13543$i = $23;$18 = $25;$30 = $26;
-     } else {
-      $$135$lcssa$i = $23;$$lcssa$i = $26;
-      break L6;
-     }
-    }
-    return ($$036$i|0);
-   } else {
-    $$135$lcssa$i = $8;$$lcssa$i = $10;
-   }
-  } while(0);
-  if ($$lcssa$i) {
-   $$135$lcssa48$i = $$135$lcssa$i;
-  } else {
-   $$036$i = 0;
-   return ($$036$i|0);
-  }
- } else {
-  $6 = ($1|0)==(0);
-  $7 = ($4<<24>>24)==(1);
-  $or$cond$i = $6 & $7;
-  if ($or$cond$i) {
-   $$135$lcssa48$i = $0;
-  } else {
-   $$036$i = 0;
-   return ($$036$i|0);
-  }
- }
- $27 = ((($$135$lcssa48$i)) + 1|0);
- $$0$copyload9$i = HEAPU8[$27>>0]|(HEAPU8[$27+1>>0]<<8);
- $28 = $$0$copyload9$i&65535;
- HEAP32[$2>>2] = $28;
- $29 = ((($$135$lcssa48$i)) + 3|0);
- $$036$i = $29;
- return ($$036$i|0);
-}
-function __gcry_sexp_nth_buffer($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$copyload$i = 0, $$0$copyload9$i = 0, $$03742$i = 0, $$044$i 
= 0, $$1$i = 0, $$135$lcssa$i = 0, $$135$lcssa48$i = 0, $$13543$i = 0, $$138$i 
= 0, $$2$i = 0, $$lcssa$i = 0, $$pre$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond$i = 0, $spec$select$i = 0, 
$spec$select39$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[$2>>2] = 0;
- $3 = ($0|0)==(0|0);
- if ($3) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $4 = HEAP8[$0>>0]|0;
- $5 = ($4<<24>>24)==(3);
- if ($5) {
-  $8 = ((($0)) + 1|0);
-  $$pre$i = HEAP8[$8>>0]|0;
-  $9 = ($1|0)>(0);
-  $10 = ($$pre$i<<24>>24)==(1);
-  L6: do {
-   if ($9) {
-    $$03742$i = $1;$$044$i = 0;$$13543$i = $8;$18 = $$pre$i;$33 = $10;
-    L8: while(1) {
-     L10: do {
-      if ($33) {
-       $11 = ((($$13543$i)) + 1|0);
-       $$0$copyload$i = HEAPU8[$11>>0]|(HEAPU8[$11+1>>0]<<8);
-       $12 = $$0$copyload$i&65535;
-       $13 = (($12) + 2)|0;
-       $14 = (($11) + ($13)|0);
-       $15 = ((($14)) + -1|0);
-       $16 = ($$044$i|0)==(0);
-       $17 = $16 << 31 >> 31;
-       $spec$select$i = (($$03742$i) + ($17))|0;
-       $$1$i = $$044$i;$$138$i = $spec$select$i;$$2$i = $15;
-      } else {
-       switch ($18<<24>>24) {
-       case 0:  {
-        $$0 = 0;
-        break L8;
-        break;
-       }
-       case 3:  {
-        $19 = (($$044$i) + 1)|0;
-        $$1$i = $19;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       case 4:  {
-        $20 = (($$044$i) + -1)|0;
-        $21 = ($20|0)==(0);
-        $22 = $21 << 31 >> 31;
-        $spec$select39$i = (($$03742$i) + ($22))|0;
-        $$1$i = $20;$$138$i = $spec$select39$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       default: {
-        $$1$i = $$044$i;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-       }
-       }
-      }
-     } while(0);
-     $23 = ((($$2$i)) + 1|0);
-     $24 = ($$138$i|0)>(0);
-     $25 = HEAP8[$23>>0]|0;
-     $26 = ($25<<24>>24)==(1);
-     if ($24) {
-      $$03742$i = $$138$i;$$044$i = $$1$i;$$13543$i = $23;$18 = $25;$33 = $26;
-     } else {
-      $$135$lcssa$i = $23;$$lcssa$i = $26;
-      break L6;
-     }
-    }
-    return ($$0|0);
-   } else {
-    $$135$lcssa$i = $8;$$lcssa$i = $10;
-   }
-  } while(0);
-  if ($$lcssa$i) {
-   $$135$lcssa48$i = $$135$lcssa$i;
-  } else {
-   $$0 = 0;
-   return ($$0|0);
-  }
- } else {
-  $6 = ($1|0)==(0);
-  $7 = ($4<<24>>24)==(1);
-  $or$cond$i = $6 & $7;
-  if ($or$cond$i) {
-   $$135$lcssa48$i = $0;
-  } else {
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $27 = ((($$135$lcssa48$i)) + 1|0);
- $$0$copyload9$i = HEAPU8[$27>>0]|(HEAPU8[$27+1>>0]<<8);
- $28 = $$0$copyload9$i&65535;
- $29 = ((($$135$lcssa48$i)) + 3|0);
- $30 = ($$0$copyload9$i<<16>>16)==(0);
- if ($30) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $31 = (__gcry_malloc($28)|0);
- $32 = ($31|0)==(0|0);
- if ($32) {
-  $$0 = 0;
-  return ($$0|0);
- }
- _memcpy(($31|0),($29|0),($28|0))|0;
- HEAP32[$2>>2] = $28;
- $$0 = $31;
- return ($$0|0);
-}
-function __gcry_sexp_nth_string($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$copyload$i = 0, $$0$copyload9$i = 0, $$03742$i = 0, $$044$i 
= 0, $$1$i = 0, $$135$lcssa$i = 0, $$135$lcssa48$i = 0, $$13543$i = 0, $$138$i 
= 0, $$2$i = 0, $$lcssa$i = 0, $$pre$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond$i = 0, 
$spec$select$i = 0, $spec$select39$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $3 = HEAP8[$0>>0]|0;
- $4 = ($3<<24>>24)==(3);
- if ($4) {
-  $7 = ((($0)) + 1|0);
-  $$pre$i = HEAP8[$7>>0]|0;
-  $8 = ($1|0)>(0);
-  $9 = ($$pre$i<<24>>24)==(1);
-  L6: do {
-   if ($8) {
-    $$03742$i = $1;$$044$i = 0;$$13543$i = $7;$17 = $$pre$i;$34 = $9;
-    L8: while(1) {
-     L10: do {
-      if ($34) {
-       $10 = ((($$13543$i)) + 1|0);
-       $$0$copyload$i = HEAPU8[$10>>0]|(HEAPU8[$10+1>>0]<<8);
-       $11 = $$0$copyload$i&65535;
-       $12 = (($11) + 2)|0;
-       $13 = (($10) + ($12)|0);
-       $14 = ((($13)) + -1|0);
-       $15 = ($$044$i|0)==(0);
-       $16 = $15 << 31 >> 31;
-       $spec$select$i = (($$03742$i) + ($16))|0;
-       $$1$i = $$044$i;$$138$i = $spec$select$i;$$2$i = $14;
-      } else {
-       switch ($17<<24>>24) {
-       case 0:  {
-        $$0 = 0;
-        break L8;
-        break;
-       }
-       case 3:  {
-        $18 = (($$044$i) + 1)|0;
-        $$1$i = $18;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       case 4:  {
-        $19 = (($$044$i) + -1)|0;
-        $20 = ($19|0)==(0);
-        $21 = $20 << 31 >> 31;
-        $spec$select39$i = (($$03742$i) + ($21))|0;
-        $$1$i = $19;$$138$i = $spec$select39$i;$$2$i = $$13543$i;
-        break L10;
-        break;
-       }
-       default: {
-        $$1$i = $$044$i;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L10;
-       }
-       }
-      }
-     } while(0);
-     $22 = ((($$2$i)) + 1|0);
-     $23 = ($$138$i|0)>(0);
-     $24 = HEAP8[$22>>0]|0;
-     $25 = ($24<<24>>24)==(1);
-     if ($23) {
-      $$03742$i = $$138$i;$$044$i = $$1$i;$$13543$i = $22;$17 = $24;$34 = $25;
-     } else {
-      $$135$lcssa$i = $22;$$lcssa$i = $25;
-      break L6;
-     }
-    }
-    return ($$0|0);
-   } else {
-    $$135$lcssa$i = $7;$$lcssa$i = $9;
-   }
-  } while(0);
-  if ($$lcssa$i) {
-   $$135$lcssa48$i = $$135$lcssa$i;
-  } else {
-   $$0 = 0;
-   return ($$0|0);
-  }
- } else {
-  $5 = ($1|0)==(0);
-  $6 = ($3<<24>>24)==(1);
-  $or$cond$i = $5 & $6;
-  if ($or$cond$i) {
-   $$135$lcssa48$i = $0;
-  } else {
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $26 = ((($$135$lcssa48$i)) + 1|0);
- $$0$copyload9$i = HEAPU8[$26>>0]|(HEAPU8[$26+1>>0]<<8);
- $27 = $$0$copyload9$i&65535;
- $28 = ((($$135$lcssa48$i)) + 3|0);
- $29 = ($$0$copyload9$i<<16>>16)==(0);
- if ($29) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $30 = (($27) + 1)|0;
- $31 = (__gcry_malloc($30)|0);
- $32 = ($31|0)==(0|0);
- if ($32) {
-  $$0 = 0;
-  return ($$0|0);
- }
- _memcpy(($31|0),($28|0),($27|0))|0;
- $33 = (($31) + ($27)|0);
- HEAP8[$33>>0] = 0;
- $$0 = $31;
- return ($$0|0);
-}
-function __gcry_sexp_nth_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$copyload$i = 0, $$0$copyload$i$i = 0, $$0$copyload9$i = 0, 
$$0$copyload9$i$i = 0, $$021 = 0, $$03742$i = 0, $$03742$i$i = 0, $$044$i = 0, 
$$044$i$i = 0, $$1$i = 0, $$1$i$i = 0, $$135$lcssa$i = 0, $$135$lcssa$i$i = 0, 
$$135$lcssa48$i = 0, $$135$lcssa48$i$i = 0, $$13543$i = 0, $$13543$i$i = 0, 
$$138$i = 0, $$138$i$i = 0, $$2 = 0;
- var $$2$i = 0, $$2$i$i = 0, $$lcssa$i = 0, $$lcssa$i$i = 0, $$pre = 0, 
$$pre$i = 0, $$pre$i$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $or$cond$i 
= 0, $or$cond$i$i = 0, $spec$select = 0, $spec$select$i = 0;
- var $spec$select$i$i = 0, $spec$select39$i = 0, $spec$select39$i$i = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- switch ($2|0) {
- case 8:  {
-  $4 = ($0|0)==(0|0);
-  if ($4) {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  }
-  $5 = HEAP8[$0>>0]|0;
-  $6 = ($5<<24>>24)==(3);
-  if ($6) {
-   $9 = ((($0)) + 1|0);
-   $$pre$i$i = HEAP8[$9>>0]|0;
-   $10 = ($1|0)>(0);
-   $11 = ($$pre$i$i<<24>>24)==(1);
-   L8: do {
-    if ($10) {
-     $$03742$i$i = $1;$$044$i$i = 0;$$13543$i$i = $9;$19 = $$pre$i$i;$70 = $11;
-     L10: while(1) {
-      L12: do {
-       if ($70) {
-        $12 = ((($$13543$i$i)) + 1|0);
-        $$0$copyload$i$i = HEAPU8[$12>>0]|(HEAPU8[$12+1>>0]<<8);
-        $13 = $$0$copyload$i$i&65535;
-        $14 = (($13) + 2)|0;
-        $15 = (($12) + ($14)|0);
-        $16 = ((($15)) + -1|0);
-        $17 = ($$044$i$i|0)==(0);
-        $18 = $17 << 31 >> 31;
-        $spec$select$i$i = (($$03742$i$i) + ($18))|0;
-        $$1$i$i = $$044$i$i;$$138$i$i = $spec$select$i$i;$$2$i$i = $16;
-       } else {
-        switch ($19<<24>>24) {
-        case 0:  {
-         $$2 = 0;
-         break L10;
-         break;
-        }
-        case 3:  {
-         $20 = (($$044$i$i) + 1)|0;
-         $$1$i$i = $20;$$138$i$i = $$03742$i$i;$$2$i$i = $$13543$i$i;
-         break L12;
-         break;
-        }
-        case 4:  {
-         $21 = (($$044$i$i) + -1)|0;
-         $22 = ($21|0)==(0);
-         $23 = $22 << 31 >> 31;
-         $spec$select39$i$i = (($$03742$i$i) + ($23))|0;
-         $$1$i$i = $21;$$138$i$i = $spec$select39$i$i;$$2$i$i = $$13543$i$i;
-         break L12;
-         break;
-        }
-        default: {
-         $$1$i$i = $$044$i$i;$$138$i$i = $$03742$i$i;$$2$i$i = $$13543$i$i;
-         break L12;
-        }
-        }
-       }
-      } while(0);
-      $24 = ((($$2$i$i)) + 1|0);
-      $25 = ($$138$i$i|0)>(0);
-      $26 = HEAP8[$24>>0]|0;
-      $27 = ($26<<24>>24)==(1);
-      if ($25) {
-       $$03742$i$i = $$138$i$i;$$044$i$i = $$1$i$i;$$13543$i$i = $24;$19 = 
$26;$70 = $27;
-      } else {
-       $$135$lcssa$i$i = $24;$$lcssa$i$i = $27;
-       break L8;
-      }
-     }
-     STACKTOP = sp;return ($$2|0);
-    } else {
-     $$135$lcssa$i$i = $9;$$lcssa$i$i = $11;
-    }
-   } while(0);
-   if ($$lcssa$i$i) {
-    $$135$lcssa48$i$i = $$135$lcssa$i$i;
-   } else {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-  } else {
-   $7 = ($1|0)==(0);
-   $8 = ($5<<24>>24)==(1);
-   $or$cond$i$i = $7 & $8;
-   if ($or$cond$i$i) {
-    $$135$lcssa48$i$i = $0;
-   } else {
-    $$2 = 0;
-    STACKTOP = sp;return ($$2|0);
-   }
-  }
-  $28 = ((($$135$lcssa48$i$i)) + 1|0);
-  $$0$copyload9$i$i = HEAPU8[$28>>0]|(HEAPU8[$28+1>>0]<<8);
-  $29 = $$0$copyload9$i$i&65535;
-  $30 = ((($$135$lcssa48$i$i)) + 3|0);
-  $31 = ($$0$copyload9$i$i<<16>>16)==(0);
-  if ($31) {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  }
-  $32 = (__gcry_malloc($29)|0);
-  $33 = ($32|0)==(0|0);
-  if ($33) {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  }
-  _memcpy(($32|0),($30|0),($29|0))|0;
-  $34 = (__gcry_is_secure($0)|0);
-  $35 = ($34|0)==(0);
-  if ($35) {
-   $37 = (__gcry_mpi_new(0)|0);
-   $38 = $37;
-  } else {
-   $36 = (__gcry_mpi_snew(0)|0);
-   $38 = $36;
-  }
-  HEAP32[$3>>2] = $38;
-  $39 = ($38|0)==(0|0);
-  if ($39) {
-   __gcry_free($32);
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  } else {
-   $40 = $29 << 3;
-   (__gcry_mpi_set_opaque($38,$32,$40)|0);
-   $$2 = $38;
-   STACKTOP = sp;return ($$2|0);
-  }
-  break;
- }
- case 0:  {
-  $$021 = 1;
-  break;
- }
- default: {
-  $$021 = $2;
- }
- }
- $41 = ($0|0)==(0|0);
- if ($41) {
-  $$2 = 0;
-  STACKTOP = sp;return ($$2|0);
- }
- $42 = HEAP8[$0>>0]|0;
- $43 = ($42<<24>>24)==(3);
- if ($43) {
-  $46 = ((($0)) + 1|0);
-  $$pre$i = HEAP8[$46>>0]|0;
-  $47 = ($1|0)>(0);
-  $48 = ($$pre$i<<24>>24)==(1);
-  L47: do {
-   if ($47) {
-    $$03742$i = $1;$$044$i = 0;$$13543$i = $46;$56 = $$pre$i;$71 = $48;
-    L49: while(1) {
-     L51: do {
-      if ($71) {
-       $49 = ((($$13543$i)) + 1|0);
-       $$0$copyload$i = HEAPU8[$49>>0]|(HEAPU8[$49+1>>0]<<8);
-       $50 = $$0$copyload$i&65535;
-       $51 = (($50) + 2)|0;
-       $52 = (($49) + ($51)|0);
-       $53 = ((($52)) + -1|0);
-       $54 = ($$044$i|0)==(0);
-       $55 = $54 << 31 >> 31;
-       $spec$select$i = (($$03742$i) + ($55))|0;
-       $$1$i = $$044$i;$$138$i = $spec$select$i;$$2$i = $53;
-      } else {
-       switch ($56<<24>>24) {
-       case 0:  {
-        $$2 = 0;
-        break L49;
-        break;
-       }
-       case 3:  {
-        $57 = (($$044$i) + 1)|0;
-        $$1$i = $57;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L51;
-        break;
-       }
-       case 4:  {
-        $58 = (($$044$i) + -1)|0;
-        $59 = ($58|0)==(0);
-        $60 = $59 << 31 >> 31;
-        $spec$select39$i = (($$03742$i) + ($60))|0;
-        $$1$i = $58;$$138$i = $spec$select39$i;$$2$i = $$13543$i;
-        break L51;
-        break;
-       }
-       default: {
-        $$1$i = $$044$i;$$138$i = $$03742$i;$$2$i = $$13543$i;
-        break L51;
-       }
-       }
-      }
-     } while(0);
-     $61 = ((($$2$i)) + 1|0);
-     $62 = ($$138$i|0)>(0);
-     $63 = HEAP8[$61>>0]|0;
-     $64 = ($63<<24>>24)==(1);
-     if ($62) {
-      $$03742$i = $$138$i;$$044$i = $$1$i;$$13543$i = $61;$56 = $63;$71 = $64;
-     } else {
-      $$135$lcssa$i = $61;$$lcssa$i = $64;
-      break L47;
-     }
-    }
-    STACKTOP = sp;return ($$2|0);
-   } else {
-    $$135$lcssa$i = $46;$$lcssa$i = $48;
-   }
-  } while(0);
-  if ($$lcssa$i) {
-   $$135$lcssa48$i = $$135$lcssa$i;
-  } else {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  }
- } else {
-  $44 = ($1|0)==(0);
-  $45 = ($42<<24>>24)==(1);
-  $or$cond$i = $44 & $45;
-  if ($or$cond$i) {
-   $$135$lcssa48$i = $0;
-  } else {
-   $$2 = 0;
-   STACKTOP = sp;return ($$2|0);
-  }
- }
- $65 = ((($$135$lcssa48$i)) + 1|0);
- $$0$copyload9$i = HEAPU8[$65>>0]|(HEAPU8[$65+1>>0]<<8);
- $66 = $$0$copyload9$i&65535;
- $67 = ((($$135$lcssa48$i)) + 3|0);
- $68 = (__gcry_mpi_scan($3,$$021,$67,$66,0)|0);
- $69 = ($68|0)==(0);
- $$pre = HEAP32[$3>>2]|0;
- $spec$select = $69 ? $$pre : 0;
- $$2 = $spec$select;
- STACKTOP = sp;return ($$2|0);
-}
-function __gcry_sexp_cdr($0) {
- $0 = $0|0;
- var $$0$copyload = 0, $$0$copyload$i = 0, $$0$copyload28 = 0, $$0102 = 0, 
$$048$lcssa$i = 0, $$04859$i = 0, $$050$lcssa$i = 0, $$05058$i = 0, $$061101 = 
0, $$062$i = 0, $$063 = 0, $$064100 = 0, $$1 = 0, $$1$i = 0, $$149$i = 0, 
$$151$i = 0, $$162 = 0, $$165 = 0, $$2 = 0, $$2$i = 0;
- var $$252$i = 0, $$266 = 0, $$3 = 0, $$35356$i = 0, $$357$i = 0, $$367 = 0, 
$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $9 = 0, $cond$i = 0, 
$scevgep$i = 0, $spec$select = 0, $spec$select68 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $$063 = 0;
-  return ($$063|0);
- }
- $2 = HEAP8[$0>>0]|0;
- $3 = ($2<<24>>24)==(3);
- if (!($3)) {
-  $$063 = 0;
-  return ($$063|0);
- }
- $4 = ((($0)) + 1|0);
- $$0102 = 1;$$061101 = 0;$$064100 = $0;$6 = $4;
- L7: while(1) {
-  $5 = HEAP8[$6>>0]|0;
-  switch ($5<<24>>24) {
-  case 0:  {
-   $$063 = 0;
-   label = 33;
-   break L7;
-   break;
-  }
-  case 1:  {
-   $7 = ((($$064100)) + 2|0);
-   $$0$copyload = HEAPU8[$7>>0]|(HEAPU8[$7+1>>0]<<8);
-   $8 = $$0$copyload&65535;
-   $9 = (($8) + 2)|0;
-   $10 = (($7) + ($9)|0);
-   $11 = ((($10)) + -1|0);
-   $12 = ($$061101|0)==(0);
-   $13 = $12 << 31 >> 31;
-   $spec$select = (($$0102) + ($13))|0;
-   $$1 = $spec$select;$$162 = $$061101;$$165 = $11;
-   break;
-  }
-  case 3:  {
-   $14 = (($$061101) + 1)|0;
-   $$1 = $$0102;$$162 = $14;$$165 = $6;
-   break;
-  }
-  case 4:  {
-   $15 = (($$061101) + -1)|0;
-   $16 = ($15|0)==(0);
-   $17 = $16 << 31 >> 31;
-   $spec$select68 = (($$0102) + ($17))|0;
-   $$1 = $spec$select68;$$162 = $15;$$165 = $6;
-   break;
-  }
-  default: {
-   $$1 = $$0102;$$162 = $$061101;$$165 = $6;
-  }
-  }
-  $18 = ($$1|0)>(0);
-  $19 = ((($$165)) + 1|0);
-  if ($18) {
-   $$0102 = $$1;$$061101 = $$162;$$064100 = $$165;$6 = $19;
-  } else {
-   break;
-  }
- }
- if ((label|0) == 33) {
-  return ($$063|0);
- }
- $$2 = 0;$$266 = $19;
- L17: while(1) {
-  $20 = HEAP8[$$266>>0]|0;
-  switch ($20<<24>>24) {
-  case 0:  {
-   $$063 = 0;
-   label = 33;
-   break L17;
-   break;
-  }
-  case 1:  {
-   $21 = ((($$266)) + 1|0);
-   $$0$copyload28 = HEAPU8[$21>>0]|(HEAPU8[$21+1>>0]<<8);
-   $22 = $$0$copyload28&65535;
-   $23 = (($22) + 2)|0;
-   $24 = (($21) + ($23)|0);
-   $25 = ((($24)) + -1|0);
-   $$3 = $$2;$$367 = $25;
-   break;
-  }
-  case 3:  {
-   $26 = (($$2) + 1)|0;
-   $$3 = $26;$$367 = $$266;
-   break;
-  }
-  case 4:  {
-   $27 = (($$2) + -1)|0;
-   $$3 = $27;$$367 = $$266;
-   break;
-  }
-  default: {
-   $$3 = $$2;$$367 = $$266;
-  }
-  }
-  $28 = ((($$367)) + 1|0);
-  $29 = ($$3|0)==(0);
-  if ($29) {
-   break;
-  } else {
-   $$2 = $$3;$$266 = $28;
-  }
- }
- if ((label|0) == 33) {
-  return ($$063|0);
- }
- $30 = $28;
- $31 = $19;
- $32 = (($30) - ($31))|0;
- $33 = $32 & 65535;
- $34 = (($33) + 3)|0;
- $35 = (__gcry_malloc($34)|0);
- $36 = ($35|0)==(0|0);
- if ($36) {
-  $$063 = 0;
-  return ($$063|0);
- }
- $37 = ((($35)) + 1|0);
- HEAP8[$35>>0] = 3;
- _memcpy(($37|0),($19|0),($33|0))|0;
- $38 = (($37) + ($33)|0);
- $39 = ((($38)) + 1|0);
- HEAP8[$38>>0] = 4;
- HEAP8[$39>>0] = 0;
- $40 = HEAP8[$37>>0]|0;
- $41 = ($40<<24>>24)==(4);
- if (!($41)) {
-  $$063 = $35;
-  return ($$063|0);
- }
- $42 = (__gcry_is_secure($35)|0);
- $43 = ($42|0)==(0);
- if (!($43)) {
-  $$062$i = $35;$45 = 3;
-  while(1) {
-   $44 = ((($$062$i)) + 1|0);
-   $cond$i = ($45<<24>>24)==(1);
-   if ($cond$i) {
-    $$0$copyload$i = HEAPU8[$44>>0]|(HEAPU8[$44+1>>0]<<8);
-    $46 = ((($$062$i)) + 3|0);
-    $47 = $$0$copyload$i&65535;
-    $48 = (($46) + ($47)|0);
-    $$1$i = $48;
-   } else {
-    $$1$i = $44;
-   }
-   $49 = HEAP8[$$1$i>>0]|0;
-   $50 = ($49<<24>>24)==(0);
-   if ($50) {
-    break;
-   } else {
-    $$062$i = $$1$i;$45 = $49;
-   }
-  }
-  $51 = $$1$i;
-  $52 = $35;
-  $53 = (($51) - ($52))|0;
-  $54 = $52 & 7;
-  $55 = ($54|0)!=(0);
-  $56 = ($53|0)!=(0);
-  $57 = $55 & $56;
-  if ($57) {
-   $$04859$i = $35;$$05058$i = $53;
-   while(1) {
-    HEAP8[$$04859$i>>0] = 0;
-    $58 = ((($$04859$i)) + 1|0);
-    $59 = (($$05058$i) + -1)|0;
-    $60 = $58;
-    $61 = $60 & 7;
-    $62 = ($61|0)!=(0);
-    $63 = ($59|0)!=(0);
-    $64 = $63 & $62;
-    if ($64) {
-     $$04859$i = $58;$$05058$i = $59;
-    } else {
-     $$048$lcssa$i = $58;$$050$lcssa$i = $59;
-     break;
-    }
-   }
-  } else {
-   $$048$lcssa$i = $35;$$050$lcssa$i = $53;
-  }
-  $65 = ($$050$lcssa$i>>>0)<(8);
-  if ($65) {
-   $$2$i = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-  } else {
-   $66 = (($$050$lcssa$i) + -8)|0;
-   $67 = $66 & -8;
-   $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-   while(1) {
-    $68 = $$149$i;
-    $69 = $68;
-    HEAP32[$69>>2] = 0;
-    $70 = (($68) + 4)|0;
-    $71 = $70;
-    HEAP32[$71>>2] = 0;
-    $72 = (($$151$i) + -8)|0;
-    $73 = ((($$149$i)) + 8|0);
-    $74 = ($72>>>0)>(7);
-    if ($74) {
-     $$149$i = $73;$$151$i = $72;
-    } else {
-     break;
-    }
-   }
-   $75 = (($67) + 8)|0;
-   $76 = (($66) - ($67))|0;
-   $scevgep$i = (($$048$lcssa$i) + ($75)|0);
-   $$2$i = $scevgep$i;$$252$i = $76;
-  }
-  $77 = ($$252$i|0)==(0);
-  if (!($77)) {
-   $$35356$i = $$252$i;$$357$i = $$2$i;
-   while(1) {
-    HEAP8[$$357$i>>0] = 0;
-    $78 = ((($$357$i)) + 1|0);
-    $79 = (($$35356$i) + -1)|0;
-    $80 = ($79|0)==(0);
-    if ($80) {
-     break;
-    } else {
-     $$35356$i = $79;$$357$i = $78;
-    }
-   }
-  }
- }
- __gcry_free($35);
- $$063 = 0;
- return ($$063|0);
-}
-function __gcry_sexp_cadr($0) {
- $0 = $0|0;
- var $$0$copyload$i = 0, $$0$lcssa$i = 0, $$048$lcssa$i = 0, $$04859$i = 0, 
$$050$lcssa$i = 0, $$05058$i = 0, $$062$i = 0, $$1$i = 0, $$149$i = 0, $$151$i 
= 0, $$2$i = 0, $$252$i = 0, $$35356$i = 0, $$357$i = 0, $1 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, $cond$i = 0, $scevgep$i = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_sexp_cdr($0)|0);
- $2 = (__gcry_sexp_nth($1,0)|0);
- $3 = ($1|0)==(0|0);
- if ($3) {
-  return ($2|0);
- }
- $4 = (__gcry_is_secure($1)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = HEAP8[$1>>0]|0;
-  $7 = ($6<<24>>24)==(0);
-  if ($7) {
-   $$0$lcssa$i = $1;
-  } else {
-   $$062$i = $1;$9 = $6;
-   while(1) {
-    $8 = ((($$062$i)) + 1|0);
-    $cond$i = ($9<<24>>24)==(1);
-    if ($cond$i) {
-     $$0$copyload$i = HEAPU8[$8>>0]|(HEAPU8[$8+1>>0]<<8);
-     $10 = ((($$062$i)) + 3|0);
-     $11 = $$0$copyload$i&65535;
-     $12 = (($10) + ($11)|0);
-     $$1$i = $12;
-    } else {
-     $$1$i = $8;
-    }
-    $13 = HEAP8[$$1$i>>0]|0;
-    $14 = ($13<<24>>24)==(0);
-    if ($14) {
-     $$0$lcssa$i = $$1$i;
-     break;
-    } else {
-     $$062$i = $$1$i;$9 = $13;
-    }
-   }
-  }
-  $15 = $$0$lcssa$i;
-  $16 = $1;
-  $17 = (($15) - ($16))|0;
-  $18 = $16 & 7;
-  $19 = ($18|0)!=(0);
-  $20 = ($17|0)!=(0);
-  $21 = $19 & $20;
-  if ($21) {
-   $$04859$i = $1;$$05058$i = $17;
-   while(1) {
-    HEAP8[$$04859$i>>0] = 0;
-    $22 = ((($$04859$i)) + 1|0);
-    $23 = (($$05058$i) + -1)|0;
-    $24 = $22;
-    $25 = $24 & 7;
-    $26 = ($25|0)!=(0);
-    $27 = ($23|0)!=(0);
-    $28 = $27 & $26;
-    if ($28) {
-     $$04859$i = $22;$$05058$i = $23;
-    } else {
-     $$048$lcssa$i = $22;$$050$lcssa$i = $23;
-     break;
-    }
-   }
-  } else {
-   $$048$lcssa$i = $1;$$050$lcssa$i = $17;
-  }
-  $29 = ($$050$lcssa$i>>>0)<(8);
-  if ($29) {
-   $$2$i = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-  } else {
-   $30 = (($$050$lcssa$i) + -8)|0;
-   $31 = $30 & -8;
-   $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-   while(1) {
-    $32 = $$149$i;
-    $33 = $32;
-    HEAP32[$33>>2] = 0;
-    $34 = (($32) + 4)|0;
-    $35 = $34;
-    HEAP32[$35>>2] = 0;
-    $36 = (($$151$i) + -8)|0;
-    $37 = ((($$149$i)) + 8|0);
-    $38 = ($36>>>0)>(7);
-    if ($38) {
-     $$149$i = $37;$$151$i = $36;
-    } else {
-     break;
-    }
-   }
-   $39 = (($31) + 8)|0;
-   $40 = (($30) - ($31))|0;
-   $scevgep$i = (($$048$lcssa$i) + ($39)|0);
-   $$2$i = $scevgep$i;$$252$i = $40;
-  }
-  $41 = ($$252$i|0)==(0);
-  if (!($41)) {
-   $$35356$i = $$252$i;$$357$i = $$2$i;
-   while(1) {
-    HEAP8[$$357$i>>0] = 0;
-    $42 = ((($$357$i)) + 1|0);
-    $43 = (($$35356$i) + -1)|0;
-    $44 = ($43|0)==(0);
-    if ($44) {
-     break;
-    } else {
-     $$35356$i = $43;$$357$i = $42;
-    }
-   }
-  }
- }
- __gcry_free($1);
- return ($2|0);
-}
-function __gcry_sexp_build($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- HEAP32[$3>>2] = $varargs;
- $4 = (_strlen($2)|0);
- $5 = (_do_vsexp_sscan($0,$1,$2,$4,1,0,$3)|0);
- STACKTOP = sp;return ($5|0);
-}
-function __gcry_sexp_vbuild($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (_strlen($2)|0);
- $5 = (_do_vsexp_sscan($0,$1,$2,$4,1,0,$3)|0);
- return ($5|0);
-}
-function __gcry_sexp_sscan($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $4 = (_do_sexp_sscan($0,$1,$2,$3,0,0,$vararg_buffer)|0);
- STACKTOP = sp;return ($4|0);
-}
-function __gcry_sexp_sprint($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$0$copyload = 0, $$010$lcssa$i = 0, $$01011$i = 0, $$012$i = 0, 
$$0125 = 0, $$0125$be = 0, $$0129 = 0, $$0129$be = 0, $$0134 = 0, $$0134$be = 
0, $$0136 = 0, $$0136$be = 0, $$02649$i = 0, $$02748$i = 0, $$050$i = 0, $$1$i 
= 0, $$10 = 0, $$12151 = 0, $$3139 = 0;
- var $$4 = 0, $$4140 = 0, $$5 = 0, $$5141 = 0, $$6142160 = 0, $$7143 = 0, 
$$7149 = 0, $$7152 = 0, $$clear = 0, $$not = 0, $$off$i = 0, $$off37$i = 0, 
$$off38$i = 0, $$pre$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0;
- var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 
0, $7 = 0, $70 = 0, $71 = 0;
- var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, 
$8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0;
- var $90 = 0, $91 = 0, $exitcond$i = 0, $memchr$i = 0, $memchr29$i = 0, 
$or$cond = 0, $or$cond$i = 0, $or$cond43$i = 0, $or$cond45$i = 0, $scevgep = 0, 
$scevgep$i = 0, $scevgep172 = 0, $spec$select = 0, $spec$select$i = 0, 
$spec$select153 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer1 = sp + 32|0;
- $vararg_buffer = sp + 24|0;
- $4 = sp;
- $5 = ($0|0)==(0|0);
- $6 = $5 ? 44730 : $0;
- $7 = ($1|0)!=(1);
- $8 = ($2|0)==(0|0);
- $9 = ($2|0)!=(0|0);
- $10 = ($1|0)==(3);
- $11 = ($1|0)==(1);
- $$not = $7 ^ 1;
- $$0125 = 0;$$0129 = 0;$$0134 = $6;$$0136 = $2;
- L1: while(1) {
-  $12 = HEAP8[$$0134>>0]|0;
-  L3: do {
-   switch ($12<<24>>24) {
-   case 0:  {
-    label = 56;
-    break L1;
-    break;
-   }
-   case 3:  {
-    $13 = ((($$0134)) + 1|0);
-    $14 = ($$0125|0)!=(0);
-    $15 = $14&1;
-    $spec$select = (($$0125) + ($$0129))|0;
-    $16 = (($spec$select) + ($15))|0;
-    $spec$select153 = $7 ? $16 : $$0129;
-    $17 = (($spec$select153) + 1)|0;
-    if ($8) {
-     $$4140 = $$0136;
-    } else {
-     $18 = ($17>>>0)<($3>>>0);
-     if (!($18)) {
-      $$4 = 0;
-      label = 64;
-      break L1;
-     }
-     $19 = ($$0125|0)==(0);
-     $or$cond = $19 | $$not;
-     if ($or$cond) {
-      $$3139 = $$0136;
-     } else {
-      $20 = ((($$0136)) + 1|0);
-      HEAP8[$$0136>>0] = 10;
-      $21 = ($$0125|0)>(0);
-      if ($21) {
-       _memset(($20|0),32,($$0125|0))|0;
-       $scevgep172 = (($20) + ($$0125)|0);
-       $$3139 = $scevgep172;
-      } else {
-       $$3139 = $20;
-      }
-     }
-     $22 = ((($$3139)) + 1|0);
-     HEAP8[$$3139>>0] = 40;
-     $$4140 = $22;
-    }
-    $23 = (($$0125) + 1)|0;
-    $$0125$be = $23;$$0129$be = $17;$$0134$be = $13;$$0136$be = $$4140;
-    break;
-   }
-   case 4:  {
-    $24 = ((($$0134)) + 1|0);
-    $25 = (($$0129) + 1)|0;
-    if ($9) {
-     $26 = ($25>>>0)<($3>>>0);
-     if (!($26)) {
-      $$4 = 0;
-      label = 64;
-      break L1;
-     }
-     $27 = ((($$0136)) + 1|0);
-     HEAP8[$$0136>>0] = 41;
-     $$5141 = $27;
-    } else {
-     $$5141 = $$0136;
-    }
-    $28 = (($$0125) + -1)|0;
-    if ($11) {
-     $$0125$be = $28;$$0129$be = $25;$$0134$be = $24;$$0136$be = $$5141;
-    } else {
-     $29 = HEAP8[$24>>0]|0;
-     switch ($29<<24>>24) {
-     case 0: case 3:  {
-      $$0125$be = $28;$$0129$be = $25;$$0134$be = $24;$$0136$be = $$5141;
-      break L3;
-      break;
-     }
-     default: {
-     }
-     }
-     $30 = (($$0129) + 2)|0;
-     $31 = (($30) + ($28))|0;
-     if ($9) {
-      $32 = ($31>>>0)<($3>>>0);
-      if (!($32)) {
-       $$4 = 0;
-       label = 64;
-       break L1;
-      }
-      HEAP8[$$5141>>0] = 10;
-      $$6142160 = ((($$5141)) + 1|0);
-      $33 = ($$0125|0)>(1);
-      if ($33) {
-       _memset(($$6142160|0),32,($28|0))|0;
-       $scevgep = (($$5141) + ($$0125)|0);
-       $$0125$be = $28;$$0129$be = $31;$$0134$be = $24;$$0136$be = $scevgep;
-      } else {
-       $$0125$be = $28;$$0129$be = $31;$$0134$be = $24;$$0136$be = $$6142160;
-      }
-     } else {
-      $$0125$be = $28;$$0129$be = $31;$$0134$be = $24;$$0136$be = $$5141;
-     }
-    }
-    break;
-   }
-   case 1:  {
-    $34 = ((($$0134)) + 1|0);
-    $$0$copyload = HEAPU8[$34>>0]|(HEAPU8[$34+1>>0]<<8);
-    $35 = ((($$0134)) + 3|0);
-    $36 = $$0$copyload&65535;
-    if ($10) {
-     $37 = ($$0$copyload<<16>>16)==(0);
-     L26: do {
-      if ($37) {
-       label = 32;
-      } else {
-       $38 = HEAP8[$35>>0]|0;
-       $39 = ($38<<24>>24)<(1);
-       L28: do {
-        if (!($39)) {
-         $$02649$i = $35;$$02748$i = $36;$$050$i = 1;$41 = $38;
-         while(1) {
-          $40 = ($41&255)<(32);
-          $$off$i = (($41) + -127)<<24>>24;
-          $42 = ($$off$i&255)<(34);
-          $or$cond$i = $40 | $42;
-          if ($or$cond$i) {
-           $43 = $41&255;
-           $memchr29$i = (_memchr(44733,$43,10)|0);
-           $44 = ($memchr29$i|0)==(0|0);
-           if ($44) {
-            break L28;
-           }
-          }
-          $45 = ($$050$i|0)==(0);
-          if ($45) {
-           $$1$i = 0;
-          } else {
-           $46 = $41 & -33;
-           $47 = (($46) + -65)<<24>>24;
-           $48 = ($47&255)<(26);
-           $$off37$i = (($41) + -48)<<24>>24;
-           $49 = ($$off37$i&255)<(10);
-           $or$cond43$i = $49 | $48;
-           if ($or$cond43$i) {
-            $$1$i = $$050$i;
-           } else {
-            $50 = $41&255;
-            $memchr$i = (_memchr(44743,$50,9)|0);
-            $51 = ($memchr$i|0)==(0|0);
-            $spec$select$i = $51 ? 0 : $$050$i;
-            $$1$i = $spec$select$i;
-           }
-          }
-          $52 = ((($$02649$i)) + 1|0);
-          $53 = (($$02748$i) + -1)|0;
-          $54 = ($53|0)==(0);
-          if ($54) {
-           break;
-          }
-          $$pre$i = HEAP8[$52>>0]|0;
-          $$02649$i = $52;$$02748$i = $53;$$050$i = $$1$i;$41 = $$pre$i;
-         }
-         $55 = ($$1$i|0)==(0);
-         $$off38$i = (($38) + -48)<<24>>24;
-         $56 = ($$off38$i&255)<(10);
-         $or$cond45$i = $56 | $55;
-         if ($or$cond45$i) {
-          label = 32;
-          break L26;
-         } else {
-          $$0 = $36;$62 = 2;
-          break L26;
-         }
-        }
-       } while(0);
-       $58 = $36 << 1;
-       $59 = (($58) + 2)|0;
-       $$0 = $59;$62 = 0;
-      }
-     } while(0);
-     if ((label|0) == 32) {
-      label = 0;
-      $57 = (_convert_to_string($35,$36,0)|0);
-      $$0 = $57;$62 = 1;
-     }
-     $60 = (($$0) + ($$0129))|0;
-     if ($9) {
-      $61 = ($60>>>0)<($3>>>0);
-      if (!($61)) {
-       $$4 = 0;
-       label = 64;
-       break L1;
-      }
-      $$clear = $62 & 3;
-      switch ($$clear<<24>>24) {
-      case 1:  {
-       (_convert_to_string($35,$36,$$0136)|0);
-       break;
-      }
-      case 2:  {
-       $63 = ($$0136|0)==(0|0);
-       if (!($63)) {
-        _memcpy(($$0136|0),($35|0),($36|0))|0;
-       }
-       break;
-      }
-      default: {
-       $64 = ($$0136|0)==(0|0);
-       if (!($64)) {
-        $65 = ((($$0136)) + 1|0);
-        HEAP8[$$0136>>0] = 35;
-        if ($37) {
-         $$010$lcssa$i = $65;
-        } else {
-         $66 = $36 << 1;
-         $$01011$i = $65;$$012$i = 0;
-         while(1) {
-          $67 = (($35) + ($$012$i)|0);
-          $68 = HEAP8[$67>>0]|0;
-          $69 = $68&255;
-          HEAP32[$vararg_buffer>>2] = $69;
-          (_sprintf($$01011$i,44752,$vararg_buffer)|0);
-          $70 = (($$012$i) + 1)|0;
-          $71 = ((($$01011$i)) + 2|0);
-          $exitcond$i = ($70|0)==($36|0);
-          if ($exitcond$i) {
-           break;
-          } else {
-           $$01011$i = $71;$$012$i = $70;
-          }
-         }
-         $72 = $66 | 1;
-         $scevgep$i = (($$0136) + ($72)|0);
-         $$010$lcssa$i = $scevgep$i;
-        }
-        HEAP8[$$010$lcssa$i>>0] = 35;
-       }
-      }
-      }
-      $73 = (($$0136) + ($$0)|0);
-      $$7143 = $73;
-     } else {
-      $$7143 = $$0136;
-     }
-     $74 = (($35) + ($36)|0);
-     $75 = HEAP8[$74>>0]|0;
-     $76 = ($75<<24>>24)==(4);
-     if ($76) {
-      $$10 = $$7143;$$5 = $60;
-     } else {
-      $77 = (($60) + 1)|0;
-      if ($9) {
-       $78 = ($77>>>0)<($3>>>0);
-       if (!($78)) {
-        $$4 = 0;
-        label = 64;
-        break L1;
-       }
-       $79 = ((($$7143)) + 1|0);
-       HEAP8[$$7143>>0] = 32;
-       $$10 = $79;$$5 = $77;
-      } else {
-       $$10 = $$7143;$$5 = $77;
-      }
-     }
-    } else {
-     HEAP32[$vararg_buffer1>>2] = $36;
-     (_sprintf($4,44757,$vararg_buffer1)|0);
-     $80 = (_strlen($4)|0);
-     $81 = (($$0129) + ($36))|0;
-     $82 = (($81) + ($80))|0;
-     if ($8) {
-      $$10 = $$0136;$$5 = $82;
-     } else {
-      $83 = ($82>>>0)<($3>>>0);
-      if (!($83)) {
-       $$4 = 0;
-       label = 64;
-       break L1;
-      }
-      $84 = (___stpcpy($$0136,$4)|0);
-      _memcpy(($84|0),($35|0),($36|0))|0;
-      $85 = (($84) + ($36)|0);
-      $$10 = $85;$$5 = $82;
-     }
-    }
-    $86 = (($35) + ($36)|0);
-    $$0125$be = $$0125;$$0129$be = $$5;$$0134$be = $86;$$0136$be = $$10;
-    break;
-   }
-   default: {
-    label = 55;
-    break L1;
-   }
-   }
-  } while(0);
-  $$0125 = $$0125$be;$$0129 = $$0129$be;$$0134 = $$0134$be;$$0136 = $$0136$be;
- }
- if ((label|0) == 55) {
-  __gcry_bug(44662,2008,44761);
-  // unreachable;
- }
- else if ((label|0) == 56) {
-  do {
-   if ($11) {
-    if ($8) {
-     $$7149 = $$0129;
-     label = 63;
-    } else {
-     $$12151 = $$0136;$$7152 = $$0129;
-    }
-   } else {
-    $87 = (($$0129) + 1)|0;
-    if ($8) {
-     $$7149 = $87;
-     label = 63;
-    } else {
-     $88 = ($87>>>0)<($3>>>0);
-     if ($88) {
-      $89 = ((($$0136)) + 1|0);
-      HEAP8[$$0136>>0] = 10;
-      $$12151 = $89;$$7152 = $87;
-      break;
-     } else {
-      $$4 = 0;
-      STACKTOP = sp;return ($$4|0);
-     }
-    }
-   }
-  } while(0);
-  if ((label|0) == 63) {
-   $91 = (($$7149) + 1)|0;
-   $$4 = $91;
-   STACKTOP = sp;return ($$4|0);
-  }
-  $90 = ($$7152>>>0)<($3>>>0);
-  if (!($90)) {
-   $$4 = 0;
-   STACKTOP = sp;return ($$4|0);
-  }
-  HEAP8[$$12151>>0] = 0;
-  $$4 = $$7152;
-  STACKTOP = sp;return ($$4|0);
- }
- else if ((label|0) == 64) {
-  STACKTOP = sp;return ($$4|0);
- }
- return (0)|0;
-}
-function _convert_to_string($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$ = 0, $$050$lcssa = 0, $$05067 = 0, $$052 = 0, $$05366 = 0, $$05565 = 
0, $$064 = 0, $$151 = 0, $$15463 = 0, $$15662 = 0, $$off = 0, $$off58 = 0, 
$$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond61 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = ($2|0)==(0|0);
- if ($3) {
-  $37 = ($1|0)==(0);
-  if ($37) {
-   $$052 = 2;
-   STACKTOP = sp;return ($$052|0);
-  }
-  $$064 = 2;$$15463 = $1;$$15662 = $0;
-  while(1) {
-   $38 = HEAP8[$$15662>>0]|0;
-   switch ($38<<24>>24) {
-   case 92: case 39: case 34: case 13: case 12: case 10: case 11: case 9: case 
8:  {
-    $$sink = 2;
-    break;
-   }
-   default: {
-    $39 = ($38&255)<(32);
-    $$off58 = (($38) + -127)<<24>>24;
-    $40 = ($$off58&255)<(34);
-    $or$cond61 = $39 | $40;
-    $$ = $or$cond61 ? 4 : 1;
-    $$sink = $$;
-   }
-   }
-   $41 = (($$064) + ($$sink))|0;
-   $42 = (($$15463) + -1)|0;
-   $43 = ((($$15662)) + 1|0);
-   $44 = ($42|0)==(0);
-   if ($44) {
-    $$052 = $41;
-    break;
-   } else {
-    $$064 = $41;$$15463 = $42;$$15662 = $43;
-   }
-  }
-  STACKTOP = sp;return ($$052|0);
- }
- $4 = ((($2)) + 1|0);
- HEAP8[$2>>0] = 34;
- $5 = ($1|0)==(0);
- L13: do {
-  if ($5) {
-   $$050$lcssa = $4;
-  } else {
-   $$05067 = $4;$$05366 = $1;$$05565 = $0;
-   while(1) {
-    $6 = HEAP8[$$05565>>0]|0;
-    L17: do {
-     switch ($6<<24>>24) {
-     case 8:  {
-      $7 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $8 = ((($$05067)) + 2|0);
-      HEAP8[$7>>0] = 98;
-      $$151 = $8;
-      break;
-     }
-     case 9:  {
-      $9 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $10 = ((($$05067)) + 2|0);
-      HEAP8[$9>>0] = 116;
-      $$151 = $10;
-      break;
-     }
-     case 11:  {
-      $11 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $12 = ((($$05067)) + 2|0);
-      HEAP8[$11>>0] = 118;
-      $$151 = $12;
-      break;
-     }
-     case 10:  {
-      $13 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $14 = ((($$05067)) + 2|0);
-      HEAP8[$13>>0] = 110;
-      $$151 = $14;
-      break;
-     }
-     case 12:  {
-      $15 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $16 = ((($$05067)) + 2|0);
-      HEAP8[$15>>0] = 102;
-      $$151 = $16;
-      break;
-     }
-     case 13:  {
-      $17 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $18 = ((($$05067)) + 2|0);
-      HEAP8[$17>>0] = 114;
-      $$151 = $18;
-      break;
-     }
-     case 34:  {
-      $19 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $20 = ((($$05067)) + 2|0);
-      HEAP8[$19>>0] = 34;
-      $$151 = $20;
-      break;
-     }
-     case 39:  {
-      $21 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $22 = ((($$05067)) + 2|0);
-      HEAP8[$21>>0] = 39;
-      $$151 = $22;
-      break;
-     }
-     case 92:  {
-      $23 = ((($$05067)) + 1|0);
-      HEAP8[$$05067>>0] = 92;
-      $24 = ((($$05067)) + 2|0);
-      HEAP8[$23>>0] = 92;
-      $$151 = $24;
-      break;
-     }
-     default: {
-      $25 = ($6&255)<(32);
-      $$off = (($6) + -127)<<24>>24;
-      $26 = ($$off&255)<(34);
-      $or$cond = $25 | $26;
-      if ($or$cond) {
-       $27 = $6&255;
-       HEAP32[$vararg_buffer>>2] = $27;
-       (_sprintf($$05067,44655,$vararg_buffer)|0);
-       $28 = ((($$05067)) + 4|0);
-       $$151 = $28;
-       break L17;
-      } else {
-       $29 = ((($$05067)) + 1|0);
-       HEAP8[$$05067>>0] = $6;
-       $$151 = $29;
-       break L17;
-      }
-     }
-     }
-    } while(0);
-    $30 = (($$05366) + -1)|0;
-    $31 = ((($$05565)) + 1|0);
-    $32 = ($30|0)==(0);
-    if ($32) {
-     $$050$lcssa = $$151;
-     break L13;
-    } else {
-     $$05067 = $$151;$$05366 = $30;$$05565 = $31;
-    }
-   }
-  }
- } while(0);
- $33 = ((($$050$lcssa)) + 1|0);
- HEAP8[$$050$lcssa>>0] = 34;
- $34 = $33;
- $35 = $2;
- $36 = (($34) - ($35))|0;
- $$052 = $36;
- STACKTOP = sp;return ($$052|0);
-}
-function __gcry_sexp_vextract_param($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$0$copyload$i = 0, $$0$copyload$i$i = 0, $$0$copyload$i$i219 = 
0, $$0$copyload$i$i234 = 0, $$0$copyload$i$i249 = 0, $$0$copyload$i190 = 0, 
$$0$copyload$i266 = 0, $$0$copyload$i292 = 0, $$0$copyload$i318 = 0, 
$$0$copyload9$i$i = 0, $$0$copyload9$i$i227 = 0, $$0$copyload9$i$i242 = 0, 
$$0$copyload9$i$i257 = 0, $$0$lcssa$i = 0, $$0$lcssa$i192 = 0, $$0$lcssa$i268 = 
0, $$0$lcssa$i294 = 0, $$0$lcssa$i320 = 0, $$0150$lcssa = 0;
- var $$0150386 = 0, $$0151385 = 0, $$0156393 = 0, $$0162$lcssa427 = 0, 
$$0162392 = 0, $$0178$lcssa = 0, $$0178380 = 0, $$0178384 = 0, $$0181 = 0, 
$$03742$i$i = 0, $$03742$i$i217 = 0, $$03742$i$i232 = 0, $$03742$i$i247 = 0, 
$$044$i$i = 0, $$044$i$i215 = 0, $$044$i$i230 = 0, $$044$i$i245 = 0, 
$$048$lcssa$i = 0, $$048$lcssa$i198 = 0, $$048$lcssa$i274 = 0;
- var $$048$lcssa$i300 = 0, $$048$lcssa$i326 = 0, $$04859$i = 0, $$04859$i195 = 
0, $$04859$i271 = 0, $$04859$i297 = 0, $$04859$i323 = 0, $$050$lcssa$i = 0, 
$$050$lcssa$i197 = 0, $$050$lcssa$i273 = 0, $$050$lcssa$i299 = 0, 
$$050$lcssa$i325 = 0, $$05058$i = 0, $$05058$i196 = 0, $$05058$i272 = 0, 
$$05058$i298 = 0, $$05058$i324 = 0, $$062$i = 0, $$062$i187 = 0, $$062$i263 = 0;
- var $$062$i289 = 0, $$062$i315 = 0, $$1$i = 0, $$1$i$i = 0, $$1$i$i224 = 0, 
$$1$i$i239 = 0, $$1$i$i254 = 0, $$1$i191 = 0, $$1$i267 = 0, $$1$i293 = 0, 
$$1$i319 = 0, $$1157 = 0, $$1163 = 0, $$1182 = 0, $$13543$i$i = 0, 
$$13543$i$i216 = 0, $$13543$i$i231 = 0, $$13543$i$i246 = 0, $$138$i$i = 0, 
$$138$i$i222 = 0;
- var $$138$i$i237 = 0, $$138$i$i252 = 0, $$149$i = 0, $$149$i201 = 0, 
$$149$i277 = 0, $$149$i303 = 0, $$149$i329 = 0, $$151$i = 0, $$151$i200 = 0, 
$$151$i276 = 0, $$151$i302 = 0, $$151$i328 = 0, $$2$i = 0, $$2$i$i = 0, 
$$2$i$i223 = 0, $$2$i$i238 = 0, $$2$i$i253 = 0, $$2$i205 = 0, $$2$i243 = 0, 
$$2$i260 = 0;
- var $$2$i281 = 0, $$2$i307 = 0, $$2$i333 = 0, $$2158 = 0, $$2164 = 0, $$252$i 
= 0, $$252$i204 = 0, $$252$i280 = 0, $$252$i306 = 0, $$252$i332 = 0, $$3159 = 
0, $$3165 = 0, $$3171 = 0, $$35356$i = 0, $$35356$i209 = 0, $$35356$i285 = 0, 
$$35356$i311 = 0, $$35356$i337 = 0, $$357$i = 0, $$357$i208 = 0;
- var $$357$i284 = 0, $$357$i310 = 0, $$357$i336 = 0, $$4160 = 0, $$4166 = 0, 
$$5161 = 0, $$6174 = 0, $$9 = 0, $$in = 0, $$pre$i = 0, $$pre$i$i = 0, 
$$pre$i$i214 = 0, $$pre$i$i229 = 0, $$pre$i$i244 = 0, $$pre$i258 = 0, 
$$pre$phiZ2D = 0, $$sink = 0, $10 = 0, $100 = 0, $101 = 0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, 
$127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, 
$134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0;
- var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 
= 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0;
- var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0;
- var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 
= 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0;
- var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 
= 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 
= 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0;
- var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, 
$218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, 
$225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0;
- var $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 
= 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 
= 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0;
- var $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 
= 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 
= 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0;
- var $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 
= 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 
= 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0;
- var $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 
= 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 
= 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0;
- var $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, 
$309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, 
$316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0;
- var $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, 
$327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, 
$334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0;
- var $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 
= 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 
= 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0;
- var $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 
= 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 
= 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0;
- var $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 
= 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 
= 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0;
- var $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 
= 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 
= 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0;
- var $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, 
$417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, 
$424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0;
- var $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 
= 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 
= 0, $52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, $arglist_current = 0, $arglist_current2 = 0, $arglist_next = 0, 
$arglist_next3 = 0, $cond$i = 0, $cond$i188 = 0, $cond$i264 = 0, $cond$i290 = 
0, $cond$i316 = 0, $expanded = 0, $expanded10 = 0;
- var $expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, 
$expanded4 = 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $or$cond183 = 
0, $or$cond184 = 0, $scevgep$i = 0, $scevgep$i202 = 0, $scevgep$i278 = 0, 
$scevgep$i304 = 0, $scevgep$i330 = 0, $spec$select = 0, $spec$select$i = 0, 
$spec$select$i$i = 0, $spec$select$i$i220 = 0, $spec$select$i$i235 = 0;
- var $spec$select$i$i250 = 0, $spec$select$i259 = 0, $spec$select39$i$i = 0, 
$spec$select39$i$i221 = 0, $spec$select39$i$i236 = 0, $spec$select39$i$i251 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $4 = sp + 116|0;
- $5 = sp + 112|0;
- $6 = sp + 32|0;
- $7 = sp;
- 
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;HEAP32[$7+16>>2]=0|0;
- $8 = HEAP8[$2>>0]|0;
- $9 = ($8<<24>>24)==(0);
- do {
-  if ($9) {
-   $$0162$lcssa427 = 0;
-  } else {
-   $$0156393 = $2;$$0162392 = 0;$10 = $8;
-   L3: while(1) {
-    L5: do {
-     switch ($10<<24>>24) {
-     case 63: case 47: case 45: case 43: case 38:  {
-      $$1163 = $$0162392;$$2158 = $$0156393;
-      break;
-     }
-     default: {
-      $11 = $10 << 24 >> 24;
-      switch ($11|0) {
-      case 10: case 13: case 12: case 11: case 9: case 32:  {
-       $$1163 = $$0162392;$$2158 = $$0156393;
-       break L5;
-       break;
-      }
-      default: {
-      }
-      }
-      $12 = ($10<<24>>24)==(39);
-      if ($12) {
-       $13 = ((($$0156393)) + 1|0);
-       $14 = (_strchr($13,39)|0);
-       $15 = ($14|0)==(0|0);
-       $16 = ($14|0)==($13|0);
-       $or$cond183 = $15 | $16;
-       if ($or$cond183) {
-        $$0 = 29;
-        label = 180;
-        break L3;
-       } else {
-        $$1157 = $14;
-       }
-      } else {
-       $$1157 = $$0156393;
-      }
-      $arglist_current = HEAP32[$3>>2]|0;
-      $17 = $arglist_current;
-      $18 = ((0) + 4|0);
-      $expanded4 = $18;
-      $expanded = (($expanded4) - 1)|0;
-      $19 = (($17) + ($expanded))|0;
-      $20 = ((0) + 4|0);
-      $expanded8 = $20;
-      $expanded7 = (($expanded8) - 1)|0;
-      $expanded6 = $expanded7 ^ -1;
-      $21 = $19 & $expanded6;
-      $22 = $21;
-      $23 = HEAP32[$22>>2]|0;
-      $arglist_next = ((($22)) + 4|0);
-      HEAP32[$3>>2] = $arglist_next;
-      $24 = (($6) + ($$0162392<<2)|0);
-      HEAP32[$24>>2] = $23;
-      $25 = ($23|0)==(0|0);
-      if ($25) {
-       $$0 = 128;
-       label = 180;
-       break L3;
-      }
-      $26 = (($$0162392) + 1)|0;
-      $$1163 = $26;$$2158 = $$1157;
-     }
-     }
-    } while(0);
-    $27 = ((($$2158)) + 1|0);
-    $28 = HEAP8[$27>>0]|0;
-    $29 = ($28<<24>>24)!=(0);
-    $30 = ($$1163>>>0)<(20);
-    $31 = $30 & $29;
-    if ($31) {
-     $$0156393 = $27;$$0162392 = $$1163;$10 = $28;
-    } else {
-     label = 10;
-     break;
-    }
-   }
-   if ((label|0) == 10) {
-    $32 = ($28<<24>>24)==(0);
-    if ($32) {
-     $$0162$lcssa427 = $$1163;
-     break;
-    } else {
-     $$0 = 183;
-    }
-    STACKTOP = sp;return ($$0|0);
-   }
-   else if ((label|0) == 180) {
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- } while(0);
- $arglist_current2 = HEAP32[$3>>2]|0;
- $33 = $arglist_current2;
- $34 = ((0) + 4|0);
- $expanded11 = $34;
- $expanded10 = (($expanded11) - 1)|0;
- $35 = (($33) + ($expanded10))|0;
- $36 = ((0) + 4|0);
- $expanded15 = $36;
- $expanded14 = (($expanded15) - 1)|0;
- $expanded13 = $expanded14 ^ -1;
- $37 = $35 & $expanded13;
- $38 = $37;
- $39 = HEAP32[$38>>2]|0;
- $arglist_next3 = ((($38)) + 4|0);
- HEAP32[$3>>2] = $arglist_next3;
- $40 = ($39|0)==(0|0);
- if (!($40)) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $41 = ($1|0)==(0|0);
- L22: do {
-  if ($41) {
-   $$0150$lcssa = $0;$$0178$lcssa = 0;
-   label = 36;
-  } else {
-   $$0150386 = $0;$$0151385 = $1;$$0178384 = 0;
-   while(1) {
-    $42 = HEAP8[$$0151385>>0]|0;
-    $43 = ($42<<24>>24)==(0);
-    if ($43) {
-     $$0150$lcssa = $$0150386;$$0178$lcssa = $$0178384;
-     label = 36;
-     break L22;
-    }
-    $44 = (_strchr($$0151385,33)|0);
-    $45 = ($44|0)==($$0151385|0);
-    if ($45) {
-     $$0178380 = $$0178384;$$4166 = $$0162$lcssa427;$$6174 = 0;$$9 = 27;
-     break L22;
-    }
-    $46 = ($44|0)==(0|0);
-    $47 = $44;
-    $48 = $$0151385;
-    $49 = (($47) - ($48))|0;
-    $$sink = $46 ? 0 : $49;
-    $50 = $46 ? 0 : $49;
-    $51 = (__gcry_sexp_find_token($$0150386,$$0151385,$$sink)|0);
-    $52 = ($51|0)==(0|0);
-    if ($52) {
-     $$0178380 = $$0178384;$$4166 = $$0162$lcssa427;$$6174 = 0;$$9 = 27;
-     break L22;
-    }
-    $53 = ($$0178384|0)==(0|0);
-    if (!($53)) {
-     $54 = (__gcry_is_secure($$0178384)|0);
-     $55 = ($54|0)==(0);
-     if (!($55)) {
-      $56 = HEAP8[$$0178384>>0]|0;
-      $57 = ($56<<24>>24)==(0);
-      if ($57) {
-       $$0$lcssa$i192 = $$0178384;
-      } else {
-       $$062$i187 = $$0178384;$59 = $56;
-       while(1) {
-        $58 = ((($$062$i187)) + 1|0);
-        $cond$i188 = ($59<<24>>24)==(1);
-        if ($cond$i188) {
-         $$0$copyload$i190 = HEAPU8[$58>>0]|(HEAPU8[$58+1>>0]<<8);
-         $60 = ((($$062$i187)) + 3|0);
-         $61 = $$0$copyload$i190&65535;
-         $62 = (($60) + ($61)|0);
-         $$1$i191 = $62;
-        } else {
-         $$1$i191 = $58;
-        }
-        $63 = HEAP8[$$1$i191>>0]|0;
-        $64 = ($63<<24>>24)==(0);
-        if ($64) {
-         $$0$lcssa$i192 = $$1$i191;
-         break;
-        } else {
-         $$062$i187 = $$1$i191;$59 = $63;
-        }
-       }
-      }
-      $65 = $$0$lcssa$i192;
-      $66 = $$0178384;
-      $67 = (($65) - ($66))|0;
-      $68 = $66 & 7;
-      $69 = ($68|0)!=(0);
-      $70 = ($67|0)!=(0);
-      $71 = $69 & $70;
-      if ($71) {
-       $$04859$i195 = $$0178384;$$05058$i196 = $67;
-       while(1) {
-        HEAP8[$$04859$i195>>0] = 0;
-        $72 = ((($$04859$i195)) + 1|0);
-        $73 = (($$05058$i196) + -1)|0;
-        $74 = $72;
-        $75 = $74 & 7;
-        $76 = ($75|0)!=(0);
-        $77 = ($73|0)!=(0);
-        $78 = $77 & $76;
-        if ($78) {
-         $$04859$i195 = $72;$$05058$i196 = $73;
-        } else {
-         $$048$lcssa$i198 = $72;$$050$lcssa$i197 = $73;
-         break;
-        }
-       }
-      } else {
-       $$048$lcssa$i198 = $$0178384;$$050$lcssa$i197 = $67;
-      }
-      $79 = ($$050$lcssa$i197>>>0)<(8);
-      if ($79) {
-       $$2$i205 = $$048$lcssa$i198;$$252$i204 = $$050$lcssa$i197;
-      } else {
-       $80 = (($$050$lcssa$i197) + -8)|0;
-       $81 = $80 & -8;
-       $$149$i201 = $$048$lcssa$i198;$$151$i200 = $$050$lcssa$i197;
-       while(1) {
-        $82 = $$149$i201;
-        $83 = $82;
-        HEAP32[$83>>2] = 0;
-        $84 = (($82) + 4)|0;
-        $85 = $84;
-        HEAP32[$85>>2] = 0;
-        $86 = (($$151$i200) + -8)|0;
-        $87 = ((($$149$i201)) + 8|0);
-        $88 = ($86>>>0)>(7);
-        if ($88) {
-         $$149$i201 = $87;$$151$i200 = $86;
-        } else {
-         break;
-        }
-       }
-       $89 = (($81) + 8)|0;
-       $90 = (($80) - ($81))|0;
-       $scevgep$i202 = (($$048$lcssa$i198) + ($89)|0);
-       $$2$i205 = $scevgep$i202;$$252$i204 = $90;
-      }
-      $91 = ($$252$i204|0)==(0);
-      if (!($91)) {
-       $$35356$i209 = $$252$i204;$$357$i208 = $$2$i205;
-       while(1) {
-        HEAP8[$$357$i208>>0] = 0;
-        $92 = ((($$357$i208)) + 1|0);
-        $93 = (($$35356$i209) + -1)|0;
-        $94 = ($93|0)==(0);
-        if ($94) {
-         break;
-        } else {
-         $$35356$i209 = $93;$$357$i208 = $92;
-        }
-       }
-      }
-     }
-     __gcry_free($$0178384);
-    }
-    $95 = ($50|0)==(0);
-    $96 = (($50) + 1)|0;
-    $97 = (($$0151385) + ($96)|0);
-    $spec$select = $95 ? 0 : $97;
-    $98 = ($spec$select|0)==(0|0);
-    if ($98) {
-     $$0150$lcssa = $51;$$0178$lcssa = $51;
-     label = 36;
-     break;
-    } else {
-     $$0150386 = $51;$$0151385 = $spec$select;$$0178384 = $51;
-    }
-   }
-  }
- } while(0);
- L57: do {
-  if ((label|0) == 36) {
-   $$0181 = 43;$$2164 = 0;$$3159 = $2;
-   L59: while(1) {
-    $99 = HEAP8[$$3159>>0]|0;
-    L61: do {
-     switch ($99<<24>>24) {
-     case 0:  {
-      break L59;
-      break;
-     }
-     case 47: case 45: case 43: case 38:  {
-      $100 = $99 << 24 >> 24;
-      $$1182 = $100;$$3165 = $$2164;$$5161 = $$3159;
-      break;
-     }
-     default: {
-      $101 = $99 << 24 >> 24;
-      switch ($101|0) {
-      case 10: case 13: case 12: case 11: case 9: case 32:  {
-       $$1182 = $$0181;$$3165 = $$2164;$$5161 = $$3159;
-       break L61;
-       break;
-      }
-      default: {
-      }
-      }
-      switch ($99<<24>>24) {
-      case 63:  {
-       $$1182 = $$0181;$$3165 = $$2164;$$5161 = $$3159;
-       break L61;
-       break;
-      }
-      case 39:  {
-       $102 = ((($$3159)) + 1|0);
-       $103 = (_strchr($102,39)|0);
-       $104 = ($103|0)==(0|0);
-       $105 = ($103|0)==($102|0);
-       $or$cond184 = $104 | $105;
-       if ($or$cond184) {
-        $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = 0;$$9 = 29;
-        break L57;
-       }
-       $106 = $103;
-       $107 = $102;
-       $108 = (($106) - ($107))|0;
-       $109 = (__gcry_sexp_find_token($$0150$lcssa,$102,$108)|0);
-       $$3171 = $109;$$4160 = $103;
-       break;
-      }
-      default: {
-       $110 = (__gcry_sexp_find_token($$0150$lcssa,$$3159,1)|0);
-       $$3171 = $110;$$4160 = $$3159;
-      }
-      }
-      $111 = ($$3171|0)==(0|0);
-      do {
-       if ($111) {
-        $112 = ((($$4160)) + 1|0);
-        $113 = HEAP8[$112>>0]|0;
-        $114 = ($113<<24>>24)==(63);
-        if (!($114)) {
-         $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = 0;$$9 = 68;
-         break L57;
-        }
-        $115 = ($$0181|0)==(38);
-        $116 = (($6) + ($$2164<<2)|0);
-        if (!($115)) {
-         $123 = HEAP32[$116>>2]|0;
-         HEAP32[$123>>2] = 0;
-         break;
-        }
-        $117 = HEAP32[$116>>2]|0;
-        $118 = ((($117)) + 12|0);
-        $119 = HEAP32[$118>>2]|0;
-        $120 = ($119|0)==(0|0);
-        if ($120) {
-         HEAP32[$117>>2] = 0;
-         $121 = ((($117)) + 4|0);
-         HEAP32[$121>>2] = 0;
-        }
-        $122 = ((($117)) + 8|0);
-        HEAP32[$122>>2] = 0;
-       } else {
-        L79: do {
-         switch ($$0181|0) {
-         case 38:  {
-          $124 = (($6) + ($$2164<<2)|0);
-          $125 = HEAP32[$124>>2]|0;
-          $126 = ((($125)) + 12|0);
-          $127 = HEAP32[$126>>2]|0;
-          $128 = ($127|0)==(0|0);
-          if ($128) {
-           HEAP32[$125>>2] = 0;
-           $161 = HEAP8[$$3171>>0]|0;
-           $162 = ($161<<24>>24)==(3);
-           if (!($162)) {
-            label = 76;
-            break L59;
-           }
-           $163 = ((($$3171)) + 1|0);
-           $$pre$i$i214 = HEAP8[$163>>0]|0;
-           $164 = ($$pre$i$i214<<24>>24)==(1);
-           $$03742$i$i217 = 1;$$044$i$i215 = 0;$$13543$i$i216 = $163;$172 = 
$$pre$i$i214;$433 = $164;
-           while(1) {
-            L101: do {
-             if ($433) {
-              $165 = ((($$13543$i$i216)) + 1|0);
-              $$0$copyload$i$i219 = HEAPU8[$165>>0]|(HEAPU8[$165+1>>0]<<8);
-              $166 = $$0$copyload$i$i219&65535;
-              $167 = (($166) + 2)|0;
-              $168 = (($165) + ($167)|0);
-              $169 = ((($168)) + -1|0);
-              $170 = ($$044$i$i215|0)==(0);
-              $171 = $170 << 31 >> 31;
-              $spec$select$i$i220 = (($$03742$i$i217) + ($171))|0;
-              $$1$i$i224 = $$044$i$i215;$$138$i$i222 = 
$spec$select$i$i220;$$2$i$i223 = $169;
-             } else {
-              switch ($172<<24>>24) {
-              case 0:  {
-               label = 76;
-               break L59;
-               break;
-              }
-              case 3:  {
-               $173 = (($$044$i$i215) + 1)|0;
-               $$1$i$i224 = $173;$$138$i$i222 = $$03742$i$i217;$$2$i$i223 = 
$$13543$i$i216;
-               break L101;
-               break;
-              }
-              case 4:  {
-               $174 = (($$044$i$i215) + -1)|0;
-               $175 = ($174|0)==(0);
-               $176 = $175 << 31 >> 31;
-               $spec$select39$i$i221 = (($$03742$i$i217) + ($176))|0;
-               $$1$i$i224 = $174;$$138$i$i222 = 
$spec$select39$i$i221;$$2$i$i223 = $$13543$i$i216;
-               break L101;
-               break;
-              }
-              default: {
-               $$1$i$i224 = $$044$i$i215;$$138$i$i222 = 
$$03742$i$i217;$$2$i$i223 = $$13543$i$i216;
-               break L101;
-              }
-              }
-             }
-            } while(0);
-            $177 = ((($$2$i$i223)) + 1|0);
-            $178 = ($$138$i$i222|0)>(0);
-            $179 = HEAP8[$177>>0]|0;
-            $180 = ($179<<24>>24)==(1);
-            if ($178) {
-             $$03742$i$i217 = $$138$i$i222;$$044$i$i215 = 
$$1$i$i224;$$13543$i$i216 = $177;$172 = $179;$433 = $180;
-            } else {
-             break;
-            }
-           }
-           if (!($180)) {
-            label = 76;
-            break L59;
-           }
-           $181 = ((($$2$i$i223)) + 2|0);
-           $$0$copyload9$i$i227 = HEAPU8[$181>>0]|(HEAPU8[$181+1>>0]<<8);
-           $182 = $$0$copyload9$i$i227&65535;
-           $183 = ((($$2$i$i223)) + 4|0);
-           $184 = ($$0$copyload9$i$i227<<16>>16)==(0);
-           if ($184) {
-            label = 76;
-            break L59;
-           }
-           $185 = (__gcry_malloc($182)|0);
-           $186 = ($185|0)==(0|0);
-           if ($186) {
-            label = 76;
-            break L59;
-           }
-           _memcpy(($185|0),($183|0),($182|0))|0;
-           HEAP32[$125>>2] = $182;
-           HEAP32[$126>>2] = $185;
-           $187 = ((($125)) + 8|0);
-           HEAP32[$187>>2] = $182;
-           $188 = ((($125)) + 4|0);
-           HEAP32[$188>>2] = 0;
-           $189 = (($7) + ($$2164)|0);
-           HEAP8[$189>>0] = 2;
-           $$pre$phiZ2D = $$3171;
-           break L79;
-          } else {
-           $129 = HEAP8[$$3171>>0]|0;
-           $130 = ($129<<24>>24)==(3);
-           if (!($130)) {
-            $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 65;
-            break L57;
-           }
-           $131 = ((($$3171)) + 1|0);
-           $$pre$i$i = HEAP8[$131>>0]|0;
-           $132 = ($$pre$i$i<<24>>24)==(1);
-           $$03742$i$i = 1;$$044$i$i = 0;$$13543$i$i = $131;$140 = 
$$pre$i$i;$432 = $132;
-           while(1) {
-            L116: do {
-             if ($432) {
-              $133 = ((($$13543$i$i)) + 1|0);
-              $$0$copyload$i$i = HEAPU8[$133>>0]|(HEAPU8[$133+1>>0]<<8);
-              $134 = $$0$copyload$i$i&65535;
-              $135 = (($134) + 2)|0;
-              $136 = (($133) + ($135)|0);
-              $137 = ((($136)) + -1|0);
-              $138 = ($$044$i$i|0)==(0);
-              $139 = $138 << 31 >> 31;
-              $spec$select$i$i = (($$03742$i$i) + ($139))|0;
-              $$1$i$i = $$044$i$i;$$138$i$i = $spec$select$i$i;$$2$i$i = $137;
-             } else {
-              switch ($140<<24>>24) {
-              case 0:  {
-               $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 
65;
-               break L57;
-               break;
-              }
-              case 3:  {
-               $141 = (($$044$i$i) + 1)|0;
-               $$1$i$i = $141;$$138$i$i = $$03742$i$i;$$2$i$i = $$13543$i$i;
-               break L116;
-               break;
-              }
-              case 4:  {
-               $142 = (($$044$i$i) + -1)|0;
-               $143 = ($142|0)==(0);
-               $144 = $143 << 31 >> 31;
-               $spec$select39$i$i = (($$03742$i$i) + ($144))|0;
-               $$1$i$i = $142;$$138$i$i = $spec$select39$i$i;$$2$i$i = 
$$13543$i$i;
-               break L116;
-               break;
-              }
-              default: {
-               $$1$i$i = $$044$i$i;$$138$i$i = $$03742$i$i;$$2$i$i = 
$$13543$i$i;
-               break L116;
-              }
-              }
-             }
-            } while(0);
-            $145 = ((($$2$i$i)) + 1|0);
-            $146 = ($$138$i$i|0)>(0);
-            $147 = HEAP8[$145>>0]|0;
-            $148 = ($147<<24>>24)==(1);
-            if ($146) {
-             $$03742$i$i = $$138$i$i;$$044$i$i = $$1$i$i;$$13543$i$i = 
$145;$140 = $147;$432 = $148;
-            } else {
-             break;
-            }
-           }
-           if (!($148)) {
-            $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 65;
-            break L57;
-           }
-           $149 = ((($$2$i$i)) + 2|0);
-           $$0$copyload9$i$i = HEAPU8[$149>>0]|(HEAPU8[$149+1>>0]<<8);
-           $150 = $$0$copyload9$i$i&65535;
-           $151 = ((($$2$i$i)) + 4|0);
-           $152 = ($$0$copyload9$i$i<<16>>16)==(0);
-           if ($152) {
-            $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 65;
-            break L57;
-           }
-           $153 = ((($125)) + 4|0);
-           $154 = HEAP32[$153>>2]|0;
-           $155 = (($154) + ($150))|0;
-           $156 = HEAP32[$125>>2]|0;
-           $157 = ($155>>>0)>($156>>>0);
-           if ($157) {
-            $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 200;
-            break L57;
-           }
-           $158 = (($127) + ($154)|0);
-           _memcpy(($158|0),($151|0),($150|0))|0;
-           $159 = ((($125)) + 8|0);
-           HEAP32[$159>>2] = $150;
-           $160 = (($7) + ($$2164)|0);
-           HEAP8[$160>>0] = 1;
-           $$pre$phiZ2D = $$3171;
-           break L79;
-          }
-          break;
-         }
-         case 47:  {
-          $190 = (__gcry_sexp_nth_mpi($$3171,1,8)|0);
-          $191 = (($6) + ($$2164<<2)|0);
-          $192 = HEAP32[$191>>2]|0;
-          HEAP32[$192>>2] = $190;
-          $$pre$phiZ2D = $$3171;
-          break;
-         }
-         case 45:  {
-          $193 = HEAP8[$$3171>>0]|0;
-          $194 = ($193<<24>>24)==(3);
-          L129: do {
-           if ($194) {
-            $195 = ((($$3171)) + 1|0);
-            $$pre$i$i229 = HEAP8[$195>>0]|0;
-            $196 = ($$pre$i$i229<<24>>24)==(1);
-            $$03742$i$i232 = 1;$$044$i$i230 = 0;$$13543$i$i231 = $195;$204 = 
$$pre$i$i229;$434 = $196;
-            while(1) {
-             L133: do {
-              if ($434) {
-               $197 = ((($$13543$i$i231)) + 1|0);
-               $$0$copyload$i$i234 = HEAPU8[$197>>0]|(HEAPU8[$197+1>>0]<<8);
-               $198 = $$0$copyload$i$i234&65535;
-               $199 = (($198) + 2)|0;
-               $200 = (($197) + ($199)|0);
-               $201 = ((($200)) + -1|0);
-               $202 = ($$044$i$i230|0)==(0);
-               $203 = $202 << 31 >> 31;
-               $spec$select$i$i235 = (($$03742$i$i232) + ($203))|0;
-               $$1$i$i239 = $$044$i$i230;$$138$i$i237 = 
$spec$select$i$i235;$$2$i$i238 = $201;
-              } else {
-               switch ($204<<24>>24) {
-               case 0:  {
-                $$2$i243 = 0;
-                break L129;
-                break;
-               }
-               case 3:  {
-                $205 = (($$044$i$i230) + 1)|0;
-                $$1$i$i239 = $205;$$138$i$i237 = $$03742$i$i232;$$2$i$i238 = 
$$13543$i$i231;
-                break L133;
-                break;
-               }
-               case 4:  {
-                $206 = (($$044$i$i230) + -1)|0;
-                $207 = ($206|0)==(0);
-                $208 = $207 << 31 >> 31;
-                $spec$select39$i$i236 = (($$03742$i$i232) + ($208))|0;
-                $$1$i$i239 = $206;$$138$i$i237 = 
$spec$select39$i$i236;$$2$i$i238 = $$13543$i$i231;
-                break L133;
-                break;
-               }
-               default: {
-                $$1$i$i239 = $$044$i$i230;$$138$i$i237 = 
$$03742$i$i232;$$2$i$i238 = $$13543$i$i231;
-                break L133;
-               }
-               }
-              }
-             } while(0);
-             $209 = ((($$2$i$i238)) + 1|0);
-             $210 = ($$138$i$i237|0)>(0);
-             $211 = HEAP8[$209>>0]|0;
-             $212 = ($211<<24>>24)==(1);
-             if ($210) {
-              $$03742$i$i232 = $$138$i$i237;$$044$i$i230 = 
$$1$i$i239;$$13543$i$i231 = $209;$204 = $211;$434 = $212;
-             } else {
-              break;
-             }
-            }
-            if ($212) {
-             $213 = ((($$2$i$i238)) + 2|0);
-             $$0$copyload9$i$i242 = HEAPU8[$213>>0]|(HEAPU8[$213+1>>0]<<8);
-             $214 = $$0$copyload9$i$i242&65535;
-             $215 = ((($$2$i$i238)) + 4|0);
-             $216 = (__gcry_mpi_scan($5,1,$215,$214,0)|0);
-             $217 = ($216|0)==(0);
-             $$pre$i = HEAP32[$5>>2]|0;
-             $spec$select$i = $217 ? $$pre$i : 0;
-             $$2$i243 = $spec$select$i;
-            } else {
-             $$2$i243 = 0;
-            }
-           } else {
-            $$2$i243 = 0;
-           }
-          } while(0);
-          $218 = (($6) + ($$2164<<2)|0);
-          $219 = HEAP32[$218>>2]|0;
-          HEAP32[$219>>2] = $$2$i243;
-          $$pre$phiZ2D = $$3171;
-          break;
-         }
-         default: {
-          $220 = HEAP8[$$3171>>0]|0;
-          $221 = ($220<<24>>24)==(3);
-          L81: do {
-           if ($221) {
-            $222 = ((($$3171)) + 1|0);
-            $$pre$i$i244 = HEAP8[$222>>0]|0;
-            $223 = ($$pre$i$i244<<24>>24)==(1);
-            $$03742$i$i247 = 1;$$044$i$i245 = 0;$$13543$i$i246 = $222;$231 = 
$$pre$i$i244;$435 = $223;
-            while(1) {
-             L85: do {
-              if ($435) {
-               $224 = ((($$13543$i$i246)) + 1|0);
-               $$0$copyload$i$i249 = HEAPU8[$224>>0]|(HEAPU8[$224+1>>0]<<8);
-               $225 = $$0$copyload$i$i249&65535;
-               $226 = (($225) + 2)|0;
-               $227 = (($224) + ($226)|0);
-               $228 = ((($227)) + -1|0);
-               $229 = ($$044$i$i245|0)==(0);
-               $230 = $229 << 31 >> 31;
-               $spec$select$i$i250 = (($$03742$i$i247) + ($230))|0;
-               $$1$i$i254 = $$044$i$i245;$$138$i$i252 = 
$spec$select$i$i250;$$2$i$i253 = $228;
-              } else {
-               switch ($231<<24>>24) {
-               case 0:  {
-                $$2$i260 = 0;
-                break L81;
-                break;
-               }
-               case 3:  {
-                $232 = (($$044$i$i245) + 1)|0;
-                $$1$i$i254 = $232;$$138$i$i252 = $$03742$i$i247;$$2$i$i253 = 
$$13543$i$i246;
-                break L85;
-                break;
-               }
-               case 4:  {
-                $233 = (($$044$i$i245) + -1)|0;
-                $234 = ($233|0)==(0);
-                $235 = $234 << 31 >> 31;
-                $spec$select39$i$i251 = (($$03742$i$i247) + ($235))|0;
-                $$1$i$i254 = $233;$$138$i$i252 = 
$spec$select39$i$i251;$$2$i$i253 = $$13543$i$i246;
-                break L85;
-                break;
-               }
-               default: {
-                $$1$i$i254 = $$044$i$i245;$$138$i$i252 = 
$$03742$i$i247;$$2$i$i253 = $$13543$i$i246;
-                break L85;
-               }
-               }
-              }
-             } while(0);
-             $236 = ((($$2$i$i253)) + 1|0);
-             $237 = ($$138$i$i252|0)>(0);
-             $238 = HEAP8[$236>>0]|0;
-             $239 = ($238<<24>>24)==(1);
-             if ($237) {
-              $$03742$i$i247 = $$138$i$i252;$$044$i$i245 = 
$$1$i$i254;$$13543$i$i246 = $236;$231 = $238;$435 = $239;
-             } else {
-              break;
-             }
-            }
-            if ($239) {
-             $240 = ((($$2$i$i253)) + 2|0);
-             $$0$copyload9$i$i257 = HEAPU8[$240>>0]|(HEAPU8[$240+1>>0]<<8);
-             $241 = $$0$copyload9$i$i257&65535;
-             $242 = ((($$2$i$i253)) + 4|0);
-             $243 = (__gcry_mpi_scan($4,5,$242,$241,0)|0);
-             $244 = ($243|0)==(0);
-             $$pre$i258 = HEAP32[$4>>2]|0;
-             $spec$select$i259 = $244 ? $$pre$i258 : 0;
-             $$2$i260 = $spec$select$i259;
-            } else {
-             $$2$i260 = 0;
-            }
-           } else {
-            $$2$i260 = 0;
-           }
-          } while(0);
-          $245 = (($6) + ($$2164<<2)|0);
-          $246 = HEAP32[$245>>2]|0;
-          HEAP32[$246>>2] = $$2$i260;
-          $$pre$phiZ2D = $$3171;
-         }
-         }
-        } while(0);
-        $247 = (__gcry_is_secure($$pre$phiZ2D)|0);
-        $248 = ($247|0)==(0);
-        if (!($248)) {
-         $249 = HEAP8[$$pre$phiZ2D>>0]|0;
-         $250 = ($249<<24>>24)==(0);
-         if ($250) {
-          $$0$lcssa$i268 = $$pre$phiZ2D;
-         } else {
-          $$062$i263 = $$pre$phiZ2D;$252 = $249;
-          while(1) {
-           $251 = ((($$062$i263)) + 1|0);
-           $cond$i264 = ($252<<24>>24)==(1);
-           if ($cond$i264) {
-            $$0$copyload$i266 = HEAPU8[$251>>0]|(HEAPU8[$251+1>>0]<<8);
-            $253 = ((($$062$i263)) + 3|0);
-            $254 = $$0$copyload$i266&65535;
-            $255 = (($253) + ($254)|0);
-            $$1$i267 = $255;
-           } else {
-            $$1$i267 = $251;
-           }
-           $256 = HEAP8[$$1$i267>>0]|0;
-           $257 = ($256<<24>>24)==(0);
-           if ($257) {
-            $$0$lcssa$i268 = $$1$i267;
-            break;
-           } else {
-            $$062$i263 = $$1$i267;$252 = $256;
-           }
-          }
-         }
-         $258 = $$0$lcssa$i268;
-         $259 = $$3171;
-         $260 = (($258) - ($259))|0;
-         $261 = $259 & 7;
-         $262 = ($261|0)!=(0);
-         $263 = ($260|0)!=(0);
-         $264 = $262 & $263;
-         if ($264) {
-          $$04859$i271 = $$pre$phiZ2D;$$05058$i272 = $260;
-          while(1) {
-           HEAP8[$$04859$i271>>0] = 0;
-           $265 = ((($$04859$i271)) + 1|0);
-           $266 = (($$05058$i272) + -1)|0;
-           $267 = $265;
-           $268 = $267 & 7;
-           $269 = ($268|0)!=(0);
-           $270 = ($266|0)!=(0);
-           $271 = $270 & $269;
-           if ($271) {
-            $$04859$i271 = $265;$$05058$i272 = $266;
-           } else {
-            $$048$lcssa$i274 = $265;$$050$lcssa$i273 = $266;
-            break;
-           }
-          }
-         } else {
-          $$048$lcssa$i274 = $$pre$phiZ2D;$$050$lcssa$i273 = $260;
-         }
-         $272 = ($$050$lcssa$i273>>>0)<(8);
-         if ($272) {
-          $$2$i281 = $$048$lcssa$i274;$$252$i280 = $$050$lcssa$i273;
-         } else {
-          $273 = (($$050$lcssa$i273) + -8)|0;
-          $274 = $273 & -8;
-          $$149$i277 = $$048$lcssa$i274;$$151$i276 = $$050$lcssa$i273;
-          while(1) {
-           $275 = $$149$i277;
-           $276 = $275;
-           HEAP32[$276>>2] = 0;
-           $277 = (($275) + 4)|0;
-           $278 = $277;
-           HEAP32[$278>>2] = 0;
-           $279 = (($$151$i276) + -8)|0;
-           $280 = ((($$149$i277)) + 8|0);
-           $281 = ($279>>>0)>(7);
-           if ($281) {
-            $$149$i277 = $280;$$151$i276 = $279;
-           } else {
-            break;
-           }
-          }
-          $282 = (($274) + 8)|0;
-          $283 = (($273) - ($274))|0;
-          $scevgep$i278 = (($$048$lcssa$i274) + ($282)|0);
-          $$2$i281 = $scevgep$i278;$$252$i280 = $283;
-         }
-         $284 = ($$252$i280|0)==(0);
-         if (!($284)) {
-          $$35356$i285 = $$252$i280;$$357$i284 = $$2$i281;
-          while(1) {
-           HEAP8[$$357$i284>>0] = 0;
-           $285 = ((($$357$i284)) + 1|0);
-           $286 = (($$35356$i285) + -1)|0;
-           $287 = ($286|0)==(0);
-           if ($287) {
-            break;
-           } else {
-            $$35356$i285 = $286;$$357$i284 = $285;
-           }
-          }
-         }
-        }
-        __gcry_free($$pre$phiZ2D);
-        $288 = (($6) + ($$2164<<2)|0);
-        $289 = HEAP32[$288>>2]|0;
-        $290 = HEAP32[$289>>2]|0;
-        $291 = ($290|0)==(0|0);
-        if ($291) {
-         $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = 0;$$9 = 65;
-         break L57;
-        }
-       }
-      } while(0);
-      $292 = (($$2164) + 1)|0;
-      $$1182 = $$0181;$$3165 = $292;$$5161 = $$4160;
-     }
-     }
-    } while(0);
-    $293 = ((($$5161)) + 1|0);
-    $$0181 = $$1182;$$2164 = $$3165;$$3159 = $293;
-   }
-   if ((label|0) == 76) {
-    HEAP32[$126>>2] = 0;
-    $$0178380 = $$0178$lcssa;$$4166 = $$2164;$$6174 = $$3171;$$9 = 65;
-    break;
-   }
-   $294 = ($$0178$lcssa|0)==(0|0);
-   if ($294) {
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $295 = (__gcry_is_secure($$0178$lcssa)|0);
-   $296 = ($295|0)==(0);
-   if (!($296)) {
-    $297 = HEAP8[$$0178$lcssa>>0]|0;
-    $298 = ($297<<24>>24)==(0);
-    if ($298) {
-     $$0$lcssa$i294 = $$0178$lcssa;
-    } else {
-     $$062$i289 = $$0178$lcssa;$300 = $297;
-     while(1) {
-      $299 = ((($$062$i289)) + 1|0);
-      $cond$i290 = ($300<<24>>24)==(1);
-      if ($cond$i290) {
-       $$0$copyload$i292 = HEAPU8[$299>>0]|(HEAPU8[$299+1>>0]<<8);
-       $301 = ((($$062$i289)) + 3|0);
-       $302 = $$0$copyload$i292&65535;
-       $303 = (($301) + ($302)|0);
-       $$1$i293 = $303;
-      } else {
-       $$1$i293 = $299;
-      }
-      $304 = HEAP8[$$1$i293>>0]|0;
-      $305 = ($304<<24>>24)==(0);
-      if ($305) {
-       $$0$lcssa$i294 = $$1$i293;
-       break;
-      } else {
-       $$062$i289 = $$1$i293;$300 = $304;
-      }
-     }
-    }
-    $306 = $$0$lcssa$i294;
-    $307 = $$0178$lcssa;
-    $308 = (($306) - ($307))|0;
-    $309 = $307 & 7;
-    $310 = ($309|0)!=(0);
-    $311 = ($308|0)!=(0);
-    $312 = $310 & $311;
-    if ($312) {
-     $$04859$i297 = $$0178$lcssa;$$05058$i298 = $308;
-     while(1) {
-      HEAP8[$$04859$i297>>0] = 0;
-      $313 = ((($$04859$i297)) + 1|0);
-      $314 = (($$05058$i298) + -1)|0;
-      $315 = $313;
-      $316 = $315 & 7;
-      $317 = ($316|0)!=(0);
-      $318 = ($314|0)!=(0);
-      $319 = $318 & $317;
-      if ($319) {
-       $$04859$i297 = $313;$$05058$i298 = $314;
-      } else {
-       $$048$lcssa$i300 = $313;$$050$lcssa$i299 = $314;
-       break;
-      }
-     }
-    } else {
-     $$048$lcssa$i300 = $$0178$lcssa;$$050$lcssa$i299 = $308;
-    }
-    $320 = ($$050$lcssa$i299>>>0)<(8);
-    if ($320) {
-     $$2$i307 = $$048$lcssa$i300;$$252$i306 = $$050$lcssa$i299;
-    } else {
-     $321 = (($$050$lcssa$i299) + -8)|0;
-     $322 = $321 & -8;
-     $$149$i303 = $$048$lcssa$i300;$$151$i302 = $$050$lcssa$i299;
-     while(1) {
-      $323 = $$149$i303;
-      $324 = $323;
-      HEAP32[$324>>2] = 0;
-      $325 = (($323) + 4)|0;
-      $326 = $325;
-      HEAP32[$326>>2] = 0;
-      $327 = (($$151$i302) + -8)|0;
-      $328 = ((($$149$i303)) + 8|0);
-      $329 = ($327>>>0)>(7);
-      if ($329) {
-       $$149$i303 = $328;$$151$i302 = $327;
-      } else {
-       break;
-      }
-     }
-     $330 = (($322) + 8)|0;
-     $331 = (($321) - ($322))|0;
-     $scevgep$i304 = (($$048$lcssa$i300) + ($330)|0);
-     $$2$i307 = $scevgep$i304;$$252$i306 = $331;
-    }
-    $332 = ($$252$i306|0)==(0);
-    if (!($332)) {
-     $$35356$i311 = $$252$i306;$$357$i310 = $$2$i307;
-     while(1) {
-      HEAP8[$$357$i310>>0] = 0;
-      $333 = ((($$357$i310)) + 1|0);
-      $334 = (($$35356$i311) + -1)|0;
-      $335 = ($334|0)==(0);
-      if ($335) {
-       break;
-      } else {
-       $$35356$i311 = $334;$$357$i310 = $333;
-      }
-     }
-    }
-   }
-   __gcry_free($$0178$lcssa);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- } while(0);
- $336 = ($$0178380|0)==(0|0);
- if (!($336)) {
-  $337 = (__gcry_is_secure($$0178380)|0);
-  $338 = ($337|0)==(0);
-  if (!($338)) {
-   $339 = HEAP8[$$0178380>>0]|0;
-   $340 = ($339<<24>>24)==(0);
-   if ($340) {
-    $$0$lcssa$i320 = $$0178380;
-   } else {
-    $$062$i315 = $$0178380;$342 = $339;
-    while(1) {
-     $341 = ((($$062$i315)) + 1|0);
-     $cond$i316 = ($342<<24>>24)==(1);
-     if ($cond$i316) {
-      $$0$copyload$i318 = HEAPU8[$341>>0]|(HEAPU8[$341+1>>0]<<8);
-      $343 = ((($$062$i315)) + 3|0);
-      $344 = $$0$copyload$i318&65535;
-      $345 = (($343) + ($344)|0);
-      $$1$i319 = $345;
-     } else {
-      $$1$i319 = $341;
-     }
-     $346 = HEAP8[$$1$i319>>0]|0;
-     $347 = ($346<<24>>24)==(0);
-     if ($347) {
-      $$0$lcssa$i320 = $$1$i319;
-      break;
-     } else {
-      $$062$i315 = $$1$i319;$342 = $346;
-     }
-    }
-   }
-   $348 = $$0$lcssa$i320;
-   $349 = $$0178380;
-   $350 = (($348) - ($349))|0;
-   $351 = $349 & 7;
-   $352 = ($351|0)!=(0);
-   $353 = ($350|0)!=(0);
-   $354 = $352 & $353;
-   if ($354) {
-    $$04859$i323 = $$0178380;$$05058$i324 = $350;
-    while(1) {
-     HEAP8[$$04859$i323>>0] = 0;
-     $355 = ((($$04859$i323)) + 1|0);
-     $356 = (($$05058$i324) + -1)|0;
-     $357 = $355;
-     $358 = $357 & 7;
-     $359 = ($358|0)!=(0);
-     $360 = ($356|0)!=(0);
-     $361 = $360 & $359;
-     if ($361) {
-      $$04859$i323 = $355;$$05058$i324 = $356;
-     } else {
-      $$048$lcssa$i326 = $355;$$050$lcssa$i325 = $356;
-      break;
-     }
-    }
-   } else {
-    $$048$lcssa$i326 = $$0178380;$$050$lcssa$i325 = $350;
-   }
-   $362 = ($$050$lcssa$i325>>>0)<(8);
-   if ($362) {
-    $$2$i333 = $$048$lcssa$i326;$$252$i332 = $$050$lcssa$i325;
-   } else {
-    $363 = (($$050$lcssa$i325) + -8)|0;
-    $364 = $363 & -8;
-    $$149$i329 = $$048$lcssa$i326;$$151$i328 = $$050$lcssa$i325;
-    while(1) {
-     $365 = $$149$i329;
-     $366 = $365;
-     HEAP32[$366>>2] = 0;
-     $367 = (($365) + 4)|0;
-     $368 = $367;
-     HEAP32[$368>>2] = 0;
-     $369 = (($$151$i328) + -8)|0;
-     $370 = ((($$149$i329)) + 8|0);
-     $371 = ($369>>>0)>(7);
-     if ($371) {
-      $$149$i329 = $370;$$151$i328 = $369;
-     } else {
-      break;
-     }
-    }
-    $372 = (($364) + 8)|0;
-    $373 = (($363) - ($364))|0;
-    $scevgep$i330 = (($$048$lcssa$i326) + ($372)|0);
-    $$2$i333 = $scevgep$i330;$$252$i332 = $373;
-   }
-   $374 = ($$252$i332|0)==(0);
-   if (!($374)) {
-    $$35356$i337 = $$252$i332;$$357$i336 = $$2$i333;
-    while(1) {
-     HEAP8[$$357$i336>>0] = 0;
-     $375 = ((($$357$i336)) + 1|0);
-     $376 = (($$35356$i337) + -1)|0;
-     $377 = ($376|0)==(0);
-     if ($377) {
-      break;
-     } else {
-      $$35356$i337 = $376;$$357$i336 = $375;
-     }
-    }
-   }
-  }
-  __gcry_free($$0178380);
- }
- $378 = ($$6174|0)==(0|0);
- if (!($378)) {
-  $379 = (__gcry_is_secure($$6174)|0);
-  $380 = ($379|0)==(0);
-  if (!($380)) {
-   $381 = HEAP8[$$6174>>0]|0;
-   $382 = ($381<<24>>24)==(0);
-   if ($382) {
-    $$0$lcssa$i = $$6174;
-   } else {
-    $$062$i = $$6174;$384 = $381;
-    while(1) {
-     $383 = ((($$062$i)) + 1|0);
-     $cond$i = ($384<<24>>24)==(1);
-     if ($cond$i) {
-      $$0$copyload$i = HEAPU8[$383>>0]|(HEAPU8[$383+1>>0]<<8);
-      $385 = ((($$062$i)) + 3|0);
-      $386 = $$0$copyload$i&65535;
-      $387 = (($385) + ($386)|0);
-      $$1$i = $387;
-     } else {
-      $$1$i = $383;
-     }
-     $388 = HEAP8[$$1$i>>0]|0;
-     $389 = ($388<<24>>24)==(0);
-     if ($389) {
-      $$0$lcssa$i = $$1$i;
-      break;
-     } else {
-      $$062$i = $$1$i;$384 = $388;
-     }
-    }
-   }
-   $390 = $$0$lcssa$i;
-   $391 = $$6174;
-   $392 = (($390) - ($391))|0;
-   $393 = $391 & 7;
-   $394 = ($393|0)!=(0);
-   $395 = ($392|0)!=(0);
-   $396 = $394 & $395;
-   if ($396) {
-    $$04859$i = $$6174;$$05058$i = $392;
-    while(1) {
-     HEAP8[$$04859$i>>0] = 0;
-     $397 = ((($$04859$i)) + 1|0);
-     $398 = (($$05058$i) + -1)|0;
-     $399 = $397;
-     $400 = $399 & 7;
-     $401 = ($400|0)!=(0);
-     $402 = ($398|0)!=(0);
-     $403 = $402 & $401;
-     if ($403) {
-      $$04859$i = $397;$$05058$i = $398;
-     } else {
-      $$048$lcssa$i = $397;$$050$lcssa$i = $398;
-      break;
-     }
-    }
-   } else {
-    $$048$lcssa$i = $$6174;$$050$lcssa$i = $392;
-   }
-   $404 = ($$050$lcssa$i>>>0)<(8);
-   if ($404) {
-    $$2$i = $$048$lcssa$i;$$252$i = $$050$lcssa$i;
-   } else {
-    $405 = (($$050$lcssa$i) + -8)|0;
-    $406 = $405 & -8;
-    $$149$i = $$048$lcssa$i;$$151$i = $$050$lcssa$i;
-    while(1) {
-     $407 = $$149$i;
-     $408 = $407;
-     HEAP32[$408>>2] = 0;
-     $409 = (($407) + 4)|0;
-     $410 = $409;
-     HEAP32[$410>>2] = 0;
-     $411 = (($$151$i) + -8)|0;
-     $412 = ((($$149$i)) + 8|0);
-     $413 = ($411>>>0)>(7);
-     if ($413) {
-      $$149$i = $412;$$151$i = $411;
-     } else {
-      break;
-     }
-    }
-    $414 = (($406) + 8)|0;
-    $415 = (($405) - ($406))|0;
-    $scevgep$i = (($$048$lcssa$i) + ($414)|0);
-    $$2$i = $scevgep$i;$$252$i = $415;
-   }
-   $416 = ($$252$i|0)==(0);
-   if (!($416)) {
-    $$35356$i = $$252$i;$$357$i = $$2$i;
-    while(1) {
-     HEAP8[$$357$i>>0] = 0;
-     $417 = ((($$357$i)) + 1|0);
-     $418 = (($$35356$i) + -1)|0;
-     $419 = ($418|0)==(0);
-     if ($419) {
-      break;
-     } else {
-      $$35356$i = $418;$$357$i = $417;
-     }
-    }
-   }
-  }
-  __gcry_free($$6174);
- }
- $420 = ($$4166|0)==(0);
- if ($420) {
-  $$0 = $$9;
-  STACKTOP = sp;return ($$0|0);
- }
- $$in = $$4166;
- while(1) {
-  $421 = (($$in) + -1)|0;
-  $422 = (($7) + ($421)|0);
-  $423 = HEAP8[$422>>0]|0;
-  $424 = ($423<<24>>24)==(0);
-  $425 = (($6) + ($421<<2)|0);
-  if ($424) {
-   $426 = HEAP32[$425>>2]|0;
-   $427 = HEAP32[$426>>2]|0;
-   __gcry_mpi_release($427);
-   HEAP32[$426>>2] = 0;
-  } else {
-   $428 = HEAP32[$425>>2]|0;
-   $429 = ((($428)) + 12|0);
-   $430 = HEAP32[$429>>2]|0;
-   __gcry_free($430);
-   
;HEAP32[$428>>2]=0|0;HEAP32[$428+4>>2]=0|0;HEAP32[$428+8>>2]=0|0;HEAP32[$428+12>>2]=0|0;
-  }
-  $431 = ($421|0)==(0);
-  if ($431) {
-   $$0 = $$9;
-   break;
-  } else {
-   $$in = $421;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_sexp_extract_param($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- HEAP32[$3>>2] = $varargs;
- $4 = (__gcry_sexp_vextract_param($0,$1,$2,$3)|0);
- $5 = ($4|0)==(0);
- $6 = $4 & 65535;
- $7 = $6 | 16777216;
- $8 = $5 ? 0 : $7;
- STACKTOP = sp;return ($8|0);
-}
-function __gcry_disable_hw_feature($0) {
- $0 = $0|0;
- var $$05 = 0, $$07$lcssa = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 
= 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_strcmp(44779,$0)|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  $$07$lcssa = 0;
- } else {
-  $7 = (_strcmp(44791,$0)|0);
-  $8 = ($7|0)==(0);
-  if ($8) {
-   $$07$lcssa = 1;
-  } else {
-   $9 = (_strcmp(44803,$0)|0);
-   $10 = ($9|0)==(0);
-   if ($10) {
-    $$07$lcssa = 2;
-   } else {
-    $11 = (_strcmp(44815,$0)|0);
-    $12 = ($11|0)==(0);
-    if ($12) {
-     $$07$lcssa = 3;
-    } else {
-     $13 = (_strcmp(44828,$0)|0);
-     $14 = ($13|0)==(0);
-     if ($14) {
-      $$07$lcssa = 4;
-     } else {
-      $15 = (_strcmp(44838,$0)|0);
-      $16 = ($15|0)==(0);
-      if ($16) {
-       $$07$lcssa = 5;
-      } else {
-       $17 = (_strcmp(44849,$0)|0);
-       $18 = ($17|0)==(0);
-       if ($18) {
-        $$07$lcssa = 6;
-       } else {
-        $19 = (_strcmp(44861,$0)|0);
-        $20 = ($19|0)==(0);
-        if ($20) {
-         $$07$lcssa = 7;
-        } else {
-         $21 = (_strcmp(44874,$0)|0);
-         $22 = ($21|0)==(0);
-         if ($22) {
-          $$07$lcssa = 8;
-         } else {
-          $23 = (_strcmp(44886,$0)|0);
-          $24 = ($23|0)==(0);
-          if ($24) {
-           $$07$lcssa = 9;
-          } else {
-           $25 = (_strcmp(44899,$0)|0);
-           $26 = ($25|0)==(0);
-           if ($26) {
-            $$07$lcssa = 10;
-           } else {
-            $27 = (_strcmp(44909,$0)|0);
-            $28 = ($27|0)==(0);
-            if ($28) {
-             $$07$lcssa = 11;
-            } else {
-             $29 = (_strcmp(44920,$0)|0);
-             $30 = ($29|0)==(0);
-             if ($30) {
-              $$07$lcssa = 12;
-             } else {
-              $$05 = 88;
-              return ($$05|0);
-             }
-            }
-           }
-          }
-         }
-        }
-       }
-      }
-     }
-    }
-   }
-  }
- }
- $3 = (96 + ($$07$lcssa<<3)|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = HEAP32[18093]|0;
- $6 = $5 | $4;
- HEAP32[18093] = $6;
- $$05 = 0;
- return ($$05|0);
-}
-function __gcry_get_hw_features() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_enum_hw_features($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $2 = ($0>>>0)>(12);
- if ($2) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $3 = ($1|0)==(0|0);
- if (!($3)) {
-  $4 = (96 + ($0<<3)|0);
-  $5 = HEAP32[$4>>2]|0;
-  HEAP32[$1>>2] = $5;
- }
- $6 = (((96 + ($0<<3)|0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $$0 = $7;
- return ($$0|0);
-}
-function __gcry_detect_hw_features() {
- var $$03847$lcssa$i = 0, $$03945$i = 0, $$040$lcssa$i = 0, $$04042$i = 0, 
$$pre$i = 0, $$pre54$i = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0;
- var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(256|0);
- $0 = sp;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  STACKTOP = sp;return;
- }
- $3 = (_fopen(44929,45466)|0);
- $4 = ($3|0)==(0|0);
- if (!($4)) {
-  $5 = (_fgets($0,256,$3)|0);
-  $6 = ($5|0)==(0|0);
-  if (!($6)) {
-   while(1) {
-    $7 = HEAP8[$0>>0]|0;
-    $8 = $7 << 24 >> 24;
-    $9 = $8 & 128;
-    $10 = ($9|0)==(0);
-    L10: do {
-     if ($10) {
-      $$04042$i = $0;$11 = $8;$69 = $7;
-      while(1) {
-       $12 = (_isspace($11)|0);
-       $13 = ($12|0)==(0);
-       if ($13) {
-        $$040$lcssa$i = $$04042$i;$68 = $69;
-        break L10;
-       }
-       $14 = ((($$04042$i)) + 1|0);
-       $15 = HEAP8[$14>>0]|0;
-       $16 = $15 << 24 >> 24;
-       $17 = $16 & 128;
-       $18 = ($17|0)==(0);
-       if ($18) {
-        $$04042$i = $14;$11 = $16;$69 = $15;
-       } else {
-        $$040$lcssa$i = $14;$68 = $15;
-        break;
-       }
-      }
-     } else {
-      $$040$lcssa$i = $0;$68 = $7;
-     }
-    } while(0);
-    $19 = (_strchr($$040$lcssa$i,10)|0);
-    $20 = ($19|0)==(0|0);
-    if ($20) {
-     $22 = $68;
-    } else {
-     HEAP8[$19>>0] = 0;
-     $$pre$i = HEAP8[$$040$lcssa$i>>0]|0;
-     $22 = $$pre$i;
-    }
-    $21 = ($22<<24>>24)==(0);
-    L19: do {
-     if (!($21)) {
-      $23 = (_strlen($$040$lcssa$i)|0);
-      $24 = (($23) + -1)|0;
-      $25 = ($24|0)>(0);
-      if ($25) {
-       $26 = (($$040$lcssa$i) + ($24)|0);
-       $$03945$i = $26;
-       while(1) {
-        $27 = HEAP8[$$03945$i>>0]|0;
-        $28 = $27 << 24 >> 24;
-        $29 = $28 & 128;
-        $30 = ($29|0)==(0);
-        if ($30) {
-         $31 = (_isspace($28)|0);
-         $32 = ($31|0)==(0);
-         if (!($32)) {
-          HEAP8[$$03945$i>>0] = 0;
-         }
-        }
-        $33 = ((($$03945$i)) + -1|0);
-        $34 = ($33>>>0)>($$040$lcssa$i>>>0);
-        if ($34) {
-         $$03945$i = $33;
-        } else {
-         break;
-        }
-       }
-       $$pre54$i = HEAP8[$$040$lcssa$i>>0]|0;
-       $35 = $$pre54$i;
-      } else {
-       $35 = $22;
-      }
-      switch ($35<<24>>24) {
-      case 35: case 0:  {
-       break L19;
-       break;
-      }
-      default: {
-      }
-      }
-      $38 = (_strcmp(44779,$$040$lcssa$i)|0);
-      $39 = ($38|0)==(0);
-      do {
-       if ($39) {
-        $$03847$lcssa$i = 0;
-       } else {
-        $44 = (_strcmp(44791,$$040$lcssa$i)|0);
-        $45 = ($44|0)==(0);
-        if ($45) {
-         $$03847$lcssa$i = 1;
-        } else {
-         $46 = (_strcmp(44803,$$040$lcssa$i)|0);
-         $47 = ($46|0)==(0);
-         if ($47) {
-          $$03847$lcssa$i = 2;
-         } else {
-          $48 = (_strcmp(44815,$$040$lcssa$i)|0);
-          $49 = ($48|0)==(0);
-          if ($49) {
-           $$03847$lcssa$i = 3;
-          } else {
-           $50 = (_strcmp(44828,$$040$lcssa$i)|0);
-           $51 = ($50|0)==(0);
-           if ($51) {
-            $$03847$lcssa$i = 4;
-           } else {
-            $52 = (_strcmp(44838,$$040$lcssa$i)|0);
-            $53 = ($52|0)==(0);
-            if ($53) {
-             $$03847$lcssa$i = 5;
-            } else {
-             $54 = (_strcmp(44849,$$040$lcssa$i)|0);
-             $55 = ($54|0)==(0);
-             if ($55) {
-              $$03847$lcssa$i = 6;
-             } else {
-              $56 = (_strcmp(44861,$$040$lcssa$i)|0);
-              $57 = ($56|0)==(0);
-              if ($57) {
-               $$03847$lcssa$i = 7;
-              } else {
-               $58 = (_strcmp(44874,$$040$lcssa$i)|0);
-               $59 = ($58|0)==(0);
-               if ($59) {
-                $$03847$lcssa$i = 8;
-                break;
-               }
-               $60 = (_strcmp(44886,$$040$lcssa$i)|0);
-               $61 = ($60|0)==(0);
-               if ($61) {
-                $$03847$lcssa$i = 9;
-                break;
-               }
-               $62 = (_strcmp(44899,$$040$lcssa$i)|0);
-               $63 = ($62|0)==(0);
-               if ($63) {
-                $$03847$lcssa$i = 10;
-                break;
-               }
-               $64 = (_strcmp(44909,$$040$lcssa$i)|0);
-               $65 = ($64|0)==(0);
-               if ($65) {
-                $$03847$lcssa$i = 11;
-                break;
-               }
-               $66 = (_strcmp(44920,$$040$lcssa$i)|0);
-               $67 = ($66|0)==(0);
-               if ($67) {
-                $$03847$lcssa$i = 12;
-               } else {
-                break L19;
-               }
-              }
-             }
-            }
-           }
-          }
-         }
-        }
-       }
-      } while(0);
-      $40 = (96 + ($$03847$lcssa$i<<3)|0);
-      $41 = HEAP32[$40>>2]|0;
-      $42 = HEAP32[18093]|0;
-      $43 = $42 | $41;
-      HEAP32[18093] = $43;
-     }
-    } while(0);
-    $36 = (_fgets($0,256,$3)|0);
-    $37 = ($36|0)==(0|0);
-    if ($37) {
-     break;
-    }
-   }
-  }
-  (_feof($3)|0);
-  (_fclose($3)|0);
- }
- STACKTOP = sp;return;
-}
-function __gcry_private_enable_m_guard() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18094] = 1;
- return;
-}
-function __gcry_private_malloc($0) {
- $0 = $0|0;
- var $$1 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if ($1) {
-  _gpg_err_set_errno(22);
-  $$1 = 0;
-  return ($$1|0);
- }
- $2 = HEAP32[18094]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  $18 = (_malloc($0)|0);
-  $$1 = $18;
-  return ($$1|0);
- }
- $4 = (($0) + 5)|0;
- $5 = (_malloc($4)|0);
- $6 = ($5|0)==(0|0);
- if ($6) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $7 = $0&255;
- HEAP8[$5>>0] = $7;
- $8 = $0 >>> 8;
- $9 = $8&255;
- $10 = ((($5)) + 1|0);
- HEAP8[$10>>0] = $9;
- $11 = $0 >>> 16;
- $12 = $11&255;
- $13 = ((($5)) + 2|0);
- HEAP8[$13>>0] = $12;
- $14 = ((($5)) + 3|0);
- HEAP8[$14>>0] = 85;
- $15 = (($0) + 4)|0;
- $16 = (($5) + ($15)|0);
- HEAP8[$16>>0] = -86;
- $17 = ((($5)) + 4|0);
- $$1 = $17;
- return ($$1|0);
-}
-function __gcry_private_malloc_secure($0) {
- $0 = $0|0;
- var $$1 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if ($1) {
-  _gpg_err_set_errno(22);
-  $$1 = 0;
-  return ($$1|0);
- }
- $2 = HEAP32[18094]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  $18 = (__gcry_secmem_malloc($0)|0);
-  $$1 = $18;
-  return ($$1|0);
- }
- $4 = (($0) + 5)|0;
- $5 = (__gcry_secmem_malloc($4)|0);
- $6 = ($5|0)==(0|0);
- if ($6) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $7 = $0&255;
- HEAP8[$5>>0] = $7;
- $8 = $0 >>> 8;
- $9 = $8&255;
- $10 = ((($5)) + 1|0);
- HEAP8[$10>>0] = $9;
- $11 = $0 >>> 16;
- $12 = $11&255;
- $13 = ((($5)) + 2|0);
- HEAP8[$13>>0] = $12;
- $14 = ((($5)) + 3|0);
- HEAP8[$14>>0] = -52;
- $15 = (($0) + 4)|0;
- $16 = (($5) + ($15)|0);
- HEAP8[$16>>0] = -86;
- $17 = ((($5)) + 4|0);
- $$1 = $17;
- return ($$1|0);
-}
-function __gcry_private_realloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$1 = 0, $$sink = 0, $$sink49 = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, 
$vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = HEAP32[18094]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  $58 = (__gcry_private_is_secure($0)|0);
-  $59 = ($58|0)==(0);
-  if ($59) {
-   $61 = (_realloc($0,$1)|0);
-   $$1 = $61;
-   STACKTOP = sp;return ($$1|0);
-  } else {
-   $60 = (__gcry_secmem_realloc($0,$1)|0);
-   $$1 = $60;
-   STACKTOP = sp;return ($$1|0);
-  }
- }
- $4 = ($0|0)==(0|0);
- if ($4) {
-  $5 = ($1|0)==(0);
-  if ($5) {
-   _gpg_err_set_errno(22);
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $6 = (($1) + 5)|0;
-  $7 = (_malloc($6)|0);
-  $8 = ($7|0)==(0|0);
-  if ($8) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $9 = $1&255;
-  HEAP8[$7>>0] = $9;
-  $10 = $1 >>> 8;
-  $11 = $10&255;
-  $12 = ((($7)) + 1|0);
-  HEAP8[$12>>0] = $11;
-  $13 = $1 >>> 16;
-  $14 = $13&255;
-  $15 = ((($7)) + 2|0);
-  HEAP8[$15>>0] = $14;
-  $16 = ((($7)) + 3|0);
-  HEAP8[$16>>0] = 85;
-  $17 = (($1) + 4)|0;
-  $18 = (($7) + ($17)|0);
-  HEAP8[$18>>0] = -86;
-  $19 = ((($7)) + 4|0);
-  $$1 = $19;
-  STACKTOP = sp;return ($$1|0);
- }
- $20 = ((($0)) + -1|0);
- $21 = HEAP8[$20>>0]|0;
- $22 = $21&255;
- switch ($21<<24>>24) {
- case -52: case 85:  {
-  break;
- }
- default: {
-  HEAP32[$vararg_buffer>>2] = $0;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $22;
-  __gcry_log_fatal(44950,$vararg_buffer);
-  // unreachable;
- }
- }
- $23 = ((($0)) + -4|0);
- $24 = HEAP8[$23>>0]|0;
- $25 = $24&255;
- $26 = ((($0)) + -3|0);
- $27 = HEAP8[$26>>0]|0;
- $28 = $27&255;
- $29 = $28 << 8;
- $30 = $29 | $25;
- $31 = ((($0)) + -2|0);
- $32 = HEAP8[$31>>0]|0;
- $33 = $32&255;
- $34 = $33 << 16;
- $35 = $30 | $34;
- $36 = (($0) + ($35)|0);
- $37 = HEAP8[$36>>0]|0;
- $38 = ($37<<24>>24)==(-86);
- if (!($38)) {
-  HEAP32[$vararg_buffer2>>2] = $0;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = $22;
-  __gcry_log_fatal(44991,$vararg_buffer2);
-  // unreachable;
- }
- $39 = ($35>>>0)<($1>>>0);
- if (!($39)) {
-  $$1 = $0;
-  STACKTOP = sp;return ($$1|0);
- }
- $40 = ($21<<24>>24)==(-52);
- $41 = (($1) + 5)|0;
- if ($40) {
-  $42 = (__gcry_secmem_malloc($41)|0);
-  $43 = ($42|0)==(0|0);
-  if ($43) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  } else {
-   $$sink = -52;$$sink49 = $42;
-  }
- } else {
-  $44 = (_malloc($41)|0);
-  $45 = ($44|0)==(0|0);
-  if ($45) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  } else {
-   $$sink = 85;$$sink49 = $44;
-  }
- }
- $46 = $1&255;
- HEAP8[$$sink49>>0] = $46;
- $47 = $1 >>> 8;
- $48 = $47&255;
- $49 = ((($$sink49)) + 1|0);
- HEAP8[$49>>0] = $48;
- $50 = $1 >>> 16;
- $51 = $50&255;
- $52 = ((($$sink49)) + 2|0);
- HEAP8[$52>>0] = $51;
- $53 = ((($$sink49)) + 3|0);
- HEAP8[$53>>0] = $$sink;
- $54 = (($1) + 4)|0;
- $55 = (($$sink49) + ($54)|0);
- HEAP8[$55>>0] = -86;
- $$0 = ((($$sink49)) + 4|0);
- $56 = (($$0) + ($35)|0);
- $57 = (($1) - ($35))|0;
- _memcpy(($$0|0),($0|0),($35|0))|0;
- _memset(($56|0),0,($57|0))|0;
- __gcry_private_free($0);
- $$1 = $$0;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_private_free($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $3 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  STACKTOP = sp;return;
- }
- $2 = HEAP32[18094]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  $25 = (__gcry_private_is_secure($0)|0);
-  $26 = ($25|0)==(0);
-  if ($26) {
-   _free($0);
-   STACKTOP = sp;return;
-  } else {
-   __gcry_secmem_free($0);
-   STACKTOP = sp;return;
-  }
- }
- $4 = ((($0)) + -1|0);
- $5 = HEAP8[$4>>0]|0;
- $6 = $5&255;
- switch ($5<<24>>24) {
- case -52: case 85:  {
-  break;
- }
- default: {
-  HEAP32[$vararg_buffer>>2] = $0;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $6;
-  __gcry_log_fatal(44950,$vararg_buffer);
-  // unreachable;
- }
- }
- $7 = ((($0)) + -4|0);
- $8 = HEAP8[$7>>0]|0;
- $9 = $8&255;
- $10 = ((($0)) + -3|0);
- $11 = HEAP8[$10>>0]|0;
- $12 = $11&255;
- $13 = $12 << 8;
- $14 = $13 | $9;
- $15 = ((($0)) + -2|0);
- $16 = HEAP8[$15>>0]|0;
- $17 = $16&255;
- $18 = $17 << 16;
- $19 = $14 | $18;
- $20 = (($0) + ($19)|0);
- $21 = HEAP8[$20>>0]|0;
- $22 = ($21<<24>>24)==(-86);
- if (!($22)) {
-  HEAP32[$vararg_buffer2>>2] = $0;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = $6;
-  __gcry_log_fatal(44991,$vararg_buffer2);
-  // unreachable;
- }
- $23 = (__gcry_private_is_secure($0)|0);
- $24 = ($23|0)==(0);
- if ($24) {
-  _free($7);
-  STACKTOP = sp;return;
- } else {
-  __gcry_secmem_free($7);
-  STACKTOP = sp;return;
- }
-}
-function __gcry_secmem_set_flags($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- $1 = $0 & 1;
- HEAP32[18095] = $1;
- $2 = $0 & 2;
- HEAP32[18096] = $2;
- $3 = $0 & 8;
- HEAP32[18097] = $3;
- $4 = $0 & 16;
- HEAP32[18098] = $4;
- (_gpgrt_lock_unlock(37900)|0);
- return;
-}
-function __gcry_secmem_get_flags() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 
0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- $0 = HEAP32[18095]|0;
- $1 = ($0|0)!=(0);
- $2 = $1&1;
- $3 = HEAP32[18096]|0;
- $4 = ($3|0)==(0);
- $5 = $4 ? 0 : 2;
- $6 = $5 | $2;
- $7 = HEAP32[18097]|0;
- $8 = ($7|0)==(0);
- $9 = $8 ? 0 : 8;
- $10 = $6 | $9;
- $11 = HEAP32[18098]|0;
- $12 = ($11|0)==(0);
- $13 = $12 ? 0 : 16;
- $14 = $10 | $13;
- (_gpgrt_lock_unlock(37900)|0);
- return ($14|0);
-}
-function __gcry_secmem_init($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- _secmem_init($0);
- (_gpgrt_lock_unlock(37900)|0);
- return;
-}
-function _secmem_init($0) {
- $0 = $0|0;
- var $$pre$i = 0, $$pre13$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $spec$select = 0, $vararg_buffer = 0, $vararg_buffer1 = 
0, $vararg_buffer11 = 0, $vararg_buffer3 = 0, $vararg_buffer6 = 0, 
$vararg_buffer9 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer11 = sp + 40|0;
- $vararg_buffer9 = sp + 32|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = ($0|0)==(0);
- if ($1) {
-  HEAP32[18099] = 1;
-  $2 = (_getuid()|0);
-  $3 = (_geteuid()|0);
-  $4 = ($2|0)==($3|0);
-  if ($4) {
-   STACKTOP = sp;return;
-  }
-  $5 = (_setuid($2)|0);
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_log_fatal(45031,$vararg_buffer);
-   // unreachable;
-  }
-  $7 = (_getuid()|0);
-  $8 = (_geteuid()|0);
-  $9 = ($7|0)==($8|0);
-  if (!($9)) {
-   __gcry_log_fatal(45031,$vararg_buffer);
-   // unreachable;
-  }
-  $10 = (_setuid(0)|0);
-  $11 = ($10|0)==(0);
-  if ($11) {
-   __gcry_log_fatal(45031,$vararg_buffer);
-   // unreachable;
-  } else {
-   STACKTOP = sp;return;
-  }
- }
- $12 = HEAP32[18100]|0;
- $13 = ($12|0)==(0);
- if (!($13)) {
-  __gcry_log_error(45230,$vararg_buffer11);
-  STACKTOP = sp;return;
- }
- $14 = ($0>>>0)>(16384);
- $spec$select = $14 ? $0 : 16384;
- HEAP32[18101] = $spec$select;
- $15 = HEAP32[18099]|0;
- $16 = ($15|0)==(0);
- if (!($16)) {
-  __gcry_log_bug(45054,$vararg_buffer1);
-  // unreachable;
- }
- $17 = (_sysconf(30)|0);
- $18 = ($17|0)>(0);
- $19 = $18 ? $17 : 4096;
- $20 = HEAP32[18101]|0;
- $21 = (($20) + -1)|0;
- $22 = (($21) + ($19))|0;
- $23 = (0 - ($19))|0;
- $24 = $22 & $23;
- HEAP32[18101] = $24;
- $25 = (___mmap(0,$24,3,34,-1,0)|0);
- HEAP32[18102] = $25;
- $26 = ($25|0)==((-1)|0);
- if ($26) {
-  $27 = HEAP32[18101]|0;
-  $28 = (___errno_location()|0);
-  $29 = HEAP32[$28>>2]|0;
-  $30 = (_strerror($29)|0);
-  HEAP32[$vararg_buffer3>>2] = $27;
-  $vararg_ptr5 = ((($vararg_buffer3)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = $30;
-  __gcry_log_info(45080,$vararg_buffer3);
- } else {
-  HEAP32[18103] = 1;
-  HEAP32[18100] = 1;
- }
- $31 = HEAP32[18100]|0;
- $32 = ($31|0)==(0);
- do {
-  if ($32) {
-   $33 = HEAP32[18101]|0;
-   $34 = (_malloc($33)|0);
-   HEAP32[18102] = $34;
-   $35 = ($34|0)==(0|0);
-   if ($35) {
-    HEAP32[$vararg_buffer6>>2] = $33;
-    __gcry_log_fatal(45128,$vararg_buffer6);
-    // unreachable;
-   } else {
-    HEAP32[18100] = 1;
-    $36 = $33;$37 = $34;
-    break;
-   }
-  } else {
-   $$pre$i = HEAP32[18102]|0;
-   $$pre13$i = HEAP32[18101]|0;
-   $36 = $$pre13$i;$37 = $$pre$i;
-  }
- } while(0);
- HEAP32[$37>>2] = $36;
- $38 = ((($37)) + 4|0);
- HEAP32[$38>>2] = 0;
- $39 = HEAP32[18097]|0;
- $40 = ($39|0)==(0);
- if (!($40)) {
-  STACKTOP = sp;return;
- }
- __gcry_log_info(45168,$vararg_buffer9);
- STACKTOP = sp;return;
-}
-function __gcry_secmem_module_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_secmem_malloc($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- $1 = (__gcry_secmem_malloc_internal($0)|0);
- (_gpgrt_lock_unlock(37900)|0);
- return ($1|0);
-}
-function __gcry_secmem_malloc_internal($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i$i = 0, $$0$i$i$i = 0, $$1$i$i$i = 0, $$cast = 0, $$in = 0, 
$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $8 = 0, $9 = 0, $or$cond = 0, $or$cond$i = 0, $or$cond$i$i = 0, 
$or$cond29 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = HEAP32[18100]|0;
- $2 = ($1|0)==(0);
- if ($2) {
-  _secmem_init(32768);
-  $3 = HEAP32[18100]|0;
-  $4 = ($3|0)==(0);
-  if ($4) {
-   $5 = (__gcry_gettext(45276)|0);
-   __gcry_log_info($5,$vararg_buffer);
-   _gpg_err_set_errno(12);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $6 = (($0) + 31)|0;
- $7 = $6 & -32;
- $8 = HEAP32[18102]|0;
- $$cast = $8;
- $9 = HEAP32[18101]|0;
- $10 = (($9) + ($$cast))|0;
- $$in = $8;
- while(1) {
-  $11 = $$in;
-  $12 = ($10>>>0)>($11>>>0);
-  if (!($12)) {
-   label = 18;
-   break;
-  }
-  $13 = ((($$in)) + 4|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = $14 & 1;
-  $16 = ($15|0)!=(0);
-  $17 = HEAP32[$$in>>2]|0;
-  $18 = ($17>>>0)<($7>>>0);
-  $or$cond$i = $16 | $18;
-  if (!($or$cond$i)) {
-   label = 7;
-   break;
-  }
-  $62 = ((($$in)) + 8|0);
-  $63 = (($62) + ($17)|0);
-  $64 = ($8>>>0)<=($63>>>0);
-  $65 = $63;
-  $66 = ($10>>>0)>($65>>>0);
-  $or$cond29 = $64 & $66;
-  $67 = $or$cond29 ? $63 : 0;
-  $68 = ($8>>>0)>($67>>>0);
-  if ($68) {
-   label = 18;
-   break;
-  } else {
-   $$in = $67;
-  }
- }
- do {
-  if ((label|0) == 7) {
-   $19 = ((($$in)) + 4|0);
-   $20 = $14 | 1;
-   HEAP32[$19>>2] = $20;
-   $21 = (($17) - ($7))|0;
-   $22 = ($21>>>0)>(8);
-   if ($22) {
-    $23 = ((($$in)) + 8|0);
-    $24 = (($23) + ($7)|0);
-    $25 = (($21) + -8)|0;
-    HEAP32[$24>>2] = $25;
-    $26 = ((($24)) + 4|0);
-    HEAP32[$26>>2] = 0;
-    HEAP32[$$in>>2] = $7;
-    $27 = ($8|0)==($24|0);
-    if ($27) {
-     $$1$i$i$i = 0;
-    } else {
-     $28 = HEAP32[18101]|0;
-     $29 = (($28) + ($$cast))|0;
-     $$0$i$i$i = $8;
-     while(1) {
-      $30 = ((($$0$i$i$i)) + 8|0);
-      $31 = HEAP32[$$0$i$i$i>>2]|0;
-      $32 = (($30) + ($31)|0);
-      $33 = ($8>>>0)<=($32>>>0);
-      $34 = $32;
-      $35 = ($29>>>0)>($34>>>0);
-      $or$cond$i$i = $33 & $35;
-      $36 = $or$cond$i$i ? $32 : 0;
-      $37 = ($36|0)==($24|0);
-      if ($37) {
-       $$1$i$i$i = $$0$i$i$i;
-       break;
-      } else {
-       $$0$i$i$i = $36;
-      }
-     }
-    }
-    $38 = ((($24)) + 8|0);
-    $39 = HEAP32[$24>>2]|0;
-    $40 = (($38) + ($39)|0);
-    $41 = ($8>>>0)<=($40>>>0);
-    $42 = $40;
-    $43 = ($10>>>0)>($42>>>0);
-    $or$cond = $41 & $43;
-    $44 = $or$cond ? $40 : 0;
-    $45 = ($$1$i$i$i|0)==(0|0);
-    if ($45) {
-     $$0$i$i = $24;$59 = $39;
-    } else {
-     $46 = ((($$1$i$i$i)) + 4|0);
-     $47 = HEAP32[$46>>2]|0;
-     $48 = $47 & 1;
-     $49 = ($48|0)==(0);
-     if ($49) {
-      $50 = (($39) + 8)|0;
-      $51 = HEAP32[$$1$i$i$i>>2]|0;
-      $52 = (($50) + ($51))|0;
-      HEAP32[$$1$i$i$i>>2] = $52;
-      $$0$i$i = $$1$i$i$i;$59 = $52;
-     } else {
-      $$0$i$i = $24;$59 = $39;
-     }
-    }
-    $53 = ($44|0)==(0|0);
-    if (!($53)) {
-     $54 = ((($44)) + 4|0);
-     $55 = HEAP32[$54>>2]|0;
-     $56 = $55 & 1;
-     $57 = ($56|0)==(0);
-     if ($57) {
-      $58 = (($59) + 8)|0;
-      $60 = HEAP32[$44>>2]|0;
-      $61 = (($58) + ($60))|0;
-      HEAP32[$$0$i$i>>2] = $61;
-     }
-    }
-   }
-   $69 = ($7|0)==(0);
-   if ($69) {
-    $75 = ((($$in)) + 8|0);
-    $76 = $75;
-    break;
-   } else {
-    $70 = HEAP32[18104]|0;
-    $71 = (($70) + ($7))|0;
-    HEAP32[18104] = $71;
-    $72 = HEAP32[18105]|0;
-    $73 = (($72) + 1)|0;
-    HEAP32[18105] = $73;
-    $74 = ((($$in)) + 8|0);
-    $76 = $74;
-    break;
-   }
-  }
-  else if ((label|0) == 18) {
-   _gpg_err_set_errno(12);
-   $76 = 0;
-  }
- } while(0);
- $$0 = $76;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_secmem_free($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- __gcry_secmem_free_internal($0);
- (_gpgrt_lock_unlock(37900)|0);
- return;
-}
-function __gcry_secmem_free_internal($0) {
- $0 = $0|0;
- var $$0$i = 0, $$0$i$i = 0, $$0135$lcssa = 0, $$0135215 = 0, $$0139$lcssa = 
0, $$0139180 = 0, $$0143$lcssa = 0, $$0143179 = 0, $$0147$lcssa = 0, $$0147214 
= 0, $$0151$lcssa = 0, $$0151191 = 0, $$0155$lcssa = 0, $$0155190 = 0, 
$$0159$lcssa = 0, $$0159203 = 0, $$0163$lcssa = 0, $$0163202 = 0, $$1$i$i = 0, 
$$1136 = 0;
- var $$1140 = 0, $$1144 = 0, $$1148 = 0, $$1152 = 0, $$1156 = 0, $$1160 = 0, 
$$1164 = 0, $$2137 = 0, $$2141 = 0, $$2145 = 0, $$2149 = 0, $$2153 = 0, $$2157 
= 0, $$2161 = 0, $$2165 = 0, $$3138210 = 0, $$3142178 = 0, $$3146177 = 0, 
$$3150209 = 0, $$3154186 = 0;
- var $$3158185 = 0, $$3162198 = 0, $$3166197 = 0, $1 = 0, $10 = 0, $100 = 0, 
$101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, $or$cond$i = 0, $scevgep = 0, $scevgep236 = 0, $scevgep237 = 0, 
$scevgep238 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = ((($0)) + -8|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $0;
- $5 = $4 & 7;
- $6 = ($5|0)!=(0);
- $7 = ($3|0)!=(0);
- $8 = $7 & $6;
- if ($8) {
-  $$0135215 = $0;$$0147214 = $3;
-  while(1) {
-   HEAP8[$$0135215>>0] = -1;
-   $9 = ((($$0135215)) + 1|0);
-   $10 = (($$0147214) + -1)|0;
-   $11 = $9;
-   $12 = $11 & 7;
-   $13 = ($12|0)!=(0);
-   $14 = ($10|0)!=(0);
-   $15 = $14 & $13;
-   if ($15) {
-    $$0135215 = $9;$$0147214 = $10;
-   } else {
-    $$0135$lcssa = $9;$$0147$lcssa = $10;
-    break;
-   }
-  }
- } else {
-  $$0135$lcssa = $0;$$0147$lcssa = $3;
- }
- $16 = ($$0147$lcssa>>>0)<(8);
- if ($16) {
-  $$2137 = $$0135$lcssa;$$2149 = $$0147$lcssa;
- } else {
-  $17 = (($$0147$lcssa) + -8)|0;
-  $18 = $17 & -8;
-  $19 = (($18) + 8)|0;
-  $$1136 = $$0135$lcssa;$$1148 = $$0147$lcssa;
-  while(1) {
-   $20 = $$1136;
-   $21 = $20;
-   HEAP32[$21>>2] = -1;
-   $22 = (($20) + 4)|0;
-   $23 = $22;
-   HEAP32[$23>>2] = -1;
-   $24 = (($$1148) + -8)|0;
-   $25 = ((($$1136)) + 8|0);
-   $26 = ($24>>>0)>(7);
-   if ($26) {
-    $$1136 = $25;$$1148 = $24;
-   } else {
-    break;
-   }
-  }
-  $27 = (($17) - ($18))|0;
-  $scevgep238 = (($$0135$lcssa) + ($19)|0);
-  $$2137 = $scevgep238;$$2149 = $27;
- }
- $28 = ($$2149|0)==(0);
- if (!($28)) {
-  $$3138210 = $$2137;$$3150209 = $$2149;
-  while(1) {
-   HEAP8[$$3138210>>0] = -1;
-   $29 = ((($$3138210)) + 1|0);
-   $30 = (($$3150209) + -1)|0;
-   $31 = ($30|0)==(0);
-   if ($31) {
-    break;
-   } else {
-    $$3138210 = $29;$$3150209 = $30;
-   }
-  }
- }
- if ($8) {
-  $$0159203 = $0;$$0163202 = $3;
-  while(1) {
-   HEAP8[$$0159203>>0] = -86;
-   $32 = ((($$0159203)) + 1|0);
-   $33 = (($$0163202) + -1)|0;
-   $34 = $32;
-   $35 = $34 & 7;
-   $36 = ($35|0)!=(0);
-   $37 = ($33|0)!=(0);
-   $38 = $37 & $36;
-   if ($38) {
-    $$0159203 = $32;$$0163202 = $33;
-   } else {
-    $$0159$lcssa = $32;$$0163$lcssa = $33;
-    break;
-   }
-  }
- } else {
-  $$0159$lcssa = $0;$$0163$lcssa = $3;
- }
- $39 = ($$0163$lcssa>>>0)<(8);
- if ($39) {
-  $$2161 = $$0159$lcssa;$$2165 = $$0163$lcssa;
- } else {
-  $40 = (($$0163$lcssa) + -8)|0;
-  $41 = $40 & -8;
-  $42 = (($41) + 8)|0;
-  $$1160 = $$0159$lcssa;$$1164 = $$0163$lcssa;
-  while(1) {
-   $43 = $$1160;
-   $44 = $43;
-   HEAP32[$44>>2] = -1431655766;
-   $45 = (($43) + 4)|0;
-   $46 = $45;
-   HEAP32[$46>>2] = -1431655766;
-   $47 = (($$1164) + -8)|0;
-   $48 = ((($$1160)) + 8|0);
-   $49 = ($47>>>0)>(7);
-   if ($49) {
-    $$1160 = $48;$$1164 = $47;
-   } else {
-    break;
-   }
-  }
-  $50 = (($40) - ($41))|0;
-  $scevgep237 = (($$0159$lcssa) + ($42)|0);
-  $$2161 = $scevgep237;$$2165 = $50;
- }
- $51 = ($$2165|0)==(0);
- if (!($51)) {
-  $$3162198 = $$2161;$$3166197 = $$2165;
-  while(1) {
-   HEAP8[$$3162198>>0] = -86;
-   $52 = ((($$3162198)) + 1|0);
-   $53 = (($$3166197) + -1)|0;
-   $54 = ($53|0)==(0);
-   if ($54) {
-    break;
-   } else {
-    $$3162198 = $52;$$3166197 = $53;
-   }
-  }
- }
- if ($8) {
-  $$0151191 = $3;$$0155190 = $0;
-  while(1) {
-   HEAP8[$$0155190>>0] = 85;
-   $55 = ((($$0155190)) + 1|0);
-   $56 = (($$0151191) + -1)|0;
-   $57 = $55;
-   $58 = $57 & 7;
-   $59 = ($58|0)!=(0);
-   $60 = ($56|0)!=(0);
-   $61 = $60 & $59;
-   if ($61) {
-    $$0151191 = $56;$$0155190 = $55;
-   } else {
-    $$0151$lcssa = $56;$$0155$lcssa = $55;
-    break;
-   }
-  }
- } else {
-  $$0151$lcssa = $3;$$0155$lcssa = $0;
- }
- $62 = ($$0151$lcssa>>>0)<(8);
- if ($62) {
-  $$2153 = $$0151$lcssa;$$2157 = $$0155$lcssa;
- } else {
-  $63 = (($$0151$lcssa) + -8)|0;
-  $64 = $63 & -8;
-  $65 = (($64) + 8)|0;
-  $$1152 = $$0151$lcssa;$$1156 = $$0155$lcssa;
-  while(1) {
-   $66 = $$1156;
-   $67 = $66;
-   HEAP32[$67>>2] = 1431655765;
-   $68 = (($66) + 4)|0;
-   $69 = $68;
-   HEAP32[$69>>2] = 1431655765;
-   $70 = (($$1152) + -8)|0;
-   $71 = ((($$1156)) + 8|0);
-   $72 = ($70>>>0)>(7);
-   if ($72) {
-    $$1152 = $70;$$1156 = $71;
-   } else {
-    break;
-   }
-  }
-  $73 = (($63) - ($64))|0;
-  $scevgep236 = (($$0155$lcssa) + ($65)|0);
-  $$2153 = $73;$$2157 = $scevgep236;
- }
- $74 = ($$2153|0)==(0);
- if (!($74)) {
-  $$3154186 = $$2153;$$3158185 = $$2157;
-  while(1) {
-   HEAP8[$$3158185>>0] = 85;
-   $75 = ((($$3158185)) + 1|0);
-   $76 = (($$3154186) + -1)|0;
-   $77 = ($76|0)==(0);
-   if ($77) {
-    break;
-   } else {
-    $$3154186 = $76;$$3158185 = $75;
-   }
-  }
- }
- if ($8) {
-  $$0139180 = $3;$$0143179 = $0;
-  while(1) {
-   HEAP8[$$0143179>>0] = 0;
-   $78 = ((($$0143179)) + 1|0);
-   $79 = (($$0139180) + -1)|0;
-   $80 = $78;
-   $81 = $80 & 7;
-   $82 = ($81|0)!=(0);
-   $83 = ($79|0)!=(0);
-   $84 = $83 & $82;
-   if ($84) {
-    $$0139180 = $79;$$0143179 = $78;
-   } else {
-    $$0139$lcssa = $79;$$0143$lcssa = $78;
-    break;
-   }
-  }
- } else {
-  $$0139$lcssa = $3;$$0143$lcssa = $0;
- }
- $85 = ($$0139$lcssa>>>0)<(8);
- if ($85) {
-  $$2141 = $$0139$lcssa;$$2145 = $$0143$lcssa;
- } else {
-  $86 = (($$0139$lcssa) + -8)|0;
-  $87 = $86 & -8;
-  $88 = (($87) + 8)|0;
-  $$1140 = $$0139$lcssa;$$1144 = $$0143$lcssa;
-  while(1) {
-   $89 = $$1144;
-   $90 = $89;
-   HEAP32[$90>>2] = 0;
-   $91 = (($89) + 4)|0;
-   $92 = $91;
-   HEAP32[$92>>2] = 0;
-   $93 = (($$1140) + -8)|0;
-   $94 = ((($$1144)) + 8|0);
-   $95 = ($93>>>0)>(7);
-   if ($95) {
-    $$1140 = $93;$$1144 = $94;
-   } else {
-    break;
-   }
-  }
-  $96 = (($86) - ($87))|0;
-  $scevgep = (($$0143$lcssa) + ($88)|0);
-  $$2141 = $96;$$2145 = $scevgep;
- }
- $97 = ($$2141|0)==(0);
- if (!($97)) {
-  $$3142178 = $$2141;$$3146177 = $$2145;
-  while(1) {
-   HEAP8[$$3146177>>0] = 0;
-   $98 = ((($$3146177)) + 1|0);
-   $99 = (($$3142178) + -1)|0;
-   $100 = ($99|0)==(0);
-   if ($100) {
-    break;
-   } else {
-    $$3142178 = $99;$$3146177 = $98;
-   }
-  }
- }
- $101 = ($3|0)==(0);
- if (!($101)) {
-  $102 = HEAP32[18104]|0;
-  $103 = (($102) - ($3))|0;
-  HEAP32[18104] = $103;
-  $104 = HEAP32[18105]|0;
-  $105 = (($104) + -1)|0;
-  HEAP32[18105] = $105;
- }
- $106 = ((($0)) + -4|0);
- $107 = HEAP32[$106>>2]|0;
- $108 = $107 & -2;
- HEAP32[$106>>2] = $108;
- $109 = HEAP32[18102]|0;
- $110 = ($109|0)==($2|0);
- $111 = $109;
- if ($110) {
-  $$1$i$i = 0;
- } else {
-  $112 = HEAP32[18101]|0;
-  $113 = (($112) + ($111))|0;
-  $$0$i$i = $109;
-  while(1) {
-   $114 = ((($$0$i$i)) + 8|0);
-   $115 = HEAP32[$$0$i$i>>2]|0;
-   $116 = (($114) + ($115)|0);
-   $117 = ($109>>>0)<=($116>>>0);
-   $118 = $116;
-   $119 = ($113>>>0)>($118>>>0);
-   $or$cond$i = $117 & $119;
-   $120 = $or$cond$i ? $116 : 0;
-   $121 = ($120|0)==($2|0);
-   if ($121) {
-    $$1$i$i = $$0$i$i;
-    break;
-   } else {
-    $$0$i$i = $120;
-   }
-  }
- }
- $122 = HEAP32[$2>>2]|0;
- $123 = (($0) + ($122)|0);
- $124 = ($109>>>0)>($123>>>0);
- if ($124) {
-  label = 49;
- } else {
-  $125 = $123;
-  $126 = HEAP32[18101]|0;
-  $127 = (($126) + ($111))|0;
-  $128 = ($127>>>0)>($125>>>0);
-  if ($128) {
-   $138 = $123;
-  } else {
-   label = 49;
-  }
- }
- if ((label|0) == 49) {
-  $138 = 0;
- }
- $129 = ($$1$i$i|0)==(0|0);
- if ($129) {
-  $$0$i = $2;$145 = $122;
- } else {
-  $130 = ((($$1$i$i)) + 4|0);
-  $131 = HEAP32[$130>>2]|0;
-  $132 = $131 & 1;
-  $133 = ($132|0)==(0);
-  if ($133) {
-   $134 = (($122) + 8)|0;
-   $135 = HEAP32[$$1$i$i>>2]|0;
-   $136 = (($134) + ($135))|0;
-   HEAP32[$$1$i$i>>2] = $136;
-   $$0$i = $$1$i$i;$145 = $136;
-  } else {
-   $$0$i = $2;$145 = $122;
-  }
- }
- $137 = ($138|0)==(0|0);
- if ($137) {
-  return;
- }
- $139 = ((($138)) + 4|0);
- $140 = HEAP32[$139>>2]|0;
- $141 = $140 & 1;
- $142 = ($141|0)==(0);
- if (!($142)) {
-  return;
- }
- $143 = HEAP32[$138>>2]|0;
- $144 = (($145) + 8)|0;
- $146 = (($144) + ($143))|0;
- HEAP32[$$0$i>>2] = $146;
- return;
-}
-function __gcry_secmem_realloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- (_gpgrt_lock_lock(37900)|0);
- $2 = ((($0)) + -8|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ($3>>>0)>($1>>>0);
- if ($4) {
-  $$0 = $0;
- } else {
-  $5 = (__gcry_secmem_malloc_internal($1)|0);
-  $6 = ($5|0)==(0|0);
-  if ($6) {
-   $$0 = 0;
-  } else {
-   $7 = (($1) - ($3))|0;
-   $8 = (($5) + ($3)|0);
-   _memcpy(($5|0),($0|0),($3|0))|0;
-   _memset(($8|0),0,($7|0))|0;
-   __gcry_secmem_free_internal($0);
-   $$0 = $5;
-  }
- }
- (_gpgrt_lock_unlock(37900)|0);
- return ($$0|0);
-}
-function __gcry_private_is_secure($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$phitmp2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18100]|0;
- $2 = ($1|0)==(0);
- if ($2) {
-  $9 = 0;
-  return ($9|0);
- }
- $3 = $0;
- $4 = HEAP32[18102]|0;
- $5 = ($4>>>0)>($3>>>0);
- if ($5) {
-  $9 = 0;
-  return ($9|0);
- }
- $6 = HEAP32[18101]|0;
- $7 = (($6) + ($4))|0;
- $8 = ($7>>>0)>($3>>>0);
- $phitmp2 = $8&1;
- $9 = $phitmp2;
- return ($9|0);
-}
-function __gcry_secmem_term() {
- var $$0$lcssa = 0, $$0117$lcssa = 0, $$0117196 = 0, $$0121$lcssa = 0, 
$$0121162 = 0, $$0125$lcssa = 0, $$0125161 = 0, $$0133$lcssa = 0, $$0133173 = 
0, $$0137$lcssa = 0, $$0137172 = 0, $$0141$lcssa = 0, $$0141185 = 0, 
$$0145$lcssa = 0, $$0145184 = 0, $$0197 = 0, $$1 = 0, $$1118 = 0, $$1122 = 0, 
$$1126 = 0;
- var $$1134 = 0, $$1138 = 0, $$1142 = 0, $$1146 = 0, $$2 = 0, $$2119 = 0, 
$$2123 = 0, $$2127 = 0, $$2135 = 0, $$2139 = 0, $$2143 = 0, $$2147 = 0, 
$$3120191 = 0, $$3124160 = 0, $$3128159 = 0, $$3136168 = 0, $$3140167 = 0, 
$$3144180 = 0, $$3148179 = 0, $$3192 = 0;
- var $$pre = 0, $$pre$phi226Z2D = 0, $$pre$phi230Z2D = 0, $$pre221 = 0, 
$$pre222 = 0, $$pre223 = 0, $$pre224 = 0, $$pre225 = 0, $$pre227 = 0, $$pre229 
= 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, 
$105 = 0, $106 = 0;
- var $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, $scevgep = 0, $scevgep218 = 0, $scevgep219 
= 0, $scevgep220 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18100]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  return;
- }
- $2 = HEAP32[18102]|0;
- $3 = HEAP32[18101]|0;
- $4 = $2;
- $5 = $4 & 7;
- $6 = ($5|0)!=(0);
- $7 = ($3|0)!=(0);
- $8 = $7 & $6;
- if ($8) {
-  $$0117196 = $3;$$0197 = $2;
-  while(1) {
-   HEAP8[$$0197>>0] = -1;
-   $9 = ((($$0197)) + 1|0);
-   $10 = (($$0117196) + -1)|0;
-   $11 = $9;
-   $12 = $11 & 7;
-   $13 = ($12|0)!=(0);
-   $14 = ($10|0)!=(0);
-   $15 = $14 & $13;
-   if ($15) {
-    $$0117196 = $10;$$0197 = $9;
-   } else {
-    $$0$lcssa = $9;$$0117$lcssa = $10;
-    break;
-   }
-  }
- } else {
-  $$0$lcssa = $2;$$0117$lcssa = $3;
- }
- $16 = ($$0117$lcssa>>>0)<(8);
- if ($16) {
-  $$2 = $$0$lcssa;$$2119 = $$0117$lcssa;
- } else {
-  $17 = (($$0117$lcssa) + -8)|0;
-  $18 = $17 & -8;
-  $19 = (($18) + 8)|0;
-  $$1 = $$0$lcssa;$$1118 = $$0117$lcssa;
-  while(1) {
-   $20 = $$1;
-   $21 = $20;
-   HEAP32[$21>>2] = -1;
-   $22 = (($20) + 4)|0;
-   $23 = $22;
-   HEAP32[$23>>2] = -1;
-   $24 = (($$1118) + -8)|0;
-   $25 = ((($$1)) + 8|0);
-   $26 = ($24>>>0)>(7);
-   if ($26) {
-    $$1 = $25;$$1118 = $24;
-   } else {
-    break;
-   }
-  }
-  $27 = (($17) - ($18))|0;
-  $scevgep220 = (($$0$lcssa) + ($19)|0);
-  $$2 = $scevgep220;$$2119 = $27;
- }
- $28 = ($$2119|0)==(0);
- if ($28) {
-  $$pre$phi226Z2D = $5;$120 = $2;$34 = $3;
- } else {
-  $$3120191 = $$2119;$$3192 = $$2;
-  while(1) {
-   HEAP8[$$3192>>0] = -1;
-   $29 = ((($$3192)) + 1|0);
-   $30 = (($$3120191) + -1)|0;
-   $31 = ($30|0)==(0);
-   if ($31) {
-    break;
-   } else {
-    $$3120191 = $30;$$3192 = $29;
-   }
-  }
-  $$pre = HEAP32[18102]|0;
-  $$pre221 = HEAP32[18101]|0;
-  $$pre224 = $$pre;
-  $$pre225 = $$pre224 & 7;
-  $$pre$phi226Z2D = $$pre225;$120 = $$pre;$34 = $$pre221;
- }
- $32 = ($$pre$phi226Z2D|0)!=(0);
- $33 = ($34|0)!=(0);
- $35 = $33 & $32;
- if ($35) {
-  $$0141185 = $120;$$0145184 = $34;
-  while(1) {
-   HEAP8[$$0141185>>0] = -86;
-   $36 = ((($$0141185)) + 1|0);
-   $37 = (($$0145184) + -1)|0;
-   $38 = $36;
-   $39 = $38 & 7;
-   $40 = ($39|0)!=(0);
-   $41 = ($37|0)!=(0);
-   $42 = $41 & $40;
-   if ($42) {
-    $$0141185 = $36;$$0145184 = $37;
-   } else {
-    $$0141$lcssa = $36;$$0145$lcssa = $37;
-    break;
-   }
-  }
- } else {
-  $$0141$lcssa = $120;$$0145$lcssa = $34;
- }
- $43 = ($$0145$lcssa>>>0)<(8);
- if ($43) {
-  $$2143 = $$0141$lcssa;$$2147 = $$0145$lcssa;
- } else {
-  $44 = (($$0145$lcssa) + -8)|0;
-  $45 = $44 & -8;
-  $46 = (($45) + 8)|0;
-  $$1142 = $$0141$lcssa;$$1146 = $$0145$lcssa;
-  while(1) {
-   $47 = $$1142;
-   $48 = $47;
-   HEAP32[$48>>2] = -1431655766;
-   $49 = (($47) + 4)|0;
-   $50 = $49;
-   HEAP32[$50>>2] = -1431655766;
-   $51 = (($$1146) + -8)|0;
-   $52 = ((($$1142)) + 8|0);
-   $53 = ($51>>>0)>(7);
-   if ($53) {
-    $$1142 = $52;$$1146 = $51;
-   } else {
-    break;
-   }
-  }
-  $54 = (($44) - ($45))|0;
-  $scevgep219 = (($$0141$lcssa) + ($46)|0);
-  $$2143 = $scevgep219;$$2147 = $54;
- }
- $55 = ($$2147|0)==(0);
- if ($55) {
-  $$pre$phi230Z2D = $$pre$phi226Z2D;$121 = $120;$61 = $34;
- } else {
-  $$3144180 = $$2143;$$3148179 = $$2147;
-  while(1) {
-   HEAP8[$$3144180>>0] = -86;
-   $56 = ((($$3144180)) + 1|0);
-   $57 = (($$3148179) + -1)|0;
-   $58 = ($57|0)==(0);
-   if ($58) {
-    break;
-   } else {
-    $$3144180 = $56;$$3148179 = $57;
-   }
-  }
-  $$pre222 = HEAP32[18102]|0;
-  $$pre223 = HEAP32[18101]|0;
-  $$pre227 = $$pre222;
-  $$pre229 = $$pre227 & 7;
-  $$pre$phi230Z2D = $$pre229;$121 = $$pre222;$61 = $$pre223;
- }
- $59 = ($$pre$phi230Z2D|0)!=(0);
- $60 = ($61|0)!=(0);
- $62 = $60 & $59;
- if ($62) {
-  $$0133173 = $61;$$0137172 = $121;
-  while(1) {
-   HEAP8[$$0137172>>0] = 85;
-   $63 = ((($$0137172)) + 1|0);
-   $64 = (($$0133173) + -1)|0;
-   $65 = $63;
-   $66 = $65 & 7;
-   $67 = ($66|0)!=(0);
-   $68 = ($64|0)!=(0);
-   $69 = $68 & $67;
-   if ($69) {
-    $$0133173 = $64;$$0137172 = $63;
-   } else {
-    $$0133$lcssa = $64;$$0137$lcssa = $63;
-    break;
-   }
-  }
- } else {
-  $$0133$lcssa = $61;$$0137$lcssa = $121;
- }
- $70 = ($$0133$lcssa>>>0)<(8);
- if ($70) {
-  $$2135 = $$0133$lcssa;$$2139 = $$0137$lcssa;
- } else {
-  $71 = (($$0133$lcssa) + -8)|0;
-  $72 = $71 & -8;
-  $73 = (($72) + 8)|0;
-  $$1134 = $$0133$lcssa;$$1138 = $$0137$lcssa;
-  while(1) {
-   $74 = $$1138;
-   $75 = $74;
-   HEAP32[$75>>2] = 1431655765;
-   $76 = (($74) + 4)|0;
-   $77 = $76;
-   HEAP32[$77>>2] = 1431655765;
-   $78 = (($$1134) + -8)|0;
-   $79 = ((($$1138)) + 8|0);
-   $80 = ($78>>>0)>(7);
-   if ($80) {
-    $$1134 = $78;$$1138 = $79;
-   } else {
-    break;
-   }
-  }
-  $81 = (($71) - ($72))|0;
-  $scevgep218 = (($$0137$lcssa) + ($73)|0);
-  $$2135 = $81;$$2139 = $scevgep218;
- }
- $82 = ($$2135|0)==(0);
- if (!($82)) {
-  $$3136168 = $$2135;$$3140167 = $$2139;
-  while(1) {
-   HEAP8[$$3140167>>0] = 85;
-   $83 = ((($$3140167)) + 1|0);
-   $84 = (($$3136168) + -1)|0;
-   $85 = ($84|0)==(0);
-   if ($85) {
-    break;
-   } else {
-    $$3136168 = $84;$$3140167 = $83;
-   }
-  }
- }
- $86 = HEAP32[18102]|0;
- $87 = HEAP32[18101]|0;
- $88 = $86;
- $89 = $88 & 7;
- $90 = ($89|0)!=(0);
- $91 = ($87|0)!=(0);
- $92 = $91 & $90;
- if ($92) {
-  $$0121162 = $87;$$0125161 = $86;
-  while(1) {
-   HEAP8[$$0125161>>0] = 0;
-   $93 = ((($$0125161)) + 1|0);
-   $94 = (($$0121162) + -1)|0;
-   $95 = $93;
-   $96 = $95 & 7;
-   $97 = ($96|0)!=(0);
-   $98 = ($94|0)!=(0);
-   $99 = $98 & $97;
-   if ($99) {
-    $$0121162 = $94;$$0125161 = $93;
-   } else {
-    $$0121$lcssa = $94;$$0125$lcssa = $93;
-    break;
-   }
-  }
- } else {
-  $$0121$lcssa = $87;$$0125$lcssa = $86;
- }
- $100 = ($$0121$lcssa>>>0)<(8);
- if ($100) {
-  $$2123 = $$0121$lcssa;$$2127 = $$0125$lcssa;
- } else {
-  $101 = (($$0121$lcssa) + -8)|0;
-  $102 = $101 & -8;
-  $103 = (($102) + 8)|0;
-  $$1122 = $$0121$lcssa;$$1126 = $$0125$lcssa;
-  while(1) {
-   $104 = $$1126;
-   $105 = $104;
-   HEAP32[$105>>2] = 0;
-   $106 = (($104) + 4)|0;
-   $107 = $106;
-   HEAP32[$107>>2] = 0;
-   $108 = (($$1122) + -8)|0;
-   $109 = ((($$1126)) + 8|0);
-   $110 = ($108>>>0)>(7);
-   if ($110) {
-    $$1122 = $108;$$1126 = $109;
-   } else {
-    break;
-   }
-  }
-  $111 = (($101) - ($102))|0;
-  $scevgep = (($$0125$lcssa) + ($103)|0);
-  $$2123 = $111;$$2127 = $scevgep;
- }
- $112 = ($$2123|0)==(0);
- if (!($112)) {
-  $$3124160 = $$2123;$$3128159 = $$2127;
-  while(1) {
-   HEAP8[$$3128159>>0] = 0;
-   $113 = ((($$3128159)) + 1|0);
-   $114 = (($$3124160) + -1)|0;
-   $115 = ($114|0)==(0);
-   if ($115) {
-    break;
-   } else {
-    $$3124160 = $114;$$3128159 = $113;
-   }
-  }
- }
- $116 = HEAP32[18103]|0;
- $117 = ($116|0)==(0);
- if (!($117)) {
-  $118 = HEAP32[18102]|0;
-  $119 = HEAP32[18101]|0;
-  (___munmap($118,$119)|0);
- }
- HEAP32[18102] = 0;
- HEAP32[18100] = 0;
- HEAP32[18101] = 0;
- return;
-}
-function __gcry_secmem_dump_stats() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 
= 0, $vararg_ptr2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- (_gpgrt_lock_lock(37900)|0);
- $0 = HEAP32[18100]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  (_gpgrt_lock_unlock(37900)|0);
-  STACKTOP = sp;return;
- }
- $2 = HEAP32[18104]|0;
- $3 = HEAP32[18101]|0;
- $4 = HEAP32[18105]|0;
- HEAP32[$vararg_buffer>>2] = $2;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $3;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $4;
- __gcry_log_info(45337,$vararg_buffer);
- (_gpgrt_lock_unlock(37900)|0);
- STACKTOP = sp;return;
-}
-function __gcry_initialize_fips_mode($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 528|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(528|0);
- $vararg_buffer2 = sp + 520|0;
- $vararg_buffer = sp + 512|0;
- $1 = sp + 256|0;
- $2 = sp;
- $3 = HEAP32[18106]|0;
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = HEAP32[18107]|0;
-  $6 = ($5|0)==(1);
-  if ($6) {
-   __gcry_assert_failed(45378,45384,114,45391);
-   // unreachable;
-  } else {
-   _fips_new_state(5);
-   __gcry_fips_noreturn();
-   // unreachable;
-  }
- }
- HEAP32[18106] = 1;
- $7 = ($0|0)==(0);
- L7: do {
-  if ($7) {
-   $10 = (_access(45441,0)|0);
-   $11 = ($10|0)==(0);
-   if ($11) {
-    $12 = HEAP32[18107]|0;
-    $13 = ($12|0)==(0);
-    if ($13) {
-     break;
-    }
-    __gcry_assert_failed(45418,45384,132,45391);
-    // unreachable;
-   }
-   $14 = (_fopen(208,45466)|0);
-   $15 = ($14|0)==(0|0);
-   L13: do {
-    if ($15) {
-     $22 = (___errno_location()|0);
-     $23 = HEAP32[$22>>2]|0;
-     switch ($23|0) {
-     case 2: case 13:  {
-      break L13;
-      break;
-     }
-     default: {
-     }
-     }
-     $24 = (_access(45468,0)|0);
-     $25 = ($24|0)==(0);
-     if ($25) {
-      $26 = (_strerror($23)|0);
-      HEAP32[$vararg_buffer>>2] = 208;
-      $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-      HEAP32[$vararg_ptr1>>2] = $26;
-      __gcry_log_info(45482,$vararg_buffer);
-      _abort();
-      // unreachable;
-     }
-    } else {
-     $16 = (_fgets($1,256,$14)|0);
-     $17 = ($16|0)==(0|0);
-     if (!($17)) {
-      $18 = (_atoi($1)|0);
-      $19 = ($18|0)==(0);
-      if (!($19)) {
-       (_fclose($14)|0);
-       $20 = HEAP32[18107]|0;
-       $21 = ($20|0)==(0);
-       if ($21) {
-        break L7;
-       } else {
-        __gcry_assert_failed(45418,45384,151,45391);
-        // unreachable;
-       }
-      }
-     }
-     (_fclose($14)|0);
-    }
-   } while(0);
-   HEAP32[18107] = 1;
-   STACKTOP = sp;return;
-  } else {
-   $8 = HEAP32[18107]|0;
-   $9 = ($8|0)==(0);
-   if (!($9)) {
-    __gcry_assert_failed(45418,45384,121,45391);
-    // unreachable;
-   }
-  }
- } while(0);
- $27 = (_gpgrt_lock_init(37944)|0);
- $28 = ($27|0)==(0);
- if (!($28)) {
-  $29 = (_gpg_strerror($27)|0);
-  HEAP32[$vararg_buffer2>>2] = $29;
-  __gcry_log_info(45526,$vararg_buffer2);
-  _abort();
-  // unreachable;
- }
- $30 = (_fopen(45441,45466)|0);
- $31 = ($30|0)==(0|0);
- if (!($31)) {
-  $32 = (_fgets($2,256,$30)|0);
-  $33 = ($32|0)==(0|0);
-  if (!($33)) {
-   $34 = (_atoi($2)|0);
-   $35 = ($34|0)==(0);
-   if (!($35)) {
-    HEAP32[18108] = 1;
-   }
-  }
-  (_fclose($30)|0);
- }
- _fips_new_state(1);
- STACKTOP = sp;return;
-}
-function _fips_new_state($0) {
- $0 = $0|0;
- var $$0$i = 0, $$0$i57 = 0, $$060 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $vararg_buffer = 0;
- var $vararg_buffer1 = 0, $vararg_buffer4 = 0, $vararg_buffer7 = 0, 
$vararg_ptr10 = 0, $vararg_ptr11 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = (_gpgrt_lock_lock(37944)|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  $3 = (_gpg_strerror($1)|0);
-  HEAP32[$vararg_buffer>>2] = $3;
-  __gcry_log_info(45581,$vararg_buffer);
-  _abort();
-  // unreachable;
- }
- $4 = HEAP32[18109]|0;
- switch ($4|0) {
- case 0:  {
-  switch ($0|0) {
-  case 1: case 4: case 5:  {
-   label = 10;
-   break;
-  }
-  default: {
-   label = 13;
-  }
-  }
-  break;
- }
- case 1:  {
-  switch ($0|0) {
-  case 2: case 4: case 5:  {
-   label = 10;
-   break;
-  }
-  default: {
-   label = 13;
-  }
-  }
-  break;
- }
- case 2:  {
-  $5 = (($0) + -3)|0;
-  $6 = ($5>>>0)<(3);
-  if ($6) {
-   label = 10;
-  } else {
-   label = 13;
-  }
-  break;
- }
- case 3:  {
-  switch ($0|0) {
-  case 2: case 4: case 5: case 6:  {
-   label = 10;
-   break;
-  }
-  default: {
-   label = 13;
-  }
-  }
-  break;
- }
- case 4:  {
-  switch ($0|0) {
-  case 2: case 4: case 5: case 6:  {
-   label = 10;
-   break;
-  }
-  default: {
-   label = 13;
-  }
-  }
-  break;
- }
- case 5:  {
-  $7 = ($0|0)==(6);
-  if ($7) {
-   label = 10;
-  } else {
-   label = 13;
-  }
-  break;
- }
- default: {
-  label = 13;
- }
- }
- if ((label|0) == 10) {
-  HEAP32[18109] = $0;
-  $8 = (_gpgrt_lock_unlock(37944)|0);
-  $9 = ($8|0)==(0);
-  if (!($9)) {
-   $10 = (_gpg_strerror($8)|0);
-   HEAP32[$vararg_buffer1>>2] = $10;
-   __gcry_log_info(45636,$vararg_buffer1);
-   _abort();
-   // unreachable;
-  }
-  $11 = (__gcry_log_verbosity(2)|0);
-  $12 = ($11|0)==(0);
-  if ($12) {
-   STACKTOP = sp;return;
-  } else {
-   $$060 = 1;
-  }
- }
- else if ((label|0) == 13) {
-  $13 = (_gpgrt_lock_unlock(37944)|0);
-  $14 = ($13|0)==(0);
-  if ($14) {
-   $$060 = 0;
-  } else {
-   $15 = (_gpg_strerror($13)|0);
-   HEAP32[$vararg_buffer4>>2] = $15;
-   __gcry_log_info(45636,$vararg_buffer4);
-   _abort();
-   // unreachable;
-  }
- }
- switch ($4|0) {
- case 0:  {
-  $$0$i = 45745;
-  break;
- }
- case 1:  {
-  $$0$i = 45740;
-  break;
- }
- case 2:  {
-  $$0$i = 45730;
-  break;
- }
- case 3:  {
-  $$0$i = 45718;
-  break;
- }
- case 4:  {
-  $$0$i = 45712;
-  break;
- }
- case 5:  {
-  $$0$i = 45700;
-  break;
- }
- case 6:  {
-  $$0$i = 45691;
-  break;
- }
- default: {
-  $$0$i = 59741;
- }
- }
- switch ($0|0) {
- case 0:  {
-  $$0$i57 = 45745;
-  break;
- }
- case 1:  {
-  $$0$i57 = 45740;
-  break;
- }
- case 2:  {
-  $$0$i57 = 45730;
-  break;
- }
- case 3:  {
-  $$0$i57 = 45718;
-  break;
- }
- case 4:  {
-  $$0$i57 = 45712;
-  break;
- }
- case 5:  {
-  $$0$i57 = 45700;
-  break;
- }
- case 6:  {
-  $$0$i57 = 45691;
-  break;
- }
- default: {
-  $$0$i57 = 59741;
- }
- }
- $16 = $$060 ? 45754 : 45762;
- HEAP32[$vararg_buffer7>>2] = $$0$i;
- $vararg_ptr10 = ((($vararg_buffer7)) + 4|0);
- HEAP32[$vararg_ptr10>>2] = $$0$i57;
- $vararg_ptr11 = ((($vararg_buffer7)) + 8|0);
- HEAP32[$vararg_ptr11>>2] = $16;
- __gcry_log_info(45769,$vararg_buffer7);
- if ($$060) {
-  STACKTOP = sp;return;
- } else {
-  __gcry_fips_noreturn();
-  // unreachable;
- }
-}
-function __gcry_fips_noreturn() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- (_fflush(0)|0);
- _abort();
- // unreachable;
-}
-function __gcry_fips_mode() {
- var $0 = 0, $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18107]|0;
- $1 = $0 ^ 1;
- return ($1|0);
-}
-function __gcry_enforced_fips_mode() {
- var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18107]|0;
- $1 = ($0|0)==(1);
- $2 = HEAP32[18108]|0;
- $$0 = $1 ? 0 : $2;
- return ($$0|0);
-}
-function __gcry_set_enforced_fips_mode() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18108] = 1;
- return;
-}
-function __gcry_inactivate_fips_mode($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer6 = 0;
- var $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 
0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer9 = sp + 32|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer = sp;
- $1 = HEAP32[18107]|0;
- $2 = ($1|0)==(1);
- if ($2) {
-  __gcry_assert_failed(45809,45384,295,45828);
-  // unreachable;
- }
- $3 = HEAP32[18108]|0;
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = ($0|0)==(0|0);
-  $6 = $5 ? 45855 : $0;
-  _fips_new_state(4);
-  HEAP32[$vararg_buffer>>2] = 73338;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 45384;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = 300;
-  $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-  HEAP32[$vararg_ptr3>>2] = 45928;
-  $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-  HEAP32[$vararg_ptr4>>2] = 45828;
-  $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-  HEAP32[$vararg_ptr5>>2] = $6;
-  __gcry_log_info(45880,$vararg_buffer);
-  STACKTOP = sp;return;
- }
- $7 = (_gpgrt_lock_lock(37944)|0);
- $8 = ($7|0)==(0);
- if (!($8)) {
-  $9 = (_gpg_strerror($7)|0);
-  HEAP32[$vararg_buffer6>>2] = $9;
-  __gcry_log_info(45581,$vararg_buffer6);
-  _abort();
-  // unreachable;
- }
- $10 = HEAP32[18110]|0;
- $11 = ($10|0)==(0);
- if ($11) {
-  HEAP32[18110] = 1;
-  $12 = (_gpgrt_lock_unlock(37944)|0);
-  $13 = ($12|0)==(0);
-  if ($13) {
-   STACKTOP = sp;return;
-  } else {
-   $14 = (_gpg_strerror($12)|0);
-   HEAP32[$vararg_buffer9>>2] = $14;
-   __gcry_log_info(45636,$vararg_buffer9);
-   _abort();
-   // unreachable;
-  }
- } else {
-  $15 = (_gpgrt_lock_unlock(37944)|0);
-  $16 = ($15|0)==(0);
-  if ($16) {
-   STACKTOP = sp;return;
-  } else {
-   $17 = (_gpg_strerror($15)|0);
-   HEAP32[$vararg_buffer12>>2] = $17;
-   __gcry_log_info(45636,$vararg_buffer12);
-   _abort();
-   // unreachable;
-  }
- }
-}
-function __gcry_fips_signal_error($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 
= 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $5 = HEAP32[18107]|0;
- $6 = ($5|0)==(1);
- if ($6) {
-  STACKTOP = sp;return;
- }
- $7 = ($3|0)!=(0);
- $8 = $7 ? 5 : 4;
- _fips_new_state($8);
- $9 = $7 ? 45940 : 73338;
- $10 = ($2|0)!=(0|0);
- $11 = $10 ? 45928 : 73338;
- $12 = $10 ? $2 : 73338;
- $13 = ($4|0)==(0|0);
- $14 = $13 ? 45855 : $4;
- HEAP32[$vararg_buffer>>2] = $9;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $0;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $1;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $11;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $12;
- $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
- HEAP32[$vararg_ptr5>>2] = $14;
- __gcry_log_info(45880,$vararg_buffer);
- STACKTOP = sp;return;
-}
-function __gcry_is_fips_mode_inactive() {
- var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18107]|0;
- $1 = ($0|0)==(1);
- if ($1) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $2 = (_gpgrt_lock_lock(37944)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_info(45581,$vararg_buffer);
-  _abort();
-  // unreachable;
- }
- $5 = HEAP32[18110]|0;
- $6 = (_gpgrt_lock_unlock(37944)|0);
- $7 = ($6|0)==(0);
- if ($7) {
-  $$0 = $5;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $8 = (_gpg_strerror($6)|0);
-  HEAP32[$vararg_buffer1>>2] = $8;
-  __gcry_log_info(45636,$vararg_buffer1);
-  _abort();
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_fips_is_operational() {
- var $$0 = 0, $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0;
- var $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, 
$vararg_buffer7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18107]|0;
- $1 = ($0|0)==(1);
- if ($1) {
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $2 = (_gpgrt_lock_lock(37944)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_info(45581,$vararg_buffer);
-  _abort();
-  // unreachable;
- }
- $5 = HEAP32[18109]|0;
- $6 = ($5|0)==(1);
- do {
-  if ($6) {
-   $7 = (_gpgrt_lock_unlock(37944)|0);
-   $8 = ($7|0)==(0);
-   if (!($8)) {
-    $9 = (_gpg_strerror($7)|0);
-    HEAP32[$vararg_buffer1>>2] = $9;
-    __gcry_log_info(45636,$vararg_buffer1);
-    _abort();
-    // unreachable;
-   }
-   (__gcry_fips_run_selftests(0)|0);
-   $10 = (_gpgrt_lock_lock(37944)|0);
-   $11 = ($10|0)==(0);
-   if ($11) {
-    $$pre = HEAP32[18109]|0;
-    $14 = $$pre;
-    break;
-   } else {
-    $12 = (_gpg_strerror($10)|0);
-    HEAP32[$vararg_buffer4>>2] = $12;
-    __gcry_log_info(45581,$vararg_buffer4);
-    _abort();
-    // unreachable;
-   }
-  } else {
-   $14 = $5;
-  }
- } while(0);
- $13 = ($14|0)==(3);
- $15 = $13&1;
- $16 = (_gpgrt_lock_unlock(37944)|0);
- $17 = ($16|0)==(0);
- if ($17) {
-  $$0 = $15;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $18 = (_gpg_strerror($16)|0);
-  HEAP32[$vararg_buffer7>>2] = $18;
-  __gcry_log_info(45636,$vararg_buffer7);
-  _abort();
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_fips_run_selftests($0) {
- $0 = $0|0;
- var $$0 = 0, $$09 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$9 = 0, $spec$select = 0, $spec$select11 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18107]|0;
- $2 = ($1|0)==(1);
- if (!($2)) {
-  _fips_new_state(2);
- }
- $3 = (__gcry_cipher_selftest(2,$0,60)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $6 = 0;
- } else {
-  $5 = (_gpg_strerror($3)|0);
-  $6 = $5;
- }
- _reporter(59927,2,0,$6);
- $7 = (__gcry_cipher_selftest(7,$0,60)|0);
- $8 = ($7|0)==(0);
- if ($8) {
-  $10 = 0;
- } else {
-  $9 = (_gpg_strerror($7)|0);
-  $10 = $9;
- }
- _reporter(59927,7,0,$10);
- $11 = $7 | $3;
- $12 = (__gcry_cipher_selftest(8,$0,60)|0);
- $13 = ($12|0)==(0);
- if ($13) {
-  $15 = 0;
- } else {
-  $14 = (_gpg_strerror($12)|0);
-  $15 = $14;
- }
- _reporter(59927,8,0,$15);
- $16 = $11 | $12;
- $17 = (__gcry_cipher_selftest(9,$0,60)|0);
- $18 = ($17|0)==(0);
- if ($18) {
-  $20 = 0;
- } else {
-  $19 = (_gpg_strerror($17)|0);
-  $20 = $19;
- }
- _reporter(59927,9,0,$20);
- $21 = $16 | $17;
- $22 = ($21|0)==(0);
- do {
-  if ($22) {
-   $23 = (__gcry_md_selftest(2,$0,60)|0);
-   $24 = ($23|0)==(0);
-   if ($24) {
-    $26 = 0;
-   } else {
-    $25 = (_gpg_strerror($23)|0);
-    $26 = $25;
-   }
-   _reporter(63225,2,0,$26);
-   $27 = (__gcry_md_selftest(11,$0,60)|0);
-   $28 = ($27|0)==(0);
-   if ($28) {
-    $30 = 0;
-   } else {
-    $29 = (_gpg_strerror($27)|0);
-    $30 = $29;
-   }
-   _reporter(63225,11,0,$30);
-   $31 = $27 | $23;
-   $32 = (__gcry_md_selftest(8,$0,60)|0);
-   $33 = ($32|0)==(0);
-   if ($33) {
-    $35 = 0;
-   } else {
-    $34 = (_gpg_strerror($32)|0);
-    $35 = $34;
-   }
-   _reporter(63225,8,0,$35);
-   $36 = $31 | $32;
-   $37 = (__gcry_md_selftest(9,$0,60)|0);
-   $38 = ($37|0)==(0);
-   if ($38) {
-    $40 = 0;
-   } else {
-    $39 = (_gpg_strerror($37)|0);
-    $40 = $39;
-   }
-   _reporter(63225,9,0,$40);
-   $41 = $36 | $37;
-   $42 = (__gcry_md_selftest(10,$0,60)|0);
-   $43 = ($42|0)==(0);
-   if ($43) {
-    $45 = 0;
-   } else {
-    $44 = (_gpg_strerror($42)|0);
-    $45 = $44;
-   }
-   _reporter(63225,10,0,$45);
-   $46 = $41 | $42;
-   $47 = ($46|0)==(0);
-   if ($47) {
-    $48 = (__gcry_hmac_selftest(2,$0,60)|0);
-    $49 = ($48|0)==(0);
-    if ($49) {
-     $51 = 0;
-    } else {
-     $50 = (_gpg_strerror($48)|0);
-     $51 = $50;
-    }
-    _reporter(58127,2,0,$51);
-    $52 = (__gcry_hmac_selftest(11,$0,60)|0);
-    $53 = ($52|0)==(0);
-    if ($53) {
-     $55 = 0;
-    } else {
-     $54 = (_gpg_strerror($52)|0);
-     $55 = $54;
-    }
-    _reporter(58127,11,0,$55);
-    $56 = $52 | $48;
-    $57 = (__gcry_hmac_selftest(8,$0,60)|0);
-    $58 = ($57|0)==(0);
-    if ($58) {
-     $60 = 0;
-    } else {
-     $59 = (_gpg_strerror($57)|0);
-     $60 = $59;
-    }
-    _reporter(58127,8,0,$60);
-    $61 = $56 | $57;
-    $62 = (__gcry_hmac_selftest(9,$0,60)|0);
-    $63 = ($62|0)==(0);
-    if ($63) {
-     $65 = 0;
-    } else {
-     $64 = (_gpg_strerror($62)|0);
-     $65 = $64;
-    }
-    _reporter(58127,9,0,$65);
-    $66 = $61 | $62;
-    $67 = (__gcry_hmac_selftest(10,$0,60)|0);
-    $68 = ($67|0)==(0);
-    if ($68) {
-     $70 = 0;
-    } else {
-     $69 = (_gpg_strerror($67)|0);
-     $70 = $69;
-    }
-    _reporter(58127,10,0,$70);
-    $71 = $66 | $67;
-    $72 = ($71|0)==(0);
-    if ($72) {
-     $73 = (__gcry_random_selftest(60)|0);
-     $74 = ($73|0)==(0);
-     if (!($74)) {
-      $75 = (_gpg_strerror($73)|0);
-      _reporter(69464,0,0,$75);
-      $$0 = 50;$$09 = 4;
-      break;
-     }
-     _reporter(69464,0,0,0);
-     $76 = (__gcry_pk_selftest(1,$0,60)|0);
-     $77 = ($76|0)==(0);
-     if ($77) {
-      $79 = 0;
-     } else {
-      $78 = (_gpg_strerror($76)|0);
-      $79 = $78;
-     }
-     _reporter(61280,1,0,$79);
-     $80 = (__gcry_pk_selftest(17,$0,60)|0);
-     $81 = ($80|0)==(0);
-     if ($81) {
-      $83 = 0;
-     } else {
-      $82 = (_gpg_strerror($80)|0);
-      $83 = $82;
-     }
-     _reporter(61280,17,0,$83);
-     $84 = $80 | $76;
-     $85 = ($84|0)==(0);
-     $spec$select = $85 ? 3 : 4;
-     $spec$select11 = $85 ? 0 : 50;
-     $$0 = $spec$select11;$$09 = $spec$select;
-    } else {
-     $$0 = 50;$$09 = 4;
-    }
-   } else {
-    $$0 = 50;$$09 = 4;
-   }
-  } else {
-   $$0 = 50;$$09 = 4;
-  }
- } while(0);
- $86 = HEAP32[18107]|0;
- $87 = ($86|0)==(1);
- if ($87) {
-  return ($$0|0);
- }
- _fips_new_state($$09);
- return ($$0|0);
-}
-function _reporter($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
$vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $4 = ($3|0)!=(0|0);
- if (!($4)) {
-  $5 = (__gcry_log_verbosity(2)|0);
-  $6 = ($5|0)==(0);
-  if ($6) {
-   STACKTOP = sp;return;
-  }
- }
- $7 = (_strcmp($0,58127)|0);
- $8 = ($7|0)==(0);
- $9 = $8 ? 63225 : $0;
- $10 = $8 ? 45947 : 73338;
- $11 = (_strcmp($0,59927)|0);
- $12 = ($11|0)==(0);
- do {
-  if ($12) {
-   $13 = (__gcry_cipher_algo_name($1)|0);
-   $26 = $13;
-  } else {
-   $14 = (_strcmp($0,63225)|0);
-   $15 = ($14|0)==(0);
-   if ($15) {
-    $16 = (__gcry_md_algo_name($1)|0);
-    $26 = $16;
-    break;
-   }
-   if ($8) {
-    $17 = (__gcry_md_algo_name($1)|0);
-    $26 = $17;
-    break;
-   }
-   $18 = (_strcmp($0,61280)|0);
-   $19 = ($18|0)==(0);
-   if ($19) {
-    $20 = (__gcry_pk_algo_name($1)|0);
-    $26 = $20;
-   } else {
-    $26 = 73338;
-   }
-  }
- } while(0);
- $21 = $4 ? $3 : 45953;
- $22 = ($2|0)!=(0|0);
- $23 = $22 ? 45958 : 73338;
- $24 = $22 ? $2 : 73338;
- $25 = $22 ? 64767 : 73338;
- HEAP32[$vararg_buffer>>2] = $9;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $10;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $26;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $1;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $21;
- $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
- HEAP32[$vararg_ptr5>>2] = $23;
- $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
- HEAP32[$vararg_ptr6>>2] = $24;
- $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
- HEAP32[$vararg_ptr7>>2] = $25;
- __gcry_log_info(45961,$vararg_buffer);
- STACKTOP = sp;return;
-}
-function __gcry_fips_test_operational() {
- var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18107]|0;
- $1 = ($0|0)==(1);
- if ($1) {
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $2 = (_gpgrt_lock_lock(37944)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_info(45581,$vararg_buffer);
-  _abort();
-  // unreachable;
- }
- $5 = HEAP32[18109]|0;
- $6 = ($5|0)==(3);
- $7 = $6&1;
- $8 = (_gpgrt_lock_unlock(37944)|0);
- $9 = ($8|0)==(0);
- if ($9) {
-  $$0 = $7;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $10 = (_gpg_strerror($8)|0);
-  HEAP32[$vararg_buffer1>>2] = $10;
-  __gcry_log_info(45636,$vararg_buffer1);
-  _abort();
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_fips_test_error_or_operational() {
- var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18107]|0;
- $1 = ($0|0)==(1);
- if ($1) {
-  $$0 = 1;
-  STACKTOP = sp;return ($$0|0);
- }
- $2 = (_gpgrt_lock_lock(37944)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_info(45581,$vararg_buffer);
-  _abort();
-  // unreachable;
- }
- $5 = HEAP32[18109]|0;
- $6 = (($5) + -3)|0;
- $7 = ($6>>>0)<(2);
- $8 = $7&1;
- $9 = (_gpgrt_lock_unlock(37944)|0);
- $10 = ($9|0)==(0);
- if ($10) {
-  $$0 = $8;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $11 = (_gpg_strerror($9)|0);
-  HEAP32[$vararg_buffer1>>2] = $11;
-  __gcry_log_info(45636,$vararg_buffer1);
-  _abort();
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_ctx_alloc($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $cond = 0, 
$spec$select = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $cond = ($0|0)==(1);
- if (!($cond)) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  __gcry_log_bug(46005,$vararg_buffer);
-  // unreachable;
- }
- $3 = ($1>>>0)>(8);
- $spec$select = $3 ? $1 : 8;
- $4 = (($spec$select) + 8)|0;
- $5 = (__gcry_calloc(1,$4)|0);
- $6 = ($5|0)==(0|0);
- if ($6) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- 
;HEAP8[$5>>0]=HEAP8[46051>>0]|0;HEAP8[$5+1>>0]=HEAP8[46051+1>>0]|0;HEAP8[$5+2>>0]=HEAP8[46051+2>>0]|0;
- $7 = ((($5)) + 3|0);
- HEAP8[$7>>0] = 1;
- $8 = ((($5)) + 4|0);
- HEAP32[$8>>2] = $2;
- $$0 = $5;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ctx_get_pointer($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  __gcry_log_fatal(46055,$vararg_buffer);
-  // unreachable;
- }
- $3 = (_memcmp($0,46051,3)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  __gcry_log_fatal(46055,$vararg_buffer);
-  // unreachable;
- }
- $5 = ((($0)) + 3|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6 << 24 >> 24;
- $8 = ($7|0)==($1|0);
- if ($8) {
-  $9 = ((($0)) + 8|0);
-  STACKTOP = sp;return ($9|0);
- } else {
-  HEAP32[$vararg_buffer1>>2] = $1;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr4>>2] = $0;
-  $vararg_ptr5 = ((($vararg_buffer1)) + 8|0);
-  HEAP32[$vararg_ptr5>>2] = $7;
-  __gcry_log_fatal(46103,$vararg_buffer1);
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_ctx_release($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $cond = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  STACKTOP = sp;return;
- }
- $2 = (_memcmp($0,46051,3)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  __gcry_log_fatal(46160,$vararg_buffer);
-  // unreachable;
- }
- $4 = ((($0)) + 3|0);
- $5 = HEAP8[$4>>0]|0;
- $cond = ($5<<24>>24)==(1);
- if (!($cond)) {
-  $6 = $5 << 24 >> 24;
-  HEAP32[$vararg_buffer1>>2] = $6;
-  __gcry_log_fatal(46202,$vararg_buffer1);
-  // unreachable;
- }
- $7 = ((($0)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(0|0);
- if (!($9)) {
-  $10 = ((($0)) + 8|0);
-  FUNCTION_TABLE_vi[$8 & 127]($10);
- }
- __gcry_free($0);
- STACKTOP = sp;return;
-}
-function __gcry_cipher_algo_name($0) {
- $0 = $0|0;
- var $$ph = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[9497]|0;
- $2 = ($1|0)==($0|0);
- if ($2) {
-  $$ph = 37988;
- } else {
-  $3 = HEAP32[9833]|0;
-  $4 = ($3|0)==($0|0);
-  if ($4) {
-   $$ph = 39332;
-  } else {
-   $5 = HEAP32[9852]|0;
-   $6 = ($5|0)==($0|0);
-   if ($6) {
-    $$ph = 39408;
-   } else {
-    $7 = HEAP32[9984]|0;
-    $8 = ($7|0)==($0|0);
-    if ($8) {
-     $$ph = 39936;
-    } else {
-     $9 = HEAP32[10000]|0;
-     $10 = ($9|0)==($0|0);
-     if ($10) {
-      $$ph = 40000;
-     } else {
-      $13 = 59741;
-      return ($13|0);
-     }
-    }
-   }
-  }
- }
- $11 = ((($$ph)) + 8|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = $12;
- return ($13|0);
-}
-function __gcry_cipher_open($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$07 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select8 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- HEAP32[$4>>2] = 0;
- $5 = ($2|0)>(65535);
- if ($5) {
-  $$07 = 71;$9 = 0;
- } else {
-  $6 = (__gcry_cipher_open_internal($4,$1,$2,$3)|0);
-  $7 = ($6|0)==(0);
-  $8 = HEAP32[$4>>2]|0;
-  $spec$select8 = $7 ? $8 : 0;
-  $$07 = $6;$9 = $spec$select8;
- }
- HEAP32[$0>>2] = $9;
- STACKTOP = sp;return ($$07|0);
-}
-function __gcry_cipher_open_internal($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$074$in = 0, $$1 = 0, $$3 = 0, $$5 = 0, $$mux = 0, $$not = 0, 
$$ph = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 
0, $17 = 0, $18 = 0, $19 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 
0, $38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $brmerge = 0, $cond = 0, 
$or$cond = 0, $or$cond94 = 0, $spec$select = 0, $spec$select$i$i$i = 0, 
$switch$split12D = 0, $switch$split2D = 0, $switch$split42D = 0, 
$switch$split72D = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = $3 & 1;
- __gcry_fast_random_poll();
- $5 = HEAP32[9497]|0;
- $6 = ($5|0)==($1|0);
- if ($6) {
-  $$ph = 37988;
-  label = 6;
- } else {
-  $7 = HEAP32[9833]|0;
-  $8 = ($7|0)==($1|0);
-  if ($8) {
-   $$ph = 39332;
-   label = 6;
-  } else {
-   $9 = HEAP32[9852]|0;
-   $10 = ($9|0)==($1|0);
-   if ($10) {
-    $$ph = 39408;
-    label = 6;
-   } else {
-    $11 = HEAP32[9984]|0;
-    $12 = ($11|0)==($1|0);
-    if ($12) {
-     $$ph = 39936;
-     label = 6;
-    } else {
-     $13 = HEAP32[10000]|0;
-     $14 = ($13|0)==($1|0);
-     if ($14) {
-      $$ph = 40000;
-      label = 6;
-     } else {
-      $$3 = 0;$$5 = 12;
-     }
-    }
-   }
-  }
- }
- L6: do {
-  if ((label|0) == 6) {
-   $15 = ((($$ph)) + 4|0);
-   $16 = HEAP8[$15>>0]|0;
-   $17 = $16 & 1;
-   $18 = ($17<<24>>24)!=(0);
-   $19 = ($3>>>0)>(15);
-   $or$cond = $19 | $18;
-   if ($or$cond) {
-    $$3 = 0;$$5 = 12;
-   } else {
-    $switch$split2D = ($2|0)<(6);
-    L9: do {
-     if ($switch$split2D) {
-      switch ($2|0) {
-      case 5: case 2: case 3: case 1:  {
-       label = 10;
-       break L9;
-       break;
-      }
-      case 4:  {
-       $54 = ((($$ph)) + 44|0);
-       $55 = HEAP32[$54>>2]|0;
-       $56 = ($55|0)==(0|0);
-       if ($56) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       $57 = ((($$ph)) + 48|0);
-       $58 = HEAP32[$57>>2]|0;
-       $59 = ($58|0)==(0|0);
-       if ($59) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       } else {
-        break L9;
-       }
-       break;
-      }
-      case 0:  {
-       $60 = (__gcry_fips_mode()|0);
-       $61 = ($60|0)==(0);
-       if (!($61)) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       $62 = (__gcry_get_debug_flag(0)|0);
-       $63 = ($62|0)==(0);
-       if ($63) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       } else {
-        break L9;
-       }
-       break;
-      }
-      default: {
-       $$3 = 0;$$5 = 71;
-       break L6;
-      }
-      }
-     } else {
-      $switch$split12D = ($2|0)<(9);
-      if ($switch$split12D) {
-       switch ($2|0) {
-       case 7: case 6:  {
-        label = 10;
-        break L9;
-        break;
-       }
-       case 8:  {
-        break;
-       }
-       default: {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       }
-       $20 = ((($$ph)) + 20|0);
-       $21 = HEAP32[$20>>2]|0;
-       $22 = ($21|0)==(16);
-       $23 = ((($$ph)) + 36|0);
-       $24 = HEAP32[$23>>2]|0;
-       $25 = ($24|0)==(0|0);
-       if ($25) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       $spec$select = $22 ? 0 : 71;
-       $26 = ((($$ph)) + 40|0);
-       $27 = HEAP32[$26>>2]|0;
-       $28 = ($27|0)==(0|0);
-       $$not = $22 ^ 1;
-       $brmerge = $28 | $$not;
-       $$mux = $28 ? 71 : $spec$select;
-       if ($brmerge) {
-        $$3 = 0;$$5 = $$mux;
-        break L6;
-       } else {
-        break;
-       }
-      }
-      $switch$split42D = ($2|0)<(11);
-      if ($switch$split42D) {
-       switch ($2|0) {
-       case 9:  {
-        label = 10;
-        break L9;
-        break;
-       }
-       case 10:  {
-        break;
-       }
-       default: {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       }
-       $35 = ((($$ph)) + 44|0);
-       $36 = HEAP32[$35>>2]|0;
-       $37 = ($36|0)==(0|0);
-       if ($37) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       $38 = ((($$ph)) + 48|0);
-       $39 = HEAP32[$38>>2]|0;
-       $40 = ($39|0)==(0|0);
-       if ($40) {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       $41 = ((($$ph)) + 60|0);
-       $42 = HEAP32[$41>>2]|0;
-       $43 = ($42|0)!=(0|0);
-       $44 = ($1|0)==(316);
-       $or$cond94 = $43 & $44;
-       if ($or$cond94) {
-        break;
-       } else {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-      }
-      $switch$split72D = ($2|0)<(65537);
-      if (!($switch$split72D)) {
-       switch ($2|0) {
-       case 65537:  {
-        label = 10;
-        break L9;
-        break;
-       }
-       default: {
-        $$3 = 0;$$5 = 71;
-        break L6;
-       }
-       }
-      }
-      switch ($2|0) {
-      case 11:  {
-       break;
-      }
-      default: {
-       $$3 = 0;$$5 = 71;
-       break L6;
-      }
-      }
-      $45 = ((($$ph)) + 36|0);
-      $46 = HEAP32[$45>>2]|0;
-      $47 = ($46|0)==(0|0);
-      if ($47) {
-       $$3 = 0;$$5 = 71;
-       break L6;
-      }
-      $48 = ((($$ph)) + 40|0);
-      $49 = HEAP32[$48>>2]|0;
-      $50 = ($49|0)==(0|0);
-      if ($50) {
-       $$3 = 0;$$5 = 71;
-       break L6;
-      }
-      $51 = ((($$ph)) + 20|0);
-      $52 = HEAP32[$51>>2]|0;
-      $53 = ($52|0)==(16);
-      if (!($53)) {
-       $$3 = 0;$$5 = 71;
-       break L6;
-      }
-     }
-    } while(0);
-    if ((label|0) == 10) {
-     $29 = ((($$ph)) + 36|0);
-     $30 = HEAP32[$29>>2]|0;
-     $31 = ($30|0)==(0|0);
-     if ($31) {
-      $$3 = 0;$$5 = 71;
-      break;
-     }
-     $32 = ((($$ph)) + 40|0);
-     $33 = HEAP32[$32>>2]|0;
-     $34 = ($33|0)==(0|0);
-     if ($34) {
-      $$3 = 0;$$5 = 71;
-      break;
-     }
-    }
-    $64 = ((($$ph)) + 28|0);
-    $65 = HEAP32[$64>>2]|0;
-    $66 = $65 << 1;
-    $67 = (($66) + 511)|0;
-    $68 = ($4|0)!=(0);
-    if ($68) {
-     $69 = (__gcry_calloc_secure(1,$67)|0);
-     $$074$in = $69;
-    } else {
-     $70 = (__gcry_calloc(1,$67)|0);
-     $$074$in = $70;
-    }
-    $71 = ($$074$in|0)==(0|0);
-    if ($71) {
-     $72 = (_gpg_err_code_from_syserror()|0);
-     $$3 = $$074$in;$$5 = $72;
-     break;
-    }
-    $73 = $$074$in;
-    $74 = $73 & 15;
-    $75 = ($74|0)==(0);
-    $76 = (16 - ($74))|0;
-    $77 = (($$074$in) + ($76)|0);
-    $$1 = $75 ? $$074$in : $77;
-    $$0 = $75 ? 0 : $76;
-    $78 = $68 ? 1183944770 : 604576100;
-    HEAP32[$$1>>2] = $78;
-    $79 = (($67) - ($$0))|0;
-    $80 = ((($$1)) + 4|0);
-    HEAP32[$80>>2] = $79;
-    $81 = ((($$1)) + 8|0);
-    HEAP32[$81>>2] = $$0;
-    $82 = ((($$1)) + 12|0);
-    HEAP32[$82>>2] = $$ph;
-    $83 = ((($$1)) + 16|0);
-    HEAP32[$83>>2] = $1;
-    $84 = ((($$1)) + 48|0);
-    HEAP32[$84>>2] = $2;
-    $85 = ((($$1)) + 52|0);
-    HEAP32[$85>>2] = $3;
-    switch ($1|0) {
-    case 9: case 8: case 7:  {
-     $86 = ((($$1)) + 20|0);
-     HEAP32[$86>>2] = 61;
-     $87 = ((($$1)) + 24|0);
-     HEAP32[$87>>2] = 62;
-     $88 = ((($$1)) + 28|0);
-     HEAP32[$88>>2] = 63;
-     $89 = ((($$1)) + 32|0);
-     HEAP32[$89>>2] = 64;
-     $90 = ((($$1)) + 36|0);
-     HEAP32[$90>>2] = 65;
-     $91 = ((($$1)) + 40|0);
-     HEAP32[$91>>2] = 66;
-     $92 = ((($$1)) + 44|0);
-     HEAP32[$92>>2] = 67;
-     break;
-    }
-    case 303: case 10:  {
-     $93 = ((($$1)) + 32|0);
-     HEAP32[$93>>2] = 68;
-     $94 = ((($$1)) + 24|0);
-     HEAP32[$94>>2] = 69;
-     $95 = ((($$1)) + 36|0);
-     HEAP32[$95>>2] = 70;
-     break;
-    }
-    default: {
-    }
-    }
-    $cond = ($2|0)==(11);
-    if ($cond) {
-     $96 = ((($$1)) + 480|0);
-     HEAP8[$96>>0] = 16;
-     $$3 = $$1;$$5 = 0;
-    } else {
-     $$3 = $$1;$$5 = 0;
-    }
-   }
-  }
- } while(0);
- $97 = ($$5|0)==(0);
- $98 = $97 ? $$3 : 0;
- HEAP32[$0>>2] = $98;
- $99 = $$5 & 65535;
- $100 = $99 | 536870912;
- $spec$select$i$i$i = $97 ? 0 : $100;
- return ($spec$select$i$i$i|0);
-}
-function __gcry_cipher_close($0) {
- $0 = $0|0;
- var $$038$lcssa = 0, $$03847 = 0, $$039$lcssa = 0, $$03946 = 0, $$1 = 0, 
$$140 = 0, $$2 = 0, $$241 = 0, $$34244 = 0, $$345 = 0, $1 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $scevgep = 0, 
$switch$split2D = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = HEAP32[$0>>2]|0;
- $switch$split2D = ($2|0)<(1183944770);
- L4: do {
-  if ($switch$split2D) {
-   switch ($2|0) {
-   case 604576100:  {
-    break L4;
-    break;
-   }
-   default: {
-   }
-   }
-   __gcry_fatal_error(63,46251);
-   // unreachable;
-  } else {
-   switch ($2|0) {
-   case 1183944770:  {
-    break L4;
-    break;
-   }
-   default: {
-   }
-   }
-   __gcry_fatal_error(63,46251);
-   // unreachable;
-  }
- } while(0);
- HEAP32[$0>>2] = 0;
- $3 = ((($0)) + 8|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($0)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = $0;
- $8 = $7 & 7;
- $9 = ($8|0)!=(0);
- $10 = ($6|0)!=(0);
- $11 = $10 & $9;
- if ($11) {
-  $$03847 = $0;$$03946 = $6;
-  while(1) {
-   HEAP8[$$03847>>0] = 0;
-   $12 = ((($$03847)) + 1|0);
-   $13 = (($$03946) + -1)|0;
-   $14 = $12;
-   $15 = $14 & 7;
-   $16 = ($15|0)!=(0);
-   $17 = ($13|0)!=(0);
-   $18 = $17 & $16;
-   if ($18) {
-    $$03847 = $12;$$03946 = $13;
-   } else {
-    $$038$lcssa = $12;$$039$lcssa = $13;
-    break;
-   }
-  }
- } else {
-  $$038$lcssa = $0;$$039$lcssa = $6;
- }
- $19 = ($$039$lcssa>>>0)<(8);
- if ($19) {
-  $$2 = $$038$lcssa;$$241 = $$039$lcssa;
- } else {
-  $20 = (($$039$lcssa) + -8)|0;
-  $21 = $20 & -8;
-  $22 = (($21) + 8)|0;
-  $$1 = $$038$lcssa;$$140 = $$039$lcssa;
-  while(1) {
-   $23 = $$1;
-   $24 = $23;
-   HEAP32[$24>>2] = 0;
-   $25 = (($23) + 4)|0;
-   $26 = $25;
-   HEAP32[$26>>2] = 0;
-   $27 = (($$140) + -8)|0;
-   $28 = ((($$1)) + 8|0);
-   $29 = ($27>>>0)>(7);
-   if ($29) {
-    $$1 = $28;$$140 = $27;
-   } else {
-    break;
-   }
-  }
-  $30 = (($20) - ($21))|0;
-  $scevgep = (($$038$lcssa) + ($22)|0);
-  $$2 = $scevgep;$$241 = $30;
- }
- $31 = ($$241|0)==(0);
- if (!($31)) {
-  $$34244 = $$241;$$345 = $$2;
-  while(1) {
-   HEAP8[$$345>>0] = 0;
-   $32 = ((($$345)) + 1|0);
-   $33 = (($$34244) + -1)|0;
-   $34 = ($33|0)==(0);
-   if ($34) {
-    break;
-   } else {
-    $$34244 = $33;$$345 = $32;
-   }
-  }
- }
- $35 = (0 - ($4))|0;
- $36 = (($0) + ($35)|0);
- __gcry_free($36);
- return;
-}
-function __gcry_cipher_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0$i = 0, $$0$i17 = 0, $$03340$i$i$i = 0, $$03439$i$i$i = 0, 
$$03538$i$i$i = 0, $$03637$i$i$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 
0, $41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $spec$select = 0, $spec$select15 = 
0, $switch$split12D = 0, $switch$split2D = 0, $switch$split42D = 0, 
$switch$split72D = 0, $vararg_buffer = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $5 = ($3|0)==(0|0);
- $spec$select = $5 ? $2 : $4;
- $spec$select15 = $5 ? $1 : $3;
- $6 = ((($0)) + 48|0);
- $7 = HEAP32[$6>>2]|0;
- $switch$split2D = ($7|0)<(6);
- L1: do {
-  if ($switch$split2D) {
-   switch ($7|0) {
-   case 1:  {
-    $8 = ((($0)) + 12|0);
-    $9 = HEAP32[$8>>2]|0;
-    $10 = ((($9)) + 36|0);
-    $11 = HEAP32[$10>>2]|0;
-    $12 = ((($9)) + 20|0);
-    $13 = HEAP32[$12>>2]|0;
-    $14 = ($spec$select>>>0)>($2>>>0);
-    if ($14) {
-     $$0$i = 200;
-     break L1;
-    }
-    $15 = (($spec$select>>>0) / ($13>>>0))&-1;
-    $16 = Math_imul($15, $13)|0;
-    $17 = (($spec$select) - ($16))|0;
-    $18 = ($17|0)==(0);
-    if (!($18)) {
-     $$0$i = 139;
-     break L1;
-    }
-    $19 = ($13>>>0)>($spec$select>>>0);
-    if ($19) {
-     $$0$i17 = 0;
-     STACKTOP = sp;return ($$0$i17|0);
-    }
-    $20 = ((($0)) + 496|0);
-    $$03340$i$i$i = 0;$$03439$i$i$i = $1;$$03538$i$i$i = 0;$$03637$i$i$i = 
$spec$select15;
-    while(1) {
-     $21 = (FUNCTION_TABLE_iiii[$11 & 127]($20,$$03439$i$i$i,$$03637$i$i$i)|0);
-     $22 = ($21>>>0)>($$03340$i$i$i>>>0);
-     $23 = $22 ? $21 : $$03340$i$i$i;
-     $24 = (($$03637$i$i$i) + ($13)|0);
-     $25 = (($$03439$i$i$i) + ($13)|0);
-     $26 = (($$03538$i$i$i) + 1)|0;
-     $27 = ($26>>>0)<($15>>>0);
-     if ($27) {
-      $$03340$i$i$i = $23;$$03439$i$i$i = $25;$$03538$i$i$i = 
$26;$$03637$i$i$i = $24;
-     } else {
-      break;
-     }
-    }
-    $28 = ($23|0)==(0);
-    if ($28) {
-     $$0$i17 = 0;
-     STACKTOP = sp;return ($$0$i17|0);
-    }
-    $29 = (($23) + 16)|0;
-    ___gcry_burn_stack($29);
-    $$0$i17 = 0;
-    STACKTOP = sp;return ($$0$i17|0);
-    break;
-   }
-   case 3:  {
-    $30 = (__gcry_cipher_cbc_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-    $$0$i = $30;
-    break L1;
-    break;
-   }
-   case 2:  {
-    $31 = (__gcry_cipher_cfb_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-    $$0$i = $31;
-    break L1;
-    break;
-   }
-   case 5:  {
-    $32 = (__gcry_cipher_ofb_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-    $$0$i = $32;
-    break L1;
-    break;
-   }
-   case 4:  {
-    $39 = ((($0)) + 12|0);
-    $40 = HEAP32[$39>>2]|0;
-    $41 = ((($40)) + 44|0);
-    $42 = HEAP32[$41>>2]|0;
-    $43 = ((($0)) + 496|0);
-    FUNCTION_TABLE_viiii[$42 & 63]($43,$1,$spec$select15,$spec$select);
-    $$0$i17 = 0;
-    STACKTOP = sp;return ($$0$i17|0);
-    break;
-   }
-   case 0:  {
-    $44 = (__gcry_fips_mode()|0);
-    $45 = ($44|0)==(0);
-    if ($45) {
-     $46 = (__gcry_get_debug_flag(0)|0);
-     $47 = ($46|0)==(0);
-     if (!($47)) {
-      $48 = ($spec$select15|0)==($1|0);
-      if ($48) {
-       $$0$i17 = 0;
-       STACKTOP = sp;return ($$0$i17|0);
-      }
-      _memmove(($1|0),($spec$select15|0),($spec$select|0))|0;
-      $$0$i17 = 0;
-      STACKTOP = sp;return ($$0$i17|0);
-     }
-    }
-    __gcry_fips_signal_error(46300,875,46309,0,46324);
-    $$0$i = 71;
-    break L1;
-    break;
-   }
-   default: {
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46346,$vararg_buffer);
-    // unreachable;
-   }
-   }
-  } else {
-   $switch$split12D = ($7|0)<(9);
-   if ($switch$split12D) {
-    switch ($7|0) {
-    case 6:  {
-     $33 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-     $$0$i = $33;
-     break L1;
-     break;
-    }
-    case 7:  {
-     $34 = 
(__gcry_cipher_aeswrap_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-     $$0$i = $34;
-     break L1;
-     break;
-    }
-    case 8:  {
-     $35 = (__gcry_cipher_ccm_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-     $$0$i = $35;
-     break L1;
-     break;
-    }
-    default: {
-     HEAP32[$vararg_buffer>>2] = $7;
-     __gcry_log_fatal(46346,$vararg_buffer);
-     // unreachable;
-    }
-    }
-   }
-   $switch$split42D = ($7|0)<(11);
-   if ($switch$split42D) {
-    switch ($7|0) {
-    case 9:  {
-     $36 = (__gcry_cipher_gcm_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-     $$0$i = $36;
-     break L1;
-     break;
-    }
-    case 10:  {
-     $37 = 
(__gcry_cipher_poly1305_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-     $$0$i = $37;
-     break L1;
-     break;
-    }
-    default: {
-     HEAP32[$vararg_buffer>>2] = $7;
-     __gcry_log_fatal(46346,$vararg_buffer);
-     // unreachable;
-    }
-    }
-   }
-   $switch$split72D = ($7|0)<(65537);
-   if (!($switch$split72D)) {
-    switch ($7|0) {
-    case 65537:  {
-     $$0$i = 71;
-     break L1;
-     break;
-    }
-    default: {
-    }
-    }
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46346,$vararg_buffer);
-    // unreachable;
-   }
-   switch ($7|0) {
-   case 11:  {
-    $38 = (__gcry_cipher_ocb_encrypt($0,$1,$2,$spec$select15,$spec$select)|0);
-    $$0$i = $38;
-    break L1;
-    break;
-   }
-   default: {
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46346,$vararg_buffer);
-    // unreachable;
-   }
-   }
-  }
- } while(0);
- $49 = ($$0$i|0)!=(0);
- $50 = ($1|0)!=(0|0);
- $or$cond = $50 & $49;
- if (!($or$cond)) {
-  $$0$i17 = $$0$i;
-  STACKTOP = sp;return ($$0$i17|0);
- }
- _memset(($1|0),66,($2|0))|0;
- $$0$i17 = $$0$i;
- STACKTOP = sp;return ($$0$i17|0);
-}
-function __gcry_cipher_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0$i = 0, $$03340$i$i$i = 0, $$03439$i$i$i = 0, $$03538$i$i$i = 0, 
$$03637$i$i$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 
0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $spec$select = 0, $spec$select8 = 0, $switch$split12D = 0, $switch$split2D = 
0, $switch$split42D = 0, $switch$split72D = 0, $vararg_buffer = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $5 = ($3|0)==(0|0);
- $spec$select = $5 ? $1 : $3;
- $spec$select8 = $5 ? $2 : $4;
- $6 = ((($0)) + 48|0);
- $7 = HEAP32[$6>>2]|0;
- $switch$split2D = ($7|0)<(6);
- L1: do {
-  if ($switch$split2D) {
-   switch ($7|0) {
-   case 1:  {
-    $8 = ((($0)) + 12|0);
-    $9 = HEAP32[$8>>2]|0;
-    $10 = ((($9)) + 40|0);
-    $11 = HEAP32[$10>>2]|0;
-    $12 = ((($9)) + 20|0);
-    $13 = HEAP32[$12>>2]|0;
-    $14 = ($spec$select8>>>0)>($2>>>0);
-    if ($14) {
-     $$0$i = 200;
-     break L1;
-    }
-    $15 = (($spec$select8>>>0) / ($13>>>0))&-1;
-    $16 = Math_imul($15, $13)|0;
-    $17 = (($spec$select8) - ($16))|0;
-    $18 = ($17|0)==(0);
-    if (!($18)) {
-     $$0$i = 139;
-     break L1;
-    }
-    $19 = ($13>>>0)>($spec$select8>>>0);
-    if ($19) {
-     $$0$i = 0;
-     break L1;
-    }
-    $20 = ((($0)) + 496|0);
-    $$03340$i$i$i = 0;$$03439$i$i$i = $1;$$03538$i$i$i = 0;$$03637$i$i$i = 
$spec$select;
-    while(1) {
-     $21 = (FUNCTION_TABLE_iiii[$11 & 127]($20,$$03439$i$i$i,$$03637$i$i$i)|0);
-     $22 = ($21>>>0)>($$03340$i$i$i>>>0);
-     $23 = $22 ? $21 : $$03340$i$i$i;
-     $24 = (($$03637$i$i$i) + ($13)|0);
-     $25 = (($$03439$i$i$i) + ($13)|0);
-     $26 = (($$03538$i$i$i) + 1)|0;
-     $27 = ($26>>>0)<($15>>>0);
-     if ($27) {
-      $$03340$i$i$i = $23;$$03439$i$i$i = $25;$$03538$i$i$i = 
$26;$$03637$i$i$i = $24;
-     } else {
-      break;
-     }
-    }
-    $28 = ($23|0)==(0);
-    if ($28) {
-     $$0$i = 0;
-     break L1;
-    }
-    $29 = (($23) + 16)|0;
-    ___gcry_burn_stack($29);
-    $$0$i = 0;
-    break L1;
-    break;
-   }
-   case 3:  {
-    $30 = (__gcry_cipher_cbc_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-    $$0$i = $30;
-    break L1;
-    break;
-   }
-   case 2:  {
-    $31 = (__gcry_cipher_cfb_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-    $$0$i = $31;
-    break L1;
-    break;
-   }
-   case 5:  {
-    $32 = (__gcry_cipher_ofb_encrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-    $$0$i = $32;
-    break L1;
-    break;
-   }
-   case 4:  {
-    $39 = ((($0)) + 12|0);
-    $40 = HEAP32[$39>>2]|0;
-    $41 = ((($40)) + 48|0);
-    $42 = HEAP32[$41>>2]|0;
-    $43 = ((($0)) + 496|0);
-    FUNCTION_TABLE_viiii[$42 & 63]($43,$1,$spec$select,$spec$select8);
-    $$0$i = 0;
-    break L1;
-    break;
-   }
-   case 0:  {
-    $44 = (__gcry_fips_mode()|0);
-    $45 = ($44|0)==(0);
-    if ($45) {
-     $46 = (__gcry_get_debug_flag(0)|0);
-     $47 = ($46|0)==(0);
-     if (!($47)) {
-      $48 = ($spec$select|0)==($1|0);
-      if ($48) {
-       $$0$i = 0;
-       break L1;
-      }
-      _memmove(($1|0),($spec$select|0),($spec$select8|0))|0;
-      $$0$i = 0;
-      break L1;
-     }
-    }
-    __gcry_fips_signal_error(46300,992,46379,0,46324);
-    $$0$i = 71;
-    break L1;
-    break;
-   }
-   default: {
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46394,$vararg_buffer);
-    // unreachable;
-   }
-   }
-  } else {
-   $switch$split12D = ($7|0)<(9);
-   if ($switch$split12D) {
-    switch ($7|0) {
-    case 6:  {
-     $33 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-     $$0$i = $33;
-     break L1;
-     break;
-    }
-    case 7:  {
-     $34 = 
(__gcry_cipher_aeswrap_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-     $$0$i = $34;
-     break L1;
-     break;
-    }
-    case 8:  {
-     $35 = (__gcry_cipher_ccm_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-     $$0$i = $35;
-     break L1;
-     break;
-    }
-    default: {
-     HEAP32[$vararg_buffer>>2] = $7;
-     __gcry_log_fatal(46394,$vararg_buffer);
-     // unreachable;
-    }
-    }
-   }
-   $switch$split42D = ($7|0)<(11);
-   if ($switch$split42D) {
-    switch ($7|0) {
-    case 9:  {
-     $36 = (__gcry_cipher_gcm_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-     $$0$i = $36;
-     break L1;
-     break;
-    }
-    case 10:  {
-     $37 = 
(__gcry_cipher_poly1305_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-     $$0$i = $37;
-     break L1;
-     break;
-    }
-    default: {
-     HEAP32[$vararg_buffer>>2] = $7;
-     __gcry_log_fatal(46394,$vararg_buffer);
-     // unreachable;
-    }
-    }
-   }
-   $switch$split72D = ($7|0)<(65537);
-   if (!($switch$split72D)) {
-    switch ($7|0) {
-    case 65537:  {
-     $$0$i = 71;
-     break L1;
-     break;
-    }
-    default: {
-    }
-    }
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46394,$vararg_buffer);
-    // unreachable;
-   }
-   switch ($7|0) {
-   case 11:  {
-    $38 = (__gcry_cipher_ocb_decrypt($0,$1,$2,$spec$select,$spec$select8)|0);
-    $$0$i = $38;
-    break L1;
-    break;
-   }
-   default: {
-    HEAP32[$vararg_buffer>>2] = $7;
-    __gcry_log_fatal(46394,$vararg_buffer);
-    // unreachable;
-   }
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$0$i|0);
-}
-function __gcry_cipher_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, $switch$split12D = 0;
- var $switch$split2D = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 12|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($4)) + 32|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($0)) + 496|0);
- $8 = (FUNCTION_TABLE_iiii[$6 & 127]($7,$1,$2)|0);
- $9 = ($8|0)==(0);
- if (!($9)) {
-  $19 = ((($0)) + 56|0);
-  $20 = HEAP8[$19>>0]|0;
-  $21 = $20 & -2;
-  HEAP8[$19>>0] = $21;
-  return ($8|0);
- }
- $10 = HEAP32[$3>>2]|0;
- $11 = ((($10)) + 28|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = (($7) + ($12)|0);
- _memcpy(($13|0),($7|0),($12|0))|0;
- $14 = ((($0)) + 56|0);
- $15 = HEAP8[$14>>0]|0;
- $16 = $15 | 1;
- HEAP8[$14>>0] = $16;
- $17 = ((($0)) + 48|0);
- $18 = HEAP32[$17>>2]|0;
- $switch$split2D = ($18|0)<(10);
- if ($switch$split2D) {
-  switch ($18|0) {
-  case 9:  {
-   break;
-  }
-  default: {
-   return ($8|0);
-  }
-  }
-  __gcry_cipher_gcm_setkey($0);
-  return ($8|0);
- }
- $switch$split12D = ($18|0)<(65537);
- if ($switch$split12D) {
-  switch ($18|0) {
-  case 10:  {
-   break;
-  }
-  default: {
-   return ($8|0);
-  }
-  }
-  __gcry_cipher_poly1305_setkey($0);
-  return ($8|0);
- } else {
-  switch ($18|0) {
-  case 65537:  {
-   break;
-  }
-  default: {
-   return ($8|0);
-  }
-  }
-  (__gcry_cipher_cmac_set_subkeys($0)|0);
-  return ($8|0);
- }
- return (0)|0;
-}
-function __gcry_cipher_setiv($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$phi$trans$insert$i = 0, $$pre$i = 0, $$pre1$i = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $spec$select$i = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = ((($0)) + 48|0);
- $4 = HEAP32[$3>>2]|0;
- switch ($4|0) {
- case 8:  {
-  $5 = (__gcry_cipher_ccm_set_nonce($0,$1,$2)|0);
-  $$0 = $5;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 9:  {
-  $6 = (__gcry_cipher_gcm_setiv($0,$1,$2)|0);
-  $$0 = $6;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 10:  {
-  $7 = (__gcry_cipher_poly1305_setiv($0,$1,$2)|0);
-  $$0 = $7;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 11:  {
-  $8 = (__gcry_cipher_ocb_set_nonce($0,$1,$2)|0);
-  $$0 = $8;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- default: {
-  $9 = ((($0)) + 12|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ((($10)) + 60|0);
-  $12 = HEAP32[$11>>2]|0;
-  $13 = ($12|0)==(0|0);
-  if (!($13)) {
-   $14 = ((($0)) + 496|0);
-   FUNCTION_TABLE_viii[$12 & 127]($14,$1,$2);
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $15 = ((($0)) + 64|0);
-  $16 = ((($10)) + 20|0);
-  $17 = HEAP32[$16>>2]|0;
-  _memset(($15|0),0,($17|0))|0;
-  $18 = ($1|0)==(0|0);
-  if ($18) {
-   $26 = ((($0)) + 56|0);
-   $27 = HEAP8[$26>>0]|0;
-   $28 = $27 & -3;
-   HEAP8[$26>>0] = $28;
-  } else {
-   $19 = HEAP32[$16>>2]|0;
-   $20 = ($19|0)==($2|0);
-   if ($20) {
-    $22 = $2;
-   } else {
-    HEAP32[$vararg_buffer>>2] = $2;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = $19;
-    __gcry_log_info(46427,$vararg_buffer);
-    __gcry_fips_signal_error(46300,682,46470,0,46483);
-    $$pre$i = HEAP32[$9>>2]|0;
-    $$phi$trans$insert$i = ((($$pre$i)) + 20|0);
-    $$pre1$i = HEAP32[$$phi$trans$insert$i>>2]|0;
-    $22 = $$pre1$i;
-   }
-   $21 = ($22>>>0)<($2>>>0);
-   $spec$select$i = $21 ? $22 : $2;
-   _memcpy(($15|0),($1|0),($spec$select$i|0))|0;
-   $23 = ((($0)) + 56|0);
-   $24 = HEAP8[$23>>0]|0;
-   $25 = $24 | 2;
-   HEAP8[$23>>0] = $25;
-  }
-  $29 = ((($0)) + 112|0);
-  HEAP32[$29>>2] = 0;
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- return (0)|0;
-}
-function __gcry_cipher_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_cipher_selftest($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$ph = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[9497]|0;
- $4 = ($3|0)==($0|0);
- if ($4) {
-  $$ph = 37988;
-  label = 6;
- } else {
-  $5 = HEAP32[9833]|0;
-  $6 = ($5|0)==($0|0);
-  if ($6) {
-   $$ph = 39332;
-   label = 6;
-  } else {
-   $7 = HEAP32[9852]|0;
-   $8 = ($7|0)==($0|0);
-   if ($8) {
-    $$ph = 39408;
-    label = 6;
-   } else {
-    $9 = HEAP32[9984]|0;
-    $10 = ($9|0)==($0|0);
-    if ($10) {
-     $$ph = 39936;
-     label = 6;
-    } else {
-     $11 = HEAP32[10000]|0;
-     $12 = ($11|0)==($0|0);
-     if ($12) {
-      $$ph = 40000;
-      label = 6;
-     } else {
-      $22 = 0;$27 = 0;
-     }
-    }
-   }
-  }
- }
- if ((label|0) == 6) {
-  $13 = ((($$ph)) + 4|0);
-  $14 = HEAP8[$13>>0]|0;
-  $15 = $14 & 1;
-  $16 = ($15<<24>>24)==(0);
-  if ($16) {
-   $17 = ((($$ph)) + 52|0);
-   $18 = HEAP32[$17>>2]|0;
-   $19 = ($18|0)==(0|0);
-   if ($19) {
-    $22 = $$ph;$27 = 1;
-   } else {
-    $29 = (FUNCTION_TABLE_iiii[$18 & 127]($0,$1,$2)|0);
-    $30 = ($29|0)==(0);
-    $31 = $29 & 65535;
-    $32 = $31 | 16777216;
-    $spec$select = $30 ? 0 : $32;
-    return ($spec$select|0);
-   }
-  } else {
-   $22 = $$ph;$27 = 1;
-  }
- }
- $20 = ($2|0)==(0|0);
- if ($20) {
-  return 16777228;
- }
- if ($27) {
-  $21 = ((($22)) + 4|0);
-  $23 = HEAP8[$21>>0]|0;
-  $24 = $23 & 1;
-  $25 = ($24<<24>>24)==(0);
-  if ($25) {
-   $28 = 59812;
-  } else {
-   label = 11;
-  }
- } else {
-  label = 11;
- }
- if ((label|0) == 11) {
-  $26 = $27 ? 59773 : 59792;
-  $28 = $26;
- }
- FUNCTION_TABLE_viiii[$2 & 63](59927,$0,59834,$28);
- return 16777228;
-}
-function __gcry_ecc_fill_in_curve($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$049 = 0, $$159 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $or$cond51 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0;
- var $vararg_buffer10 = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, 
$vararg_buffer4 = 0, $vararg_buffer7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer16 = sp + 48|0;
- $vararg_buffer13 = sp + 40|0;
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = sp + 76|0;
- $5 = sp + 72|0;
- $6 = sp + 68|0;
- $7 = sp + 64|0;
- $8 = sp + 60|0;
- $9 = sp + 56|0;
- $10 = sp + 52|0;
- $11 = ($1|0)==(0|0);
- L1: do {
-  if ($11) {
-   switch ($0|0) {
-   case 192:  {
-    $$159 = 1;
-    break L1;
-    break;
-   }
-   case 224:  {
-    $$159 = 2;
-    break L1;
-    break;
-   }
-   case 256:  {
-    $$159 = 3;
-    break L1;
-    break;
-   }
-   case 384:  {
-    $$159 = 4;
-    break L1;
-    break;
-   }
-   case 521:  {
-    $$159 = 5;
-    break L1;
-    break;
-   }
-   case 160:  {
-    $$159 = 6;
-    break L1;
-    break;
-   }
-   case 320:  {
-    $$159 = 10;
-    break L1;
-    break;
-   }
-   case 512:  {
-    $$159 = 12;
-    break L1;
-    break;
-   }
-   case 511:  {
-    $$159 = 17;
-    break L1;
-    break;
-   }
-   default: {
-    $$049 = 188;
-    STACKTOP = sp;return ($$049|0);
-   }
-   }
-  } else {
-   $12 = (_find_domain_parms_idx($1)|0);
-   $13 = ($12|0)<(0);
-   if ($13) {
-    $$049 = 188;
-    STACKTOP = sp;return ($$049|0);
-   } else {
-    $$159 = $12;
-   }
-  }
- } while(0);
- $14 = (240 + (($$159*48)|0)|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (__gcry_fips_mode()|0);
- $17 = ($16|0)==(0);
- $18 = (($$159) + -1)|0;
- $19 = ($18>>>0)<(5);
- $or$cond51 = $19 | $17;
- if (!($or$cond51)) {
-  $$049 = 60;
-  STACKTOP = sp;return ($$049|0);
- }
- $20 = (((240 + (($$159*48)|0)|0)) + 12|0);
- $21 = ($3|0)==(0|0);
- if (!($21)) {
-  $22 = (((240 + (($$159*48)|0)|0)) + 4|0);
-  $23 = HEAP32[$22>>2]|0;
-  HEAP32[$3>>2] = $23;
- }
- $24 = ($2|0)==(0|0);
- if ($24) {
-  $$049 = 0;
-  STACKTOP = sp;return ($$049|0);
- }
- $25 = HEAP32[$20>>2]|0;
- HEAP32[$2>>2] = $25;
- $26 = (((240 + (($$159*48)|0)|0)) + 16|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($2)) + 4|0);
- HEAP32[$28>>2] = $27;
- $29 = ((($2)) + 8|0);
- $30 = HEAP32[$29>>2]|0;
- $31 = ($30|0)==(0|0);
- do {
-  if ($31) {
-   $32 = (((240 + (($$159*48)|0)|0)) + 20|0);
-   $33 = HEAP32[$32>>2]|0;
-   $34 = (__gcry_mpi_scan($10,4,$33,0,0)|0);
-   $35 = ($34|0)==(0);
-   if ($35) {
-    $37 = HEAP32[$10>>2]|0;
-    HEAP32[$29>>2] = $37;
-    break;
-   } else {
-    $36 = (_gpg_strerror($34)|0);
-    HEAP32[$vararg_buffer>>2] = $36;
-    __gcry_log_fatal(57702,$vararg_buffer);
-    // unreachable;
-   }
-  }
- } while(0);
- $38 = ((($2)) + 12|0);
- $39 = HEAP32[$38>>2]|0;
- $40 = ($39|0)==(0|0);
- do {
-  if ($40) {
-   $41 = (((240 + (($$159*48)|0)|0)) + 24|0);
-   $42 = HEAP32[$41>>2]|0;
-   $43 = (__gcry_mpi_scan($9,4,$42,0,0)|0);
-   $44 = ($43|0)==(0);
-   if ($44) {
-    $46 = HEAP32[$9>>2]|0;
-    HEAP32[$38>>2] = $46;
-    break;
-   } else {
-    $45 = (_gpg_strerror($43)|0);
-    HEAP32[$vararg_buffer1>>2] = $45;
-    __gcry_log_fatal(57702,$vararg_buffer1);
-    // unreachable;
-   }
-  }
- } while(0);
- $47 = ((($2)) + 16|0);
- $48 = HEAP32[$47>>2]|0;
- $49 = ($48|0)==(0|0);
- do {
-  if ($49) {
-   $50 = (((240 + (($$159*48)|0)|0)) + 28|0);
-   $51 = HEAP32[$50>>2]|0;
-   $52 = (__gcry_mpi_scan($8,4,$51,0,0)|0);
-   $53 = ($52|0)==(0);
-   if ($53) {
-    $55 = HEAP32[$8>>2]|0;
-    HEAP32[$47>>2] = $55;
-    break;
-   } else {
-    $54 = (_gpg_strerror($52)|0);
-    HEAP32[$vararg_buffer4>>2] = $54;
-    __gcry_log_fatal(57702,$vararg_buffer4);
-    // unreachable;
-   }
-  }
- } while(0);
- $56 = ((($2)) + 32|0);
- $57 = HEAP32[$56>>2]|0;
- $58 = ($57|0)==(0|0);
- do {
-  if ($58) {
-   $59 = (((240 + (($$159*48)|0)|0)) + 32|0);
-   $60 = HEAP32[$59>>2]|0;
-   $61 = (__gcry_mpi_scan($7,4,$60,0,0)|0);
-   $62 = ($61|0)==(0);
-   if ($62) {
-    $64 = HEAP32[$7>>2]|0;
-    HEAP32[$56>>2] = $64;
-    break;
-   } else {
-    $63 = (_gpg_strerror($61)|0);
-    HEAP32[$vararg_buffer7>>2] = $63;
-    __gcry_log_fatal(57702,$vararg_buffer7);
-    // unreachable;
-   }
-  }
- } while(0);
- $65 = ((($2)) + 36|0);
- $66 = HEAP32[$65>>2]|0;
- $67 = ($66|0)==(0|0);
- do {
-  if ($67) {
-   $68 = (((240 + (($$159*48)|0)|0)) + 44|0);
-   $69 = HEAP32[$68>>2]|0;
-   $70 = (__gcry_mpi_scan($6,4,$69,0,0)|0);
-   $71 = ($70|0)==(0);
-   if ($71) {
-    $73 = HEAP32[$6>>2]|0;
-    HEAP32[$65>>2] = $73;
-    break;
-   } else {
-    $72 = (_gpg_strerror($70)|0);
-    HEAP32[$vararg_buffer10>>2] = $72;
-    __gcry_log_fatal(57702,$vararg_buffer10);
-    // unreachable;
-   }
-  }
- } while(0);
- $74 = ((($2)) + 20|0);
- $75 = HEAP32[$74>>2]|0;
- $76 = ($75|0)==(0|0);
- do {
-  if ($76) {
-   $77 = (((240 + (($$159*48)|0)|0)) + 36|0);
-   $78 = HEAP32[$77>>2]|0;
-   $79 = (__gcry_mpi_scan($5,4,$78,0,0)|0);
-   $80 = ($79|0)==(0);
-   if ($80) {
-    $82 = HEAP32[$5>>2]|0;
-    HEAP32[$74>>2] = $82;
-    break;
-   } else {
-    $81 = (_gpg_strerror($79)|0);
-    HEAP32[$vararg_buffer13>>2] = $81;
-    __gcry_log_fatal(57702,$vararg_buffer13);
-    // unreachable;
-   }
-  }
- } while(0);
- $83 = ((($2)) + 24|0);
- $84 = HEAP32[$83>>2]|0;
- $85 = ($84|0)==(0|0);
- do {
-  if ($85) {
-   $86 = (((240 + (($$159*48)|0)|0)) + 40|0);
-   $87 = HEAP32[$86>>2]|0;
-   $88 = (__gcry_mpi_scan($4,4,$87,0,0)|0);
-   $89 = ($88|0)==(0);
-   if ($89) {
-    $91 = HEAP32[$4>>2]|0;
-    HEAP32[$83>>2] = $91;
-    break;
-   } else {
-    $90 = (_gpg_strerror($88)|0);
-    HEAP32[$vararg_buffer16>>2] = $90;
-    __gcry_log_fatal(57702,$vararg_buffer16);
-    // unreachable;
-   }
-  }
- } while(0);
- $92 = ((($2)) + 28|0);
- $93 = HEAP32[$92>>2]|0;
- $94 = ($93|0)==(0|0);
- if ($94) {
-  $95 = (__gcry_mpi_alloc_set_ui(1)|0);
-  HEAP32[$92>>2] = $95;
- }
- $96 = ((($2)) + 40|0);
- $97 = HEAP32[$96>>2]|0;
- $98 = ($97|0)==(0|0);
- if (!($98)) {
-  $$049 = 0;
-  STACKTOP = sp;return ($$049|0);
- }
- HEAP32[$96>>2] = $15;
- $$049 = 0;
- STACKTOP = sp;return ($$049|0);
-}
-function _find_domain_parms_idx($0) {
- $0 = $0|0;
- var $$018 = 0, $$024 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $cond = 0, $spec$select = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_strcmp($0,57883)|0);
- $2 = ($1|0)==(0);
- L1: do {
-  if ($2) {
-   $$018 = 0;
-  } else {
-   $3 = (_strcmp($0,46867)|0);
-   $4 = ($3|0)==(0);
-   if ($4) {
-    $$018 = 1;
-   } else {
-    $55 = (_strcmp($0,47189)|0);
-    $56 = ($55|0)==(0);
-    if ($56) {
-     $$018 = 2;
-    } else {
-     $57 = (_strcmp($0,47554)|0);
-     $58 = ($57|0)==(0);
-     if ($58) {
-      $$018 = 3;
-     } else {
-      $59 = (_strcmp($0,47967)|0);
-      $60 = ($59|0)==(0);
-      if ($60) {
-       $$018 = 4;
-      } else {
-       $61 = (_strcmp($0,48572)|0);
-       $62 = ($61|0)==(0);
-       if ($62) {
-        $$018 = 5;
-       } else {
-        $63 = (_strcmp($0,49391)|0);
-        $64 = ($63|0)==(0);
-        if ($64) {
-         $$018 = 6;
-        } else {
-         $65 = (_strcmp($0,49665)|0);
-         $66 = ($65|0)==(0);
-         if ($66) {
-          $$018 = 7;
-         } else {
-          $67 = (_strcmp($0,49987)|0);
-          $68 = ($67|0)==(0);
-          if ($68) {
-           $$018 = 8;
-          } else {
-           $69 = (_strcmp($0,50357)|0);
-           $70 = ($69|0)==(0);
-           if ($70) {
-            $$018 = 9;
-           } else {
-            $71 = (_strcmp($0,50775)|0);
-            $72 = ($71|0)==(0);
-            if ($72) {
-             $$018 = 10;
-            } else {
-             $73 = (_strcmp($0,51289)|0);
-             $74 = ($73|0)==(0);
-             if ($74) {
-              $$018 = 11;
-             } else {
-              $75 = (_strcmp($0,51899)|0);
-              $76 = ($75|0)==(0);
-              if ($76) {
-               $$018 = 12;
-              } else {
-               $77 = (_strcmp($0,52701)|0);
-               $78 = ($77|0)==(0);
-               if ($78) {
-                $$018 = 13;
-               } else {
-                $79 = (_strcmp($0,53117)|0);
-                $80 = ($79|0)==(0);
-                if ($80) {
-                 $$018 = 14;
-                } else {
-                 $81 = (_strcmp($0,53540)|0);
-                 $82 = ($81|0)==(0);
-                 if ($82) {
-                  $$018 = 15;
-                 } else {
-                  $83 = (_strcmp($0,53896)|0);
-                  $84 = ($83|0)==(0);
-                  if ($84) {
-                   $$018 = 16;
-                  } else {
-                   $85 = (_strcmp($0,54319)|0);
-                   $86 = ($85|0)==(0);
-                   if ($86) {
-                    $$018 = 17;
-                   } else {
-                    $87 = (_strcmp($0,54988)|0);
-                    $88 = ($87|0)==(0);
-                    if ($88) {
-                     $$018 = 18;
-                    } else {
-                     $89 = (_strcmp($0,55790)|0);
-                     $90 = ($89|0)==(0);
-                     if ($90) {
-                      $$018 = 19;
-                      break;
-                     }
-                     $91 = (_strcmp($0,56592)|0);
-                     $92 = ($91|0)==(0);
-                     if ($92) {
-                      $$018 = 20;
-                      break;
-                     }
-                     $$024 = 0;$12 = 1296;
-                     while(1) {
-                      $7 = (((1296 + ($$024<<3)|0)) + 4|0);
-                      $8 = HEAP32[$7>>2]|0;
-                      $9 = (_strcmp($0,$8)|0);
-                      $10 = ($9|0)==(0);
-                      $6 = (($$024) + 1)|0;
-                      if ($10) {
-                       break;
-                      }
-                      $5 = (1296 + ($6<<3)|0);
-                      $cond = ($6|0)==(36);
-                      if ($cond) {
-                       $$018 = -1;
-                       break L1;
-                      } else {
-                       $$024 = $6;$12 = $5;
-                      }
-                     }
-                     $11 = HEAP32[$12>>2]|0;
-                     $13 = (_strcmp($11,57883)|0);
-                     $14 = ($13|0)==(0);
-                     if ($14) {
-                      $$018 = 0;
-                      break;
-                     }
-                     $15 = (_strcmp($11,46867)|0);
-                     $16 = ($15|0)==(0);
-                     if ($16) {
-                      $$018 = 1;
-                      break;
-                     }
-                     $17 = (_strcmp($11,47189)|0);
-                     $18 = ($17|0)==(0);
-                     if ($18) {
-                      $$018 = 2;
-                      break;
-                     }
-                     $19 = (_strcmp($11,47554)|0);
-                     $20 = ($19|0)==(0);
-                     if ($20) {
-                      $$018 = 3;
-                      break;
-                     }
-                     $21 = (_strcmp($11,47967)|0);
-                     $22 = ($21|0)==(0);
-                     if ($22) {
-                      $$018 = 4;
-                      break;
-                     }
-                     $23 = (_strcmp($11,48572)|0);
-                     $24 = ($23|0)==(0);
-                     if ($24) {
-                      $$018 = 5;
-                      break;
-                     }
-                     $25 = (_strcmp($11,49391)|0);
-                     $26 = ($25|0)==(0);
-                     if ($26) {
-                      $$018 = 6;
-                      break;
-                     }
-                     $27 = (_strcmp($11,49665)|0);
-                     $28 = ($27|0)==(0);
-                     if ($28) {
-                      $$018 = 7;
-                      break;
-                     }
-                     $29 = (_strcmp($11,49987)|0);
-                     $30 = ($29|0)==(0);
-                     if ($30) {
-                      $$018 = 8;
-                      break;
-                     }
-                     $31 = (_strcmp($11,50357)|0);
-                     $32 = ($31|0)==(0);
-                     if ($32) {
-                      $$018 = 9;
-                      break;
-                     }
-                     $33 = (_strcmp($11,50775)|0);
-                     $34 = ($33|0)==(0);
-                     if ($34) {
-                      $$018 = 10;
-                      break;
-                     }
-                     $35 = (_strcmp($11,51289)|0);
-                     $36 = ($35|0)==(0);
-                     if ($36) {
-                      $$018 = 11;
-                      break;
-                     }
-                     $37 = (_strcmp($11,51899)|0);
-                     $38 = ($37|0)==(0);
-                     if ($38) {
-                      $$018 = 12;
-                      break;
-                     }
-                     $39 = (_strcmp($11,52701)|0);
-                     $40 = ($39|0)==(0);
-                     if ($40) {
-                      $$018 = 13;
-                      break;
-                     }
-                     $41 = (_strcmp($11,53117)|0);
-                     $42 = ($41|0)==(0);
-                     if ($42) {
-                      $$018 = 14;
-                      break;
-                     }
-                     $43 = (_strcmp($11,53540)|0);
-                     $44 = ($43|0)==(0);
-                     if ($44) {
-                      $$018 = 15;
-                      break;
-                     }
-                     $45 = (_strcmp($11,53896)|0);
-                     $46 = ($45|0)==(0);
-                     if ($46) {
-                      $$018 = 16;
-                      break;
-                     }
-                     $47 = (_strcmp($11,54319)|0);
-                     $48 = ($47|0)==(0);
-                     if ($48) {
-                      $$018 = 17;
-                      break;
-                     }
-                     $49 = (_strcmp($11,54988)|0);
-                     $50 = ($49|0)==(0);
-                     if ($50) {
-                      $$018 = 18;
-                      break;
-                     }
-                     $51 = (_strcmp($11,55790)|0);
-                     $52 = ($51|0)==(0);
-                     if ($52) {
-                      $$018 = 19;
-                      break;
-                     }
-                     $53 = (_strcmp($11,56592)|0);
-                     $54 = ($53|0)==(0);
-                     $spec$select = $54 ? 20 : -1;
-                     return ($spec$select|0);
-                    }
-                   }
-                  }
-                 }
-                }
-               }
-              }
-             }
-            }
-           }
-          }
-         }
-        }
-       }
-      }
-     }
-    }
-   }
-  }
- } while(0);
- return ($$018|0);
-}
-function __gcry_ecc_update_curve_param($0,$1,$2,$3,$4,$5,$6,$7,$8) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- $8 = $8|0;
- var $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 
0, $66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer10 = 0, $vararg_buffer13 
= 0;
- var $vararg_buffer4 = 0, $vararg_buffer7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer13 = sp + 40|0;
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $9 = sp + 64|0;
- $10 = sp + 60|0;
- $11 = sp + 56|0;
- $12 = sp + 52|0;
- $13 = sp + 48|0;
- $14 = sp + 44|0;
- $15 = (_find_domain_parms_idx($0)|0);
- $16 = ($15|0)<(0);
- if ($16) {
-  $$1 = 188;
-  STACKTOP = sp;return ($$1|0);
- }
- $17 = ($6|0)==(0|0);
- do {
-  if (!($17)) {
-   $18 = (((240 + (($15*48)|0)|0)) + 36|0);
-   $19 = HEAP32[$18>>2]|0;
-   $20 = ((($19)) + 2|0);
-   $21 = (_strlen($20)|0);
-   $22 = (((240 + (($15*48)|0)|0)) + 40|0);
-   $23 = HEAP32[$22>>2]|0;
-   $24 = ((($23)) + 2|0);
-   $25 = (_strlen($24)|0);
-   $26 = (($21) + 5)|0;
-   $27 = (($26) + ($25))|0;
-   $28 = (__gcry_malloc($27)|0);
-   $29 = ($28|0)==(0|0);
-   if ($29) {
-    $37 = (_gpg_err_code_from_syserror()|0);
-    $$1 = $37;
-    STACKTOP = sp;return ($$1|0);
-   }
-   $30 = ((($28)) + 4|0);
-   
;HEAP8[$28>>0]=HEAP8[57441>>0]|0;HEAP8[$28+1>>0]=HEAP8[57441+1>>0]|0;HEAP8[$28+2>>0]=HEAP8[57441+2>>0]|0;HEAP8[$28+3>>0]=HEAP8[57441+3>>0]|0;HEAP8[$28+4>>0]=HEAP8[57441+4>>0]|0;
-   $31 = (___stpcpy($30,$20)|0);
-   (_strcpy($31,$24)|0);
-   $32 = HEAP32[$6>>2]|0;
-   __gcry_mpi_release($32);
-   $33 = (__gcry_mpi_scan($14,4,$28,0,0)|0);
-   $34 = ($33|0)==(0);
-   if ($34) {
-    $36 = HEAP32[$14>>2]|0;
-    HEAP32[$6>>2] = $36;
-    __gcry_free($28);
-    break;
-   } else {
-    $35 = (_gpg_strerror($33)|0);
-    HEAP32[$vararg_buffer>>2] = $35;
-    __gcry_log_fatal(57702,$vararg_buffer);
-    // unreachable;
-   }
-  }
- } while(0);
- $38 = ($1|0)==(0|0);
- if (!($38)) {
-  $39 = (((240 + (($15*48)|0)|0)) + 12|0);
-  $40 = HEAP32[$39>>2]|0;
-  HEAP32[$1>>2] = $40;
- }
- $41 = ($2|0)==(0|0);
- if (!($41)) {
-  $42 = (((240 + (($15*48)|0)|0)) + 16|0);
-  $43 = HEAP32[$42>>2]|0;
-  HEAP32[$2>>2] = $43;
- }
- $44 = ($3|0)==(0|0);
- do {
-  if (!($44)) {
-   $45 = HEAP32[$3>>2]|0;
-   __gcry_mpi_release($45);
-   $46 = (((240 + (($15*48)|0)|0)) + 20|0);
-   $47 = HEAP32[$46>>2]|0;
-   $48 = (__gcry_mpi_scan($13,4,$47,0,0)|0);
-   $49 = ($48|0)==(0);
-   if ($49) {
-    $51 = HEAP32[$13>>2]|0;
-    HEAP32[$3>>2] = $51;
-    break;
-   } else {
-    $50 = (_gpg_strerror($48)|0);
-    HEAP32[$vararg_buffer1>>2] = $50;
-    __gcry_log_fatal(57702,$vararg_buffer1);
-    // unreachable;
-   }
-  }
- } while(0);
- $52 = ($4|0)==(0|0);
- do {
-  if (!($52)) {
-   $53 = HEAP32[$4>>2]|0;
-   __gcry_mpi_release($53);
-   $54 = (((240 + (($15*48)|0)|0)) + 24|0);
-   $55 = HEAP32[$54>>2]|0;
-   $56 = (__gcry_mpi_scan($12,4,$55,0,0)|0);
-   $57 = ($56|0)==(0);
-   if ($57) {
-    $59 = HEAP32[$12>>2]|0;
-    HEAP32[$4>>2] = $59;
-    break;
-   } else {
-    $58 = (_gpg_strerror($56)|0);
-    HEAP32[$vararg_buffer4>>2] = $58;
-    __gcry_log_fatal(57702,$vararg_buffer4);
-    // unreachable;
-   }
-  }
- } while(0);
- $60 = ($5|0)==(0|0);
- do {
-  if (!($60)) {
-   $61 = HEAP32[$5>>2]|0;
-   __gcry_mpi_release($61);
-   $62 = (((240 + (($15*48)|0)|0)) + 28|0);
-   $63 = HEAP32[$62>>2]|0;
-   $64 = (__gcry_mpi_scan($11,4,$63,0,0)|0);
-   $65 = ($64|0)==(0);
-   if ($65) {
-    $67 = HEAP32[$11>>2]|0;
-    HEAP32[$5>>2] = $67;
-    break;
-   } else {
-    $66 = (_gpg_strerror($64)|0);
-    HEAP32[$vararg_buffer7>>2] = $66;
-    __gcry_log_fatal(57702,$vararg_buffer7);
-    // unreachable;
-   }
-  }
- } while(0);
- $68 = ($7|0)==(0|0);
- do {
-  if (!($68)) {
-   $69 = HEAP32[$7>>2]|0;
-   __gcry_mpi_release($69);
-   $70 = (((240 + (($15*48)|0)|0)) + 32|0);
-   $71 = HEAP32[$70>>2]|0;
-   $72 = (__gcry_mpi_scan($10,4,$71,0,0)|0);
-   $73 = ($72|0)==(0);
-   if ($73) {
-    $75 = HEAP32[$10>>2]|0;
-    HEAP32[$7>>2] = $75;
-    break;
-   } else {
-    $74 = (_gpg_strerror($72)|0);
-    HEAP32[$vararg_buffer10>>2] = $74;
-    __gcry_log_fatal(57702,$vararg_buffer10);
-    // unreachable;
-   }
-  }
- } while(0);
- $76 = ($8|0)==(0|0);
- if ($76) {
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $77 = HEAP32[$8>>2]|0;
- __gcry_mpi_release($77);
- $78 = (((240 + (($15*48)|0)|0)) + 44|0);
- $79 = HEAP32[$78>>2]|0;
- $80 = (__gcry_mpi_scan($9,4,$79,0,0)|0);
- $81 = ($80|0)==(0);
- if (!($81)) {
-  $82 = (_gpg_strerror($80)|0);
-  HEAP32[$vararg_buffer13>>2] = $82;
-  __gcry_log_fatal(57702,$vararg_buffer13);
-  // unreachable;
- }
- $83 = HEAP32[$9>>2]|0;
- HEAP32[$8>>2] = $83;
- $$1 = 0;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_ecc_get_curve($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$072143 = 0, $$073142 = 0, $$1 = 0, $$174 = 0, $$275 = 0, $$3 = 0, $10 = 
0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 
0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $trunc = 0, $vararg_buffer = 0, 
$vararg_buffer10 = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, 
$vararg_buffer19 = 0, $vararg_buffer22 = 0, $vararg_buffer25 = 0, 
$vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, 
$vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, dest = 0, label = 0;
- var sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(160|0);
- $vararg_buffer25 = sp + 80|0;
- $vararg_buffer22 = sp + 72|0;
- $vararg_buffer19 = sp + 64|0;
- $vararg_buffer16 = sp + 56|0;
- $vararg_buffer13 = sp + 48|0;
- $vararg_buffer10 = sp + 40|0;
- $vararg_buffer7 = sp + 32|0;
- $vararg_buffer = sp;
- $3 = sp + 156|0;
- $4 = sp + 152|0;
- $5 = sp + 148|0;
- $6 = sp + 144|0;
- $7 = sp + 140|0;
- $8 = sp + 136|0;
- $9 = sp + 132|0;
- $10 = sp + 88|0;
- $11 = sp + 84|0;
- HEAP32[$11>>2] = 0;
- dest=$10; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $12 = ($2|0)!=(0|0);
- if ($12) {
-  HEAP32[$2>>2] = 0;
- }
- $13 = ($0|0)==(0|0);
- if ($13) {
-  $14 = ($1>>>0)<(22);
-  if (!($14)) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $15 = (240 + (($1*48)|0)|0);
-  $16 = HEAP32[$15>>2]|0;
-  if (!($12)) {
-   $$1 = $16;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $17 = (((240 + (($1*48)|0)|0)) + 4|0);
-  $18 = HEAP32[$17>>2]|0;
-  HEAP32[$2>>2] = $18;
-  $$1 = $16;
-  STACKTOP = sp;return ($$1|0);
- }
- $19 = ((($10)) + 8|0);
- $20 = ((($10)) + 12|0);
- $21 = ((($10)) + 16|0);
- $22 = ((($10)) + 32|0);
- $23 = ((($10)) + 36|0);
- HEAP32[$vararg_buffer>>2] = $19;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $20;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $21;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $11;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $22;
- $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
- HEAP32[$vararg_ptr5>>2] = $23;
- $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
- HEAP32[$vararg_ptr6>>2] = 0;
- $24 = (__gcry_sexp_extract_param($0,0,57446,$vararg_buffer)|0);
- $trunc = $24&65535;
- L14: do {
-  switch ($trunc<<16>>16) {
-  case 68:  {
-   $25 = (__gcry_sexp_find_token($0,64745,5)|0);
-   $26 = ($25|0)==(0|0);
-   if ($26) {
-    $$275 = 0;$$3 = 0;
-   } else {
-    $27 = (__gcry_sexp_nth_string($25,1)|0);
-    __gcry_sexp_release($25);
-    $28 = ($27|0)==(0|0);
-    if ($28) {
-     $$275 = 0;$$3 = 0;
-    } else {
-     $29 = (_find_domain_parms_idx($27)|0);
-     __gcry_free($27);
-     $30 = ($29|0)>(-1);
-     if (!($30)) {
-      $$1 = 0;
-      STACKTOP = sp;return ($$1|0);
-     }
-     $31 = (240 + (($29*48)|0)|0);
-     $32 = HEAP32[$31>>2]|0;
-     if (!($12)) {
-      $$1 = $32;
-      STACKTOP = sp;return ($$1|0);
-     }
-     $33 = (((240 + (($29*48)|0)|0)) + 4|0);
-     $34 = HEAP32[$33>>2]|0;
-     HEAP32[$2>>2] = $34;
-     $$1 = $32;
-     STACKTOP = sp;return ($$1|0);
-    }
-   }
-   break;
-  }
-  case 0:  {
-   $35 = HEAP32[$11>>2]|0;
-   $36 = ($35|0)==(0|0);
-   if (!($36)) {
-    $37 = ((($10)) + 20|0);
-    __gcry_mpi_point_init($37);
-    $38 = HEAP32[$11>>2]|0;
-    $39 = (__gcry_ecc_os2ec($37,$38)|0);
-    $40 = ($39|0)==(0);
-    if (!($40)) {
-     $$275 = 0;$$3 = 0;
-     break L14;
-    }
-   }
-   $41 = ((($10)) + 20|0);
-   $42 = ((($10)) + 24|0);
-   $$072143 = 0;$$073142 = 0;$107 = 240;
-   while(1) {
-    __gcry_mpi_free($$073142);
-    $43 = (((240 + (($$072143*48)|0)|0)) + 20|0);
-    $44 = HEAP32[$43>>2]|0;
-    $45 = (__gcry_mpi_scan($8,4,$44,0,0)|0);
-    $46 = ($45|0)==(0);
-    if (!($46)) {
-     label = 17;
-     break;
-    }
-    $48 = HEAP32[$8>>2]|0;
-    $49 = HEAP32[$19>>2]|0;
-    $50 = (__gcry_mpi_cmp($48,$49)|0);
-    $51 = ($50|0)==(0);
-    if ($51) {
-     __gcry_mpi_free($48);
-     $52 = (((240 + (($$072143*48)|0)|0)) + 24|0);
-     $53 = HEAP32[$52>>2]|0;
-     $54 = (__gcry_mpi_scan($7,4,$53,0,0)|0);
-     $55 = ($54|0)==(0);
-     if (!($55)) {
-      label = 20;
-      break;
-     }
-     $57 = HEAP32[$7>>2]|0;
-     $58 = HEAP32[$20>>2]|0;
-     $59 = (__gcry_mpi_cmp($57,$58)|0);
-     $60 = ($59|0)==(0);
-     if ($60) {
-      __gcry_mpi_free($57);
-      $61 = (((240 + (($$072143*48)|0)|0)) + 28|0);
-      $62 = HEAP32[$61>>2]|0;
-      $63 = (__gcry_mpi_scan($6,4,$62,0,0)|0);
-      $64 = ($63|0)==(0);
-      if (!($64)) {
-       label = 23;
-       break;
-      }
-      $66 = HEAP32[$6>>2]|0;
-      $67 = HEAP32[$21>>2]|0;
-      $68 = (__gcry_mpi_cmp($66,$67)|0);
-      $69 = ($68|0)==(0);
-      if ($69) {
-       __gcry_mpi_free($66);
-       $70 = (((240 + (($$072143*48)|0)|0)) + 32|0);
-       $71 = HEAP32[$70>>2]|0;
-       $72 = (__gcry_mpi_scan($5,4,$71,0,0)|0);
-       $73 = ($72|0)==(0);
-       if (!($73)) {
-        label = 26;
-        break;
-       }
-       $75 = HEAP32[$5>>2]|0;
-       $76 = HEAP32[$22>>2]|0;
-       $77 = (__gcry_mpi_cmp($75,$76)|0);
-       $78 = ($77|0)==(0);
-       if ($78) {
-        __gcry_mpi_free($75);
-        $79 = (((240 + (($$072143*48)|0)|0)) + 44|0);
-        $80 = HEAP32[$79>>2]|0;
-        $81 = (__gcry_mpi_scan($4,4,$80,0,0)|0);
-        $82 = ($81|0)==(0);
-        if (!($82)) {
-         label = 29;
-         break;
-        }
-        $84 = HEAP32[$4>>2]|0;
-        $85 = HEAP32[$23>>2]|0;
-        $86 = (__gcry_mpi_cmp($84,$85)|0);
-        $87 = ($86|0)==(0);
-        if ($87) {
-         __gcry_mpi_free($84);
-         $88 = (((240 + (($$072143*48)|0)|0)) + 36|0);
-         $89 = HEAP32[$88>>2]|0;
-         $90 = (__gcry_mpi_scan($3,4,$89,0,0)|0);
-         $91 = ($90|0)==(0);
-         if (!($91)) {
-          label = 32;
-          break;
-         }
-         $93 = HEAP32[$3>>2]|0;
-         $94 = HEAP32[$41>>2]|0;
-         $95 = (__gcry_mpi_cmp($93,$94)|0);
-         $96 = ($95|0)==(0);
-         if ($96) {
-          __gcry_mpi_free($93);
-          $97 = (((240 + (($$072143*48)|0)|0)) + 40|0);
-          $98 = HEAP32[$97>>2]|0;
-          $99 = (__gcry_mpi_scan($9,4,$98,0,0)|0);
-          $100 = ($99|0)==(0);
-          if (!($100)) {
-           label = 35;
-           break;
-          }
-          $102 = HEAP32[$9>>2]|0;
-          $103 = HEAP32[$42>>2]|0;
-          $104 = (__gcry_mpi_cmp($102,$103)|0);
-          $105 = ($104|0)==(0);
-          if ($105) {
-           label = 37;
-           break;
-          } else {
-           $$174 = $102;
-          }
-         } else {
-          $$174 = $93;
-         }
-        } else {
-         $$174 = $84;
-        }
-       } else {
-        $$174 = $75;
-       }
-      } else {
-       $$174 = $66;
-      }
-     } else {
-      $$174 = $57;
-     }
-    } else {
-     $$174 = $48;
-    }
-    $110 = (($$072143) + 1)|0;
-    $111 = (240 + (($110*48)|0)|0);
-    $112 = ($110|0)==(21);
-    if ($112) {
-     $$275 = $$174;$$3 = 0;
-     break L14;
-    } else {
-     $$072143 = $110;$$073142 = $$174;$107 = $111;
-    }
-   }
-   if ((label|0) == 17) {
-    $47 = (_gpg_strerror($45)|0);
-    HEAP32[$vararg_buffer7>>2] = $47;
-    __gcry_log_fatal(57702,$vararg_buffer7);
-    // unreachable;
-   }
-   else if ((label|0) == 20) {
-    $56 = (_gpg_strerror($54)|0);
-    HEAP32[$vararg_buffer10>>2] = $56;
-    __gcry_log_fatal(57702,$vararg_buffer10);
-    // unreachable;
-   }
-   else if ((label|0) == 23) {
-    $65 = (_gpg_strerror($63)|0);
-    HEAP32[$vararg_buffer13>>2] = $65;
-    __gcry_log_fatal(57702,$vararg_buffer13);
-    // unreachable;
-   }
-   else if ((label|0) == 26) {
-    $74 = (_gpg_strerror($72)|0);
-    HEAP32[$vararg_buffer16>>2] = $74;
-    __gcry_log_fatal(57702,$vararg_buffer16);
-    // unreachable;
-   }
-   else if ((label|0) == 29) {
-    $83 = (_gpg_strerror($81)|0);
-    HEAP32[$vararg_buffer19>>2] = $83;
-    __gcry_log_fatal(57702,$vararg_buffer19);
-    // unreachable;
-   }
-   else if ((label|0) == 32) {
-    $92 = (_gpg_strerror($90)|0);
-    HEAP32[$vararg_buffer22>>2] = $92;
-    __gcry_log_fatal(57702,$vararg_buffer22);
-    // unreachable;
-   }
-   else if ((label|0) == 35) {
-    $101 = (_gpg_strerror($99)|0);
-    HEAP32[$vararg_buffer25>>2] = $101;
-    __gcry_log_fatal(57702,$vararg_buffer25);
-    // unreachable;
-   }
-   else if ((label|0) == 37) {
-    $106 = HEAP32[$107>>2]|0;
-    if (!($12)) {
-     $$275 = $102;$$3 = $106;
-     break L14;
-    }
-    $108 = (((240 + (($$072143*48)|0)|0)) + 4|0);
-    $109 = HEAP32[$108>>2]|0;
-    HEAP32[$2>>2] = $109;
-    $$275 = $102;$$3 = $106;
-    break L14;
-   }
-   break;
-  }
-  default: {
-   $$275 = 0;$$3 = 0;
-  }
-  }
- } while(0);
- __gcry_mpi_release($$275);
- $113 = HEAP32[$19>>2]|0;
- __gcry_mpi_release($113);
- $114 = HEAP32[$20>>2]|0;
- __gcry_mpi_release($114);
- $115 = HEAP32[$21>>2]|0;
- __gcry_mpi_release($115);
- $116 = HEAP32[$11>>2]|0;
- __gcry_mpi_release($116);
- $117 = ((($10)) + 20|0);
- __gcry_mpi_point_free_parts($117);
- $118 = HEAP32[$22>>2]|0;
- __gcry_mpi_release($118);
- $119 = HEAP32[$23>>2]|0;
- __gcry_mpi_release($119);
- $$1 = $$3;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_mpi_ec_new($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$092 = 0, $$093 = 0, $$093148149 = 0, $$1 = 0, $$195 = 0, $$197 = 0, $$3 
= 0, $$sroa$0$1 = 0, $$sroa$0$1147150 = 0, $$sroa$0$1147151 = 0, $$sroa$0$2 = 
0, $$sroa$0$4 = 0, $$sroa$0$6 = 0, $$sroa$0116$0$ph = 0, $$sroa$0116$1 = 0, 
$$sroa$0116$1146152 = 0, $$sroa$0116$1146153 = 0, $$sroa$0116$2 = 0, 
$$sroa$0116$4 = 0, $$sroa$0116$6 = 0;
- var $$sroa$0121$0$ph = 0, $$sroa$0121$1 = 0, $$sroa$0121$1145154 = 0, 
$$sroa$0121$1145155 = 0, $$sroa$0121$2 = 0, $$sroa$0121$4 = 0, $$sroa$0121$6 = 
0, $$sroa$0127$0$ph = 0, $$sroa$0127$1 = 0, $$sroa$0127$1144156 = 0, 
$$sroa$0127$1144157 = 0, $$sroa$0127$2 = 0, $$sroa$0127$4 = 0, $$sroa$0127$5 = 
0, $$sroa$0132$0$ph = 0, $$sroa$0132$1 = 0, $$sroa$0132$1143158 = 0, 
$$sroa$0132$1143159 = 0, $$sroa$0132$2 = 0, $$sroa$0132$4 = 0;
- var $$sroa$0132$5 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 
= 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 12|0;
- $4 = sp + 8|0;
- $5 = sp + 4|0;
- $6 = sp;
- HEAP32[$3>>2] = 0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$6>>2] = 0;
- HEAP32[$0>>2] = 0;
- $7 = ($1|0)!=(0|0);
- do {
-  if ($7) {
-   $8 = (__gcry_sexp_find_token($1,64705,0)|0);
-   $9 = ($8|0)==(0|0);
-   if (!($9)) {
-    $10 = (__gcry_pk_util_parse_flaglist($8,$6,0)|0);
-    __gcry_sexp_release($8);
-    $11 = ($10|0)==(0);
-    if (!($11)) {
-     $$3 = $10;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 
0;$$sroa$0127$5 = 0;$$sroa$0132$5 = 0;
-     break;
-    }
-   }
-   $12 = (__gcry_sexp_find_token($1,64745,5)|0);
-   $13 = ($12|0)==(0|0);
-   if (!($13)) {
-    $14 = HEAP32[$6>>2]|0;
-    $15 = $14 & 512;
-    $16 = ($15|0)==(0);
-    if ($16) {
-     $$093148149 = $12;$$sroa$0$1147150 = 0;$$sroa$0116$1146152 = 
0;$$sroa$0121$1145154 = 0;$$sroa$0127$1144156 = 0;$$sroa$0132$1143158 = 0;
-     label = 19;
-     break;
-    }
-   }
-   $17 = (__gcry_sexp_find_token($1,64769,0)|0);
-   $18 = ($17|0)==(0|0);
-   if ($18) {
-    $$sroa$0132$0$ph = 0;
-   } else {
-    $19 = (__gcry_sexp_nth_mpi($17,1,5)|0);
-    $20 = $19;
-    __gcry_sexp_release($17);
-    $21 = ($19|0)==(0|0);
-    if ($21) {
-     $$3 = 65;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 0;$$sroa$0127$5 
= 0;$$sroa$0132$5 = $20;
-     break;
-    } else {
-     $$sroa$0132$0$ph = $20;
-    }
-   }
-   $22 = (__gcry_sexp_find_token($1,60979,0)|0);
-   $23 = ($22|0)==(0|0);
-   if ($23) {
-    $$sroa$0127$0$ph = 0;
-   } else {
-    $24 = (__gcry_sexp_nth_mpi($22,1,5)|0);
-    $25 = $24;
-    __gcry_sexp_release($22);
-    $26 = ($24|0)==(0|0);
-    if ($26) {
-     $$3 = 65;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 0;$$sroa$0127$5 
= $25;$$sroa$0132$5 = $$sroa$0132$0$ph;
-     break;
-    } else {
-     $$sroa$0127$0$ph = $25;
-    }
-   }
-   $27 = (__gcry_sexp_find_token($1,57454,0)|0);
-   $28 = ($27|0)==(0|0);
-   if ($28) {
-    $$sroa$0121$0$ph = 0;
-   } else {
-    $29 = (__gcry_sexp_nth_mpi($27,1,5)|0);
-    $30 = $29;
-    __gcry_sexp_release($27);
-    $31 = ($29|0)==(0|0);
-    if ($31) {
-     $$3 = 65;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 
$30;$$sroa$0127$5 = $$sroa$0127$0$ph;$$sroa$0132$5 = $$sroa$0132$0$ph;
-     break;
-    } else {
-     $$sroa$0121$0$ph = $30;
-    }
-   }
-   $32 = (_point_from_keyparam($4,$1,57456,0)|0);
-   $33 = ($32|0)==(0);
-   if ($33) {
-    $34 = (__gcry_sexp_find_token($1,60983,0)|0);
-    $35 = ($34|0)==(0|0);
-    if ($35) {
-     $$sroa$0116$0$ph = 0;
-    } else {
-     $36 = (__gcry_sexp_nth_mpi($34,1,5)|0);
-     $37 = $36;
-     __gcry_sexp_release($34);
-     $38 = ($36|0)==(0|0);
-     if ($38) {
-      $$3 = 65;$$sroa$0$6 = 0;$$sroa$0116$6 = $37;$$sroa$0121$6 = 
$$sroa$0121$0$ph;$$sroa$0127$5 = $$sroa$0127$0$ph;$$sroa$0132$5 = 
$$sroa$0132$0$ph;
-      break;
-     } else {
-      $$sroa$0116$0$ph = $37;
-     }
-    }
-    $39 = (__gcry_sexp_find_token($1,57458,0)|0);
-    $40 = ($39|0)==(0|0);
-    if ($40) {
-     $$093 = $12;$$sroa$0$1 = 0;$$sroa$0116$1 = $$sroa$0116$0$ph;$$sroa$0121$1 
= $$sroa$0121$0$ph;$$sroa$0127$1 = $$sroa$0127$0$ph;$$sroa$0132$1 = 
$$sroa$0132$0$ph;
-     label = 17;
-    } else {
-     $41 = (__gcry_sexp_nth_mpi($39,1,5)|0);
-     $42 = $41;
-     __gcry_sexp_release($39);
-     $43 = ($41|0)==(0|0);
-     if ($43) {
-      $$3 = 65;$$sroa$0$6 = $42;$$sroa$0116$6 = $$sroa$0116$0$ph;$$sroa$0121$6 
= $$sroa$0121$0$ph;$$sroa$0127$5 = $$sroa$0127$0$ph;$$sroa$0132$5 = 
$$sroa$0132$0$ph;
-     } else {
-      $$093 = $12;$$sroa$0$1 = $42;$$sroa$0116$1 = 
$$sroa$0116$0$ph;$$sroa$0121$1 = $$sroa$0121$0$ph;$$sroa$0127$1 = 
$$sroa$0127$0$ph;$$sroa$0132$1 = $$sroa$0132$0$ph;
-      label = 17;
-     }
-    }
-   } else {
-    $$3 = $32;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 
$$sroa$0121$0$ph;$$sroa$0127$5 = $$sroa$0127$0$ph;$$sroa$0132$5 = 
$$sroa$0132$0$ph;
-   }
-  } else {
-   $$093 = 0;$$sroa$0$1 = 0;$$sroa$0116$1 = 0;$$sroa$0121$1 = 0;$$sroa$0127$1 
= 0;$$sroa$0132$1 = 0;
-   label = 17;
-  }
- } while(0);
- if ((label|0) == 17) {
-  $44 = ($$093|0)!=(0|0);
-  $45 = ($2|0)!=(0|0);
-  $or$cond = $45 | $44;
-  if ($or$cond) {
-   if ($44) {
-    $$093148149 = $$093;$$sroa$0$1147150 = $$sroa$0$1;$$sroa$0116$1146152 = 
$$sroa$0116$1;$$sroa$0121$1145154 = $$sroa$0121$1;$$sroa$0127$1144156 = 
$$sroa$0127$1;$$sroa$0132$1143158 = $$sroa$0132$1;
-    label = 19;
-   } else {
-    $$092 = 0;$$sroa$0$1147151 = $$sroa$0$1;$$sroa$0116$1146153 = 
$$sroa$0116$1;$$sroa$0121$1145155 = $$sroa$0121$1;$$sroa$0127$1144157 = 
$$sroa$0127$1;$$sroa$0132$1143159 = $$sroa$0132$1;
-    label = 20;
-   }
-  } else {
-   $$195 = 0;$$197 = 0;$$sroa$0$4 = $$sroa$0$1;$$sroa$0116$4 = 
$$sroa$0116$1;$$sroa$0121$4 = $$sroa$0121$1;$$sroa$0127$4 = 
$$sroa$0127$1;$$sroa$0132$4 = $$sroa$0132$1;
-   label = 37;
-  }
- }
- if ((label|0) == 19) {
-  $46 = (__gcry_sexp_nth_string($$093148149,1)|0);
-  __gcry_sexp_release($$093148149);
-  $47 = ($46|0)==(0|0);
-  if ($47) {
-   $$3 = 65;$$sroa$0$6 = $$sroa$0$1147150;$$sroa$0116$6 = 
$$sroa$0116$1146152;$$sroa$0121$6 = $$sroa$0121$1145154;$$sroa$0127$5 = 
$$sroa$0127$1144156;$$sroa$0132$5 = $$sroa$0132$1143158;
-  } else {
-   $$092 = $46;$$sroa$0$1147151 = $$sroa$0$1147150;$$sroa$0116$1146153 = 
$$sroa$0116$1146152;$$sroa$0121$1145155 = 
$$sroa$0121$1145154;$$sroa$0127$1144157 = 
$$sroa$0127$1144156;$$sroa$0132$1143159 = $$sroa$0132$1143158;
-   label = 20;
-  }
- }
- do {
-  if ((label|0) == 20) {
-   $48 = (__gcry_calloc(1,44)|0);
-   $49 = ($48|0)==(0|0);
-   if ($49) {
-    $50 = (_gpg_err_code_from_syserror()|0);
-    __gcry_free($$092);
-    $$3 = $50;$$sroa$0$6 = $$sroa$0$1147151;$$sroa$0116$6 = 
$$sroa$0116$1146153;$$sroa$0121$6 = $$sroa$0121$1145155;$$sroa$0127$5 = 
$$sroa$0127$1144157;$$sroa$0132$5 = $$sroa$0132$1143159;
-    break;
-   }
-   $51 = ($$092|0)==(0|0);
-   $52 = $51 ? $2 : $$092;
-   $53 = (__gcry_ecc_fill_in_curve(0,$52,$48,0)|0);
-   __gcry_free($$092);
-   $54 = ($53|0)==(0);
-   if (!($54)) {
-    __gcry_free($48);
-    $$3 = $53;$$sroa$0$6 = $$sroa$0$1147151;$$sroa$0116$6 = 
$$sroa$0116$1146153;$$sroa$0121$6 = $$sroa$0121$1145155;$$sroa$0127$5 = 
$$sroa$0127$1144157;$$sroa$0132$5 = $$sroa$0132$1143159;
-    break;
-   }
-   $55 = HEAP32[$48>>2]|0;
-   $56 = ((($48)) + 4|0);
-   $57 = HEAP32[$56>>2]|0;
-   $58 = ($$sroa$0132$1143159|0)==(0);
-   if ($58) {
-    $59 = ((($48)) + 8|0);
-    $60 = HEAP32[$59>>2]|0;
-    HEAP32[$59>>2] = 0;
-    $$sroa$0132$2 = $60;
-   } else {
-    $$sroa$0132$2 = $$sroa$0132$1143159;
-   }
-   $61 = ($$sroa$0127$1144157|0)==(0);
-   if ($61) {
-    $62 = ((($48)) + 12|0);
-    $63 = HEAP32[$62>>2]|0;
-    HEAP32[$62>>2] = 0;
-    $$sroa$0127$2 = $63;
-   } else {
-    $$sroa$0127$2 = $$sroa$0127$1144157;
-   }
-   $64 = ($$sroa$0121$1145155|0)==(0);
-   if ($64) {
-    $65 = ((($48)) + 16|0);
-    $66 = HEAP32[$65>>2]|0;
-    HEAP32[$65>>2] = 0;
-    $$sroa$0121$2 = $66;
-   } else {
-    $$sroa$0121$2 = $$sroa$0121$1145155;
-   }
-   $67 = HEAP32[$4>>2]|0;
-   $68 = ($67|0)==(0|0);
-   if ($68) {
-    $69 = ((($48)) + 20|0);
-    $70 = HEAP32[$69>>2]|0;
-    $71 = ((($48)) + 24|0);
-    $72 = HEAP32[$71>>2]|0;
-    $73 = ((($48)) + 28|0);
-    $74 = HEAP32[$73>>2]|0;
-    $75 = (__gcry_mpi_point_snatch_set(0,$70,$72,$74)|0);
-    HEAP32[$4>>2] = $75;
-    HEAP32[$69>>2] = 0;
-    HEAP32[$71>>2] = 0;
-    HEAP32[$73>>2] = 0;
-   }
-   $76 = ($$sroa$0116$1146153|0)==(0);
-   if ($76) {
-    $77 = ((($48)) + 32|0);
-    $78 = HEAP32[$77>>2]|0;
-    HEAP32[$77>>2] = 0;
-    $$sroa$0116$2 = $78;
-   } else {
-    $$sroa$0116$2 = $$sroa$0116$1146153;
-   }
-   $79 = ($$sroa$0$1147151|0)==(0);
-   if ($79) {
-    $80 = ((($48)) + 36|0);
-    $81 = HEAP32[$80>>2]|0;
-    HEAP32[$80>>2] = 0;
-    $$sroa$0$2 = $81;
-   } else {
-    $$sroa$0$2 = $$sroa$0$1147151;
-   }
-   __gcry_ecc_curve_free($48);
-   __gcry_free($48);
-   $$195 = $57;$$197 = $55;$$sroa$0$4 = $$sroa$0$2;$$sroa$0116$4 = 
$$sroa$0116$2;$$sroa$0121$4 = $$sroa$0121$2;$$sroa$0127$4 = 
$$sroa$0127$2;$$sroa$0132$4 = $$sroa$0132$2;
-   label = 37;
-  }
- } while(0);
- do {
-  if ((label|0) == 37) {
-   $82 = HEAP32[$6>>2]|0;
-   $83 = $$sroa$0132$4;
-   $84 = $$sroa$0127$4;
-   $85 = $$sroa$0121$4;
-   $86 = (__gcry_mpi_ec_p_new($3,$$197,$$195,$82,$83,$84,$85)|0);
-   $87 = ($86|0)==(0);
-   if ($87) {
-    $88 = HEAP32[$3>>2]|0;
-    $89 = (__gcry_ctx_get_pointer($88,1)|0);
-    $90 = ($$sroa$0121$4|0)==(0);
-    if (!($90)) {
-     $91 = ((($89)) + 24|0);
-     $92 = HEAP32[$91>>2]|0;
-     __gcry_mpi_free($92);
-     HEAP32[$91>>2] = $$sroa$0121$4;
-    }
-    $93 = HEAP32[$4>>2]|0;
-    $94 = ($93|0)==(0|0);
-    if (!($94)) {
-     $95 = ((($89)) + 28|0);
-     HEAP32[$95>>2] = $93;
-     HEAP32[$4>>2] = 0;
-    }
-    $96 = ($$sroa$0116$4|0)==(0);
-    if (!($96)) {
-     $97 = $$sroa$0116$4;
-     $98 = ((($89)) + 32|0);
-     HEAP32[$98>>2] = $97;
-    }
-    $99 = ($$sroa$0$4|0)==(0);
-    if (!($99)) {
-     $100 = $$sroa$0$4;
-     $101 = ((($89)) + 36|0);
-     HEAP32[$101>>2] = $100;
-    }
-    if ($7) {
-     $102 = (_point_from_keyparam($5,$1,64743,$89)|0);
-     $103 = ($102|0)==(0);
-     if (!($103)) {
-      $$3 = $102;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 
0;$$sroa$0127$5 = $$sroa$0127$4;$$sroa$0132$5 = $$sroa$0132$4;
-      break;
-     }
-     $104 = (__gcry_sexp_find_token($1,57460,0)|0);
-     $105 = ($104|0)==(0|0);
-     if ($105) {
-      $$1 = 0;
-     } else {
-      $106 = (__gcry_sexp_nth_mpi($104,1,5)|0);
-      __gcry_sexp_release($104);
-      $107 = ($106|0)==(0|0);
-      if ($107) {
-       $$3 = 65;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 
0;$$sroa$0127$5 = $$sroa$0127$4;$$sroa$0132$5 = $$sroa$0132$4;
-       break;
-      } else {
-       $$1 = $106;
-      }
-     }
-    } else {
-     $$1 = 0;
-    }
-    $108 = HEAP32[$5>>2]|0;
-    $109 = ($108|0)==(0|0);
-    if (!($109)) {
-     $110 = ((($89)) + 40|0);
-     HEAP32[$110>>2] = $108;
-     HEAP32[$5>>2] = 0;
-    }
-    $111 = ($$1|0)==(0|0);
-    if (!($111)) {
-     $112 = ((($89)) + 44|0);
-     HEAP32[$112>>2] = $$1;
-    }
-    $113 = HEAP32[$3>>2]|0;
-    HEAP32[$0>>2] = $113;
-    HEAP32[$3>>2] = 0;
-    $$3 = 0;$$sroa$0$6 = 0;$$sroa$0116$6 = 0;$$sroa$0121$6 = 0;$$sroa$0127$5 = 
$$sroa$0127$4;$$sroa$0132$5 = $$sroa$0132$4;
-   } else {
-    $$3 = $86;$$sroa$0$6 = $$sroa$0$4;$$sroa$0116$6 = 
$$sroa$0116$4;$$sroa$0121$6 = $$sroa$0121$4;$$sroa$0127$5 = 
$$sroa$0127$4;$$sroa$0132$5 = $$sroa$0132$4;
-   }
-  }
- } while(0);
- $114 = HEAP32[$3>>2]|0;
- __gcry_ctx_release($114);
- $115 = $$sroa$0132$5;
- __gcry_mpi_free($115);
- $116 = $$sroa$0127$5;
- __gcry_mpi_free($116);
- $117 = $$sroa$0121$6;
- __gcry_mpi_free($117);
- $118 = HEAP32[$4>>2]|0;
- __gcry_mpi_point_release($118);
- $119 = $$sroa$0116$6;
- __gcry_mpi_free($119);
- $120 = $$sroa$0$6;
- __gcry_mpi_free($120);
- $121 = HEAP32[$5>>2]|0;
- __gcry_mpi_point_release($121);
- __gcry_mpi_free(0);
- STACKTOP = sp;return ($$3|0);
-}
-function _point_from_keyparam($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$058 = 0, $$084$ph = 0, $$085$ph = 0, $$160 = 0, $$183 = 0, $$2 = 0, $$3 
= 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_sexp_find_token($1,$2,0)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $16 = (_strlen($2)|0);
-  $17 = (($16) + 3)|0;
-  $18 = (__gcry_malloc($17)|0);
-  $19 = ($18|0)==(0|0);
-  if ($19) {
-   $20 = (_gpg_err_code_from_syserror()|0);
-   $$2 = $20;
-   return ($$2|0);
-  }
-  $21 = (___stpcpy($18,$2)|0);
-  
;HEAP8[$21>>0]=HEAP8[57462>>0]|0;HEAP8[$21+1>>0]=HEAP8[57462+1>>0]|0;HEAP8[$21+2>>0]=HEAP8[57462+2>>0]|0;
-  $22 = (__gcry_sexp_find_token($1,$18,0)|0);
-  $23 = ($22|0)==(0|0);
-  if ($23) {
-   $$085$ph = 0;
-  } else {
-   $24 = (__gcry_sexp_nth_mpi($22,1,5)|0);
-   __gcry_sexp_release($22);
-   $25 = ($24|0)==(0|0);
-   if ($25) {
-    __gcry_free($18);
-    $$2 = 65;
-    return ($$2|0);
-   } else {
-    $$085$ph = $24;
-   }
-  }
-  $26 = (___stpcpy($18,$2)|0);
-  
;HEAP8[$26>>0]=HEAP8[57465>>0]|0;HEAP8[$26+1>>0]=HEAP8[57465+1>>0]|0;HEAP8[$26+2>>0]=HEAP8[57465+2>>0]|0;
-  $27 = (__gcry_sexp_find_token($1,$18,0)|0);
-  $28 = ($27|0)==(0|0);
-  if ($28) {
-   $$084$ph = 0;
-  } else {
-   $29 = (__gcry_sexp_nth_mpi($27,1,5)|0);
-   __gcry_sexp_release($27);
-   $30 = ($29|0)==(0|0);
-   if ($30) {
-    __gcry_mpi_free($$085$ph);
-    __gcry_free($18);
-    $$2 = 65;
-    return ($$2|0);
-   } else {
-    $$084$ph = $29;
-   }
-  }
-  $31 = (___stpcpy($18,$2)|0);
-  
;HEAP8[$31>>0]=HEAP8[57468>>0]|0;HEAP8[$31+1>>0]=HEAP8[57468+1>>0]|0;HEAP8[$31+2>>0]=HEAP8[57468+2>>0]|0;
-  $32 = (__gcry_sexp_find_token($1,$18,0)|0);
-  $33 = ($32|0)==(0|0);
-  if ($33) {
-   $36 = (__gcry_mpi_set_ui(0,1)|0);
-   $$183 = $36;
-  } else {
-   $34 = (__gcry_sexp_nth_mpi($32,1,5)|0);
-   __gcry_sexp_release($32);
-   $35 = ($34|0)==(0|0);
-   if ($35) {
-    __gcry_mpi_free($$084$ph);
-    __gcry_mpi_free($$085$ph);
-    __gcry_free($18);
-    $$2 = 65;
-    return ($$2|0);
-   } else {
-    $$183 = $34;
-   }
-  }
-  $37 = ($$085$ph|0)!=(0|0);
-  $38 = ($$084$ph|0)!=(0|0);
-  $or$cond = $37 & $38;
-  if ($or$cond) {
-   $39 = (__gcry_mpi_point_snatch_set(0,$$085$ph,$$084$ph,$$183)|0);
-   $$160 = $39;
-  } else {
-   __gcry_mpi_free($$085$ph);
-   __gcry_mpi_free($$084$ph);
-   __gcry_mpi_free($$183);
-   $$160 = 0;
-  }
-  __gcry_free($18);
-  $$3 = $$160;
- } else {
-  $6 = (__gcry_sexp_nth_mpi($4,1,8)|0);
-  __gcry_sexp_release($4);
-  $7 = ($6|0)==(0|0);
-  if ($7) {
-   $$2 = 65;
-   return ($$2|0);
-  }
-  $8 = (__gcry_mpi_point_new(0)|0);
-  $9 = ($3|0)==(0|0);
-  if ($9) {
-   label = 6;
-  } else {
-   $10 = ((($3)) + 4|0);
-   $11 = HEAP32[$10>>2]|0;
-   $12 = ($11|0)==(1);
-   if ($12) {
-    $13 = (__gcry_ecc_eddsa_decodepoint($6,$3,$8,0,0)|0);
-    $$058 = $13;
-   } else {
-    label = 6;
-   }
-  }
-  if ((label|0) == 6) {
-   $14 = (__gcry_ecc_os2ec($8,$6)|0);
-   $$058 = $14;
-  }
-  __gcry_mpi_free($6);
-  $15 = ($$058|0)==(0);
-  if ($15) {
-   $$3 = $8;
-  } else {
-   __gcry_mpi_point_release($8);
-   $$2 = $$058;
-   return ($$2|0);
-  }
- }
- $40 = ($$3|0)==(0|0);
- if ($40) {
-  $$2 = 0;
-  return ($$2|0);
- }
- HEAP32[$0>>2] = $$3;
- $$2 = 0;
- return ($$2|0);
-}
-function __gcry_ecc_get_param_sexp($0) {
- $0 = $0|0;
- var $$019 = 0, $$020 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer 
= 0, $vararg_buffer1 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
$vararg_ptr6 = 0, $vararg_ptr7 = 0, dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $vararg_buffer1 = sp + 40|0;
- $vararg_buffer = sp + 32|0;
- $1 = sp + 112|0;
- $2 = sp + 68|0;
- $3 = sp;
- $4 = sp + 64|0;
- dest=$2; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $5 = (__gcry_ecc_fill_in_curve(0,$0,$2,$1)|0);
- $6 = ($5|0)==(0);
- if (!($6)) {
-  $$019 = 0;
-  STACKTOP = sp;return ($$019|0);
- }
- $7 = (__gcry_mpi_new(0)|0);
- $8 = (__gcry_mpi_new(0)|0);
- $9 = ((($2)) + 8|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ((($2)) + 12|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = (__gcry_mpi_ec_p_internal_new(0,0,0,$10,$12,0)|0);
- $14 = ((($2)) + 20|0);
- $15 = (__gcry_mpi_ec_get_affine($7,$8,$14,$13)|0);
- $16 = ($15|0)==(0);
- if (!($16)) {
-  __gcry_log_fatal(57471,$vararg_buffer);
-  // unreachable;
- }
- __gcry_mpi_ec_free($13);
- __gcry_mpi_point_free_parts($14);
- $17 = HEAP32[$9>>2]|0;
- HEAP32[$3>>2] = $17;
- $18 = HEAP32[$11>>2]|0;
- $19 = ((($3)) + 4|0);
- HEAP32[$19>>2] = $18;
- $20 = ((($2)) + 16|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = ((($3)) + 8|0);
- HEAP32[$22>>2] = $21;
- $23 = $17;
- $24 = (__gcry_ecc_ec2os($7,$8,$23)|0);
- $25 = ((($3)) + 12|0);
- HEAP32[$25>>2] = $24;
- $26 = ((($2)) + 32|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($3)) + 16|0);
- HEAP32[$28>>2] = $27;
- $29 = ((($2)) + 36|0);
- $30 = HEAP32[$29>>2]|0;
- $31 = ((($3)) + 20|0);
- HEAP32[$31>>2] = $30;
- $32 = ((($3)) + 24|0);
- HEAP32[$32>>2] = 0;
- __gcry_mpi_free($7);
- __gcry_mpi_free($8);
- $33 = $18;
- $34 = $21;
- $35 = $27;
- $36 = $30;
- HEAP32[$vararg_buffer1>>2] = $23;
- $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
- HEAP32[$vararg_ptr3>>2] = $33;
- $vararg_ptr4 = ((($vararg_buffer1)) + 8|0);
- HEAP32[$vararg_ptr4>>2] = $34;
- $vararg_ptr5 = ((($vararg_buffer1)) + 12|0);
- HEAP32[$vararg_ptr5>>2] = $24;
- $vararg_ptr6 = ((($vararg_buffer1)) + 16|0);
- HEAP32[$vararg_ptr6>>2] = $35;
- $vararg_ptr7 = ((($vararg_buffer1)) + 20|0);
- HEAP32[$vararg_ptr7>>2] = $36;
- $37 = (__gcry_sexp_build($4,0,57520,$vararg_buffer1)|0);
- $38 = ($37|0)==(0);
- if (!($38)) {
-  HEAP32[$4>>2] = 0;
- }
- $39 = ($17|0)==(0);
- if (!($39)) {
-  $$020 = 0;$40 = $23;
-  while(1) {
-   __gcry_mpi_release($40);
-   $41 = (($$020) + 1)|0;
-   $42 = (($3) + ($41<<2)|0);
-   $43 = HEAP32[$42>>2]|0;
-   $44 = ($43|0)==(0|0);
-   if ($44) {
-    break;
-   } else {
-    $$020 = $41;$40 = $43;
-   }
-  }
- }
- $45 = HEAP32[$4>>2]|0;
- $$019 = $45;
- STACKTOP = sp;return ($$019|0);
-}
-function __gcry_ecc_get_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$1 = 0, $$pre = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 
= 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0;
- var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 
= 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0;
- var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, 
$159 = 0, $16 = 0, $160 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $or$cond = 0, $or$cond11 = 0, $or$cond13 = 0, $or$cond15 = 0, $or$cond17 
= 0, $or$cond19 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- $5 = HEAP8[$0>>0]|0;
- $6 = ($5<<24>>24)==(0);
- L1: do {
-  if ($6) {
-   $$1 = 0;
-  } else {
-   $7 = (_strcmp($0,64769)|0);
-   $8 = ($7|0)==(0);
-   if ($8) {
-    $9 = ((($1)) + 16|0);
-    $10 = HEAP32[$9>>2]|0;
-    $11 = ($10|0)==(0|0);
-    if (!($11)) {
-     $12 = ((($10)) + 12|0);
-     $13 = HEAP32[$12>>2]|0;
-     $14 = $13 & 32;
-     $15 = ($14|0)==(0);
-     $16 = ($2|0)!=(0);
-     $or$cond = $16 | $15;
-     if (!($or$cond)) {
-      $$1 = $10;
-      break;
-     }
-     $17 = (__gcry_mpi_copy($10)|0);
-     $$1 = $17;
-     break;
-    }
-   }
-   $18 = (_strcmp($0,60979)|0);
-   $19 = ($18|0)==(0);
-   if ($19) {
-    $20 = ((($1)) + 20|0);
-    $21 = HEAP32[$20>>2]|0;
-    $22 = ($21|0)==(0|0);
-    if (!($22)) {
-     $23 = ((($21)) + 12|0);
-     $24 = HEAP32[$23>>2]|0;
-     $25 = $24 & 32;
-     $26 = ($25|0)==(0);
-     $27 = ($2|0)!=(0);
-     $or$cond3 = $27 | $26;
-     if (!($or$cond3)) {
-      $$1 = $21;
-      break;
-     }
-     $28 = (__gcry_mpi_copy($21)|0);
-     $$1 = $28;
-     break;
-    }
-   }
-   $29 = (_strcmp($0,57454)|0);
-   $30 = ($29|0)==(0);
-   if ($30) {
-    $31 = ((($1)) + 24|0);
-    $32 = HEAP32[$31>>2]|0;
-    $33 = ($32|0)==(0|0);
-    if (!($33)) {
-     $34 = ((($32)) + 12|0);
-     $35 = HEAP32[$34>>2]|0;
-     $36 = $35 & 32;
-     $37 = ($36|0)==(0);
-     $38 = ($2|0)!=(0);
-     $or$cond5 = $38 | $37;
-     if (!($or$cond5)) {
-      $$1 = $32;
-      break;
-     }
-     $39 = (__gcry_mpi_copy($32)|0);
-     $$1 = $39;
-     break;
-    }
-   }
-   $40 = (_strcmp($0,60983)|0);
-   $41 = ($40|0)==(0);
-   if ($41) {
-    $42 = ((($1)) + 32|0);
-    $43 = HEAP32[$42>>2]|0;
-    $44 = ($43|0)==(0|0);
-    if (!($44)) {
-     $45 = ((($43)) + 12|0);
-     $46 = HEAP32[$45>>2]|0;
-     $47 = $46 & 32;
-     $48 = ($47|0)==(0);
-     $49 = ($2|0)!=(0);
-     $or$cond7 = $49 | $48;
-     if (!($or$cond7)) {
-      $$1 = $43;
-      break;
-     }
-     $50 = (__gcry_mpi_copy($43)|0);
-     $$1 = $50;
-     break;
-    }
-   }
-   $51 = (_strcmp($0,57458)|0);
-   $52 = ($51|0)==(0);
-   if ($52) {
-    $53 = ((($1)) + 36|0);
-    $54 = HEAP32[$53>>2]|0;
-    $55 = ($54|0)==(0|0);
-    if (!($55)) {
-     $56 = ((($54)) + 12|0);
-     $57 = HEAP32[$56>>2]|0;
-     $58 = $57 & 32;
-     $59 = ($58|0)==(0);
-     $60 = ($2|0)!=(0);
-     $or$cond9 = $60 | $59;
-     if (!($or$cond9)) {
-      $$1 = $54;
-      break;
-     }
-     $61 = (__gcry_mpi_copy($54)|0);
-     $$1 = $61;
-     break;
-    }
-   }
-   $62 = (_strcmp($0,57460)|0);
-   $63 = ($62|0)==(0);
-   if ($63) {
-    $64 = ((($1)) + 44|0);
-    $65 = HEAP32[$64>>2]|0;
-    $66 = ($65|0)==(0|0);
-    if (!($66)) {
-     $67 = ((($65)) + 12|0);
-     $68 = HEAP32[$67>>2]|0;
-     $69 = $68 & 32;
-     $70 = ($69|0)==(0);
-     $71 = ($2|0)!=(0);
-     $or$cond11 = $71 | $70;
-     if (!($or$cond11)) {
-      $$1 = $65;
-      break;
-     }
-     $72 = (__gcry_mpi_copy($65)|0);
-     $$1 = $72;
-     break;
-    }
-   }
-   $73 = (_strcmp($0,57568)|0);
-   $74 = ($73|0)==(0);
-   if ($74) {
-    $75 = ((($1)) + 28|0);
-    $76 = HEAP32[$75>>2]|0;
-    $77 = ($76|0)==(0|0);
-    if (!($77)) {
-     $78 = HEAP32[$76>>2]|0;
-     $79 = ($78|0)==(0|0);
-     if (!($79)) {
-      $80 = ((($78)) + 12|0);
-      $81 = HEAP32[$80>>2]|0;
-      $82 = $81 & 32;
-      $83 = ($82|0)==(0);
-      $84 = ($2|0)!=(0);
-      $or$cond13 = $84 | $83;
-      if (!($or$cond13)) {
-       $$1 = $78;
-       break;
-      }
-      $85 = (__gcry_mpi_copy($78)|0);
-      $$1 = $85;
-      break;
-     }
-    }
-   }
-   $86 = (_strcmp($0,57572)|0);
-   $87 = ($86|0)==(0);
-   if ($87) {
-    $88 = ((($1)) + 28|0);
-    $89 = HEAP32[$88>>2]|0;
-    $90 = ($89|0)==(0|0);
-    if (!($90)) {
-     $91 = ((($89)) + 4|0);
-     $92 = HEAP32[$91>>2]|0;
-     $93 = ($92|0)==(0|0);
-     if (!($93)) {
-      $94 = ((($92)) + 12|0);
-      $95 = HEAP32[$94>>2]|0;
-      $96 = $95 & 32;
-      $97 = ($96|0)==(0);
-      $98 = ($2|0)!=(0);
-      $or$cond15 = $98 | $97;
-      if (!($or$cond15)) {
-       $$1 = $92;
-       break;
-      }
-      $99 = (__gcry_mpi_copy($92)|0);
-      $$1 = $99;
-      break;
-     }
-    }
-   }
-   $100 = (_strcmp($0,57576)|0);
-   $101 = ($100|0)==(0);
-   if ($101) {
-    $102 = ((($1)) + 40|0);
-    $103 = HEAP32[$102>>2]|0;
-    $104 = ($103|0)==(0|0);
-    if (!($104)) {
-     $105 = HEAP32[$103>>2]|0;
-     $106 = ($105|0)==(0|0);
-     if (!($106)) {
-      $107 = ((($105)) + 12|0);
-      $108 = HEAP32[$107>>2]|0;
-      $109 = $108 & 32;
-      $110 = ($109|0)==(0);
-      $111 = ($2|0)!=(0);
-      $or$cond17 = $111 | $110;
-      if (!($or$cond17)) {
-       $$1 = $105;
-       break;
-      }
-      $112 = (__gcry_mpi_copy($105)|0);
-      $$1 = $112;
-      break;
-     }
-    }
-   }
-   $113 = (_strcmp($0,57580)|0);
-   $114 = ($113|0)==(0);
-   if ($114) {
-    $115 = ((($1)) + 40|0);
-    $116 = HEAP32[$115>>2]|0;
-    $117 = ($116|0)==(0|0);
-    if (!($117)) {
-     $118 = ((($116)) + 4|0);
-     $119 = HEAP32[$118>>2]|0;
-     $120 = ($119|0)==(0|0);
-     if (!($120)) {
-      $121 = ((($1)) + 28|0);
-      $122 = HEAP32[$121>>2]|0;
-      $123 = ((($122)) + 4|0);
-      $124 = HEAP32[$123>>2]|0;
-      $125 = ($124|0)==(0|0);
-      if (!($125)) {
-       $126 = ((($124)) + 12|0);
-       $127 = HEAP32[$126>>2]|0;
-       $128 = $127 & 32;
-       $129 = ($128|0)==(0);
-       $130 = ($2|0)!=(0);
-       $or$cond19 = $130 | $129;
-       if (!($or$cond19)) {
-        $$1 = $119;
-        break;
-       }
-      }
-      $131 = (__gcry_mpi_copy($119)|0);
-      $$1 = $131;
-      break;
-     }
-    }
-   }
-   $132 = (_strcmp($0,57456)|0);
-   $133 = ($132|0)==(0);
-   if ($133) {
-    $134 = ((($1)) + 28|0);
-    $135 = HEAP32[$134>>2]|0;
-    $136 = ($135|0)==(0|0);
-    if (!($136)) {
-     $137 = (__gcry_mpi_ec_ec2os($135,$1)|0);
-     $$1 = $137;
-     break;
-    }
-   }
-   $138 = ($5<<24>>24)==(113);
-   if ($138) {
-    $139 = ((($0)) + 1|0);
-    $140 = HEAP8[$139>>0]|0;
-    switch ($140<<24>>24) {
-    case 64: case 0:  {
-     break;
-    }
-    default: {
-     $$1 = 0;
-     break L1;
-    }
-    }
-    $141 = ((($1)) + 40|0);
-    $142 = HEAP32[$141>>2]|0;
-    $143 = ($142|0)==(0|0);
-    if ($143) {
-     $144 = (__gcry_ecc_compute_public(0,$1,0,0)|0);
-     HEAP32[$141>>2] = $144;
-     $145 = ($144|0)==(0|0);
-     if ($145) {
-      $$1 = 0;
-      break;
-     }
-     $$pre = HEAP8[$139>>0]|0;
-     $147 = $$pre;$148 = $144;
-    } else {
-     $147 = $140;$148 = $142;
-    }
-    $146 = ($147<<24>>24)==(64);
-    if (!($146)) {
-     $149 = (__gcry_mpi_ec_ec2os($148,$1)|0);
-     $$1 = $149;
-     break;
-    }
-    $150 = ((($0)) + 2|0);
-    $151 = (_strcmp($150,67434)|0);
-    $152 = ($151|0)==(0);
-    if ($152) {
-     $153 = HEAP32[$1>>2]|0;
-     $154 = ($153|0)==(2);
-     if ($154) {
-      $155 = (__gcry_ecc_eddsa_encodepoint($148,$1,0,0,0,$3,$4)|0);
-      $156 = ($155|0)==(0);
-      if ($156) {
-       $157 = HEAP32[$3>>2]|0;
-       $158 = HEAP32[$4>>2]|0;
-       $159 = $158 << 3;
-       $160 = (__gcry_mpi_set_opaque(0,$157,$159)|0);
-       $$1 = $160;
-       break;
-      } else {
-       $$1 = 0;
-       break;
-      }
-     } else {
-      $$1 = 0;
-     }
-    } else {
-     $$1 = 0;
-    }
-   } else {
-    $$1 = 0;
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_ecc_get_point($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $2 = (_strcmp($0,57456)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  $4 = ((($1)) + 28|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = ($5|0)==(0|0);
-  if (!($6)) {
-   $7 = (__gcry_mpi_point_new(0)|0);
-   $8 = HEAP32[$7>>2]|0;
-   $9 = HEAP32[$5>>2]|0;
-   (__gcry_mpi_set($8,$9)|0);
-   $10 = ((($7)) + 4|0);
-   $11 = HEAP32[$10>>2]|0;
-   $12 = ((($5)) + 4|0);
-   $13 = HEAP32[$12>>2]|0;
-   (__gcry_mpi_set($11,$13)|0);
-   $14 = ((($7)) + 8|0);
-   $15 = HEAP32[$14>>2]|0;
-   $16 = ((($5)) + 8|0);
-   $17 = HEAP32[$16>>2]|0;
-   (__gcry_mpi_set($15,$17)|0);
-   $$0 = $7;
-   return ($$0|0);
-  }
- }
- $18 = (_strcmp($0,64743)|0);
- $19 = ($18|0)==(0);
- if (!($19)) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $20 = ((($1)) + 40|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = ($21|0)==(0|0);
- if ($22) {
-  $23 = (__gcry_ecc_compute_public(0,$1,0,0)|0);
-  HEAP32[$20>>2] = $23;
-  $24 = ($23|0)==(0|0);
-  if ($24) {
-   $$0 = 0;
-   return ($$0|0);
-  } else {
-   $28 = $23;
-  }
- } else {
-  $28 = $21;
- }
- $25 = (__gcry_mpi_point_new(0)|0);
- $26 = HEAP32[$25>>2]|0;
- $27 = HEAP32[$28>>2]|0;
- (__gcry_mpi_set($26,$27)|0);
- $29 = ((($25)) + 4|0);
- $30 = HEAP32[$29>>2]|0;
- $31 = ((($28)) + 4|0);
- $32 = HEAP32[$31>>2]|0;
- (__gcry_mpi_set($30,$32)|0);
- $33 = ((($25)) + 8|0);
- $34 = HEAP32[$33>>2]|0;
- $35 = ((($28)) + 8|0);
- $36 = HEAP32[$35>>2]|0;
- (__gcry_mpi_set($34,$36)|0);
- $$0 = $25;
- return ($$0|0);
-}
-function __gcry_ecc_eddsa_encodepoint($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0 = 0, $$0$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$7 = 0, $8 = 0, $9 = 0, $not$$i = 0, $or$cond$i = 0, $vararg_buffer = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $7 = sp + 4|0;
- $8 = ($2|0)!=(0|0);
- if ($8) {
-  $12 = $2;
- } else {
-  $9 = (__gcry_mpi_new(0)|0);
-  $12 = $9;
- }
- $10 = ($3|0)!=(0|0);
- if ($10) {
-  $13 = $3;
- } else {
-  $11 = (__gcry_mpi_new(0)|0);
-  $13 = $11;
- }
- $14 = (__gcry_mpi_ec_get_affine($12,$13,$0,$1)|0);
- $15 = ($14|0)==(0);
- if ($15) {
-  $16 = ((($1)) + 12|0);
-  $17 = HEAP32[$16>>2]|0;
-  $18 = $17 >>> 3;
-  $19 = ($4|0)!=(0);
-  $20 = $19&1;
-  $21 = $19 << 31 >> 31;
-  $22 = (__gcry_mpi_get_buffer_extra($13,$18,$21,$7,0)|0);
-  $23 = ($22|0)==(0|0);
-  if ($23) {
-   $24 = (_gpg_err_code_from_syserror()|0);
-   $$0$i = $24;
-  } else {
-   $25 = (__gcry_mpi_test_bit($12,0)|0);
-   $26 = ($25|0)!=(0);
-   $27 = HEAP32[$7>>2]|0;
-   $28 = ($27|0)!=(0);
-   $or$cond$i = $26 & $28;
-   $not$$i = $19 ^ 1;
-   $29 = $not$$i << 31 >> 31;
-   $30 = (($27) + ($29))|0;
-   $31 = (($22) + ($30)|0);
-   if ($or$cond$i) {
-    $32 = HEAP8[$31>>0]|0;
-    $33 = $32 | -128;
-    HEAP8[$31>>0] = $33;
-   }
-   if ($19) {
-    HEAP8[$22>>0] = 64;
-   }
-   HEAP32[$5>>2] = $22;
-   $34 = HEAP32[$7>>2]|0;
-   $35 = (($34) + ($20))|0;
-   HEAP32[$6>>2] = $35;
-   $$0$i = 0;
-  }
-  $$0 = $$0$i;
- } else {
-  __gcry_log_error(57584,$vararg_buffer);
-  $$0 = 63;
- }
- if (!($8)) {
-  __gcry_mpi_free($12);
- }
- if ($10) {
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_free($13);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_eddsa_ensure_compact($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$i = 0, $$024 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 
= 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$or$cond = 0, $or$cond$i = 0, $phitmp = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp + 12|0;
- $3 = sp + 8|0;
- $4 = sp + 4|0;
- $5 = sp;
- $6 = ($0|0)==(0|0);
- if ($6) {
-  $$0 = 65;
-  STACKTOP = sp;return ($$0|0);
- }
- $7 = ((($0)) + 12|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = $8 & 4;
- $10 = ($9|0)==(0);
- if ($10) {
-  $$0 = 65;
-  STACKTOP = sp;return ($$0|0);
- }
- $11 = (__gcry_mpi_get_opaque($0,$3)|0);
- $12 = ($11|0)==(0|0);
- if ($12) {
-  $$0 = 65;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$3>>2]|0;
- $14 = (($13) + 7)|0;
- $15 = $14 >>> 3;
- HEAP32[$3>>2] = $15;
- $16 = ($14>>>0)<(16);
- $17 = $14 & 8;
- $18 = ($17|0)==(0);
- $or$cond = $16 | $18;
- if ($or$cond) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $19 = HEAP8[$11>>0]|0;
- switch ($19<<24>>24) {
- case 4:  {
-  $20 = ((($11)) + 1|0);
-  $21 = (($15) + -1)|0;
-  $22 = $21 >>> 1;
-  $23 = (__gcry_mpi_scan($4,1,$20,$22,0)|0);
-  $24 = ($23|0)==(0);
-  if (!($24)) {
-   $$0 = $23;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $25 = HEAP32[$3>>2]|0;
-  $26 = (($25) + -1)|0;
-  $27 = $26 >>> 1;
-  $28 = (($20) + ($27)|0);
-  $29 = (__gcry_mpi_scan($5,1,$28,$27,0)|0);
-  $30 = ($29|0)==(0);
-  $31 = HEAP32[$4>>2]|0;
-  if (!($30)) {
-   __gcry_mpi_free($31);
-   $$0 = $29;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $32 = HEAP32[$5>>2]|0;
-  $33 = $1 >>> 3;
-  $34 = (__gcry_mpi_get_buffer_extra($32,$33,0,$2,0)|0);
-  $35 = ($34|0)==(0|0);
-  if ($35) {
-   $36 = (_gpg_err_code_from_syserror()|0);
-   $$0$i = $36;$$024 = 0;
-  } else {
-   $37 = (__gcry_mpi_test_bit($31,0)|0);
-   $38 = ($37|0)!=(0);
-   $39 = HEAP32[$2>>2]|0;
-   $40 = ($39|0)!=(0);
-   $or$cond$i = $38 & $40;
-   $41 = (($39) + -1)|0;
-   $42 = (($34) + ($41)|0);
-   if ($or$cond$i) {
-    $43 = HEAP8[$42>>0]|0;
-    $44 = $43 | -128;
-    HEAP8[$42>>0] = $44;
-    $$pre = HEAP32[$2>>2]|0;
-    $45 = $$pre;
-   } else {
-    $45 = $39;
-   }
-   $phitmp = $45 << 3;
-   $$0$i = 0;$$024 = $phitmp;
-  }
-  $46 = HEAP32[$4>>2]|0;
-  __gcry_mpi_free($46);
-  $47 = HEAP32[$5>>2]|0;
-  __gcry_mpi_free($47);
-  $48 = ($$0$i|0)==(0);
-  if (!($48)) {
-   $$0 = $$0$i;
-   STACKTOP = sp;return ($$0|0);
-  }
-  (__gcry_mpi_set_opaque($0,$34,$$024)|0);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 64:  {
-  $49 = ((($11)) + 1|0);
-  $50 = (($13) + -1)|0;
-  $51 = $50 & -8;
-  $52 = (__gcry_mpi_set_opaque_copy($0,$49,$51)|0);
-  $53 = ($52|0)==(0|0);
-  if (!($53)) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
-  $54 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $54;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- default: {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- return (0)|0;
-}
-function __gcry_ecc_eddsa_recover_x($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$080 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = sp + 16|0;
- $5 = sp + 12|0;
- $6 = ((($3)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(1);
- if (!($8)) {
-  $$0 = 69;
-  STACKTOP = sp;return ($$0|0);
- }
- $9 = HEAP32[18111]|0;
- $10 = ($9|0)==(0|0);
- do {
-  if ($10) {
-   $11 = (__gcry_mpi_scan($5,4,57637,0,0)|0);
-   $12 = ($11|0)==(0);
-   if ($12) {
-    $14 = HEAP32[$5>>2]|0;
-    HEAP32[18111] = $14;
-    break;
-   } else {
-    $13 = (_gpg_strerror($11)|0);
-    HEAP32[$vararg_buffer>>2] = $13;
-    __gcry_log_fatal(57702,$vararg_buffer);
-    // unreachable;
-   }
-  }
- } while(0);
- $15 = HEAP32[18112]|0;
- $16 = ($15|0)==(0|0);
- if ($16) {
-  $17 = (__gcry_mpi_set_ui(0,7)|0);
-  HEAP32[18112] = $17;
- }
- $18 = (__gcry_mpi_new(0)|0);
- $19 = (__gcry_mpi_new(0)|0);
- $20 = (__gcry_mpi_new(0)|0);
- $21 = (__gcry_mpi_new(0)|0);
- $22 = ((($3)) + 16|0);
- $23 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($18,$1,$1,$23);
- $24 = ((($3)) + 24|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($19,$25,$18,$26);
- __gcry_mpi_sub_ui($18,$18,1);
- __gcry_mpi_add_ui($19,$19,1);
- $27 = (__gcry_mpi_const(3)|0);
- $28 = HEAP32[$22>>2]|0;
- __gcry_mpi_powm($20,$19,$27,$28);
- $29 = HEAP32[18112]|0;
- $30 = HEAP32[$22>>2]|0;
- __gcry_mpi_powm($21,$19,$29,$30);
- $31 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($21,$21,$18,$31);
- $32 = HEAP32[18111]|0;
- $33 = HEAP32[$22>>2]|0;
- __gcry_mpi_powm($21,$21,$32,$33);
- $34 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($21,$21,$18,$34);
- $35 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($0,$21,$20,$35);
- $36 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($21,$0,$0,$36);
- $37 = HEAP32[$22>>2]|0;
- __gcry_mpi_mulm($21,$21,$19,$37);
- __gcry_mpi_neg($21,$21);
- $38 = (__gcry_mpi_cmp($21,$18)|0);
- $39 = ($38|0)==(0);
- if ($39) {
-  $40 = HEAP32[18113]|0;
-  $41 = ($40|0)==(0|0);
-  do {
-   if ($41) {
-    $42 = (__gcry_mpi_scan($4,4,57737,0,0)|0);
-    $43 = ($42|0)==(0);
-    if ($43) {
-     $45 = HEAP32[$4>>2]|0;
-     HEAP32[18113] = $45;
-     $46 = $45;
-     $48 = $46;
-     break;
-    } else {
-     $44 = (_gpg_strerror($42)|0);
-     HEAP32[$vararg_buffer1>>2] = $44;
-     __gcry_log_fatal(57702,$vararg_buffer1);
-     // unreachable;
-    }
-   } else {
-    $48 = $40;
-   }
-  } while(0);
-  $47 = HEAP32[$22>>2]|0;
-  __gcry_mpi_mulm($0,$0,$48,$47);
-  $49 = HEAP32[$22>>2]|0;
-  __gcry_mpi_mulm($21,$0,$0,$49);
-  $50 = HEAP32[$22>>2]|0;
-  __gcry_mpi_mulm($21,$21,$19,$50);
-  __gcry_mpi_neg($21,$21);
-  $51 = (__gcry_mpi_cmp($21,$18)|0);
-  $52 = ($51|0)==(0);
-  $spec$select = $52 ? 65 : 0;
-  $$080 = $spec$select;
- } else {
-  $$080 = 0;
- }
- $53 = (__gcry_mpi_test_bit($0,0)|0);
- $54 = ($2|0)!=(0);
- $55 = $54&1;
- $56 = ($53|0)==($55|0);
- if (!($56)) {
-  $57 = HEAP32[$22>>2]|0;
-  __gcry_mpi_sub($0,$57,$0);
- }
- __gcry_mpi_free($21);
- __gcry_mpi_free($20);
- __gcry_mpi_free($19);
- __gcry_mpi_free($18);
- $$0 = $$080;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_eddsa_decodepoint($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$016$i = 0, $$016$i66 = 0, $$057 = 0, $$058 = 0, $$061 = 0, $$160 = 0, 
$$2 = 0, $$lobit = 0, $$pr$pre = 0, $$pre = 0, $$pre70 = 0, $$pre71 = 0, $10 = 
0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0;
- var $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond$i = 0, 
$exitcond$i67 = 0, $or$cond = 0, $or$cond$i = 0, $or$cond64 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp + 12|0;
- $6 = sp + 8|0;
- $7 = sp + 4|0;
- $8 = sp;
- $9 = ($0|0)==(0|0);
- if ($9) {
-  label = 24;
- } else {
-  $10 = ((($0)) + 12|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = $11 & 4;
-  $13 = ($12|0)==(0);
-  if ($13) {
-   label = 24;
-  } else {
-   $14 = (__gcry_mpi_get_opaque($0,$6)|0);
-   $15 = ($14|0)==(0|0);
-   if ($15) {
-    $$2 = 65;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $16 = HEAP32[$6>>2]|0;
-   $17 = (($16) + 7)|0;
-   $18 = $17 >>> 3;
-   HEAP32[$6>>2] = $18;
-   $19 = ($17>>>0)<(16);
-   $20 = $17 & 8;
-   $21 = ($20|0)==(0);
-   $or$cond64 = $19 | $21;
-   L7: do {
-    if ($or$cond64) {
-     $$057 = $14;$66 = $18;
-    } else {
-     $22 = HEAP8[$14>>0]|0;
-     switch ($22<<24>>24) {
-     case 4:  {
-      break;
-     }
-     case 64:  {
-      $63 = (($18) + -1)|0;
-      HEAP32[$6>>2] = $63;
-      $64 = ((($14)) + 1|0);
-      $$057 = $64;$66 = $63;
-      break L7;
-      break;
-     }
-     default: {
-      $$057 = $14;$66 = $18;
-      break L7;
-     }
-     }
-     $23 = ((($14)) + 1|0);
-     $24 = (($18) + -1)|0;
-     $25 = $24 >>> 1;
-     $26 = (__gcry_mpi_scan($7,1,$23,$25,0)|0);
-     $27 = ($26|0)==(0);
-     L12: do {
-      if ($27) {
-       $28 = HEAP32[$6>>2]|0;
-       $29 = (($28) + -1)|0;
-       $30 = $29 >>> 1;
-       $31 = (($23) + ($30)|0);
-       $32 = (__gcry_mpi_scan($8,1,$31,$30,0)|0);
-       $33 = ($32|0)==(0);
-       if (!($33)) {
-        $34 = HEAP32[$7>>2]|0;
-        __gcry_mpi_free($34);
-        $$061 = $32;
-        break;
-       }
-       $35 = ($3|0)==(0|0);
-       do {
-        if (!($35)) {
-         $36 = HEAP32[$7>>2]|0;
-         $37 = HEAP32[$8>>2]|0;
-         $38 = ((($1)) + 12|0);
-         $39 = HEAP32[$38>>2]|0;
-         $40 = $39 >>> 3;
-         $41 = (__gcry_mpi_get_buffer_extra($37,$40,0,$5,0)|0);
-         $42 = ($41|0)==(0|0);
-         if ($42) {
-          $52 = (_gpg_err_code_from_syserror()|0);
-          $53 = ($52|0)==(0);
-          if ($53) {
-           break;
-          }
-          $54 = HEAP32[$7>>2]|0;
-          __gcry_mpi_free($54);
-          $55 = HEAP32[$8>>2]|0;
-          __gcry_mpi_free($55);
-          $$061 = $52;
-          break L12;
-         }
-         $43 = (__gcry_mpi_test_bit($36,0)|0);
-         $44 = ($43|0)!=(0);
-         $45 = HEAP32[$5>>2]|0;
-         $46 = ($45|0)!=(0);
-         $or$cond$i = $44 & $46;
-         $47 = (($45) + -1)|0;
-         $48 = (($41) + ($47)|0);
-         if ($or$cond$i) {
-          $49 = HEAP8[$48>>0]|0;
-          $50 = $49 | -128;
-          HEAP8[$48>>0] = $50;
-          $$pre = HEAP32[$5>>2]|0;
-          $51 = $$pre;
-         } else {
-          $51 = $45;
-         }
-         HEAP32[$3>>2] = $41;
-         HEAP32[$4>>2] = $51;
-        }
-       } while(0);
-       $56 = HEAP32[$2>>2]|0;
-       $57 = HEAP32[$7>>2]|0;
-       __gcry_mpi_snatch($56,$57);
-       $58 = ((($2)) + 4|0);
-       $59 = HEAP32[$58>>2]|0;
-       $60 = HEAP32[$8>>2]|0;
-       __gcry_mpi_snatch($59,$60);
-       $61 = ((($2)) + 8|0);
-       $62 = HEAP32[$61>>2]|0;
-       (__gcry_mpi_set_ui($62,1)|0);
-       $$061 = 0;
-      } else {
-       $$061 = $26;
-      }
-     } while(0);
-     $$2 = $$061;
-     STACKTOP = sp;return ($$2|0);
-    }
-   } while(0);
-   $65 = ($66|0)==(0);
-   $67 = $65 ? 1 : $66;
-   $68 = (__gcry_malloc($67)|0);
-   $69 = ($68|0)==(0|0);
-   if ($69) {
-    $70 = (_gpg_err_code_from_syserror()|0);
-    $$2 = $70;
-    STACKTOP = sp;return ($$2|0);
-   }
-   $71 = HEAP32[$6>>2]|0;
-   _memcpy(($68|0),($$057|0),($71|0))|0;
-   $72 = $71 >>> 1;
-   $73 = ($72|0)==(0);
-   if ($73) {
-    $$160 = $68;$88 = $71;
-   } else {
-    $74 = (($71) + -1)|0;
-    $$016$i = 0;
-    while(1) {
-     $75 = (($68) + ($$016$i)|0);
-     $76 = HEAP8[$75>>0]|0;
-     $77 = (($74) - ($$016$i))|0;
-     $78 = (($68) + ($77)|0);
-     $79 = HEAP8[$78>>0]|0;
-     HEAP8[$75>>0] = $79;
-     HEAP8[$78>>0] = $76;
-     $80 = (($$016$i) + 1)|0;
-     $exitcond$i = ($80|0)==($72|0);
-     if ($exitcond$i) {
-      $$160 = $68;$88 = $71;
-      break;
-     } else {
-      $$016$i = $80;
-     }
-    }
-   }
-  }
- }
- do {
-  if ((label|0) == 24) {
-   $81 = ((($1)) + 12|0);
-   $82 = HEAP32[$81>>2]|0;
-   $83 = $82 >>> 3;
-   $84 = (__gcry_mpi_get_buffer($0,$83,$6,0)|0);
-   $85 = ($84|0)==(0|0);
-   if (!($85)) {
-    $$pr$pre = HEAP32[$6>>2]|0;
-    $$160 = $84;$88 = $$pr$pre;
-    break;
-   }
-   $86 = (_gpg_err_code_from_syserror()|0);
-   $$2 = $86;
-   STACKTOP = sp;return ($$2|0);
-  }
- } while(0);
- $87 = ($88|0)==(0);
- if ($87) {
-  $$058 = 0;$95 = 0;
- } else {
-  $89 = HEAP8[$$160>>0]|0;
-  $90 = $89&255;
-  $$lobit = $90 >>> 7;
-  $91 = $90 & 127;
-  $92 = $91&255;
-  HEAP8[$$160>>0] = $92;
-  $$pre70 = HEAP32[$6>>2]|0;
-  $$058 = $$lobit;$95 = $$pre70;
- }
- $93 = ((($2)) + 4|0);
- $94 = HEAP32[$93>>2]|0;
- __gcry_mpi_set_buffer($94,$$160,$95,0);
- $96 = ($3|0)==(0|0);
- if ($96) {
-  __gcry_free($$160);
- } else {
-  $97 = ($$058|0)!=(0);
-  $98 = HEAP32[$6>>2]|0;
-  $99 = ($98|0)!=(0);
-  $or$cond = $97 & $99;
-  if ($or$cond) {
-   $100 = HEAP8[$$160>>0]|0;
-   $101 = $100 | -128;
-   HEAP8[$$160>>0] = $101;
-   $$pre71 = HEAP32[$6>>2]|0;
-   $103 = $$pre71;
-  } else {
-   $103 = $98;
-  }
-  $102 = $103 >>> 1;
-  $104 = ($102|0)==(0);
-  if (!($104)) {
-   $105 = (($103) + -1)|0;
-   $$016$i66 = 0;
-   while(1) {
-    $106 = (($$160) + ($$016$i66)|0);
-    $107 = HEAP8[$106>>0]|0;
-    $108 = (($105) - ($$016$i66))|0;
-    $109 = (($$160) + ($108)|0);
-    $110 = HEAP8[$109>>0]|0;
-    HEAP8[$106>>0] = $110;
-    HEAP8[$109>>0] = $107;
-    $111 = (($$016$i66) + 1)|0;
-    $exitcond$i67 = ($111|0)==($102|0);
-    if ($exitcond$i67) {
-     break;
-    } else {
-     $$016$i66 = $111;
-    }
-   }
-  }
-  HEAP32[$3>>2] = $$160;
-  $112 = ($4|0)==(0|0);
-  if (!($112)) {
-   $113 = HEAP32[$6>>2]|0;
-   HEAP32[$4>>2] = $113;
-  }
- }
- $114 = HEAP32[$2>>2]|0;
- $115 = HEAP32[$93>>2]|0;
- $116 = (__gcry_ecc_eddsa_recover_x($114,$115,$$058,$1)|0);
- $117 = ((($2)) + 8|0);
- $118 = HEAP32[$117>>2]|0;
- (__gcry_mpi_set_ui($118,1)|0);
- $$2 = $116;
- STACKTOP = sp;return ($$2|0);
-}
-function __gcry_ecc_eddsa_compute_h_d($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$mask = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $3 = sp + 32|0;
- $4 = sp;
- HEAP32[$0>>2] = 0;
- $5 = ((($2)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = (($6) + 7)|0;
- $$mask = $7 & -8;
- $8 = ($$mask|0)==(256);
- if (!($8)) {
-  $$0 = 63;
-  STACKTOP = sp;return ($$0|0);
- }
- $9 = (__gcry_calloc_secure(2,32)|0);
- $10 = ($9|0)==(0|0);
- if ($10) {
-  $11 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $11;
-  STACKTOP = sp;return ($$0|0);
- }
- 
;HEAP32[$4>>2]=0|0;HEAP32[$4+4>>2]=0|0;HEAP32[$4+8>>2]=0|0;HEAP32[$4+12>>2]=0|0;HEAP32[$4+16>>2]=0|0;HEAP32[$4+20>>2]=0|0;HEAP32[$4+24>>2]=0|0;HEAP32[$4+28>>2]=0|0;
- $12 = (__gcry_mpi_get_buffer($1,0,$3,0)|0);
- $13 = ($12|0)==(0|0);
- if ($13) {
-  __gcry_free($9);
-  $14 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $14;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = ((($4)) + 12|0);
- HEAP32[$15>>2] = $9;
- $16 = ((($4)) + 4|0);
- HEAP32[$16>>2] = 0;
- $17 = HEAP32[$3>>2]|0;
- $18 = ($17>>>0)<(32);
- $19 = (32 - ($17))|0;
- $spec$select = $18 ? $19 : 0;
- $20 = ((($4)) + 8|0);
- HEAP32[$20>>2] = $spec$select;
- $21 = ((($4)) + 28|0);
- HEAP32[$21>>2] = $12;
- $22 = ((($4)) + 20|0);
- HEAP32[$22>>2] = 0;
- $23 = ((($4)) + 24|0);
- HEAP32[$23>>2] = $17;
- $24 = (__gcry_md_hash_buffers(10,0,$9,$4,2)|0);
- __gcry_free($12);
- $25 = ($24|0)==(0);
- if ($25) {
-  $26 = HEAP8[$9>>0]|0;
-  $27 = ((($9)) + 31|0);
-  $28 = HEAP8[$27>>0]|0;
-  $29 = ((($9)) + 1|0);
-  $30 = HEAP8[$29>>0]|0;
-  $31 = ((($9)) + 30|0);
-  $32 = HEAP8[$31>>0]|0;
-  HEAP8[$29>>0] = $32;
-  HEAP8[$31>>0] = $30;
-  $33 = ((($9)) + 2|0);
-  $34 = HEAP8[$33>>0]|0;
-  $35 = ((($9)) + 29|0);
-  $36 = HEAP8[$35>>0]|0;
-  HEAP8[$33>>0] = $36;
-  HEAP8[$35>>0] = $34;
-  $37 = ((($9)) + 3|0);
-  $38 = HEAP8[$37>>0]|0;
-  $39 = ((($9)) + 28|0);
-  $40 = HEAP8[$39>>0]|0;
-  HEAP8[$37>>0] = $40;
-  HEAP8[$39>>0] = $38;
-  $41 = ((($9)) + 4|0);
-  $42 = HEAP8[$41>>0]|0;
-  $43 = ((($9)) + 27|0);
-  $44 = HEAP8[$43>>0]|0;
-  HEAP8[$41>>0] = $44;
-  HEAP8[$43>>0] = $42;
-  $45 = ((($9)) + 5|0);
-  $46 = HEAP8[$45>>0]|0;
-  $47 = ((($9)) + 26|0);
-  $48 = HEAP8[$47>>0]|0;
-  HEAP8[$45>>0] = $48;
-  HEAP8[$47>>0] = $46;
-  $49 = ((($9)) + 6|0);
-  $50 = HEAP8[$49>>0]|0;
-  $51 = ((($9)) + 25|0);
-  $52 = HEAP8[$51>>0]|0;
-  HEAP8[$49>>0] = $52;
-  HEAP8[$51>>0] = $50;
-  $53 = ((($9)) + 7|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = ((($9)) + 24|0);
-  $56 = HEAP8[$55>>0]|0;
-  HEAP8[$53>>0] = $56;
-  HEAP8[$55>>0] = $54;
-  $57 = ((($9)) + 8|0);
-  $58 = HEAP8[$57>>0]|0;
-  $59 = ((($9)) + 23|0);
-  $60 = HEAP8[$59>>0]|0;
-  HEAP8[$57>>0] = $60;
-  HEAP8[$59>>0] = $58;
-  $61 = ((($9)) + 9|0);
-  $62 = HEAP8[$61>>0]|0;
-  $63 = ((($9)) + 22|0);
-  $64 = HEAP8[$63>>0]|0;
-  HEAP8[$61>>0] = $64;
-  HEAP8[$63>>0] = $62;
-  $65 = ((($9)) + 10|0);
-  $66 = HEAP8[$65>>0]|0;
-  $67 = ((($9)) + 21|0);
-  $68 = HEAP8[$67>>0]|0;
-  HEAP8[$65>>0] = $68;
-  HEAP8[$67>>0] = $66;
-  $69 = ((($9)) + 11|0);
-  $70 = HEAP8[$69>>0]|0;
-  $71 = ((($9)) + 20|0);
-  $72 = HEAP8[$71>>0]|0;
-  HEAP8[$69>>0] = $72;
-  HEAP8[$71>>0] = $70;
-  $73 = ((($9)) + 12|0);
-  $74 = HEAP8[$73>>0]|0;
-  $75 = ((($9)) + 19|0);
-  $76 = HEAP8[$75>>0]|0;
-  HEAP8[$73>>0] = $76;
-  HEAP8[$75>>0] = $74;
-  $77 = ((($9)) + 13|0);
-  $78 = HEAP8[$77>>0]|0;
-  $79 = ((($9)) + 18|0);
-  $80 = HEAP8[$79>>0]|0;
-  HEAP8[$77>>0] = $80;
-  HEAP8[$79>>0] = $78;
-  $81 = ((($9)) + 14|0);
-  $82 = HEAP8[$81>>0]|0;
-  $83 = ((($9)) + 17|0);
-  $84 = HEAP8[$83>>0]|0;
-  HEAP8[$81>>0] = $84;
-  HEAP8[$83>>0] = $82;
-  $85 = ((($9)) + 15|0);
-  $86 = HEAP8[$85>>0]|0;
-  $87 = ((($9)) + 16|0);
-  $88 = HEAP8[$87>>0]|0;
-  HEAP8[$85>>0] = $88;
-  HEAP8[$87>>0] = $86;
-  $89 = $28 & 63;
-  $90 = $89 | 64;
-  HEAP8[$9>>0] = $90;
-  $91 = $26 & -8;
-  HEAP8[$27>>0] = $91;
-  HEAP32[$0>>2] = $9;
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  __gcry_free($9);
-  $$0 = $24;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_ecc_eddsa_genkey($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$064 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 
= 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0;
- var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $4 = sp + 16|0;
- $5 = sp;
- __gcry_mpi_point_init($4);
- 
;HEAP32[$5>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;HEAP32[$5+12>>2]=0|0;
- $6 = (__gcry_mpi_snew(0)|0);
- $7 = (__gcry_mpi_new(0)|0);
- $8 = (__gcry_mpi_new(0)|0);
- $9 = (__gcry_malloc_secure(64)|0);
- $10 = ($9|0)==(0|0);
- if ($10) {
-  $11 = (_gpg_err_code_from_syserror()|0);
-  $12 = ($11|0)==(0);
-  $13 = $11 & 65535;
-  $14 = $13 | 16777216;
-  $15 = $12 ? 0 : $14;
-  $$0 = 0;$$064 = $15;
-  __gcry_mpi_point_free_parts($4);
-  __gcry_mpi_release($6);
-  __gcry_mpi_release($7);
-  __gcry_mpi_release($8);
-  __gcry_free($$0);
-  STACKTOP = sp;return ($$064|0);
- }
- $16 = $3 >>> 5;
- $17 = $16 & 1;
- $18 = (2 - ($17))|0;
- $19 = (__gcry_random_bytes_secure(32,$18)|0);
- $20 = ((($5)) + 12|0);
- HEAP32[$20>>2] = $19;
- $21 = ((($5)) + 8|0);
- HEAP32[$21>>2] = 32;
- $22 = (__gcry_md_hash_buffers(10,0,$9,$5,1)|0);
- $23 = ($22|0)==(0);
- if (!($23)) {
-  $$0 = $9;$$064 = $22;
-  __gcry_mpi_point_free_parts($4);
-  __gcry_mpi_release($6);
-  __gcry_mpi_release($7);
-  __gcry_mpi_release($8);
-  __gcry_free($$0);
-  STACKTOP = sp;return ($$064|0);
- }
- $24 = (__gcry_mpi_set_opaque(0,$19,256)|0);
- $25 = ((($0)) + 56|0);
- HEAP32[$25>>2] = $24;
- $26 = HEAP8[$9>>0]|0;
- $27 = ((($9)) + 31|0);
- $28 = HEAP8[$27>>0]|0;
- $29 = ((($9)) + 1|0);
- $30 = HEAP8[$29>>0]|0;
- $31 = ((($9)) + 30|0);
- $32 = HEAP8[$31>>0]|0;
- HEAP8[$29>>0] = $32;
- HEAP8[$31>>0] = $30;
- $33 = ((($9)) + 2|0);
- $34 = HEAP8[$33>>0]|0;
- $35 = ((($9)) + 29|0);
- $36 = HEAP8[$35>>0]|0;
- HEAP8[$33>>0] = $36;
- HEAP8[$35>>0] = $34;
- $37 = ((($9)) + 3|0);
- $38 = HEAP8[$37>>0]|0;
- $39 = ((($9)) + 28|0);
- $40 = HEAP8[$39>>0]|0;
- HEAP8[$37>>0] = $40;
- HEAP8[$39>>0] = $38;
- $41 = ((($9)) + 4|0);
- $42 = HEAP8[$41>>0]|0;
- $43 = ((($9)) + 27|0);
- $44 = HEAP8[$43>>0]|0;
- HEAP8[$41>>0] = $44;
- HEAP8[$43>>0] = $42;
- $45 = ((($9)) + 5|0);
- $46 = HEAP8[$45>>0]|0;
- $47 = ((($9)) + 26|0);
- $48 = HEAP8[$47>>0]|0;
- HEAP8[$45>>0] = $48;
- HEAP8[$47>>0] = $46;
- $49 = ((($9)) + 6|0);
- $50 = HEAP8[$49>>0]|0;
- $51 = ((($9)) + 25|0);
- $52 = HEAP8[$51>>0]|0;
- HEAP8[$49>>0] = $52;
- HEAP8[$51>>0] = $50;
- $53 = ((($9)) + 7|0);
- $54 = HEAP8[$53>>0]|0;
- $55 = ((($9)) + 24|0);
- $56 = HEAP8[$55>>0]|0;
- HEAP8[$53>>0] = $56;
- HEAP8[$55>>0] = $54;
- $57 = ((($9)) + 8|0);
- $58 = HEAP8[$57>>0]|0;
- $59 = ((($9)) + 23|0);
- $60 = HEAP8[$59>>0]|0;
- HEAP8[$57>>0] = $60;
- HEAP8[$59>>0] = $58;
- $61 = ((($9)) + 9|0);
- $62 = HEAP8[$61>>0]|0;
- $63 = ((($9)) + 22|0);
- $64 = HEAP8[$63>>0]|0;
- HEAP8[$61>>0] = $64;
- HEAP8[$63>>0] = $62;
- $65 = ((($9)) + 10|0);
- $66 = HEAP8[$65>>0]|0;
- $67 = ((($9)) + 21|0);
- $68 = HEAP8[$67>>0]|0;
- HEAP8[$65>>0] = $68;
- HEAP8[$67>>0] = $66;
- $69 = ((($9)) + 11|0);
- $70 = HEAP8[$69>>0]|0;
- $71 = ((($9)) + 20|0);
- $72 = HEAP8[$71>>0]|0;
- HEAP8[$69>>0] = $72;
- HEAP8[$71>>0] = $70;
- $73 = ((($9)) + 12|0);
- $74 = HEAP8[$73>>0]|0;
- $75 = ((($9)) + 19|0);
- $76 = HEAP8[$75>>0]|0;
- HEAP8[$73>>0] = $76;
- HEAP8[$75>>0] = $74;
- $77 = ((($9)) + 13|0);
- $78 = HEAP8[$77>>0]|0;
- $79 = ((($9)) + 18|0);
- $80 = HEAP8[$79>>0]|0;
- HEAP8[$77>>0] = $80;
- HEAP8[$79>>0] = $78;
- $81 = ((($9)) + 14|0);
- $82 = HEAP8[$81>>0]|0;
- $83 = ((($9)) + 17|0);
- $84 = HEAP8[$83>>0]|0;
- HEAP8[$81>>0] = $84;
- HEAP8[$83>>0] = $82;
- $85 = ((($9)) + 15|0);
- $86 = HEAP8[$85>>0]|0;
- $87 = ((($9)) + 16|0);
- $88 = HEAP8[$87>>0]|0;
- HEAP8[$85>>0] = $88;
- HEAP8[$87>>0] = $86;
- $89 = $28 & 63;
- $90 = $89 | 64;
- HEAP8[$9>>0] = $90;
- $91 = $26 & -8;
- HEAP8[$27>>0] = $91;
- __gcry_mpi_set_buffer($6,$9,32,0);
- __gcry_free($9);
- $92 = ((($1)) + 20|0);
- __gcry_mpi_ec_mul_point($4,$6,$92,$2);
- $93 = (__gcry_get_debug_flag(1)|0);
- $94 = ($93|0)==(0);
- if (!($94)) {
-  __gcry_mpi_point_log(57802,$4,$2);
- }
- $95 = HEAP32[$1>>2]|0;
- HEAP32[$0>>2] = $95;
- $96 = ((($1)) + 4|0);
- $97 = HEAP32[$96>>2]|0;
- $98 = ((($0)) + 4|0);
- HEAP32[$98>>2] = $97;
- $99 = ((($1)) + 8|0);
- $100 = HEAP32[$99>>2]|0;
- $101 = (__gcry_mpi_copy($100)|0);
- $102 = ((($0)) + 8|0);
- HEAP32[$102>>2] = $101;
- $103 = ((($1)) + 12|0);
- $104 = HEAP32[$103>>2]|0;
- $105 = (__gcry_mpi_copy($104)|0);
- $106 = ((($0)) + 12|0);
- HEAP32[$106>>2] = $105;
- $107 = ((($1)) + 16|0);
- $108 = HEAP32[$107>>2]|0;
- $109 = (__gcry_mpi_copy($108)|0);
- $110 = ((($0)) + 16|0);
- HEAP32[$110>>2] = $109;
- $111 = ((($0)) + 20|0);
- __gcry_mpi_point_init($111);
- $112 = HEAP32[$111>>2]|0;
- $113 = HEAP32[$92>>2]|0;
- (__gcry_mpi_set($112,$113)|0);
- $114 = ((($0)) + 24|0);
- $115 = HEAP32[$114>>2]|0;
- $116 = ((($1)) + 24|0);
- $117 = HEAP32[$116>>2]|0;
- (__gcry_mpi_set($115,$117)|0);
- $118 = ((($0)) + 28|0);
- $119 = HEAP32[$118>>2]|0;
- $120 = ((($1)) + 28|0);
- $121 = HEAP32[$120>>2]|0;
- (__gcry_mpi_set($119,$121)|0);
- $122 = ((($1)) + 32|0);
- $123 = HEAP32[$122>>2]|0;
- $124 = (__gcry_mpi_copy($123)|0);
- $125 = ((($0)) + 32|0);
- HEAP32[$125>>2] = $124;
- $126 = ((($1)) + 36|0);
- $127 = HEAP32[$126>>2]|0;
- $128 = (__gcry_mpi_copy($127)|0);
- $129 = ((($0)) + 36|0);
- HEAP32[$129>>2] = $128;
- $130 = ((($0)) + 44|0);
- __gcry_mpi_point_init($130);
- $131 = HEAP32[$130>>2]|0;
- $132 = HEAP32[$4>>2]|0;
- (__gcry_mpi_set($131,$132)|0);
- $133 = ((($0)) + 48|0);
- $134 = HEAP32[$133>>2]|0;
- $135 = ((($4)) + 4|0);
- $136 = HEAP32[$135>>2]|0;
- (__gcry_mpi_set($134,$136)|0);
- $137 = ((($0)) + 52|0);
- $138 = HEAP32[$137>>2]|0;
- $139 = ((($4)) + 8|0);
- $140 = HEAP32[$139>>2]|0;
- (__gcry_mpi_set($138,$140)|0);
- $$0 = 0;$$064 = 0;
- __gcry_mpi_point_free_parts($4);
- __gcry_mpi_release($6);
- __gcry_mpi_release($7);
- __gcry_mpi_release($8);
- __gcry_free($$0);
- STACKTOP = sp;return ($$064|0);
-}
-function __gcry_ecc_eddsa_sign($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$082 = 0, $$mask = 0, $$pre = 0, $$pre88 = 0, $$pre90 = 0, 
$$pre91 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0;
- var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 
= 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0;
- var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0;
- var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 
= 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 
= 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0;
- var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 
= 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0;
- var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 
= 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 
= 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0;
- var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $30 
= 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 
0, $54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, dest = 0, 
label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $6 = sp + 96|0;
- $7 = sp + 92|0;
- $8 = sp + 88|0;
- $9 = sp;
- $10 = sp + 84|0;
- $11 = sp + 80|0;
- $12 = sp + 76|0;
- $13 = sp + 72|0;
- $14 = sp + 60|0;
- $15 = sp + 48|0;
- HEAP32[$10>>2] = 0;
- HEAP32[$12>>2] = 0;
- dest=$9; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $16 = ($0|0)==(0|0);
- if ($16) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = ((($0)) + 12|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = $18 & 4;
- $20 = ($19|0)==(0);
- if ($20) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_point_init($14);
- __gcry_mpi_point_init($15);
- $21 = (__gcry_mpi_snew(0)|0);
- $22 = (__gcry_mpi_new(0)|0);
- $23 = (__gcry_mpi_new(0)|0);
- $24 = (__gcry_mpi_new(0)|0);
- $25 = HEAP32[$1>>2]|0;
- $26 = ((($1)) + 4|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($1)) + 8|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = ((($1)) + 12|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = ((($1)) + 16|0);
- $33 = HEAP32[$32>>2]|0;
- $34 = (__gcry_mpi_ec_p_internal_new($25,$27,0,$29,$31,$33)|0);
- $35 = ((($34)) + 12|0);
- $36 = HEAP32[$35>>2]|0;
- $37 = (($36) + 7)|0;
- $$mask = $37 & -8;
- $38 = ($$mask|0)==(256);
- if (!($38)) {
-  $$0 = 63;
-  STACKTOP = sp;return ($$0|0);
- }
- $39 = ((($1)) + 56|0);
- $40 = HEAP32[$39>>2]|0;
- $41 = (__gcry_ecc_eddsa_compute_h_d($8,$40,$34)|0);
- $42 = ($41|0)==(0);
- do {
-  if ($42) {
-   $43 = HEAP32[$8>>2]|0;
-   __gcry_mpi_set_buffer($21,$43,32,0);
-   $44 = ($5|0)==(0|0);
-   $45 = $43;
-   if ($44) {
-    $54 = ((($1)) + 20|0);
-    __gcry_mpi_ec_mul_point($15,$21,$54,$34);
-    $55 = (__gcry_ecc_eddsa_encodepoint($15,$34,$22,$23,0,$12,$13)|0);
-    $56 = ($55|0)==(0);
-    if (!($56)) {
-     $$082 = $55;
-     break;
-    }
-    $57 = (__gcry_get_debug_flag(1)|0);
-    $58 = ($57|0)==(0);
-    if (!($58)) {
-     $59 = HEAP32[$12>>2]|0;
-     $60 = HEAP32[$13>>2]|0;
-     __gcry_log_printhex(57823,$59,$60);
-    }
-   } else {
-    $46 = (__gcry_ecc_eddsa_decodepoint($5,$34,$15,$12,$13)|0);
-    $47 = ($46|0)==(0);
-    if (!($47)) {
-     $$082 = $46;
-     break;
-    }
-    $48 = (__gcry_get_debug_flag(1)|0);
-    $49 = ($48|0)==(0);
-    if (!($49)) {
-     $50 = HEAP32[$12>>2]|0;
-     $51 = HEAP32[$13>>2]|0;
-     __gcry_log_printhex(57816,$50,$51);
-    }
-    $52 = (__gcry_mpi_ec_curve_point($15,$34)|0);
-    $53 = ($52|0)==(0);
-    if ($53) {
-     $$082 = 195;
-     break;
-    }
-   }
-   $61 = (__gcry_mpi_get_opaque($0,$7)|0);
-   $62 = HEAP32[$7>>2]|0;
-   $63 = (($62) + 7)|0;
-   $64 = $63 >>> 3;
-   $65 = (__gcry_get_debug_flag(1)|0);
-   $66 = ($65|0)==(0);
-   if (!($66)) {
-    __gcry_log_printhex(57830,$61,$64);
-   }
-   $67 = ((($9)) + 12|0);
-   HEAP32[$67>>2] = $45;
-   $68 = ((($9)) + 4|0);
-   HEAP32[$68>>2] = 32;
-   $69 = ((($9)) + 8|0);
-   HEAP32[$69>>2] = 32;
-   $70 = ((($9)) + 28|0);
-   HEAP32[$70>>2] = $61;
-   $71 = ((($9)) + 24|0);
-   HEAP32[$71>>2] = $64;
-   $72 = (__gcry_md_hash_buffers($4,0,$43,$9,2)|0);
-   $73 = ($72|0)==(0);
-   if ($73) {
-    $74 = HEAP8[$43>>0]|0;
-    $75 = ((($43)) + 63|0);
-    $76 = HEAP8[$75>>0]|0;
-    HEAP8[$43>>0] = $76;
-    HEAP8[$75>>0] = $74;
-    $77 = ((($43)) + 1|0);
-    $78 = HEAP8[$77>>0]|0;
-    $79 = ((($43)) + 62|0);
-    $80 = HEAP8[$79>>0]|0;
-    HEAP8[$77>>0] = $80;
-    HEAP8[$79>>0] = $78;
-    $81 = ((($43)) + 2|0);
-    $82 = HEAP8[$81>>0]|0;
-    $83 = ((($43)) + 61|0);
-    $84 = HEAP8[$83>>0]|0;
-    HEAP8[$81>>0] = $84;
-    HEAP8[$83>>0] = $82;
-    $85 = ((($43)) + 3|0);
-    $86 = HEAP8[$85>>0]|0;
-    $87 = ((($43)) + 60|0);
-    $88 = HEAP8[$87>>0]|0;
-    HEAP8[$85>>0] = $88;
-    HEAP8[$87>>0] = $86;
-    $89 = ((($43)) + 4|0);
-    $90 = HEAP8[$89>>0]|0;
-    $91 = ((($43)) + 59|0);
-    $92 = HEAP8[$91>>0]|0;
-    HEAP8[$89>>0] = $92;
-    HEAP8[$91>>0] = $90;
-    $93 = ((($43)) + 5|0);
-    $94 = HEAP8[$93>>0]|0;
-    $95 = ((($43)) + 58|0);
-    $96 = HEAP8[$95>>0]|0;
-    HEAP8[$93>>0] = $96;
-    HEAP8[$95>>0] = $94;
-    $97 = ((($43)) + 6|0);
-    $98 = HEAP8[$97>>0]|0;
-    $99 = ((($43)) + 57|0);
-    $100 = HEAP8[$99>>0]|0;
-    HEAP8[$97>>0] = $100;
-    HEAP8[$99>>0] = $98;
-    $101 = ((($43)) + 7|0);
-    $102 = HEAP8[$101>>0]|0;
-    $103 = ((($43)) + 56|0);
-    $104 = HEAP8[$103>>0]|0;
-    HEAP8[$101>>0] = $104;
-    HEAP8[$103>>0] = $102;
-    $105 = ((($43)) + 8|0);
-    $106 = HEAP8[$105>>0]|0;
-    $107 = ((($43)) + 55|0);
-    $108 = HEAP8[$107>>0]|0;
-    HEAP8[$105>>0] = $108;
-    HEAP8[$107>>0] = $106;
-    $109 = ((($43)) + 9|0);
-    $110 = HEAP8[$109>>0]|0;
-    $111 = ((($43)) + 54|0);
-    $112 = HEAP8[$111>>0]|0;
-    HEAP8[$109>>0] = $112;
-    HEAP8[$111>>0] = $110;
-    $113 = ((($43)) + 10|0);
-    $114 = HEAP8[$113>>0]|0;
-    $115 = ((($43)) + 53|0);
-    $116 = HEAP8[$115>>0]|0;
-    HEAP8[$113>>0] = $116;
-    HEAP8[$115>>0] = $114;
-    $117 = ((($43)) + 11|0);
-    $118 = HEAP8[$117>>0]|0;
-    $119 = ((($43)) + 52|0);
-    $120 = HEAP8[$119>>0]|0;
-    HEAP8[$117>>0] = $120;
-    HEAP8[$119>>0] = $118;
-    $121 = ((($43)) + 12|0);
-    $122 = HEAP8[$121>>0]|0;
-    $123 = ((($43)) + 51|0);
-    $124 = HEAP8[$123>>0]|0;
-    HEAP8[$121>>0] = $124;
-    HEAP8[$123>>0] = $122;
-    $125 = ((($43)) + 13|0);
-    $126 = HEAP8[$125>>0]|0;
-    $127 = ((($43)) + 50|0);
-    $128 = HEAP8[$127>>0]|0;
-    HEAP8[$125>>0] = $128;
-    HEAP8[$127>>0] = $126;
-    $129 = ((($43)) + 14|0);
-    $130 = HEAP8[$129>>0]|0;
-    $131 = ((($43)) + 49|0);
-    $132 = HEAP8[$131>>0]|0;
-    HEAP8[$129>>0] = $132;
-    HEAP8[$131>>0] = $130;
-    $133 = ((($43)) + 15|0);
-    $134 = HEAP8[$133>>0]|0;
-    $135 = ((($43)) + 48|0);
-    $136 = HEAP8[$135>>0]|0;
-    HEAP8[$133>>0] = $136;
-    HEAP8[$135>>0] = $134;
-    $137 = ((($43)) + 16|0);
-    $138 = HEAP8[$137>>0]|0;
-    $139 = ((($43)) + 47|0);
-    $140 = HEAP8[$139>>0]|0;
-    HEAP8[$137>>0] = $140;
-    HEAP8[$139>>0] = $138;
-    $141 = ((($43)) + 17|0);
-    $142 = HEAP8[$141>>0]|0;
-    $143 = ((($43)) + 46|0);
-    $144 = HEAP8[$143>>0]|0;
-    HEAP8[$141>>0] = $144;
-    HEAP8[$143>>0] = $142;
-    $145 = ((($43)) + 18|0);
-    $146 = HEAP8[$145>>0]|0;
-    $147 = ((($43)) + 45|0);
-    $148 = HEAP8[$147>>0]|0;
-    HEAP8[$145>>0] = $148;
-    HEAP8[$147>>0] = $146;
-    $149 = ((($43)) + 19|0);
-    $150 = HEAP8[$149>>0]|0;
-    $151 = ((($43)) + 44|0);
-    $152 = HEAP8[$151>>0]|0;
-    HEAP8[$149>>0] = $152;
-    HEAP8[$151>>0] = $150;
-    $153 = ((($43)) + 20|0);
-    $154 = HEAP8[$153>>0]|0;
-    $155 = ((($43)) + 43|0);
-    $156 = HEAP8[$155>>0]|0;
-    HEAP8[$153>>0] = $156;
-    HEAP8[$155>>0] = $154;
-    $157 = ((($43)) + 21|0);
-    $158 = HEAP8[$157>>0]|0;
-    $159 = ((($43)) + 42|0);
-    $160 = HEAP8[$159>>0]|0;
-    HEAP8[$157>>0] = $160;
-    HEAP8[$159>>0] = $158;
-    $161 = ((($43)) + 22|0);
-    $162 = HEAP8[$161>>0]|0;
-    $163 = ((($43)) + 41|0);
-    $164 = HEAP8[$163>>0]|0;
-    HEAP8[$161>>0] = $164;
-    HEAP8[$163>>0] = $162;
-    $165 = ((($43)) + 23|0);
-    $166 = HEAP8[$165>>0]|0;
-    $167 = ((($43)) + 40|0);
-    $168 = HEAP8[$167>>0]|0;
-    HEAP8[$165>>0] = $168;
-    HEAP8[$167>>0] = $166;
-    $169 = ((($43)) + 24|0);
-    $170 = HEAP8[$169>>0]|0;
-    $171 = ((($43)) + 39|0);
-    $172 = HEAP8[$171>>0]|0;
-    HEAP8[$169>>0] = $172;
-    HEAP8[$171>>0] = $170;
-    $173 = ((($43)) + 25|0);
-    $174 = HEAP8[$173>>0]|0;
-    $175 = ((($43)) + 38|0);
-    $176 = HEAP8[$175>>0]|0;
-    HEAP8[$173>>0] = $176;
-    HEAP8[$175>>0] = $174;
-    $177 = ((($43)) + 26|0);
-    $178 = HEAP8[$177>>0]|0;
-    $179 = ((($43)) + 37|0);
-    $180 = HEAP8[$179>>0]|0;
-    HEAP8[$177>>0] = $180;
-    HEAP8[$179>>0] = $178;
-    $181 = ((($43)) + 27|0);
-    $182 = HEAP8[$181>>0]|0;
-    $183 = ((($43)) + 36|0);
-    $184 = HEAP8[$183>>0]|0;
-    HEAP8[$181>>0] = $184;
-    HEAP8[$183>>0] = $182;
-    $185 = ((($43)) + 28|0);
-    $186 = HEAP8[$185>>0]|0;
-    $187 = ((($43)) + 35|0);
-    $188 = HEAP8[$187>>0]|0;
-    HEAP8[$185>>0] = $188;
-    HEAP8[$187>>0] = $186;
-    $189 = ((($43)) + 29|0);
-    $190 = HEAP8[$189>>0]|0;
-    $191 = ((($43)) + 34|0);
-    $192 = HEAP8[$191>>0]|0;
-    HEAP8[$189>>0] = $192;
-    HEAP8[$191>>0] = $190;
-    $193 = ((($43)) + 30|0);
-    $194 = HEAP8[$193>>0]|0;
-    $195 = ((($43)) + 33|0);
-    $196 = HEAP8[$195>>0]|0;
-    HEAP8[$193>>0] = $196;
-    HEAP8[$195>>0] = $194;
-    $197 = ((($43)) + 31|0);
-    $198 = HEAP8[$197>>0]|0;
-    $199 = ((($43)) + 32|0);
-    $200 = HEAP8[$199>>0]|0;
-    HEAP8[$197>>0] = $200;
-    HEAP8[$199>>0] = $198;
-    $201 = (__gcry_get_debug_flag(1)|0);
-    $202 = ($201|0)==(0);
-    if (!($202)) {
-     __gcry_log_printhex(70231,$43,64);
-    }
-    __gcry_mpi_set_buffer($24,$43,64,0);
-    $203 = ((($1)) + 20|0);
-    __gcry_mpi_ec_mul_point($14,$24,$203,$34);
-    $204 = (__gcry_get_debug_flag(1)|0);
-    $205 = ($204|0)==(0);
-    if (!($205)) {
-     __gcry_mpi_point_log(57837,$14,$34);
-    }
-    $206 = (__gcry_ecc_eddsa_encodepoint($14,$34,$22,$23,0,$10,$11)|0);
-    $207 = ($206|0)==(0);
-    if ($207) {
-     $208 = (__gcry_get_debug_flag(1)|0);
-     $209 = ($208|0)==(0);
-     if ($209) {
-      $$pre = HEAP32[$10>>2]|0;
-      $$pre88 = HEAP32[$11>>2]|0;
-      $210 = $$pre;
-      $214 = $$pre;$215 = $$pre88;$225 = $210;
-     } else {
-      $211 = HEAP32[$10>>2]|0;
-      $212 = HEAP32[$11>>2]|0;
-      __gcry_log_printhex(57842,$211,$212);
-      $213 = $211;
-      $214 = $213;$215 = $212;$225 = $211;
-     }
-     HEAP32[$67>>2] = $214;
-     HEAP32[$68>>2] = 0;
-     HEAP32[$69>>2] = $215;
-     $216 = HEAP32[$12>>2]|0;
-     HEAP32[$70>>2] = $216;
-     $217 = ((($9)) + 20|0);
-     HEAP32[$217>>2] = 0;
-     $218 = HEAP32[$13>>2]|0;
-     HEAP32[$71>>2] = $218;
-     $219 = ((($9)) + 44|0);
-     HEAP32[$219>>2] = $61;
-     $220 = ((($9)) + 36|0);
-     HEAP32[$220>>2] = 0;
-     $221 = ((($9)) + 40|0);
-     HEAP32[$221>>2] = $64;
-     $222 = (__gcry_md_hash_buffers($4,0,$43,$9,3)|0);
-     $223 = ($222|0)==(0);
-     if ($223) {
-      $224 = $215 << 3;
-      (__gcry_mpi_set_opaque($2,$225,$224)|0);
-      HEAP32[$10>>2] = 0;
-      $226 = HEAP8[$43>>0]|0;
-      $227 = HEAP8[$75>>0]|0;
-      HEAP8[$43>>0] = $227;
-      HEAP8[$75>>0] = $226;
-      $228 = HEAP8[$77>>0]|0;
-      $229 = HEAP8[$79>>0]|0;
-      HEAP8[$77>>0] = $229;
-      HEAP8[$79>>0] = $228;
-      $230 = HEAP8[$81>>0]|0;
-      $231 = HEAP8[$83>>0]|0;
-      HEAP8[$81>>0] = $231;
-      HEAP8[$83>>0] = $230;
-      $232 = HEAP8[$85>>0]|0;
-      $233 = HEAP8[$87>>0]|0;
-      HEAP8[$85>>0] = $233;
-      HEAP8[$87>>0] = $232;
-      $234 = HEAP8[$89>>0]|0;
-      $235 = HEAP8[$91>>0]|0;
-      HEAP8[$89>>0] = $235;
-      HEAP8[$91>>0] = $234;
-      $236 = HEAP8[$93>>0]|0;
-      $237 = HEAP8[$95>>0]|0;
-      HEAP8[$93>>0] = $237;
-      HEAP8[$95>>0] = $236;
-      $238 = HEAP8[$97>>0]|0;
-      $239 = HEAP8[$99>>0]|0;
-      HEAP8[$97>>0] = $239;
-      HEAP8[$99>>0] = $238;
-      $240 = HEAP8[$101>>0]|0;
-      $241 = HEAP8[$103>>0]|0;
-      HEAP8[$101>>0] = $241;
-      HEAP8[$103>>0] = $240;
-      $242 = HEAP8[$105>>0]|0;
-      $243 = HEAP8[$107>>0]|0;
-      HEAP8[$105>>0] = $243;
-      HEAP8[$107>>0] = $242;
-      $244 = HEAP8[$109>>0]|0;
-      $245 = HEAP8[$111>>0]|0;
-      HEAP8[$109>>0] = $245;
-      HEAP8[$111>>0] = $244;
-      $246 = HEAP8[$113>>0]|0;
-      $247 = HEAP8[$115>>0]|0;
-      HEAP8[$113>>0] = $247;
-      HEAP8[$115>>0] = $246;
-      $248 = HEAP8[$117>>0]|0;
-      $249 = HEAP8[$119>>0]|0;
-      HEAP8[$117>>0] = $249;
-      HEAP8[$119>>0] = $248;
-      $250 = HEAP8[$121>>0]|0;
-      $251 = HEAP8[$123>>0]|0;
-      HEAP8[$121>>0] = $251;
-      HEAP8[$123>>0] = $250;
-      $252 = HEAP8[$125>>0]|0;
-      $253 = HEAP8[$127>>0]|0;
-      HEAP8[$125>>0] = $253;
-      HEAP8[$127>>0] = $252;
-      $254 = HEAP8[$129>>0]|0;
-      $255 = HEAP8[$131>>0]|0;
-      HEAP8[$129>>0] = $255;
-      HEAP8[$131>>0] = $254;
-      $256 = HEAP8[$133>>0]|0;
-      $257 = HEAP8[$135>>0]|0;
-      HEAP8[$133>>0] = $257;
-      HEAP8[$135>>0] = $256;
-      $258 = HEAP8[$137>>0]|0;
-      $259 = HEAP8[$139>>0]|0;
-      HEAP8[$137>>0] = $259;
-      HEAP8[$139>>0] = $258;
-      $260 = HEAP8[$141>>0]|0;
-      $261 = HEAP8[$143>>0]|0;
-      HEAP8[$141>>0] = $261;
-      HEAP8[$143>>0] = $260;
-      $262 = HEAP8[$145>>0]|0;
-      $263 = HEAP8[$147>>0]|0;
-      HEAP8[$145>>0] = $263;
-      HEAP8[$147>>0] = $262;
-      $264 = HEAP8[$149>>0]|0;
-      $265 = HEAP8[$151>>0]|0;
-      HEAP8[$149>>0] = $265;
-      HEAP8[$151>>0] = $264;
-      $266 = HEAP8[$153>>0]|0;
-      $267 = HEAP8[$155>>0]|0;
-      HEAP8[$153>>0] = $267;
-      HEAP8[$155>>0] = $266;
-      $268 = HEAP8[$157>>0]|0;
-      $269 = HEAP8[$159>>0]|0;
-      HEAP8[$157>>0] = $269;
-      HEAP8[$159>>0] = $268;
-      $270 = HEAP8[$161>>0]|0;
-      $271 = HEAP8[$163>>0]|0;
-      HEAP8[$161>>0] = $271;
-      HEAP8[$163>>0] = $270;
-      $272 = HEAP8[$165>>0]|0;
-      $273 = HEAP8[$167>>0]|0;
-      HEAP8[$165>>0] = $273;
-      HEAP8[$167>>0] = $272;
-      $274 = HEAP8[$169>>0]|0;
-      $275 = HEAP8[$171>>0]|0;
-      HEAP8[$169>>0] = $275;
-      HEAP8[$171>>0] = $274;
-      $276 = HEAP8[$173>>0]|0;
-      $277 = HEAP8[$175>>0]|0;
-      HEAP8[$173>>0] = $277;
-      HEAP8[$175>>0] = $276;
-      $278 = HEAP8[$177>>0]|0;
-      $279 = HEAP8[$179>>0]|0;
-      HEAP8[$177>>0] = $279;
-      HEAP8[$179>>0] = $278;
-      $280 = HEAP8[$181>>0]|0;
-      $281 = HEAP8[$183>>0]|0;
-      HEAP8[$181>>0] = $281;
-      HEAP8[$183>>0] = $280;
-      $282 = HEAP8[$185>>0]|0;
-      $283 = HEAP8[$187>>0]|0;
-      HEAP8[$185>>0] = $283;
-      HEAP8[$187>>0] = $282;
-      $284 = HEAP8[$189>>0]|0;
-      $285 = HEAP8[$191>>0]|0;
-      HEAP8[$189>>0] = $285;
-      HEAP8[$191>>0] = $284;
-      $286 = HEAP8[$193>>0]|0;
-      $287 = HEAP8[$195>>0]|0;
-      HEAP8[$193>>0] = $287;
-      HEAP8[$195>>0] = $286;
-      $288 = HEAP8[$197>>0]|0;
-      $289 = HEAP8[$199>>0]|0;
-      HEAP8[$197>>0] = $289;
-      HEAP8[$199>>0] = $288;
-      $290 = (__gcry_get_debug_flag(1)|0);
-      $291 = ($290|0)==(0);
-      if (!($291)) {
-       __gcry_log_printhex(57849,$43,64);
-      }
-      __gcry_mpi_set_buffer($3,$43,64,0);
-      $292 = ((($1)) + 32|0);
-      $293 = HEAP32[$292>>2]|0;
-      __gcry_mpi_mulm($3,$3,$21,$293);
-      $294 = HEAP32[$292>>2]|0;
-      __gcry_mpi_addm($3,$3,$24,$294);
-      $295 = (__gcry_mpi_get_buffer($3,32,$6,0)|0);
-      $296 = ($295|0)==(0|0);
-      if ($296) {
-       $298 = (_gpg_err_code_from_syserror()|0);
-       $299 = ($298|0)==(0);
-       if (!($299)) {
-        $$082 = $298;
-        break;
-       }
-      } else {
-       HEAP32[$10>>2] = $295;
-       $297 = HEAP32[$6>>2]|0;
-       HEAP32[$11>>2] = $297;
-      }
-      $300 = (__gcry_get_debug_flag(1)|0);
-      $301 = ($300|0)==(0);
-      $$pre90 = HEAP32[$10>>2]|0;
-      $$pre91 = HEAP32[$11>>2]|0;
-      if (!($301)) {
-       __gcry_log_printhex(57856,$$pre90,$$pre91);
-      }
-      $302 = $$pre91 << 3;
-      (__gcry_mpi_set_opaque($3,$$pre90,$302)|0);
-      HEAP32[$10>>2] = 0;
-      $$082 = 0;
-     } else {
-      $$082 = $222;
-     }
-    } else {
-     $$082 = $206;
-    }
-   } else {
-    $$082 = $72;
-   }
-  } else {
-   $$082 = $41;
-  }
- } while(0);
- __gcry_mpi_release($21);
- __gcry_mpi_release($22);
- __gcry_mpi_release($23);
- __gcry_mpi_release($24);
- $303 = HEAP32[$8>>2]|0;
- __gcry_free($303);
- __gcry_mpi_ec_free($34);
- __gcry_mpi_point_free_parts($14);
- __gcry_mpi_point_free_parts($15);
- $304 = HEAP32[$12>>2]|0;
- __gcry_free($304);
- $305 = HEAP32[$10>>2]|0;
- __gcry_free($305);
- $$0 = $$082;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_eddsa_verify($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$016$i89 = 0, $$1 = 0, $$mask = 0, $10 = 0, $100 = 0, $101 = 0, 
$102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, 
$11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, 
$164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0;
- var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 
= 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0;
- var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 
= 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 
= 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0;
- var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 
= 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 
= 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0;
- var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 
= 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 
= 0, $238 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 
0, $44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, $exitcond$i90 = 0, $or$cond = 0, $or$cond3 = 0;
- var $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(176|0);
- $6 = sp + 164|0;
- $7 = sp + 152|0;
- $8 = sp + 148|0;
- $9 = sp + 144|0;
- $10 = sp + 140|0;
- $11 = sp + 136|0;
- $12 = sp + 48|0;
- $13 = sp;
- $14 = sp + 124|0;
- $15 = sp + 112|0;
- HEAP32[$8>>2] = 0;
- HEAP32[$10>>2] = 0;
- $16 = ($0|0)==(0|0);
- if ($16) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = ((($0)) + 12|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = $18 & 4;
- $20 = ($19|0)!=(0);
- $21 = ($2|0)!=(0|0);
- $or$cond = $21 & $20;
- if (!($or$cond)) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- $22 = ((($2)) + 12|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = $23 & 4;
- $25 = ($24|0)!=(0);
- $26 = ($3|0)!=(0|0);
- $or$cond3 = $26 & $25;
- if (!($or$cond3)) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- $27 = ((($3)) + 12|0);
- $28 = HEAP32[$27>>2]|0;
- $29 = $28 & 4;
- $30 = ($29|0)==(0);
- if ($30) {
-  $$0 = 79;
-  STACKTOP = sp;return ($$0|0);
- }
- $31 = ($4|0)==(10);
- if (!($31)) {
-  $$0 = 5;
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_point_init($7);
- __gcry_mpi_point_init($14);
- __gcry_mpi_point_init($15);
- $32 = (__gcry_mpi_new(0)|0);
- $33 = (__gcry_mpi_new(0)|0);
- $34 = HEAP32[$1>>2]|0;
- $35 = ((($1)) + 4|0);
- $36 = HEAP32[$35>>2]|0;
- $37 = ((($1)) + 8|0);
- $38 = HEAP32[$37>>2]|0;
- $39 = ((($1)) + 12|0);
- $40 = HEAP32[$39>>2]|0;
- $41 = ((($1)) + 16|0);
- $42 = HEAP32[$41>>2]|0;
- $43 = (__gcry_mpi_ec_p_internal_new($34,$36,0,$38,$40,$42)|0);
- $44 = ((($43)) + 12|0);
- $45 = HEAP32[$44>>2]|0;
- $$mask = $45 & -8;
- $46 = ($$mask|0)==(256);
- if (!($46)) {
-  $$0 = 63;
-  STACKTOP = sp;return ($$0|0);
- }
- $47 = (__gcry_ecc_eddsa_decodepoint($5,$43,$7,$8,$9)|0);
- $48 = ($47|0)==(0);
- do {
-  if ($48) {
-   $49 = (__gcry_mpi_ec_curve_point($7,$43)|0);
-   $50 = ($49|0)==(0);
-   if ($50) {
-    $$1 = 195;
-   } else {
-    $51 = (__gcry_get_debug_flag(1)|0);
-    $52 = ($51|0)==(0);
-    if (!($52)) {
-     $53 = HEAP32[$8>>2]|0;
-     $54 = HEAP32[$9>>2]|0;
-     __gcry_log_printhex(57823,$53,$54);
-    }
-    $55 = HEAP32[$9>>2]|0;
-    $56 = ($55|0)==(32);
-    if ($56) {
-     $57 = (__gcry_mpi_get_opaque($0,$6)|0);
-     $58 = HEAP32[$6>>2]|0;
-     $59 = (($58) + 7)|0;
-     $60 = $59 >>> 3;
-     $61 = (__gcry_get_debug_flag(1)|0);
-     $62 = ($61|0)==(0);
-     if (!($62)) {
-      __gcry_log_printhex(57830,$57,$60);
-     }
-     $63 = (__gcry_mpi_get_opaque($2,$6)|0);
-     $64 = HEAP32[$6>>2]|0;
-     $65 = (($64) + 7)|0;
-     $66 = $65 >>> 3;
-     $67 = (__gcry_get_debug_flag(1)|0);
-     $68 = ($67|0)==(0);
-     if (!($68)) {
-      __gcry_log_printhex(70231,$63,$66);
-     }
-     $69 = ($66|0)==(32);
-     if ($69) {
-      $70 = ((($13)) + 12|0);
-      HEAP32[$70>>2] = $63;
-      $71 = ((($13)) + 4|0);
-      HEAP32[$71>>2] = 0;
-      $72 = ((($13)) + 8|0);
-      HEAP32[$72>>2] = 32;
-      $73 = HEAP32[$8>>2]|0;
-      $74 = ((($13)) + 28|0);
-      HEAP32[$74>>2] = $73;
-      $75 = ((($13)) + 20|0);
-      HEAP32[$75>>2] = 0;
-      $76 = HEAP32[$9>>2]|0;
-      $77 = ((($13)) + 24|0);
-      HEAP32[$77>>2] = $76;
-      $78 = ((($13)) + 44|0);
-      HEAP32[$78>>2] = $57;
-      $79 = ((($13)) + 36|0);
-      HEAP32[$79>>2] = 0;
-      $80 = ((($13)) + 40|0);
-      HEAP32[$80>>2] = $60;
-      $81 = (__gcry_md_hash_buffers(10,0,$12,$13,3)|0);
-      $82 = ($81|0)==(0);
-      if ($82) {
-       $83 = HEAP8[$12>>0]|0;
-       $84 = ((($12)) + 63|0);
-       $85 = HEAP8[$84>>0]|0;
-       HEAP8[$12>>0] = $85;
-       HEAP8[$84>>0] = $83;
-       $86 = ((($12)) + 1|0);
-       $87 = HEAP8[$86>>0]|0;
-       $88 = ((($12)) + 62|0);
-       $89 = HEAP8[$88>>0]|0;
-       HEAP8[$86>>0] = $89;
-       HEAP8[$88>>0] = $87;
-       $90 = ((($12)) + 2|0);
-       $91 = HEAP8[$90>>0]|0;
-       $92 = ((($12)) + 61|0);
-       $93 = HEAP8[$92>>0]|0;
-       HEAP8[$90>>0] = $93;
-       HEAP8[$92>>0] = $91;
-       $94 = ((($12)) + 3|0);
-       $95 = HEAP8[$94>>0]|0;
-       $96 = ((($12)) + 60|0);
-       $97 = HEAP8[$96>>0]|0;
-       HEAP8[$94>>0] = $97;
-       HEAP8[$96>>0] = $95;
-       $98 = ((($12)) + 4|0);
-       $99 = HEAP8[$98>>0]|0;
-       $100 = ((($12)) + 59|0);
-       $101 = HEAP8[$100>>0]|0;
-       HEAP8[$98>>0] = $101;
-       HEAP8[$100>>0] = $99;
-       $102 = ((($12)) + 5|0);
-       $103 = HEAP8[$102>>0]|0;
-       $104 = ((($12)) + 58|0);
-       $105 = HEAP8[$104>>0]|0;
-       HEAP8[$102>>0] = $105;
-       HEAP8[$104>>0] = $103;
-       $106 = ((($12)) + 6|0);
-       $107 = HEAP8[$106>>0]|0;
-       $108 = ((($12)) + 57|0);
-       $109 = HEAP8[$108>>0]|0;
-       HEAP8[$106>>0] = $109;
-       HEAP8[$108>>0] = $107;
-       $110 = ((($12)) + 7|0);
-       $111 = HEAP8[$110>>0]|0;
-       $112 = ((($12)) + 56|0);
-       $113 = HEAP8[$112>>0]|0;
-       HEAP8[$110>>0] = $113;
-       HEAP8[$112>>0] = $111;
-       $114 = ((($12)) + 8|0);
-       $115 = HEAP8[$114>>0]|0;
-       $116 = ((($12)) + 55|0);
-       $117 = HEAP8[$116>>0]|0;
-       HEAP8[$114>>0] = $117;
-       HEAP8[$116>>0] = $115;
-       $118 = ((($12)) + 9|0);
-       $119 = HEAP8[$118>>0]|0;
-       $120 = ((($12)) + 54|0);
-       $121 = HEAP8[$120>>0]|0;
-       HEAP8[$118>>0] = $121;
-       HEAP8[$120>>0] = $119;
-       $122 = ((($12)) + 10|0);
-       $123 = HEAP8[$122>>0]|0;
-       $124 = ((($12)) + 53|0);
-       $125 = HEAP8[$124>>0]|0;
-       HEAP8[$122>>0] = $125;
-       HEAP8[$124>>0] = $123;
-       $126 = ((($12)) + 11|0);
-       $127 = HEAP8[$126>>0]|0;
-       $128 = ((($12)) + 52|0);
-       $129 = HEAP8[$128>>0]|0;
-       HEAP8[$126>>0] = $129;
-       HEAP8[$128>>0] = $127;
-       $130 = ((($12)) + 12|0);
-       $131 = HEAP8[$130>>0]|0;
-       $132 = ((($12)) + 51|0);
-       $133 = HEAP8[$132>>0]|0;
-       HEAP8[$130>>0] = $133;
-       HEAP8[$132>>0] = $131;
-       $134 = ((($12)) + 13|0);
-       $135 = HEAP8[$134>>0]|0;
-       $136 = ((($12)) + 50|0);
-       $137 = HEAP8[$136>>0]|0;
-       HEAP8[$134>>0] = $137;
-       HEAP8[$136>>0] = $135;
-       $138 = ((($12)) + 14|0);
-       $139 = HEAP8[$138>>0]|0;
-       $140 = ((($12)) + 49|0);
-       $141 = HEAP8[$140>>0]|0;
-       HEAP8[$138>>0] = $141;
-       HEAP8[$140>>0] = $139;
-       $142 = ((($12)) + 15|0);
-       $143 = HEAP8[$142>>0]|0;
-       $144 = ((($12)) + 48|0);
-       $145 = HEAP8[$144>>0]|0;
-       HEAP8[$142>>0] = $145;
-       HEAP8[$144>>0] = $143;
-       $146 = ((($12)) + 16|0);
-       $147 = HEAP8[$146>>0]|0;
-       $148 = ((($12)) + 47|0);
-       $149 = HEAP8[$148>>0]|0;
-       HEAP8[$146>>0] = $149;
-       HEAP8[$148>>0] = $147;
-       $150 = ((($12)) + 17|0);
-       $151 = HEAP8[$150>>0]|0;
-       $152 = ((($12)) + 46|0);
-       $153 = HEAP8[$152>>0]|0;
-       HEAP8[$150>>0] = $153;
-       HEAP8[$152>>0] = $151;
-       $154 = ((($12)) + 18|0);
-       $155 = HEAP8[$154>>0]|0;
-       $156 = ((($12)) + 45|0);
-       $157 = HEAP8[$156>>0]|0;
-       HEAP8[$154>>0] = $157;
-       HEAP8[$156>>0] = $155;
-       $158 = ((($12)) + 19|0);
-       $159 = HEAP8[$158>>0]|0;
-       $160 = ((($12)) + 44|0);
-       $161 = HEAP8[$160>>0]|0;
-       HEAP8[$158>>0] = $161;
-       HEAP8[$160>>0] = $159;
-       $162 = ((($12)) + 20|0);
-       $163 = HEAP8[$162>>0]|0;
-       $164 = ((($12)) + 43|0);
-       $165 = HEAP8[$164>>0]|0;
-       HEAP8[$162>>0] = $165;
-       HEAP8[$164>>0] = $163;
-       $166 = ((($12)) + 21|0);
-       $167 = HEAP8[$166>>0]|0;
-       $168 = ((($12)) + 42|0);
-       $169 = HEAP8[$168>>0]|0;
-       HEAP8[$166>>0] = $169;
-       HEAP8[$168>>0] = $167;
-       $170 = ((($12)) + 22|0);
-       $171 = HEAP8[$170>>0]|0;
-       $172 = ((($12)) + 41|0);
-       $173 = HEAP8[$172>>0]|0;
-       HEAP8[$170>>0] = $173;
-       HEAP8[$172>>0] = $171;
-       $174 = ((($12)) + 23|0);
-       $175 = HEAP8[$174>>0]|0;
-       $176 = ((($12)) + 40|0);
-       $177 = HEAP8[$176>>0]|0;
-       HEAP8[$174>>0] = $177;
-       HEAP8[$176>>0] = $175;
-       $178 = ((($12)) + 24|0);
-       $179 = HEAP8[$178>>0]|0;
-       $180 = ((($12)) + 39|0);
-       $181 = HEAP8[$180>>0]|0;
-       HEAP8[$178>>0] = $181;
-       HEAP8[$180>>0] = $179;
-       $182 = ((($12)) + 25|0);
-       $183 = HEAP8[$182>>0]|0;
-       $184 = ((($12)) + 38|0);
-       $185 = HEAP8[$184>>0]|0;
-       HEAP8[$182>>0] = $185;
-       HEAP8[$184>>0] = $183;
-       $186 = ((($12)) + 26|0);
-       $187 = HEAP8[$186>>0]|0;
-       $188 = ((($12)) + 37|0);
-       $189 = HEAP8[$188>>0]|0;
-       HEAP8[$186>>0] = $189;
-       HEAP8[$188>>0] = $187;
-       $190 = ((($12)) + 27|0);
-       $191 = HEAP8[$190>>0]|0;
-       $192 = ((($12)) + 36|0);
-       $193 = HEAP8[$192>>0]|0;
-       HEAP8[$190>>0] = $193;
-       HEAP8[$192>>0] = $191;
-       $194 = ((($12)) + 28|0);
-       $195 = HEAP8[$194>>0]|0;
-       $196 = ((($12)) + 35|0);
-       $197 = HEAP8[$196>>0]|0;
-       HEAP8[$194>>0] = $197;
-       HEAP8[$196>>0] = $195;
-       $198 = ((($12)) + 29|0);
-       $199 = HEAP8[$198>>0]|0;
-       $200 = ((($12)) + 34|0);
-       $201 = HEAP8[$200>>0]|0;
-       HEAP8[$198>>0] = $201;
-       HEAP8[$200>>0] = $199;
-       $202 = ((($12)) + 30|0);
-       $203 = HEAP8[$202>>0]|0;
-       $204 = ((($12)) + 33|0);
-       $205 = HEAP8[$204>>0]|0;
-       HEAP8[$202>>0] = $205;
-       HEAP8[$204>>0] = $203;
-       $206 = ((($12)) + 31|0);
-       $207 = HEAP8[$206>>0]|0;
-       $208 = ((($12)) + 32|0);
-       $209 = HEAP8[$208>>0]|0;
-       HEAP8[$206>>0] = $209;
-       HEAP8[$208>>0] = $207;
-       $210 = (__gcry_get_debug_flag(1)|0);
-       $211 = ($210|0)==(0);
-       if (!($211)) {
-        __gcry_log_printhex(57849,$12,64);
-       }
-       __gcry_mpi_set_buffer($32,$12,64,0);
-       $212 = (__gcry_mpi_get_opaque_copy($3,$6)|0);
-       $213 = HEAP32[$6>>2]|0;
-       $214 = (($213) + 7)|0;
-       $215 = $214 >>> 3;
-       $216 = $214 >>> 4;
-       $217 = ($216|0)==(0);
-       if (!($217)) {
-        $218 = (($215) + -1)|0;
-        $$016$i89 = 0;
-        while(1) {
-         $219 = (($212) + ($$016$i89)|0);
-         $220 = HEAP8[$219>>0]|0;
-         $221 = (($218) - ($$016$i89))|0;
-         $222 = (($212) + ($221)|0);
-         $223 = HEAP8[$222>>0]|0;
-         HEAP8[$219>>0] = $223;
-         HEAP8[$222>>0] = $220;
-         $224 = (($$016$i89) + 1)|0;
-         $exitcond$i90 = ($224|0)==($216|0);
-         if ($exitcond$i90) {
-          break;
-         } else {
-          $$016$i89 = $224;
-         }
-        }
-       }
-       $225 = (__gcry_get_debug_flag(1)|0);
-       $226 = ($225|0)==(0);
-       if (!($226)) {
-        __gcry_log_printhex(70238,$212,$215);
-       }
-       __gcry_mpi_set_buffer($33,$212,$215,0);
-       __gcry_free($212);
-       $227 = ($215|0)==(32);
-       if ($227) {
-        $228 = ((($1)) + 20|0);
-        __gcry_mpi_ec_mul_point($14,$33,$228,$43);
-        __gcry_mpi_ec_mul_point($15,$32,$7,$43);
-        $229 = HEAP32[$15>>2]|0;
-        __gcry_mpi_neg($229,$229);
-        __gcry_mpi_ec_add_points($14,$14,$15,$43);
-        $230 = (__gcry_ecc_eddsa_encodepoint($14,$43,$33,$32,0,$10,$11)|0);
-        $231 = ($230|0)==(0);
-        if ($231) {
-         $232 = HEAP32[$11>>2]|0;
-         $233 = ($232|0)==(32);
-         if (!($233)) {
-          $$1 = 8;
-          break;
-         }
-         $234 = HEAP32[$10>>2]|0;
-         $235 = (_memcmp($234,$63,32)|0);
-         $236 = ($235|0)==(0);
-         $spec$select = $236 ? 0 : 8;
-         $$1 = $spec$select;
-        } else {
-         $$1 = $230;
-        }
-       } else {
-        $$1 = 139;
-       }
-      } else {
-       $$1 = $81;
-      }
-     } else {
-      $$1 = 139;
-     }
-    } else {
-     $$1 = 139;
-    }
-   }
-  } else {
-   $$1 = $47;
-  }
- } while(0);
- $237 = HEAP32[$8>>2]|0;
- __gcry_free($237);
- $238 = HEAP32[$10>>2]|0;
- __gcry_free($238);
- __gcry_mpi_ec_free($43);
- __gcry_mpi_release($33);
- __gcry_mpi_release($32);
- __gcry_mpi_point_free_parts($14);
- __gcry_mpi_point_free_parts($15);
- __gcry_mpi_point_free_parts($7);
- $$0 = $$1;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_curve_free($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 8|0);
- $2 = HEAP32[$1>>2]|0;
- __gcry_mpi_free($2);
- HEAP32[$1>>2] = 0;
- $3 = ((($0)) + 12|0);
- $4 = HEAP32[$3>>2]|0;
- __gcry_mpi_free($4);
- HEAP32[$3>>2] = 0;
- $5 = ((($0)) + 16|0);
- $6 = HEAP32[$5>>2]|0;
- __gcry_mpi_free($6);
- HEAP32[$5>>2] = 0;
- $7 = ((($0)) + 20|0);
- __gcry_mpi_point_free_parts($7);
- $8 = ((($0)) + 32|0);
- $9 = HEAP32[$8>>2]|0;
- __gcry_mpi_free($9);
- HEAP32[$8>>2] = 0;
- $10 = ((($0)) + 36|0);
- $11 = HEAP32[$10>>2]|0;
- __gcry_mpi_free($11);
- HEAP32[$10>>2] = 0;
- return;
-}
-function __gcry_ecc_curve_copy($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $2 = sp;
- $3 = HEAP32[$1>>2]|0;
- HEAP32[$2>>2] = $3;
- $4 = ((($1)) + 4|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ((($2)) + 4|0);
- HEAP32[$6>>2] = $5;
- $7 = ((($1)) + 40|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($2)) + 40|0);
- HEAP32[$9>>2] = $8;
- $10 = ((($1)) + 8|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = (__gcry_mpi_copy($11)|0);
- $13 = ((($2)) + 8|0);
- HEAP32[$13>>2] = $12;
- $14 = ((($1)) + 12|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (__gcry_mpi_copy($15)|0);
- $17 = ((($2)) + 12|0);
- HEAP32[$17>>2] = $16;
- $18 = ((($1)) + 16|0);
- $19 = HEAP32[$18>>2]|0;
- $20 = (__gcry_mpi_copy($19)|0);
- $21 = ((($2)) + 16|0);
- HEAP32[$21>>2] = $20;
- $22 = ((($2)) + 20|0);
- __gcry_mpi_point_init($22);
- $23 = HEAP32[$22>>2]|0;
- $24 = ((($1)) + 20|0);
- $25 = HEAP32[$24>>2]|0;
- (__gcry_mpi_set($23,$25)|0);
- $26 = ((($2)) + 24|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($1)) + 24|0);
- $29 = HEAP32[$28>>2]|0;
- (__gcry_mpi_set($27,$29)|0);
- $30 = ((($2)) + 28|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = ((($1)) + 28|0);
- $33 = HEAP32[$32>>2]|0;
- (__gcry_mpi_set($31,$33)|0);
- $34 = ((($1)) + 32|0);
- $35 = HEAP32[$34>>2]|0;
- $36 = (__gcry_mpi_copy($35)|0);
- $37 = ((($2)) + 32|0);
- HEAP32[$37>>2] = $36;
- $38 = ((($1)) + 36|0);
- $39 = HEAP32[$38>>2]|0;
- $40 = (__gcry_mpi_copy($39)|0);
- $41 = ((($2)) + 36|0);
- HEAP32[$41>>2] = $40;
- dest=$0; src=$2; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; 
dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));
- STACKTOP = sp;return;
-}
-function __gcry_ecc_model2str($0) {
- $0 = $0|0;
- var $$0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- switch ($0|0) {
- case 0:  {
-  $$0 = 57871;
-  break;
- }
- case 1:  {
-  $$0 = 63906;
-  break;
- }
- case 2:  {
-  $$0 = 57863;
-  break;
- }
- default: {
-  $$0 = 59741;
- }
- }
- return ($$0|0);
-}
-function __gcry_ecc_dialect2str($0) {
- $0 = $0|0;
- var $switch$select = 0, $switch$select3 = 0, $switch$selectcmp = 0, 
$switch$selectcmp2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $switch$selectcmp = ($0|0)==(1);
- $switch$select = $switch$selectcmp ? 57883 : 59741;
- $switch$selectcmp2 = ($0|0)==(0);
- $switch$select3 = $switch$selectcmp2 ? 57891 : $switch$select;
- return ($switch$select3|0);
-}
-function __gcry_ecc_ec2os($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 24|0;
- $4 = sp + 20|0;
- $5 = (__gcry_mpi_get_nbits($2)|0);
- $6 = (($5) + 7)|0;
- $7 = $6 >>> 3;
- $8 = $7 << 1;
- $9 = $8 | 1;
- $10 = (__gcry_xmalloc($9)|0);
- HEAP8[$10>>0] = 4;
- $11 = ((($10)) + 1|0);
- $12 = (__gcry_mpi_print(5,$11,$7,$3,$0)|0);
- $13 = ($12|0)==(0);
- if (!($13)) {
-  $14 = (_gpg_strerror($12)|0);
-  HEAP32[$vararg_buffer>>2] = $14;
-  __gcry_log_fatal(57900,$vararg_buffer);
-  // unreachable;
- }
- $15 = HEAP32[$3>>2]|0;
- $16 = ($7>>>0)>($15>>>0);
- $17 = (($7) - ($15))|0;
- if ($16) {
-  $18 = (($11) + ($17)|0);
-  _memmove(($18|0),($11|0),($15|0))|0;
-  _memset(($11|0),0,($17|0))|0;
- }
- $19 = (($11) + ($7)|0);
- $20 = (__gcry_mpi_print(5,$19,$7,$3,$1)|0);
- $21 = ($20|0)==(0);
- if (!($21)) {
-  $22 = (_gpg_strerror($20)|0);
-  HEAP32[$vararg_buffer1>>2] = $22;
-  __gcry_log_fatal(57900,$vararg_buffer1);
-  // unreachable;
- }
- $23 = HEAP32[$3>>2]|0;
- $24 = ($7>>>0)>($23>>>0);
- $25 = (($7) - ($23))|0;
- if ($24) {
-  $26 = (($19) + ($25)|0);
-  _memmove(($26|0),($19|0),($23|0))|0;
-  _memset(($19|0),0,($25|0))|0;
- }
- $27 = (__gcry_mpi_scan($4,5,$10,$9,0)|0);
- $28 = ($27|0)==(0);
- if ($28) {
-  __gcry_free($10);
-  $30 = HEAP32[$4>>2]|0;
-  STACKTOP = sp;return ($30|0);
- } else {
-  $29 = (_gpg_strerror($27)|0);
-  HEAP32[$vararg_buffer4>>2] = $29;
-  __gcry_log_fatal(57922,$vararg_buffer4);
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_mpi_ec_ec2os($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_new(0)|0);
- $3 = (__gcry_mpi_new(0)|0);
- $4 = (__gcry_mpi_ec_get_affine($2,$3,$0,$1)|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  $6 = ((($1)) + 16|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = (__gcry_ecc_ec2os($2,$3,$7)|0);
-  $$0 = $8;
- } else {
-  $$0 = 0;
- }
- __gcry_mpi_free($2);
- __gcry_mpi_free($3);
- return ($$0|0);
-}
-function __gcry_ecc_os2ec($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$032 = 0, $$1 = 0, $$134 = 0, $$pr = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 
0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp + 12|0;
- $3 = sp + 8|0;
- $4 = sp + 4|0;
- $5 = sp;
- $6 = ($1|0)==(0|0);
- do {
-  if ($6) {
-   label = 6;
-  } else {
-   $7 = ((($1)) + 12|0);
-   $8 = HEAP32[$7>>2]|0;
-   $9 = $8 & 4;
-   $10 = ($9|0)==(0);
-   if ($10) {
-    label = 6;
-   } else {
-    $11 = (__gcry_mpi_get_opaque($1,$5)|0);
-    $12 = ($11|0)==(0|0);
-    if (!($12)) {
-     $13 = HEAP32[$5>>2]|0;
-     $14 = (($13) + 7)|0;
-     $15 = $14 >>> 3;
-     HEAP32[$2>>2] = $15;
-     $$032 = $11;$$1 = 0;$23 = $15;
-     break;
-    }
-    $$134 = 65;
-    STACKTOP = sp;return ($$134|0);
-   }
-  }
- } while(0);
- do {
-  if ((label|0) == 6) {
-   $16 = (__gcry_mpi_get_nbits($1)|0);
-   $17 = (($16) + 7)|0;
-   $18 = $17 >>> 3;
-   HEAP32[$2>>2] = $18;
-   $19 = (__gcry_xmalloc($18)|0);
-   $20 = (__gcry_mpi_print(5,$19,$18,$2,$1)|0);
-   $21 = ($20|0)==(0);
-   if ($21) {
-    $$pr = HEAP32[$2>>2]|0;
-    $$032 = $19;$$1 = $19;$23 = $$pr;
-    break;
-   }
-   __gcry_free($19);
-   $$134 = $20;
-   STACKTOP = sp;return ($$134|0);
-  }
- } while(0);
- $22 = ($23|0)==(0);
- if ($22) {
-  __gcry_free($$1);
-  $$134 = 65;
-  STACKTOP = sp;return ($$134|0);
- }
- $24 = HEAP8[$$032>>0]|0;
- $25 = ($24<<24>>24)==(4);
- if (!($25)) {
-  __gcry_free($$1);
-  $$134 = 69;
-  STACKTOP = sp;return ($$134|0);
- }
- $26 = (($23) + -1)|0;
- $27 = $26 & 1;
- $28 = ($27|0)==(0);
- if (!($28)) {
-  __gcry_free($$1);
-  $$134 = 65;
-  STACKTOP = sp;return ($$134|0);
- }
- $29 = $26 >>> 1;
- HEAP32[$2>>2] = $29;
- $30 = ((($$032)) + 1|0);
- $31 = (__gcry_mpi_scan($3,5,$30,$29,0)|0);
- $32 = ($31|0)==(0);
- if (!($32)) {
-  __gcry_free($$1);
-  $$134 = $31;
-  STACKTOP = sp;return ($$134|0);
- }
- $33 = HEAP32[$2>>2]|0;
- $34 = (($30) + ($33)|0);
- $35 = (__gcry_mpi_scan($4,5,$34,$33,0)|0);
- __gcry_free($$1);
- $36 = ($35|0)==(0);
- if ($36) {
-  $38 = HEAP32[$0>>2]|0;
-  $39 = HEAP32[$3>>2]|0;
-  (__gcry_mpi_set($38,$39)|0);
-  $40 = ((($0)) + 4|0);
-  $41 = HEAP32[$40>>2]|0;
-  $42 = HEAP32[$4>>2]|0;
-  (__gcry_mpi_set($41,$42)|0);
-  $43 = ((($0)) + 8|0);
-  $44 = HEAP32[$43>>2]|0;
-  (__gcry_mpi_set_ui($44,1)|0);
-  $45 = HEAP32[$3>>2]|0;
-  __gcry_mpi_free($45);
-  $46 = HEAP32[$4>>2]|0;
-  __gcry_mpi_free($46);
-  $$134 = 0;
-  STACKTOP = sp;return ($$134|0);
- } else {
-  $37 = HEAP32[$3>>2]|0;
-  __gcry_mpi_free($37);
-  $$134 = $35;
-  STACKTOP = sp;return ($$134|0);
- }
- return (0)|0;
-}
-function __gcry_ecc_compute_public($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$033 = 0, $$034 = 0, $$03537 = 0, $$03538 = 0, $$1 = 0, $$241 = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 
= 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = ($2|0)==(0|0);
- if ($5) {
-  $6 = ((($1)) + 28|0);
-  $7 = HEAP32[$6>>2]|0;
-  $$034 = $7;
- } else {
-  $$034 = $2;
- }
- $8 = ($3|0)==(0|0);
- if ($8) {
-  $9 = ((($1)) + 44|0);
-  $10 = HEAP32[$9>>2]|0;
-  $$033 = $10;
- } else {
-  $$033 = $3;
- }
- $11 = ($$033|0)!=(0|0);
- $12 = ($$034|0)!=(0|0);
- $or$cond = $12 & $11;
- if (!($or$cond)) {
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $13 = ((($1)) + 16|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ($14|0)==(0|0);
- if ($15) {
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $16 = ((($1)) + 20|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = ($17|0)==(0|0);
- if ($18) {
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $19 = HEAP32[$1>>2]|0;
- $20 = ($19|0)==(2);
- if ($20) {
-  $21 = ((($1)) + 24|0);
-  $22 = HEAP32[$21>>2]|0;
-  $23 = ($22|0)==(0|0);
-  if ($23) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  }
- }
- $24 = ((($1)) + 4|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = ($25|0)==(1);
- if ($26) {
-  $27 = ((($1)) + 8|0);
-  $28 = HEAP32[$27>>2]|0;
-  $29 = $28 & 4096;
-  $30 = ($29|0)==(0);
-  if (!($30)) {
-   $31 = (__gcry_ecc_eddsa_compute_h_d($4,$$033,$1)|0);
-   $32 = ($31|0)==(0);
-   if (!($32)) {
-    $$1 = 0;
-    STACKTOP = sp;return ($$1|0);
-   }
-   $33 = (__gcry_mpi_snew(0)|0);
-   $34 = HEAP32[$4>>2]|0;
-   __gcry_mpi_set_buffer($33,$34,32,0);
-   $35 = HEAP32[$4>>2]|0;
-   __gcry_free($35);
-   $36 = ($0|0)==(0|0);
-   if ($36) {
-    $37 = (__gcry_mpi_point_new(0)|0);
-    $38 = ($37|0)==(0|0);
-    if ($38) {
-     $$03538 = 0;
-    } else {
-     $$03537 = $37;
-     label = 15;
-    }
-   } else {
-    $$03537 = $0;
-    label = 15;
-   }
-   if ((label|0) == 15) {
-    __gcry_mpi_ec_mul_point($$03537,$33,$$034,$1);
-    $$03538 = $$03537;
-   }
-   __gcry_mpi_free($33);
-   $$1 = $$03538;
-   STACKTOP = sp;return ($$1|0);
-  }
- }
- $39 = ($0|0)==(0|0);
- if ($39) {
-  $40 = (__gcry_mpi_point_new(0)|0);
-  $41 = ($40|0)==(0|0);
-  if ($41) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  } else {
-   $$241 = $40;
-  }
- } else {
-  $$241 = $0;
- }
- __gcry_mpi_ec_mul_point($$241,$$033,$$034,$1);
- $$1 = $$241;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_hmac_selftest($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$022$i$i = 0, $$022$i20$i = 0, $$022$i28$i = 0, $$035$i$i = 0, $$036$i$i 
= 0, $$038$ph$i$i = 0, $$03949$i$i = 0, $$141$i$i = 0, $$23440$i$i = 0, 
$$lcssa$i$i = 0, $$lcssa$i22$i = 0, $$lcssa$i30$i = 0, $$lcssa21$i$i = 0, 
$$lcssa21$i21$i = 0, $$lcssa21$i29$i = 0, $$lcssa43$i$i = 0, $$lcssa44$i$i = 0, 
$$lcssa47$i$i = 0, $$lcssa48$i$i = 0, $10 = 0;
- var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, 
$114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0;
- var $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 
= 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0;
- var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0;
- var $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 
= 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0;
- var $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 
= 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0;
- var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, 
$198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, 
$205 = 0, $206 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $exitcond$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(144|0);
- $3 = sp + 128|0;
- $4 = sp;
- $5 = (__gcry_md_algo_info($0,8,0,0)|0);
- $6 = ($5|0)==(0);
- if (!($6)) {
-  $201 = ($2|0)==(0|0);
-  if ($201) {
-   $202 = 16777221;
-   STACKTOP = sp;return ($202|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](58127,$0,59834,58227);
-  $202 = 16777221;
-  STACKTOP = sp;return ($202|0);
- }
- switch ($0|0) {
- case 2:  {
-  HEAP8[$4>>0] = 0;
-  $7 = ((($4)) + 1|0);
-  HEAP8[$7>>0] = 1;
-  $8 = ((($4)) + 2|0);
-  HEAP8[$8>>0] = 2;
-  $9 = ((($4)) + 3|0);
-  HEAP8[$9>>0] = 3;
-  $10 = ((($4)) + 4|0);
-  HEAP8[$10>>0] = 4;
-  $11 = ((($4)) + 5|0);
-  HEAP8[$11>>0] = 5;
-  $12 = ((($4)) + 6|0);
-  HEAP8[$12>>0] = 6;
-  $13 = ((($4)) + 7|0);
-  HEAP8[$13>>0] = 7;
-  $14 = ((($4)) + 8|0);
-  HEAP8[$14>>0] = 8;
-  $15 = ((($4)) + 9|0);
-  HEAP8[$15>>0] = 9;
-  $16 = ((($4)) + 10|0);
-  HEAP8[$16>>0] = 10;
-  $17 = ((($4)) + 11|0);
-  HEAP8[$17>>0] = 11;
-  $18 = ((($4)) + 12|0);
-  HEAP8[$18>>0] = 12;
-  $19 = ((($4)) + 13|0);
-  HEAP8[$19>>0] = 13;
-  $20 = ((($4)) + 14|0);
-  HEAP8[$20>>0] = 14;
-  $21 = ((($4)) + 15|0);
-  HEAP8[$21>>0] = 15;
-  $22 = ((($4)) + 16|0);
-  HEAP8[$22>>0] = 16;
-  $23 = ((($4)) + 17|0);
-  HEAP8[$23>>0] = 17;
-  $24 = ((($4)) + 18|0);
-  HEAP8[$24>>0] = 18;
-  $25 = ((($4)) + 19|0);
-  HEAP8[$25>>0] = 19;
-  $26 = ((($4)) + 20|0);
-  HEAP8[$26>>0] = 20;
-  $27 = ((($4)) + 21|0);
-  HEAP8[$27>>0] = 21;
-  $28 = ((($4)) + 22|0);
-  HEAP8[$28>>0] = 22;
-  $29 = ((($4)) + 23|0);
-  HEAP8[$29>>0] = 23;
-  $30 = ((($4)) + 24|0);
-  HEAP8[$30>>0] = 24;
-  $31 = ((($4)) + 25|0);
-  HEAP8[$31>>0] = 25;
-  $32 = ((($4)) + 26|0);
-  HEAP8[$32>>0] = 26;
-  $33 = ((($4)) + 27|0);
-  HEAP8[$33>>0] = 27;
-  $34 = ((($4)) + 28|0);
-  HEAP8[$34>>0] = 28;
-  $35 = ((($4)) + 29|0);
-  HEAP8[$35>>0] = 29;
-  $36 = ((($4)) + 30|0);
-  HEAP8[$36>>0] = 30;
-  $37 = ((($4)) + 31|0);
-  HEAP8[$37>>0] = 31;
-  $38 = ((($4)) + 32|0);
-  HEAP8[$38>>0] = 32;
-  $39 = ((($4)) + 33|0);
-  HEAP8[$39>>0] = 33;
-  $40 = ((($4)) + 34|0);
-  HEAP8[$40>>0] = 34;
-  $41 = ((($4)) + 35|0);
-  HEAP8[$41>>0] = 35;
-  $42 = ((($4)) + 36|0);
-  HEAP8[$42>>0] = 36;
-  $43 = ((($4)) + 37|0);
-  HEAP8[$43>>0] = 37;
-  $44 = ((($4)) + 38|0);
-  HEAP8[$44>>0] = 38;
-  $45 = ((($4)) + 39|0);
-  HEAP8[$45>>0] = 39;
-  $46 = ((($4)) + 40|0);
-  HEAP8[$46>>0] = 40;
-  $47 = ((($4)) + 41|0);
-  HEAP8[$47>>0] = 41;
-  $48 = ((($4)) + 42|0);
-  HEAP8[$48>>0] = 42;
-  $49 = ((($4)) + 43|0);
-  HEAP8[$49>>0] = 43;
-  $50 = ((($4)) + 44|0);
-  HEAP8[$50>>0] = 44;
-  $51 = ((($4)) + 45|0);
-  HEAP8[$51>>0] = 45;
-  $52 = ((($4)) + 46|0);
-  HEAP8[$52>>0] = 46;
-  $53 = ((($4)) + 47|0);
-  HEAP8[$53>>0] = 47;
-  $54 = ((($4)) + 48|0);
-  HEAP8[$54>>0] = 48;
-  $55 = ((($4)) + 49|0);
-  HEAP8[$55>>0] = 49;
-  $56 = ((($4)) + 50|0);
-  HEAP8[$56>>0] = 50;
-  $57 = ((($4)) + 51|0);
-  HEAP8[$57>>0] = 51;
-  $58 = ((($4)) + 52|0);
-  HEAP8[$58>>0] = 52;
-  $59 = ((($4)) + 53|0);
-  HEAP8[$59>>0] = 53;
-  $60 = ((($4)) + 54|0);
-  HEAP8[$60>>0] = 54;
-  $61 = ((($4)) + 55|0);
-  HEAP8[$61>>0] = 55;
-  $62 = ((($4)) + 56|0);
-  HEAP8[$62>>0] = 56;
-  $63 = ((($4)) + 57|0);
-  HEAP8[$63>>0] = 57;
-  $64 = ((($4)) + 58|0);
-  HEAP8[$64>>0] = 58;
-  $65 = ((($4)) + 59|0);
-  HEAP8[$65>>0] = 59;
-  $66 = ((($4)) + 60|0);
-  HEAP8[$66>>0] = 60;
-  $67 = ((($4)) + 61|0);
-  HEAP8[$67>>0] = 61;
-  $68 = ((($4)) + 62|0);
-  HEAP8[$68>>0] = 62;
-  $69 = ((($4)) + 63|0);
-  HEAP8[$69>>0] = 63;
-  $70 = (_check_one(2,57943,9,$4,64,57953,20)|0);
-  $71 = ($70|0)==(0|0);
-  do {
-   if ($71) {
-    $72 = ($1|0)==(0);
-    if (!($72)) {
-     HEAP8[$4>>0] = 48;
-     HEAP8[$7>>0] = 49;
-     HEAP8[$8>>0] = 50;
-     HEAP8[$9>>0] = 51;
-     HEAP8[$10>>0] = 52;
-     HEAP8[$11>>0] = 53;
-     HEAP8[$12>>0] = 54;
-     HEAP8[$13>>0] = 55;
-     HEAP8[$14>>0] = 56;
-     HEAP8[$15>>0] = 57;
-     HEAP8[$16>>0] = 58;
-     HEAP8[$17>>0] = 59;
-     HEAP8[$18>>0] = 60;
-     HEAP8[$19>>0] = 61;
-     HEAP8[$20>>0] = 62;
-     HEAP8[$21>>0] = 63;
-     HEAP8[$22>>0] = 64;
-     HEAP8[$23>>0] = 65;
-     HEAP8[$24>>0] = 66;
-     HEAP8[$25>>0] = 67;
-     $73 = (_check_one(2,57974,9,$4,20,57984,20)|0);
-     $74 = ($73|0)==(0|0);
-     if (!($74)) {
-      $$035$i$i = $73;$$036$i$i = 58082;
-      break;
-     }
-     $$141$i$i = 80;$$23440$i$i = 0;
-     while(1) {
-      $75 = (($$141$i$i) + 1)|0;
-      $76 = $$141$i$i&255;
-      $77 = (($4) + ($$23440$i$i)|0);
-      HEAP8[$77>>0] = $76;
-      $78 = (($$23440$i$i) + 1)|0;
-      $exitcond$i$i = ($78|0)==(100);
-      if ($exitcond$i$i) {
-       break;
-      } else {
-       $$141$i$i = $75;$$23440$i$i = $78;
-      }
-     }
-     $79 = (_check_one(2,58005,9,$4,100,58015,20)|0);
-     $80 = ($79|0)==(0|0);
-     if (!($80)) {
-      $$035$i$i = $79;$$036$i$i = 58097;
-      break;
-     }
-     HEAP8[$4>>0] = 112;
-     HEAP8[$7>>0] = 113;
-     HEAP8[$8>>0] = 114;
-     HEAP8[$9>>0] = 115;
-     HEAP8[$10>>0] = 116;
-     HEAP8[$11>>0] = 117;
-     HEAP8[$12>>0] = 118;
-     HEAP8[$13>>0] = 119;
-     HEAP8[$14>>0] = 120;
-     HEAP8[$15>>0] = 121;
-     HEAP8[$16>>0] = 122;
-     HEAP8[$17>>0] = 123;
-     HEAP8[$18>>0] = 124;
-     HEAP8[$19>>0] = 125;
-     HEAP8[$20>>0] = 126;
-     HEAP8[$21>>0] = 127;
-     HEAP8[$22>>0] = -128;
-     HEAP8[$23>>0] = -127;
-     HEAP8[$24>>0] = -126;
-     HEAP8[$25>>0] = -125;
-     HEAP8[$26>>0] = -124;
-     HEAP8[$27>>0] = -123;
-     HEAP8[$28>>0] = -122;
-     HEAP8[$29>>0] = -121;
-     HEAP8[$30>>0] = -120;
-     HEAP8[$31>>0] = -119;
-     HEAP8[$32>>0] = -118;
-     HEAP8[$33>>0] = -117;
-     HEAP8[$34>>0] = -116;
-     HEAP8[$35>>0] = -115;
-     HEAP8[$36>>0] = -114;
-     HEAP8[$37>>0] = -113;
-     HEAP8[$38>>0] = -112;
-     HEAP8[$39>>0] = -111;
-     HEAP8[$40>>0] = -110;
-     HEAP8[$41>>0] = -109;
-     HEAP8[$42>>0] = -108;
-     HEAP8[$43>>0] = -107;
-     HEAP8[$44>>0] = -106;
-     HEAP8[$45>>0] = -105;
-     HEAP8[$46>>0] = -104;
-     HEAP8[$47>>0] = -103;
-     HEAP8[$48>>0] = -102;
-     HEAP8[$49>>0] = -101;
-     HEAP8[$50>>0] = -100;
-     HEAP8[$51>>0] = -99;
-     HEAP8[$52>>0] = -98;
-     HEAP8[$53>>0] = -97;
-     HEAP8[$54>>0] = -96;
-     $81 = (_check_one(2,58036,9,$4,49,58046,20)|0);
-     $82 = ($81|0)==(0|0);
-     if (!($82)) {
-      $$035$i$i = $81;$$036$i$i = 58112;
-      break;
-     }
-    }
-    $202 = 0;
-    STACKTOP = sp;return ($202|0);
-   } else {
-    $$035$i$i = $70;$$036$i$i = 58067;
-   }
-  } while(0);
-  $83 = ($2|0)==(0|0);
-  if (!($83)) {
-   FUNCTION_TABLE_viiii[$2 & 63](58127,2,$$036$i$i,$$035$i$i);
-  }
-  $202 = 16777266;
-  STACKTOP = sp;return ($202|0);
-  break;
- }
- case 11:  {
-  $84 = HEAP32[400]|0;
-  $85 = ($84|0)==(0|0);
-  if ($85) {
-   $202 = 0;
-   STACKTOP = sp;return ($202|0);
-  }
-  $86 = ($1|0)==(0);
-  L30: do {
-   if ($86) {
-    $87 = HEAP32[(1604)>>2]|0;
-    $88 = (_strlen($87)|0);
-    $89 = HEAP32[(1608)>>2]|0;
-    $90 = (_strlen($89)|0);
-    $91 = (_check_one(11,$87,$88,$89,$90,(1612),28)|0);
-    $92 = ($91|0)==(0|0);
-    if ($92) {
-     $202 = 0;
-     STACKTOP = sp;return ($202|0);
-    } else {
-     $$lcssa$i$i = $91;$$lcssa21$i$i = $84;
-    }
-   } else {
-    $$022$i$i = 0;$203 = $84;
-    while(1) {
-     $93 = (((1600 + (($$022$i$i*40)|0)|0)) + 4|0);
-     $94 = HEAP32[$93>>2]|0;
-     $95 = (_strlen($94)|0);
-     $96 = (((1600 + (($$022$i$i*40)|0)|0)) + 8|0);
-     $97 = HEAP32[$96>>2]|0;
-     $98 = (_strlen($97)|0);
-     $99 = (((1600 + (($$022$i$i*40)|0)|0)) + 12|0);
-     $100 = (_check_one(11,$94,$95,$97,$98,$99,28)|0);
-     $101 = ($100|0)==(0|0);
-     if (!($101)) {
-      $$lcssa$i$i = $100;$$lcssa21$i$i = $203;
-      break L30;
-     }
-     $102 = (($$022$i$i) + 1)|0;
-     $103 = (1600 + (($102*40)|0)|0);
-     $104 = HEAP32[$103>>2]|0;
-     $105 = ($104|0)==(0|0);
-     if ($105) {
-      $202 = 0;
-      break;
-     } else {
-      $$022$i$i = $102;$203 = $104;
-     }
-    }
-    STACKTOP = sp;return ($202|0);
-   }
-  } while(0);
-  $106 = ($2|0)==(0|0);
-  if ($106) {
-   $202 = 16777266;
-   STACKTOP = sp;return ($202|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](58127,11,$$lcssa21$i$i,$$lcssa$i$i);
-  $202 = 16777266;
-  STACKTOP = sp;return ($202|0);
-  break;
- }
- case 8:  {
-  $107 = HEAP32[472]|0;
-  $108 = ($107|0)==(0|0);
-  if ($108) {
-   $202 = 0;
-   STACKTOP = sp;return ($202|0);
-  }
-  $109 = ($1|0)==(0);
-  L47: do {
-   if ($109) {
-    $110 = HEAP32[(1892)>>2]|0;
-    $111 = (_strlen($110)|0);
-    $112 = HEAP32[(1896)>>2]|0;
-    $113 = (_strlen($112)|0);
-    $114 = (_check_one(8,$110,$111,$112,$113,(1900),32)|0);
-    $115 = ($114|0)==(0|0);
-    if ($115) {
-     $116 = HEAP32[(1896)>>2]|0;
-     $117 = (_strlen($116)|0);
-     $118 = (__gcry_hmac256_new($116,$117)|0);
-     $119 = ($118|0)==(0|0);
-     if ($119) {
-      $$038$ph$i$i = 58202;$154 = $107;
-     } else {
-      $120 = HEAP32[(1892)>>2]|0;
-      $121 = (_strlen($120)|0);
-      __gcry_hmac256_update($118,$120,$121);
-      $122 = (__gcry_hmac256_finalize($118,$3)|0);
-      $123 = ($122|0)==(0|0);
-      if ($123) {
-       $$lcssa43$i$i = $118;$$lcssa47$i$i = $107;
-       label = 32;
-      } else {
-       $124 = HEAP32[$3>>2]|0;
-       $125 = ($124|0)==(32);
-       if ($125) {
-        $126 = (_memcmp($122,(1900),32)|0);
-        $127 = ($126|0)==(0);
-        if ($127) {
-         __gcry_hmac256_release($118);
-         $202 = 0;
-         STACKTOP = sp;return ($202|0);
-        } else {
-         $$lcssa44$i$i = $118;$$lcssa48$i$i = $107;
-         label = 35;
-        }
-       } else {
-        $$lcssa44$i$i = $118;$$lcssa48$i$i = $107;
-        label = 35;
-       }
-      }
-     }
-    } else {
-     $$038$ph$i$i = $114;$154 = $107;
-    }
-   } else {
-    $$03949$i$i = 0;$204 = $107;
-    while(1) {
-     $128 = (((1888 + (($$03949$i$i*44)|0)|0)) + 4|0);
-     $129 = HEAP32[$128>>2]|0;
-     $130 = (_strlen($129)|0);
-     $131 = (((1888 + (($$03949$i$i*44)|0)|0)) + 8|0);
-     $132 = HEAP32[$131>>2]|0;
-     $133 = (_strlen($132)|0);
-     $134 = (((1888 + (($$03949$i$i*44)|0)|0)) + 12|0);
-     $135 = (_check_one(8,$129,$130,$132,$133,$134,32)|0);
-     $136 = ($135|0)==(0|0);
-     if (!($136)) {
-      $$038$ph$i$i = $135;$154 = $204;
-      break L47;
-     }
-     $137 = HEAP32[$131>>2]|0;
-     $138 = (_strlen($137)|0);
-     $139 = (__gcry_hmac256_new($137,$138)|0);
-     $140 = ($139|0)==(0|0);
-     if ($140) {
-      $$038$ph$i$i = 58202;$154 = $204;
-      break L47;
-     }
-     $141 = HEAP32[$128>>2]|0;
-     $142 = (_strlen($141)|0);
-     __gcry_hmac256_update($139,$141,$142);
-     $143 = (__gcry_hmac256_finalize($139,$3)|0);
-     $144 = ($143|0)==(0|0);
-     if ($144) {
-      $$lcssa43$i$i = $139;$$lcssa47$i$i = $204;
-      label = 32;
-      break L47;
-     }
-     $145 = HEAP32[$3>>2]|0;
-     $146 = ($145|0)==(32);
-     if (!($146)) {
-      $$lcssa44$i$i = $139;$$lcssa48$i$i = $204;
-      label = 35;
-      break L47;
-     }
-     $147 = (_memcmp($143,$134,32)|0);
-     $148 = ($147|0)==(0);
-     if (!($148)) {
-      $$lcssa44$i$i = $139;$$lcssa48$i$i = $204;
-      label = 35;
-      break L47;
-     }
-     __gcry_hmac256_release($139);
-     $150 = (($$03949$i$i) + 1)|0;
-     $151 = (1888 + (($150*44)|0)|0);
-     $152 = HEAP32[$151>>2]|0;
-     $153 = ($152|0)==(0|0);
-     if ($153) {
-      $202 = 0;
-      break;
-     } else {
-      $$03949$i$i = $150;$204 = $152;
-     }
-    }
-    STACKTOP = sp;return ($202|0);
-   }
-  } while(0);
-  if ((label|0) == 32) {
-   __gcry_hmac256_release($$lcssa43$i$i);
-   $$038$ph$i$i = 58132;$154 = $$lcssa47$i$i;
-  }
-  else if ((label|0) == 35) {
-   __gcry_hmac256_release($$lcssa44$i$i);
-   $$038$ph$i$i = 58162;$154 = $$lcssa48$i$i;
-  }
-  $149 = ($2|0)==(0|0);
-  if ($149) {
-   $202 = 16777266;
-   STACKTOP = sp;return ($202|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](58127,8,$154,$$038$ph$i$i);
-  $202 = 16777266;
-  STACKTOP = sp;return ($202|0);
-  break;
- }
- case 9:  {
-  $155 = HEAP32[552]|0;
-  $156 = ($155|0)==(0|0);
-  if ($156) {
-   $202 = 0;
-   STACKTOP = sp;return ($202|0);
-  }
-  $157 = ($1|0)==(0);
-  L76: do {
-   if ($157) {
-    $158 = HEAP32[(2212)>>2]|0;
-    $159 = (_strlen($158)|0);
-    $160 = HEAP32[(2216)>>2]|0;
-    $161 = (_strlen($160)|0);
-    $162 = (_check_one(9,$158,$159,$160,$161,(2220),48)|0);
-    $163 = ($162|0)==(0|0);
-    if ($163) {
-     $202 = 0;
-     STACKTOP = sp;return ($202|0);
-    } else {
-     $$lcssa$i22$i = $162;$$lcssa21$i21$i = $155;
-    }
-   } else {
-    $$022$i20$i = 0;$205 = $155;
-    while(1) {
-     $164 = (((2208 + (($$022$i20$i*60)|0)|0)) + 4|0);
-     $165 = HEAP32[$164>>2]|0;
-     $166 = (_strlen($165)|0);
-     $167 = (((2208 + (($$022$i20$i*60)|0)|0)) + 8|0);
-     $168 = HEAP32[$167>>2]|0;
-     $169 = (_strlen($168)|0);
-     $170 = (((2208 + (($$022$i20$i*60)|0)|0)) + 12|0);
-     $171 = (_check_one(9,$165,$166,$168,$169,$170,48)|0);
-     $172 = ($171|0)==(0|0);
-     if (!($172)) {
-      $$lcssa$i22$i = $171;$$lcssa21$i21$i = $205;
-      break L76;
-     }
-     $173 = (($$022$i20$i) + 1)|0;
-     $174 = (2208 + (($173*60)|0)|0);
-     $175 = HEAP32[$174>>2]|0;
-     $176 = ($175|0)==(0|0);
-     if ($176) {
-      $202 = 0;
-      break;
-     } else {
-      $$022$i20$i = $173;$205 = $175;
-     }
-    }
-    STACKTOP = sp;return ($202|0);
-   }
-  } while(0);
-  $177 = ($2|0)==(0|0);
-  if ($177) {
-   $202 = 16777266;
-   STACKTOP = sp;return ($202|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](58127,9,$$lcssa21$i21$i,$$lcssa$i22$i);
-  $202 = 16777266;
-  STACKTOP = sp;return ($202|0);
-  break;
- }
- case 10:  {
-  $178 = HEAP32[660]|0;
-  $179 = ($178|0)==(0|0);
-  if ($179) {
-   $202 = 0;
-   STACKTOP = sp;return ($202|0);
-  }
-  $180 = ($1|0)==(0);
-  L93: do {
-   if ($180) {
-    $181 = HEAP32[(2644)>>2]|0;
-    $182 = (_strlen($181)|0);
-    $183 = HEAP32[(2648)>>2]|0;
-    $184 = (_strlen($183)|0);
-    $185 = (_check_one(10,$181,$182,$183,$184,(2652),64)|0);
-    $186 = ($185|0)==(0|0);
-    if ($186) {
-     $202 = 0;
-     STACKTOP = sp;return ($202|0);
-    } else {
-     $$lcssa$i30$i = $185;$$lcssa21$i29$i = $178;
-    }
-   } else {
-    $$022$i28$i = 0;$206 = $178;
-    while(1) {
-     $187 = (((2640 + (($$022$i28$i*76)|0)|0)) + 4|0);
-     $188 = HEAP32[$187>>2]|0;
-     $189 = (_strlen($188)|0);
-     $190 = (((2640 + (($$022$i28$i*76)|0)|0)) + 8|0);
-     $191 = HEAP32[$190>>2]|0;
-     $192 = (_strlen($191)|0);
-     $193 = (((2640 + (($$022$i28$i*76)|0)|0)) + 12|0);
-     $194 = (_check_one(10,$188,$189,$191,$192,$193,64)|0);
-     $195 = ($194|0)==(0|0);
-     if (!($195)) {
-      $$lcssa$i30$i = $194;$$lcssa21$i29$i = $206;
-      break L93;
-     }
-     $196 = (($$022$i28$i) + 1)|0;
-     $197 = (2640 + (($196*76)|0)|0);
-     $198 = HEAP32[$197>>2]|0;
-     $199 = ($198|0)==(0|0);
-     if ($199) {
-      $202 = 0;
-      break;
-     } else {
-      $$022$i28$i = $196;$206 = $198;
-     }
-    }
-    STACKTOP = sp;return ($202|0);
-   }
-  } while(0);
-  $200 = ($2|0)==(0|0);
-  if ($200) {
-   $202 = 16777266;
-   STACKTOP = sp;return ($202|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](58127,10,$$lcssa21$i29$i,$$lcssa$i30$i);
-  $202 = 16777266;
-  STACKTOP = sp;return ($202|0);
-  break;
- }
- default: {
-  $202 = 16777221;
-  STACKTOP = sp;return ($202|0);
- }
- }
- return (0)|0;
-}
-function _check_one($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$ = 0, $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $7 = sp;
- $8 = (__gcry_md_get_algo_dlen($0)|0);
- $9 = ($8|0)==($6|0);
- do {
-  if ($9) {
-   $10 = (__gcry_md_open($7,$0,2)|0);
-   $11 = ($10|0)==(0);
-   if ($11) {
-    $12 = HEAP32[$7>>2]|0;
-    $13 = (__gcry_md_setkey($12,$3,$4)|0);
-    $14 = ($13|0)==(0);
-    $15 = HEAP32[$7>>2]|0;
-    if (!($14)) {
-     __gcry_md_close($15);
-     $$0 = 58910;
-     break;
-    }
-    __gcry_md_write($15,$1,$2);
-    $16 = HEAP32[$7>>2]|0;
-    $17 = (__gcry_md_read($16,$0)|0);
-    $18 = ($17|0)==(0|0);
-    if ($18) {
-     $19 = HEAP32[$7>>2]|0;
-     __gcry_md_close($19);
-     $$0 = 58932;
-     break;
-    } else {
-     $20 = (_memcmp($17,$5,$6)|0);
-     $21 = ($20|0)==(0);
-     $22 = HEAP32[$7>>2]|0;
-     __gcry_md_close($22);
-     $$ = $21 ? 0 : 58895;
-     $$0 = $$;
-     break;
-    }
-   } else {
-    $$0 = 67519;
-   }
-  } else {
-   $$0 = 58952;
-  }
- } while(0);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_md_map_name($0) {
- $0 = $0|0;
- var $$0 = 0, $$019$i$ph$i = 0, $$022$i = 0, $$023$1$i$i = 0, $$023$2$i$i = 0, 
$$023$3$i$i = 0, $$023$4$i$i = 0, $$023$5$i$i = 0, $$023$i$i = 0, $$08$i = 0, 
$$ph = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $2 = (_strncmp($0,58971,4)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  label = 4;
- } else {
-  $4 = (_strncmp($0,58976,4)|0);
-  $5 = ($4|0)==(0);
-  if ($5) {
-   label = 4;
-  } else {
-   $$022$i = $0;
-  }
- }
- if ((label|0) == 4) {
-  $6 = ((($0)) + 4|0);
-  $$022$i = $6;
- }
- $7 = HEAP32[(39652)>>2]|0;
- $8 = ($7|0)==(0|0);
- L9: do {
-  if ($8) {
-   label = 10;
-  } else {
-   $9 = HEAP32[$7>>2]|0;
-   $10 = ($9|0)==(0|0);
-   if ($10) {
-    label = 10;
-   } else {
-    $$023$i$i = 0;$15 = $9;
-    while(1) {
-     $16 = (_strcasecmp($$022$i,$15)|0);
-     $17 = ($16|0)==(0);
-     $12 = (($$023$i$i) + 1)|0;
-     if ($17) {
-      $$019$i$ph$i = 39632;$74 = $9;$76 = $7;
-      label = 35;
-      break L9;
-     }
-     $11 = (($7) + ($12<<2)|0);
-     $13 = HEAP32[$11>>2]|0;
-     $14 = ($13|0)==(0|0);
-     if ($14) {
-      label = 10;
-      break;
-     } else {
-      $$023$i$i = $12;$15 = $13;
-     }
-    }
-   }
-  }
- } while(0);
- L15: do {
-  if ((label|0) == 10) {
-   $18 = HEAP32[(39764)>>2]|0;
-   $19 = ($18|0)==(0|0);
-   if (!($19)) {
-    $20 = HEAP32[$18>>2]|0;
-    $21 = ($20|0)==(0|0);
-    if (!($21)) {
-     $$023$1$i$i = 0;$22 = $20;
-     while(1) {
-      $23 = (_strcasecmp($$022$i,$22)|0);
-      $24 = ($23|0)==(0);
-      $25 = (($$023$1$i$i) + 1)|0;
-      if ($24) {
-       $$019$i$ph$i = 39744;$74 = $20;$76 = $18;
-       label = 35;
-       break L15;
-      }
-      $26 = (($18) + ($25<<2)|0);
-      $27 = HEAP32[$26>>2]|0;
-      $28 = ($27|0)==(0|0);
-      if ($28) {
-       break;
-      } else {
-       $$023$1$i$i = $25;$22 = $27;
-      }
-     }
-    }
-   }
-   $29 = HEAP32[(39704)>>2]|0;
-   $30 = ($29|0)==(0|0);
-   if (!($30)) {
-    $31 = HEAP32[$29>>2]|0;
-    $32 = ($31|0)==(0|0);
-    if (!($32)) {
-     $$023$2$i$i = 0;$33 = $31;
-     while(1) {
-      $34 = (_strcasecmp($$022$i,$33)|0);
-      $35 = ($34|0)==(0);
-      $36 = (($$023$2$i$i) + 1)|0;
-      if ($35) {
-       $$019$i$ph$i = 39684;$74 = $31;$76 = $29;
-       label = 35;
-       break L15;
-      }
-      $37 = (($29) + ($36<<2)|0);
-      $38 = HEAP32[$37>>2]|0;
-      $39 = ($38|0)==(0|0);
-      if ($39) {
-       break;
-      } else {
-       $$023$2$i$i = $36;$33 = $38;
-      }
-     }
-    }
-   }
-   $40 = HEAP32[(39828)>>2]|0;
-   $41 = ($40|0)==(0|0);
-   if (!($41)) {
-    $42 = HEAP32[$40>>2]|0;
-    $43 = ($42|0)==(0|0);
-    if (!($43)) {
-     $$023$3$i$i = 0;$44 = $42;
-     while(1) {
-      $45 = (_strcasecmp($$022$i,$44)|0);
-      $46 = ($45|0)==(0);
-      $47 = (($$023$3$i$i) + 1)|0;
-      if ($46) {
-       $$019$i$ph$i = 39808;$74 = $42;$76 = $40;
-       label = 35;
-       break L15;
-      }
-      $48 = (($40) + ($47<<2)|0);
-      $49 = HEAP32[$48>>2]|0;
-      $50 = ($49|0)==(0|0);
-      if ($50) {
-       break;
-      } else {
-       $$023$3$i$i = $47;$44 = $49;
-      }
-     }
-    }
-   }
-   $51 = HEAP32[(39892)>>2]|0;
-   $52 = ($51|0)==(0|0);
-   if (!($52)) {
-    $53 = HEAP32[$51>>2]|0;
-    $54 = ($53|0)==(0|0);
-    if (!($54)) {
-     $$023$4$i$i = 0;$55 = $53;
-     while(1) {
-      $56 = (_strcasecmp($$022$i,$55)|0);
-      $57 = ($56|0)==(0);
-      $58 = (($$023$4$i$i) + 1)|0;
-      if ($57) {
-       $$019$i$ph$i = 39872;$74 = $53;$76 = $51;
-       label = 35;
-       break L15;
-      }
-      $59 = (($51) + ($58<<2)|0);
-      $60 = HEAP32[$59>>2]|0;
-      $61 = ($60|0)==(0|0);
-      if ($61) {
-       break;
-      } else {
-       $$023$4$i$i = $58;$55 = $60;
-      }
-     }
-    }
-   }
-   $62 = HEAP32[(39504)>>2]|0;
-   $63 = ($62|0)==(0|0);
-   if (!($63)) {
-    $64 = HEAP32[$62>>2]|0;
-    $65 = ($64|0)==(0|0);
-    if (!($65)) {
-     $$023$5$i$i = 0;$66 = $64;
-     while(1) {
-      $67 = (_strcasecmp($$022$i,$66)|0);
-      $68 = ($67|0)==(0);
-      $69 = (($$023$5$i$i) + 1)|0;
-      if ($68) {
-       $$019$i$ph$i = 39484;$74 = $64;$76 = $62;
-       label = 35;
-       break L15;
-      }
-      $70 = (($62) + ($69<<2)|0);
-      $71 = HEAP32[$70>>2]|0;
-      $72 = ($71|0)==(0|0);
-      if ($72) {
-       break;
-      } else {
-       $$023$5$i$i = $69;$66 = $71;
-      }
-     }
-    }
-   }
-  }
- } while(0);
- L50: do {
-  if ((label|0) == 35) {
-   $73 = ($74|0)==(0|0);
-   if (!($73)) {
-    $$08$i = 0;$80 = $74;
-    while(1) {
-     $81 = (_strcasecmp($$022$i,$80)|0);
-     $82 = ($81|0)==(0);
-     $77 = (($$08$i) + 1)|0;
-     if ($82) {
-      break;
-     }
-     $75 = (($76) + ($77<<2)|0);
-     $78 = HEAP32[$75>>2]|0;
-     $79 = ($78|0)==(0|0);
-     if ($79) {
-      break L50;
-     } else {
-      $$08$i = $77;$80 = $78;
-     }
-    }
-    $83 = HEAP32[$$019$i$ph$i>>2]|0;
-    $$0 = $83;
-    return ($$0|0);
-   }
-  }
- } while(0);
- $84 = HEAP32[(39640)>>2]|0;
- $85 = (_strcasecmp($0,$84)|0);
- $86 = ($85|0)==(0);
- if ($86) {
-  $$ph = 39632;
- } else {
-  $87 = HEAP32[(39752)>>2]|0;
-  $88 = (_strcasecmp($0,$87)|0);
-  $89 = ($88|0)==(0);
-  if ($89) {
-   $$ph = 39744;
-  } else {
-   $90 = HEAP32[(39692)>>2]|0;
-   $91 = (_strcasecmp($0,$90)|0);
-   $92 = ($91|0)==(0);
-   if ($92) {
-    $$ph = 39684;
-   } else {
-    $93 = HEAP32[(39816)>>2]|0;
-    $94 = (_strcasecmp($0,$93)|0);
-    $95 = ($94|0)==(0);
-    if ($95) {
-     $$ph = 39808;
-    } else {
-     $96 = HEAP32[(39880)>>2]|0;
-     $97 = (_strcasecmp($0,$96)|0);
-     $98 = ($97|0)==(0);
-     if ($98) {
-      $$ph = 39872;
-     } else {
-      $99 = HEAP32[(39492)>>2]|0;
-      $100 = (_strcasecmp($0,$99)|0);
-      $101 = ($100|0)==(0);
-      if ($101) {
-       $$ph = 39484;
-      } else {
-       $$0 = 0;
-       return ($$0|0);
-      }
-     }
-    }
-   }
-  }
- }
- $102 = HEAP32[$$ph>>2]|0;
- $$0 = $102;
- return ($$0|0);
-}
-function __gcry_md_algo_name($0) {
- $0 = $0|0;
- var $$ph = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = HEAP32[9908]|0;
- $2 = ($1|0)==($0|0);
- if ($2) {
-  $$ph = 39632;
- } else {
-  $3 = HEAP32[9936]|0;
-  $4 = ($3|0)==($0|0);
-  if ($4) {
-   $$ph = 39744;
-  } else {
-   $5 = HEAP32[9921]|0;
-   $6 = ($5|0)==($0|0);
-   if ($6) {
-    $$ph = 39684;
-   } else {
-    $7 = HEAP32[9952]|0;
-    $8 = ($7|0)==($0|0);
-    if ($8) {
-     $$ph = 39808;
-    } else {
-     $9 = HEAP32[9968]|0;
-     $10 = ($9|0)==($0|0);
-     if ($10) {
-      $$ph = 39872;
-     } else {
-      $11 = HEAP32[9871]|0;
-      $12 = ($11|0)==($0|0);
-      if ($12) {
-       $$ph = 39484;
-      } else {
-       $15 = 59741;
-       return ($15|0);
-      }
-     }
-    }
-   }
-  }
- }
- $13 = ((($$ph)) + 8|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = $14;
- return ($15|0);
-}
-function __gcry_md_open($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$06 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- $4 = $2 & -260;
- $5 = ($4|0)==(0);
- if ($5) {
-  $6 = (_md_open($3,$1,$2)|0);
-  $7 = ($6|0)==(0);
-  $8 = HEAP32[$3>>2]|0;
-  $spec$select7 = $7 ? $8 : 0;
-  $$06 = $6;$9 = $spec$select7;
- } else {
-  $$06 = 45;$9 = 0;
- }
- HEAP32[$0>>2] = $9;
- STACKTOP = sp;return ($$06|0);
-}
-function _md_open($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$idx$val = 0, $$0$in = 0, $$262 = 0, $$sink = 0, $10 = 0, $11 = 0, $12 
= 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = $2 & 1;
- $4 = ($3|0)!=(0);
- $5 = $2 & 2;
- $6 = ($5|0)==(0);
- $7 = $3 << 9;
- $8 = $7 ^ 512;
- $9 = (($8) + 535)|0;
- $10 = $9 & 1552;
- $11 = (($10) + 28)|0;
- if ($4) {
-  $12 = (__gcry_malloc_secure($11)|0);
-  $$0$in = $12;
- } else {
-  $13 = (__gcry_malloc($11)|0);
-  $$0$in = $13;
- }
- $14 = ($$0$in|0)==(0|0);
- if ($14) {
-  $15 = (___errno_location()|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = (_gpg_err_code_from_errno($16)|0);
-  $18 = ($17|0)==(0);
-  if (!($18)) {
-   $$262 = $17;
-   return ($$262|0);
-  }
- }
- $19 = (($$0$in) + ($10)|0);
- HEAP32[$$0$in>>2] = $19;
- $20 = (($10) + -15)|0;
- $21 = ((($$0$in)) + 8|0);
- HEAP32[$21>>2] = $20;
- $22 = ((($$0$in)) + 4|0);
- HEAP32[$22>>2] = 0;
- $23 = ((($19)) + 8|0);
- 
;HEAP32[$23>>2]=0|0;HEAP32[$23+4>>2]=0|0;HEAP32[$23+8>>2]=0|0;HEAP32[$23+12>>2]=0|0;HEAP32[$23+16>>2]=0|0;
- $24 = $4 ? 378630161 : 285677921;
- HEAP32[$19>>2] = $24;
- $25 = ((($19)) + 4|0);
- HEAP32[$25>>2] = $11;
- $26 = ((($19)) + 12|0);
- $27 = $2&255;
- $28 = $27 & 1;
- $29 = $2 >>> 6;
- $30 = $29&255;
- $31 = $30 & 4;
- $32 = $31 | $28;
- HEAP8[$26>>0] = $32;
- if (!($6)) {
-  switch ($1|0) {
-  case 10: case 9:  {
-   $$sink = 128;$34 = 256;
-   break;
-  }
-  case 311: case 308:  {
-   $$sink = 32;$34 = 64;
-   break;
-  }
-  default: {
-   $$sink = 64;$34 = 128;
-  }
-  }
-  $33 = ((($19)) + 24|0);
-  HEAP32[$33>>2] = $$sink;
-  $35 = (__gcry_malloc_secure($34)|0);
-  $36 = ((($19)) + 20|0);
-  HEAP32[$36>>2] = $35;
-  $37 = ($35|0)==(0|0);
-  if ($37) {
-   $38 = (___errno_location()|0);
-   $39 = HEAP32[$38>>2]|0;
-   $40 = (_gpg_err_code_from_errno($39)|0);
-   _md_close($$0$in);
-   $41 = ($40|0)==(0);
-   if (!($41)) {
-    $$262 = $40;
-    return ($$262|0);
-   }
-  }
- }
- __gcry_fast_random_poll();
- $42 = ($1|0)==(0);
- if (!($42)) {
-  $$0$idx$val = HEAP32[$$0$in>>2]|0;
-  $43 = (_md_enable($$0$idx$val,$1)|0);
-  $44 = ($43|0)==(0);
-  if (!($44)) {
-   _md_close($$0$in);
-   $$262 = $43;
-   return ($$262|0);
-  }
- }
- HEAP32[$0>>2] = $$0$in;
- $$262 = 0;
- return ($$262|0);
-}
-function _md_close($0) {
- $0 = $0|0;
- var $$0$$0$$0$5$i = 0, $$0$i = 0, $$0109$lcssa = 0, $$0109149 = 0, 
$$0112$lcssa = 0, $$0112148 = 0, $$0116$lcssa = 0, $$0116167 = 0, $$0120$lcssa 
= 0, $$0120166 = 0, $$0124$lcssa = 0, $$0124160 = 0, $$0128$lcssa = 0, 
$$0128159 = 0, $$021$i = 0, $$022$i = 0, $$1110 = 0, $$1113 = 0, $$1117 = 0, 
$$1121 = 0;
- var $$1125 = 0, $$1129 = 0, $$2111 = 0, $$2114 = 0, $$2118 = 0, $$2122 = 0, 
$$2126 = 0, $$2130 = 0, $$3115146 = 0, $$3119174 = 0, $$3123173 = 0, $$3127155 
= 0, $$3131154 = 0, $$3147 = 0, $$in = 0, $$phi$trans$insert$i = 0, $$pre = 0, 
$$pre$i = 0, $$pre$i$pre = 0, $$pre$phi30$iZ2D = 0;
- var $$pre19$i = 0, $$pre197 = 0, $$pre27$i = 0, $1 = 0, $10 = 0, $100 = 0, 
$101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $scevgep = 0, $scevgep193 = 0, $scevgep194 = 0, 
$scevgep195 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $1 = sp + 16|0;
- $2 = sp + 8|0;
- $3 = sp;
- $4 = ($0|0)==(0|0);
- if ($4) {
-  STACKTOP = sp;return;
- }
- $5 = HEAP32[$0>>2]|0;
- $6 = ((($5)) + 8|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $56 = $5;
- } else {
-  $9 = ((($0)) + 4|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   $29 = $7;
-  } else {
-   $12 = ((($0)) + 12|0);
-   $13 = (_fwrite($12,$10,1,$7)|0);
-   $14 = ($13|0)==(1);
-   if (!($14)) {
-    __gcry_bug(59029,630,59034);
-    // unreachable;
-   }
-   $15 = HEAP32[$0>>2]|0;
-   $16 = ((($15)) + 16|0);
-   $$021$i = HEAP32[$16>>2]|0;
-   $17 = ($$021$i|0)==(0|0);
-   if ($17) {
-    $$pre$i = $15;
-   } else {
-    $$022$i = $$021$i;
-    while(1) {
-     $18 = HEAP32[$9>>2]|0;
-     $19 = ($18|0)==(0);
-     if ($19) {
-      $$pre27$i = ((($$022$i)) + 16|0);
-      $$pre$phi30$iZ2D = $$pre27$i;
-     } else {
-      $20 = HEAP32[$$022$i>>2]|0;
-      $21 = ((($20)) + 32|0);
-      $22 = HEAP32[$21>>2]|0;
-      $23 = ((($$022$i)) + 16|0);
-      FUNCTION_TABLE_viii[$22 & 127]($23,$12,$18);
-      $$pre$phi30$iZ2D = $23;
-     }
-     $24 = HEAP32[$$022$i>>2]|0;
-     $25 = ((($24)) + 32|0);
-     $26 = HEAP32[$25>>2]|0;
-     FUNCTION_TABLE_viii[$26 & 127]($$pre$phi30$iZ2D,0,0);
-     $27 = ((($$022$i)) + 4|0);
-     $$0$i = HEAP32[$27>>2]|0;
-     $28 = ($$0$i|0)==(0|0);
-     if ($28) {
-      break;
-     } else {
-      $$022$i = $$0$i;
-     }
-    }
-    $$pre$i$pre = HEAP32[$0>>2]|0;
-    $$pre$i = $$pre$i$pre;
-   }
-   HEAP32[$9>>2] = 0;
-   $$phi$trans$insert$i = ((($$pre$i)) + 8|0);
-   $$pre19$i = HEAP32[$$phi$trans$insert$i>>2]|0;
-   $29 = $$pre19$i;
-  }
-  (_fclose($29)|0);
-  $30 = HEAP32[$0>>2]|0;
-  $31 = ((($30)) + 8|0);
-  HEAP32[$31>>2] = 0;
-  $32 = $0;
-  HEAP32[$1>>2] = $32;
-  $33 = $2;
-  $34 = $33;
-  HEAP32[$34>>2] = 42;
-  $35 = (($33) + 4)|0;
-  $36 = $35;
-  HEAP32[$36>>2] = 0;
-  $$0$$0$$0$5$i = HEAP32[$1>>2]|0;
-  $37 = $2;
-  $38 = $37;
-  $39 = HEAP32[$38>>2]|0;
-  $40 = (($37) + 4)|0;
-  $41 = $40;
-  $42 = HEAP32[$41>>2]|0;
-  $43 = (___muldi3(($39|0),($42|0),($$0$$0$$0$5$i|0),0)|0);
-  $44 = tempRet0;
-  $45 = $3;
-  $46 = $45;
-  HEAP32[$46>>2] = $43;
-  $47 = (($45) + 4)|0;
-  $48 = $47;
-  HEAP32[$48>>2] = $44;
-  $49 = $3;
-  $50 = $49;
-  $51 = HEAP32[$50>>2]|0;
-  $52 = (($49) + 4)|0;
-  $53 = $52;
-  $54 = HEAP32[$53>>2]|0;
-  $56 = $30;
- }
- $55 = ((($56)) + 16|0);
- $57 = HEAP32[$55>>2]|0;
- $58 = ($57|0)==(0|0);
- if ($58) {
-  $92 = $56;
- } else {
-  $$in = $57;
-  while(1) {
-   $59 = ((($$in)) + 4|0);
-   $60 = HEAP32[$59>>2]|0;
-   $61 = ((($$in)) + 8|0);
-   $62 = HEAP32[$61>>2]|0;
-   $63 = $$in;
-   $64 = $63 & 7;
-   $65 = ($64|0)!=(0);
-   $66 = ($62|0)!=(0);
-   $67 = $66 & $65;
-   if ($67) {
-    $$0116167 = $$in;$$0120166 = $62;
-    while(1) {
-     HEAP8[$$0116167>>0] = 0;
-     $68 = ((($$0116167)) + 1|0);
-     $69 = (($$0120166) + -1)|0;
-     $70 = $68;
-     $71 = $70 & 7;
-     $72 = ($71|0)!=(0);
-     $73 = ($69|0)!=(0);
-     $74 = $73 & $72;
-     if ($74) {
-      $$0116167 = $68;$$0120166 = $69;
-     } else {
-      $$0116$lcssa = $68;$$0120$lcssa = $69;
-      break;
-     }
-    }
-   } else {
-    $$0116$lcssa = $$in;$$0120$lcssa = $62;
-   }
-   $75 = ($$0120$lcssa>>>0)<(8);
-   if ($75) {
-    $$2118 = $$0116$lcssa;$$2122 = $$0120$lcssa;
-   } else {
-    $76 = (($$0120$lcssa) + -8)|0;
-    $77 = $76 & -8;
-    $scevgep194 = ((($$0116$lcssa)) + 8|0);
-    $$1117 = $$0116$lcssa;$$1121 = $$0120$lcssa;
-    while(1) {
-     $78 = $$1117;
-     $79 = $78;
-     HEAP32[$79>>2] = 0;
-     $80 = (($78) + 4)|0;
-     $81 = $80;
-     HEAP32[$81>>2] = 0;
-     $82 = (($$1121) + -8)|0;
-     $83 = ((($$1117)) + 8|0);
-     $84 = ($82>>>0)>(7);
-     if ($84) {
-      $$1117 = $83;$$1121 = $82;
-     } else {
-      break;
-     }
-    }
-    $85 = (($76) - ($77))|0;
-    $scevgep195 = (($scevgep194) + ($77)|0);
-    $$2118 = $scevgep195;$$2122 = $85;
-   }
-   $86 = ($$2122|0)==(0);
-   if (!($86)) {
-    $$3119174 = $$2118;$$3123173 = $$2122;
-    while(1) {
-     HEAP8[$$3119174>>0] = 0;
-     $87 = ((($$3119174)) + 1|0);
-     $88 = (($$3123173) + -1)|0;
-     $89 = ($88|0)==(0);
-     if ($89) {
-      break;
-     } else {
-      $$3119174 = $87;$$3123173 = $88;
-     }
-    }
-   }
-   __gcry_free($$in);
-   $90 = ($60|0)==(0|0);
-   if ($90) {
-    break;
-   } else {
-    $$in = $60;
-   }
-  }
-  $$pre = HEAP32[$0>>2]|0;
-  $92 = $$pre;
- }
- $91 = ((($92)) + 20|0);
- $93 = HEAP32[$91>>2]|0;
- $94 = ($93|0)==(0|0);
- if ($94) {
-  $130 = $92;
- } else {
-  $95 = ((($92)) + 24|0);
-  $96 = HEAP32[$95>>2]|0;
-  $97 = $96 << 1;
-  $98 = $93;
-  $99 = $98 & 7;
-  $100 = ($99|0)!=(0);
-  $101 = ($96|0)!=(0);
-  $102 = $101 & $100;
-  if ($102) {
-   $$0124160 = $97;$$0128159 = $93;
-   while(1) {
-    HEAP8[$$0128159>>0] = 0;
-    $103 = ((($$0128159)) + 1|0);
-    $104 = (($$0124160) + -1)|0;
-    $105 = $103;
-    $106 = $105 & 7;
-    $107 = ($106|0)!=(0);
-    $108 = ($104|0)!=(0);
-    $109 = $108 & $107;
-    if ($109) {
-     $$0124160 = $104;$$0128159 = $103;
-    } else {
-     $$0124$lcssa = $104;$$0128$lcssa = $103;
-     break;
-    }
-   }
-  } else {
-   $$0124$lcssa = $97;$$0128$lcssa = $93;
-  }
-  $110 = ($$0124$lcssa>>>0)<(8);
-  if ($110) {
-   $$2126 = $$0124$lcssa;$$2130 = $$0128$lcssa;
-  } else {
-   $111 = (($$0124$lcssa) + -8)|0;
-   $112 = $111 & -8;
-   $113 = (($112) + 8)|0;
-   $$1125 = $$0124$lcssa;$$1129 = $$0128$lcssa;
-   while(1) {
-    $114 = $$1129;
-    $115 = $114;
-    HEAP32[$115>>2] = 0;
-    $116 = (($114) + 4)|0;
-    $117 = $116;
-    HEAP32[$117>>2] = 0;
-    $118 = (($$1125) + -8)|0;
-    $119 = ((($$1129)) + 8|0);
-    $120 = ($118>>>0)>(7);
-    if ($120) {
-     $$1125 = $118;$$1129 = $119;
-    } else {
-     break;
-    }
-   }
-   $121 = (($111) - ($112))|0;
-   $scevgep193 = (($$0128$lcssa) + ($113)|0);
-   $$2126 = $121;$$2130 = $scevgep193;
-  }
-  $122 = ($$2126|0)==(0);
-  if (!($122)) {
-   $$3127155 = $$2126;$$3131154 = $$2130;
-   while(1) {
-    HEAP8[$$3131154>>0] = 0;
-    $123 = ((($$3131154)) + 1|0);
-    $124 = (($$3127155) + -1)|0;
-    $125 = ($124|0)==(0);
-    if ($125) {
-     break;
-    } else {
-     $$3127155 = $124;$$3131154 = $123;
-    }
-   }
-  }
-  $126 = HEAP32[$0>>2]|0;
-  $127 = ((($126)) + 20|0);
-  $128 = HEAP32[$127>>2]|0;
-  __gcry_free($128);
-  $$pre197 = HEAP32[$0>>2]|0;
-  $130 = $$pre197;
- }
- $129 = ((($130)) + 4|0);
- $131 = HEAP32[$129>>2]|0;
- $132 = $0;
- $133 = $132 & 7;
- $134 = ($133|0)!=(0);
- $135 = ($131|0)!=(0);
- $136 = $135 & $134;
- if ($136) {
-  $$0109149 = $131;$$0112148 = $0;
-  while(1) {
-   HEAP8[$$0112148>>0] = 0;
-   $137 = ((($$0112148)) + 1|0);
-   $138 = (($$0109149) + -1)|0;
-   $139 = $137;
-   $140 = $139 & 7;
-   $141 = ($140|0)!=(0);
-   $142 = ($138|0)!=(0);
-   $143 = $142 & $141;
-   if ($143) {
-    $$0109149 = $138;$$0112148 = $137;
-   } else {
-    $$0109$lcssa = $138;$$0112$lcssa = $137;
-    break;
-   }
-  }
- } else {
-  $$0109$lcssa = $131;$$0112$lcssa = $0;
- }
- $144 = ($$0109$lcssa>>>0)<(8);
- if ($144) {
-  $$2111 = $$0109$lcssa;$$2114 = $$0112$lcssa;
- } else {
-  $145 = (($$0109$lcssa) + -8)|0;
-  $146 = $145 & -8;
-  $147 = (($146) + 8)|0;
-  $$1110 = $$0109$lcssa;$$1113 = $$0112$lcssa;
-  while(1) {
-   $148 = $$1113;
-   $149 = $148;
-   HEAP32[$149>>2] = 0;
-   $150 = (($148) + 4)|0;
-   $151 = $150;
-   HEAP32[$151>>2] = 0;
-   $152 = (($$1110) + -8)|0;
-   $153 = ((($$1113)) + 8|0);
-   $154 = ($152>>>0)>(7);
-   if ($154) {
-    $$1110 = $152;$$1113 = $153;
-   } else {
-    break;
-   }
-  }
-  $155 = (($145) - ($146))|0;
-  $scevgep = (($$0112$lcssa) + ($147)|0);
-  $$2111 = $155;$$2114 = $scevgep;
- }
- $156 = ($$2111|0)==(0);
- if (!($156)) {
-  $$3115146 = $$2114;$$3147 = $$2111;
-  while(1) {
-   HEAP8[$$3115146>>0] = 0;
-   $157 = ((($$3115146)) + 1|0);
-   $158 = (($$3147) + -1)|0;
-   $159 = ($158|0)==(0);
-   if ($159) {
-    break;
-   } else {
-    $$3115146 = $157;$$3147 = $158;
-   }
-  }
- }
- __gcry_free($0);
- STACKTOP = sp;return;
-}
-function _md_enable($$0$0$val,$0) {
- $$0$0$val = $$0$0$val|0;
- $0 = $0|0;
- var $$0 = 0, $$039 = 0, $$0395 = 0, $$0396 = 0, $$140$in = 0, $$ph = 0, $1 = 
0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 
= 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = ((($$0$0$val)) + 16|0);
- $$0395 = HEAP32[$1>>2]|0;
- $2 = ($$0395|0)==(0|0);
- L1: do {
-  if (!($2)) {
-   $$0396 = $$0395;
-   while(1) {
-    $5 = HEAP32[$$0396>>2]|0;
-    $6 = HEAP32[$5>>2]|0;
-    $7 = ($6|0)==($0|0);
-    if ($7) {
-     $$0 = 0;
-     break;
-    }
-    $3 = ((($$0396)) + 4|0);
-    $$039 = HEAP32[$3>>2]|0;
-    $4 = ($$039|0)==(0|0);
-    if ($4) {
-     break L1;
-    } else {
-     $$0396 = $$039;
-    }
-   }
-   STACKTOP = sp;return ($$0|0);
-  }
- } while(0);
- $8 = HEAP32[9908]|0;
- $9 = ($8|0)==($0|0);
- if ($9) {
-  $$ph = 39632;
- } else {
-  $10 = HEAP32[9936]|0;
-  $11 = ($10|0)==($0|0);
-  if ($11) {
-   $$ph = 39744;
-  } else {
-   $12 = HEAP32[9921]|0;
-   $13 = ($12|0)==($0|0);
-   if ($13) {
-    $$ph = 39684;
-   } else {
-    $14 = HEAP32[9952]|0;
-    $15 = ($14|0)==($0|0);
-    if ($15) {
-     $$ph = 39808;
-    } else {
-     $16 = HEAP32[9968]|0;
-     $17 = ($16|0)==($0|0);
-     if ($17) {
-      $$ph = 39872;
-     } else {
-      $18 = HEAP32[9871]|0;
-      $19 = ($18|0)==($0|0);
-      if ($19) {
-       $$ph = 39484;
-      } else {
-       HEAP32[$vararg_buffer>>2] = $0;
-       __gcry_log_debug(58981,$vararg_buffer);
-       $$0 = 5;
-       STACKTOP = sp;return ($$0|0);
-      }
-     }
-    }
-   }
-  }
- }
- $20 = ($0|0)==(1);
- if ($20) {
-  $21 = (__gcry_fips_mode()|0);
-  $22 = ($21|0)==(0);
-  if (!($22)) {
-   __gcry_inactivate_fips_mode(59020);
-   $23 = (__gcry_enforced_fips_mode()|0);
-   $24 = ($23|0)==(0);
-   if (!($24)) {
-    $$0 = 5;
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- }
- $25 = ((($$ph)) + 44|0);
- $26 = HEAP32[$25>>2]|0;
- $27 = (($26) + 16)|0;
- $28 = ((($$0$0$val)) + 12|0);
- $29 = HEAP8[$28>>0]|0;
- $30 = $29 & 1;
- $31 = ($30<<24>>24)==(0);
- if ($31) {
-  $33 = (__gcry_malloc($27)|0);
-  $$140$in = $33;
- } else {
-  $32 = (__gcry_malloc_secure($27)|0);
-  $$140$in = $32;
- }
- $34 = ($$140$in|0)==(0|0);
- if ($34) {
-  $35 = (___errno_location()|0);
-  $36 = HEAP32[$35>>2]|0;
-  $37 = (_gpg_err_code_from_errno($36)|0);
-  $$0 = $37;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  HEAP32[$$140$in>>2] = $$ph;
-  $38 = HEAP32[$1>>2]|0;
-  $39 = ((($$140$in)) + 4|0);
-  HEAP32[$39>>2] = $38;
-  $40 = ((($$140$in)) + 8|0);
-  HEAP32[$40>>2] = $27;
-  HEAP32[$1>>2] = $$140$in;
-  $41 = ((($$ph)) + 28|0);
-  $42 = HEAP32[$41>>2]|0;
-  $43 = ((($$140$in)) + 16|0);
-  $44 = HEAP8[$28>>0]|0;
-  $45 = $44 & 4;
-  $46 = $45&255;
-  $47 = $46 << 6;
-  FUNCTION_TABLE_vii[$42 & 63]($43,$47);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_md_reset($0) {
- $0 = $0|0;
- var $$0 = 0, $$015 = 0, $$016 = 0, $$pre = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = ((($1)) + 12|0);
- $3 = HEAP8[$2>>0]|0;
- $4 = $3 & -3;
- HEAP8[$2>>0] = $4;
- $5 = ((($0)) + 4|0);
- HEAP32[$5>>2] = 0;
- $6 = HEAP32[$0>>2]|0;
- $7 = ((($6)) + 16|0);
- $$015 = HEAP32[$7>>2]|0;
- $8 = ($$015|0)==(0|0);
- if ($8) {
-  $24 = $6;
- } else {
-  $$016 = $$015;
-  while(1) {
-   $9 = ((($$016)) + 16|0);
-   $10 = HEAP32[$$016>>2]|0;
-   $11 = ((($10)) + 44|0);
-   $12 = HEAP32[$11>>2]|0;
-   _memset(($9|0),0,($12|0))|0;
-   $13 = ((($10)) + 28|0);
-   $14 = HEAP32[$13>>2]|0;
-   $15 = HEAP32[$0>>2]|0;
-   $16 = ((($15)) + 12|0);
-   $17 = HEAP8[$16>>0]|0;
-   $18 = $17 & 4;
-   $19 = $18&255;
-   $20 = $19 << 6;
-   FUNCTION_TABLE_vii[$14 & 63]($9,$20);
-   $21 = ((($$016)) + 4|0);
-   $$0 = HEAP32[$21>>2]|0;
-   $22 = ($$0|0)==(0|0);
-   if ($22) {
-    break;
-   } else {
-    $$016 = $$0;
-   }
-  }
-  $$pre = HEAP32[$0>>2]|0;
-  $24 = $$pre;
- }
- $23 = ((($24)) + 20|0);
- $25 = HEAP32[$23>>2]|0;
- $26 = ($25|0)==(0|0);
- if ($26) {
-  return;
- }
- $27 = ((($24)) + 24|0);
- $28 = HEAP32[$27>>2]|0;
- _md_write($0,$25,$28);
- return;
-}
-function _md_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$021 = 0, $$022 = 0, $$pre = 0, $$pre$phi30Z2D = 0, $$pre27 = 
0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 
= 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $3 = HEAP32[$0>>2]|0;
- $4 = ((($3)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($5|0)==(0|0);
- $$pre = ((($0)) + 4|0);
- if (!($6)) {
-  $7 = HEAP32[$$pre>>2]|0;
-  $8 = ($7|0)==(0);
-  if (!($8)) {
-   $9 = ((($0)) + 12|0);
-   $10 = (_fwrite($9,$7,1,$5)|0);
-   $11 = ($10|0)==(1);
-   if (!($11)) {
-    __gcry_bug(59029,630,59034);
-    // unreachable;
-   }
-  }
-  $12 = ($2|0)==(0);
-  if (!($12)) {
-   $13 = HEAP32[$0>>2]|0;
-   $14 = ((($13)) + 8|0);
-   $15 = HEAP32[$14>>2]|0;
-   $16 = (_fwrite($1,$2,1,$15)|0);
-   $17 = ($16|0)==(1);
-   if (!($17)) {
-    __gcry_bug(59029,632,59034);
-    // unreachable;
-   }
-  }
- }
- $18 = HEAP32[$0>>2]|0;
- $19 = ((($18)) + 16|0);
- $$021 = HEAP32[$19>>2]|0;
- $20 = ($$021|0)==(0|0);
- if ($20) {
-  HEAP32[$$pre>>2] = 0;
-  return;
- }
- $21 = ((($0)) + 12|0);
- $$022 = $$021;
- while(1) {
-  $22 = HEAP32[$$pre>>2]|0;
-  $23 = ($22|0)==(0);
-  if ($23) {
-   $$pre27 = ((($$022)) + 16|0);
-   $$pre$phi30Z2D = $$pre27;
-  } else {
-   $24 = HEAP32[$$022>>2]|0;
-   $25 = ((($24)) + 32|0);
-   $26 = HEAP32[$25>>2]|0;
-   $27 = ((($$022)) + 16|0);
-   FUNCTION_TABLE_viii[$26 & 127]($27,$21,$22);
-   $$pre$phi30Z2D = $27;
-  }
-  $28 = HEAP32[$$022>>2]|0;
-  $29 = ((($28)) + 32|0);
-  $30 = HEAP32[$29>>2]|0;
-  FUNCTION_TABLE_viii[$30 & 127]($$pre$phi30Z2D,$1,$2);
-  $31 = ((($$022)) + 4|0);
-  $$0 = HEAP32[$31>>2]|0;
-  $32 = ($$0|0)==(0|0);
-  if ($32) {
-   break;
-  } else {
-   $$022 = $$0;
-  }
- }
- HEAP32[$$pre>>2] = 0;
- return;
-}
-function __gcry_md_close($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- _md_close($0);
- return;
-}
-function __gcry_md_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- _md_write($0,$1,$2);
- return;
-}
-function _md_final($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i = 0, $$013$i = 0, $$013$i41 = 0, $$02$i = 0, $$02$i39 = 0, 
$$021$i = 0, $$022$i = 0, $$053 = 0, $$054 = 0, $$idx$val$idx = 0, 
$$idx$val$idx$val = 0, $$idx35$val = 0, $$idx35$val$idx = 0, 
$$idx35$val$idx$val = 0, $$idx36$val$idx$phi$trans$insert = 0, 
$$idx36$val$idx$val = 0, $$idx36$val$idx$val$pre = 0, $$idx36$val$pre = 0, 
$$ph$i = 0;
- var $$pre = 0, $$pre$phi30$iZ2D = 0, $$pre27$i = 0, $$pre60 = 0, $$pre60$pre 
= 0, $$pre61 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 
= 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, $vararg_buffer3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 20|0;
- $2 = HEAP32[$0>>2]|0;
- $3 = ((($2)) + 12|0);
- $4 = HEAP8[$3>>0]|0;
- $5 = $4 & 2;
- $6 = ($5<<24>>24)==(0);
- if (!($6)) {
-  STACKTOP = sp;return;
- }
- $7 = ((($0)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(0);
- if ($9) {
-  $32 = $2;
- } else {
-  $10 = ((($2)) + 8|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = ($11|0)==(0|0);
-  do {
-   if ($12) {
-    $17 = $2;
-   } else {
-    $13 = ((($0)) + 12|0);
-    $14 = (_fwrite($13,$8,1,$11)|0);
-    $15 = ($14|0)==(1);
-    if ($15) {
-     $$pre = HEAP32[$0>>2]|0;
-     $17 = $$pre;
-     break;
-    } else {
-     __gcry_bug(59029,630,59034);
-     // unreachable;
-    }
-   }
-  } while(0);
-  $16 = ((($17)) + 16|0);
-  $$021$i = HEAP32[$16>>2]|0;
-  $18 = ($$021$i|0)==(0|0);
-  if ($18) {
-   $$pre60 = $17;
-  } else {
-   $19 = ((($0)) + 12|0);
-   $$022$i = $$021$i;
-   while(1) {
-    $20 = HEAP32[$7>>2]|0;
-    $21 = ($20|0)==(0);
-    if ($21) {
-     $$pre27$i = ((($$022$i)) + 16|0);
-     $$pre$phi30$iZ2D = $$pre27$i;
-    } else {
-     $22 = HEAP32[$$022$i>>2]|0;
-     $23 = ((($22)) + 32|0);
-     $24 = HEAP32[$23>>2]|0;
-     $25 = ((($$022$i)) + 16|0);
-     FUNCTION_TABLE_viii[$24 & 127]($25,$19,$20);
-     $$pre$phi30$iZ2D = $25;
-    }
-    $26 = HEAP32[$$022$i>>2]|0;
-    $27 = ((($26)) + 32|0);
-    $28 = HEAP32[$27>>2]|0;
-    FUNCTION_TABLE_viii[$28 & 127]($$pre$phi30$iZ2D,0,0);
-    $29 = ((($$022$i)) + 4|0);
-    $$0$i = HEAP32[$29>>2]|0;
-    $30 = ($$0$i|0)==(0|0);
-    if ($30) {
-     break;
-    } else {
-     $$022$i = $$0$i;
-    }
-   }
-   $$pre60$pre = HEAP32[$0>>2]|0;
-   $$pre60 = $$pre60$pre;
-  }
-  HEAP32[$7>>2] = 0;
-  $32 = $$pre60;
- }
- $31 = ((($32)) + 16|0);
- $$053 = HEAP32[$31>>2]|0;
- $33 = ($$053|0)==(0|0);
- if ($33) {
-  $41 = $32;
- } else {
-  $$054 = $$053;
-  while(1) {
-   $34 = HEAP32[$$054>>2]|0;
-   $35 = ((($34)) + 36|0);
-   $36 = HEAP32[$35>>2]|0;
-   $37 = ((($$054)) + 16|0);
-   FUNCTION_TABLE_vi[$36 & 127]($37);
-   $38 = ((($$054)) + 4|0);
-   $$0 = HEAP32[$38>>2]|0;
-   $39 = ($$0|0)==(0|0);
-   if ($39) {
-    break;
-   } else {
-    $$054 = $$0;
-   }
-  }
-  $$pre61 = HEAP32[$0>>2]|0;
-  $41 = $$pre61;
- }
- $40 = ((($41)) + 12|0);
- $42 = HEAP8[$40>>0]|0;
- $43 = $42 | 2;
- HEAP8[$40>>0] = $43;
- $44 = HEAP32[$0>>2]|0;
- $45 = ((($44)) + 20|0);
- $46 = HEAP32[$45>>2]|0;
- $47 = ($46|0)==(0|0);
- if ($47) {
-  STACKTOP = sp;return;
- }
- $$idx$val$idx = ((($44)) + 16|0);
- $$idx$val$idx$val = HEAP32[$$idx$val$idx>>2]|0;
- $48 = ($$idx$val$idx$val|0)==(0|0);
- if ($48) {
-  __gcry_bug(59029,816,59166);
-  // unreachable;
- }
- $49 = ((($$idx$val$idx$val)) + 4|0);
- $50 = HEAP32[$49>>2]|0;
- $51 = ($50|0)==(0|0);
- if ($51) {
-  $$idx36$val$idx$val = $$idx$val$idx$val;
- } else {
-  __gcry_fips_signal_error(59029,980,59043,0,59055);
-  __gcry_log_error(59076,$vararg_buffer);
-  $$idx36$val$pre = HEAP32[$0>>2]|0;
-  $$idx36$val$idx$phi$trans$insert = ((($$idx36$val$pre)) + 16|0);
-  $$idx36$val$idx$val$pre = HEAP32[$$idx36$val$idx$phi$trans$insert>>2]|0;
-  $$idx36$val$idx$val = $$idx36$val$idx$val$pre;
- }
- $52 = HEAP32[$$idx$val$idx$val>>2]|0;
- $53 = HEAP32[$52>>2]|0;
- $54 = ($53|0)==(0);
- $55 = ($$idx36$val$idx$val|0)==(0|0);
- do {
-  if ($54) {
-   if ($55) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $56 = ((($$idx36$val$idx$val)) + 4|0);
-   $57 = HEAP32[$56>>2]|0;
-   $58 = ($57|0)==(0|0);
-   if (!($58)) {
-    __gcry_log_debug(59127,$vararg_buffer1);
-   }
-   $59 = HEAP32[$$idx36$val$idx$val>>2]|0;
-   $60 = ((($59)) + 40|0);
-   $61 = HEAP32[$60>>2]|0;
-   $62 = ((($$idx36$val$idx$val)) + 16|0);
-   $63 = (FUNCTION_TABLE_ii[$61 & 63]($62)|0);
-   $$013$i = $63;$127 = 1;$76 = 0;
-  } else {
-   if ($55) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $$02$i = $$idx36$val$idx$val;
-   while(1) {
-    $64 = HEAP32[$$02$i>>2]|0;
-    $65 = HEAP32[$64>>2]|0;
-    $66 = ($65|0)==($53|0);
-    if ($66) {
-     label = 31;
-     break;
-    }
-    $71 = ((($$02$i)) + 4|0);
-    $72 = HEAP32[$71>>2]|0;
-    $73 = ($72|0)==(0|0);
-    if ($73) {
-     label = 33;
-     break;
-    } else {
-     $$02$i = $72;
-    }
-   }
-   if ((label|0) == 31) {
-    $67 = ((($64)) + 40|0);
-    $68 = HEAP32[$67>>2]|0;
-    $69 = ((($$02$i)) + 16|0);
-    $70 = (FUNCTION_TABLE_ii[$68 & 63]($69)|0);
-    $$013$i = $70;$127 = 0;$76 = $53;
-    break;
-   }
-   else if ((label|0) == 33) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-  }
- } while(0);
- $74 = HEAP32[9908]|0;
- $75 = ($74|0)==($76|0);
- if ($75) {
-  $$ph$i = 39632;
-  label = 40;
- } else {
-  $77 = HEAP32[9936]|0;
-  $78 = ($77|0)==($76|0);
-  if ($78) {
-   $$ph$i = 39744;
-   label = 40;
-  } else {
-   $79 = HEAP32[9921]|0;
-   $80 = ($79|0)==($76|0);
-   if ($80) {
-    $$ph$i = 39684;
-    label = 40;
-   } else {
-    $81 = HEAP32[9952]|0;
-    $82 = ($81|0)==($76|0);
-    if ($82) {
-     $$ph$i = 39808;
-     label = 40;
-    } else {
-     $83 = HEAP32[9968]|0;
-     $84 = ($83|0)==($76|0);
-     if ($84) {
-      $$ph$i = 39872;
-      label = 40;
-     } else {
-      $85 = HEAP32[9871]|0;
-      $86 = ($85|0)==($76|0);
-      if ($86) {
-       $$ph$i = 39484;
-       label = 40;
-      } else {
-       $107 = 0;
-      }
-     }
-    }
-   }
-  }
- }
- if ((label|0) == 40) {
-  $87 = ((($$ph$i)) + 24|0);
-  $88 = HEAP32[$87>>2]|0;
-  $107 = $88;
- }
- $89 = HEAP32[$0>>2]|0;
- $90 = ((($89)) + 12|0);
- $91 = HEAP8[$90>>0]|0;
- $92 = $91 & 1;
- $93 = $92&255;
- $94 = $91 & 4;
- $95 = $94&255;
- $96 = $95 << 6;
- $97 = $96 | $93;
- $98 = (_md_open($1,$76,$97)|0);
- $99 = ($98|0)==(0);
- if (!($99)) {
-  __gcry_fatal_error($98,0);
-  // unreachable;
- }
- $100 = HEAP32[$1>>2]|0;
- $101 = HEAP32[$0>>2]|0;
- $102 = ((($101)) + 20|0);
- $103 = HEAP32[$102>>2]|0;
- $104 = ((($101)) + 24|0);
- $105 = HEAP32[$104>>2]|0;
- $106 = (($103) + ($105)|0);
- _md_write($100,$106,$105);
- _md_write($100,$$013$i,$107);
- _md_final($100);
- $$idx35$val = HEAP32[$100>>2]|0;
- $$idx35$val$idx = ((($$idx35$val)) + 16|0);
- $$idx35$val$idx$val = HEAP32[$$idx35$val$idx>>2]|0;
- $108 = ($$idx35$val$idx$val|0)==(0|0);
- do {
-  if ($127) {
-   if ($108) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $109 = ((($$idx35$val$idx$val)) + 4|0);
-   $110 = HEAP32[$109>>2]|0;
-   $111 = ($110|0)==(0|0);
-   if (!($111)) {
-    __gcry_log_debug(59127,$vararg_buffer3);
-   }
-   $112 = HEAP32[$$idx35$val$idx$val>>2]|0;
-   $113 = ((($112)) + 40|0);
-   $114 = HEAP32[$113>>2]|0;
-   $115 = ((($$idx35$val$idx$val)) + 16|0);
-   $116 = (FUNCTION_TABLE_ii[$114 & 63]($115)|0);
-   $$013$i41 = $116;
-  } else {
-   if ($108) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $$02$i39 = $$idx35$val$idx$val;
-   while(1) {
-    $117 = HEAP32[$$02$i39>>2]|0;
-    $118 = HEAP32[$117>>2]|0;
-    $119 = ($118|0)==($76|0);
-    if ($119) {
-     label = 51;
-     break;
-    }
-    $124 = ((($$02$i39)) + 4|0);
-    $125 = HEAP32[$124>>2]|0;
-    $126 = ($125|0)==(0|0);
-    if ($126) {
-     label = 53;
-     break;
-    } else {
-     $$02$i39 = $125;
-    }
-   }
-   if ((label|0) == 51) {
-    $120 = ((($117)) + 40|0);
-    $121 = HEAP32[$120>>2]|0;
-    $122 = ((($$02$i39)) + 16|0);
-    $123 = (FUNCTION_TABLE_ii[$121 & 63]($122)|0);
-    $$013$i41 = $123;
-    break;
-   }
-   else if ((label|0) == 53) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-  }
- } while(0);
- _memcpy(($$013$i|0),($$013$i41|0),($107|0))|0;
- _md_close($100);
- STACKTOP = sp;return;
-}
-function __gcry_md_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i8 = 0, $$015$i = 0, $$016$i = 0, $$042$i = 0, $$043$i = 0, 
$$044$i = 0, $$04549$i = 0, $$idx$val$idx$i = 0, $$idx$val$idx$val$i = 0, 
$$ph$i$i = 0, $$ph$i46$i = 0, $$phi$trans$insert$i = 0, $$pre$i = 0, $$pre$i9 = 
0, $$pre50$i = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0;
- var $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 
= 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, 
$19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = HEAP32[$0>>2]|0;
- $4 = ((($3)) + 20|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($5|0)==(0|0);
- if ($6) {
-  $$0 = 70;
-  STACKTOP = sp;return ($$0|0);
- }
- $$idx$val$idx$i = ((($3)) + 16|0);
- $$idx$val$idx$val$i = HEAP32[$$idx$val$idx$i>>2]|0;
- $7 = ($$idx$val$idx$val$i|0)==(0|0);
- if ($7) {
-  $$0 = 5;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = ((($$idx$val$idx$val$i)) + 4|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0|0);
- if (!($10)) {
-  __gcry_fips_signal_error(59029,980,59043,0,59055);
-  __gcry_log_error(59076,$vararg_buffer);
- }
- $11 = HEAP32[$$idx$val$idx$val$i>>2]|0;
- $12 = HEAP32[$11>>2]|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  $$0 = 5;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = HEAP32[$0>>2]|0;
- $15 = ((($14)) + 24|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = ($16>>>0)<($2>>>0);
- do {
-  if ($17) {
-   $18 = HEAP32[9908]|0;
-   $19 = ($18|0)==($12|0);
-   if ($19) {
-    $$ph$i$i = 39632;
-    label = 13;
-   } else {
-    $20 = HEAP32[9936]|0;
-    $21 = ($20|0)==($12|0);
-    if ($21) {
-     $$ph$i$i = 39744;
-     label = 13;
-    } else {
-     $22 = HEAP32[9921]|0;
-     $23 = ($22|0)==($12|0);
-     if ($23) {
-      $$ph$i$i = 39684;
-      label = 13;
-     } else {
-      $24 = HEAP32[9952]|0;
-      $25 = ($24|0)==($12|0);
-      if ($25) {
-       $$ph$i$i = 39808;
-       label = 13;
-      } else {
-       $26 = HEAP32[9968]|0;
-       $27 = ($26|0)==($12|0);
-       if ($27) {
-        $$ph$i$i = 39872;
-        label = 13;
-       } else {
-        $28 = HEAP32[9871]|0;
-        $29 = ($28|0)==($12|0);
-        if ($29) {
-         $$ph$i$i = 39484;
-         label = 13;
-        } else {
-         $32 = 0;
-        }
-       }
-      }
-     }
-    }
-   }
-   if ((label|0) == 13) {
-    $30 = ((($$ph$i$i)) + 24|0);
-    $31 = HEAP32[$30>>2]|0;
-    $32 = $31;
-   }
-   $33 = (__gcry_malloc_secure($32)|0);
-   $34 = ($33|0)==(0|0);
-   if ($34) {
-    $79 = (___errno_location()|0);
-    $80 = HEAP32[$79>>2]|0;
-    $81 = (_gpg_err_code_from_errno($80)|0);
-    $82 = ($81|0)==(0);
-    if ($82) {
-     break;
-    } else {
-     $$0 = $81;
-    }
-    STACKTOP = sp;return ($$0|0);
-   }
-   __gcry_md_hash_buffer($12,$33,$1,$2);
-   $35 = HEAP32[9908]|0;
-   $36 = ($35|0)==($12|0);
-   if ($36) {
-    $$ph$i46$i = 39632;
-   } else {
-    $37 = HEAP32[9936]|0;
-    $38 = ($37|0)==($12|0);
-    if ($38) {
-     $$ph$i46$i = 39744;
-    } else {
-     $39 = HEAP32[9921]|0;
-     $40 = ($39|0)==($12|0);
-     if ($40) {
-      $$ph$i46$i = 39684;
-     } else {
-      $41 = HEAP32[9952]|0;
-      $42 = ($41|0)==($12|0);
-      if ($42) {
-       $$ph$i46$i = 39808;
-      } else {
-       $43 = HEAP32[9968]|0;
-       $44 = ($43|0)==($12|0);
-       if ($44) {
-        $$ph$i46$i = 39872;
-       } else {
-        $45 = HEAP32[9871]|0;
-        $46 = ($45|0)==($12|0);
-        if ($46) {
-         $$ph$i46$i = 39484;
-        } else {
-         $$pre$i = HEAP32[$0>>2]|0;
-         $$phi$trans$insert$i = ((($$pre$i)) + 24|0);
-         $$pre50$i = HEAP32[$$phi$trans$insert$i>>2]|0;
-         $$042$i = $33;$$043$i = $33;$$044$i = 0;$54 = $$pre$i;$57 = $$pre50$i;
-         label = 24;
-         break;
-        }
-       }
-      }
-     }
-    }
-   }
-   $47 = ((($$ph$i46$i)) + 24|0);
-   $48 = HEAP32[$47>>2]|0;
-   $49 = HEAP32[$0>>2]|0;
-   $50 = ((($49)) + 24|0);
-   $51 = HEAP32[$50>>2]|0;
-   $52 = ($48>>>0)>($51>>>0);
-   if ($52) {
-    __gcry_assert_failed(59174,59029,716,59207);
-    // unreachable;
-   } else {
-    $$042$i = $33;$$043$i = $33;$$044$i = $48;$54 = $49;$57 = $51;
-    label = 24;
-   }
-  } else {
-   $$042$i = $1;$$043$i = 0;$$044$i = $2;$54 = $14;$57 = $16;
-   label = 24;
-  }
- } while(0);
- if ((label|0) == 24) {
-  $53 = ((($54)) + 20|0);
-  $55 = HEAP32[$53>>2]|0;
-  $56 = $57 << 1;
-  _memset(($55|0),0,($56|0))|0;
-  $58 = HEAP32[$0>>2]|0;
-  $59 = ((($58)) + 20|0);
-  $60 = HEAP32[$59>>2]|0;
-  $61 = ((($58)) + 24|0);
-  $62 = HEAP32[$61>>2]|0;
-  $63 = (($60) + ($62)|0);
-  _memcpy(($60|0),($$042$i|0),($$044$i|0))|0;
-  _memcpy(($63|0),($$042$i|0),($$044$i|0))|0;
-  $64 = HEAP32[$0>>2]|0;
-  $65 = ((($64)) + 24|0);
-  $66 = HEAP32[$65>>2]|0;
-  $67 = ($66|0)>(0);
-  if ($67) {
-   $$04549$i = 0;
-   while(1) {
-    $68 = (($60) + ($$04549$i)|0);
-    $69 = HEAP8[$68>>0]|0;
-    $70 = $69 ^ 54;
-    HEAP8[$68>>0] = $70;
-    $71 = (($63) + ($$04549$i)|0);
-    $72 = HEAP8[$71>>0]|0;
-    $73 = $72 ^ 92;
-    HEAP8[$71>>0] = $73;
-    $74 = (($$04549$i) + 1)|0;
-    $75 = HEAP32[$0>>2]|0;
-    $76 = ((($75)) + 24|0);
-    $77 = HEAP32[$76>>2]|0;
-    $78 = ($74|0)<($77|0);
-    if ($78) {
-     $$04549$i = $74;
-    } else {
-     break;
-    }
-   }
-  }
-  __gcry_free($$043$i);
- }
- $83 = HEAP32[$0>>2]|0;
- $84 = ((($83)) + 12|0);
- $85 = HEAP8[$84>>0]|0;
- $86 = $85 & -3;
- HEAP8[$84>>0] = $86;
- $87 = ((($0)) + 4|0);
- HEAP32[$87>>2] = 0;
- $88 = HEAP32[$0>>2]|0;
- $89 = ((($88)) + 16|0);
- $$015$i = HEAP32[$89>>2]|0;
- $90 = ($$015$i|0)==(0|0);
- if ($90) {
-  $106 = $88;
- } else {
-  $$016$i = $$015$i;
-  while(1) {
-   $91 = ((($$016$i)) + 16|0);
-   $92 = HEAP32[$$016$i>>2]|0;
-   $93 = ((($92)) + 44|0);
-   $94 = HEAP32[$93>>2]|0;
-   _memset(($91|0),0,($94|0))|0;
-   $95 = ((($92)) + 28|0);
-   $96 = HEAP32[$95>>2]|0;
-   $97 = HEAP32[$0>>2]|0;
-   $98 = ((($97)) + 12|0);
-   $99 = HEAP8[$98>>0]|0;
-   $100 = $99 & 4;
-   $101 = $100&255;
-   $102 = $101 << 6;
-   FUNCTION_TABLE_vii[$96 & 63]($91,$102);
-   $103 = ((($$016$i)) + 4|0);
-   $$0$i8 = HEAP32[$103>>2]|0;
-   $104 = ($$0$i8|0)==(0|0);
-   if ($104) {
-    break;
-   } else {
-    $$016$i = $$0$i8;
-   }
-  }
-  $$pre$i9 = HEAP32[$0>>2]|0;
-  $106 = $$pre$i9;
- }
- $105 = ((($106)) + 20|0);
- $107 = HEAP32[$105>>2]|0;
- $108 = ($107|0)==(0|0);
- if ($108) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $109 = ((($106)) + 24|0);
- $110 = HEAP32[$109>>2]|0;
- _md_write($0,$107,$110);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_md_hash_buffer($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$idx$val$i = 0, $$013$i = 0, $$02$i = 0, $$262$i = 0, $$idx$val = 0, 
$$idx$val$idx = 0, $$idx$val$idx$val = 0, $$ph$i = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 
= 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- switch ($0|0) {
- case 2:  {
-  __gcry_sha1_hash_buffer($1,$2,$3);
-  STACKTOP = sp;return;
-  break;
- }
- case 3:  {
-  $4 = (__gcry_fips_mode()|0);
-  $5 = ($4|0)==(0);
-  if ($5) {
-   __gcry_rmd160_hash_buffer($1,$2,$3);
-   STACKTOP = sp;return;
-  }
-  break;
- }
- case 1:  {
-  $6 = (__gcry_fips_mode()|0);
-  $7 = ($6|0)==(0);
-  if (!($7)) {
-   __gcry_inactivate_fips_mode(59020);
-   $8 = (__gcry_enforced_fips_mode()|0);
-   $9 = ($8|0)==(0);
-   if (!($9)) {
-    __gcry_fips_noreturn();
-    // unreachable;
-   }
-  }
-  break;
- }
- default: {
- }
- }
- $10 = (__gcry_malloc(1068)|0);
- $11 = ($10|0)==(0|0);
- if ($11) {
-  $12 = (___errno_location()|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = (_gpg_err_code_from_errno($13)|0);
-  $15 = ($14|0)==(0);
-  if (!($15)) {
-   $$262$i = $14;
-   $25 = $$262$i & 65535;
-   $26 = $25 | 536870912;
-   $27 = (_gpg_strerror($26)|0);
-   HEAP32[$vararg_buffer>>2] = $0;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $27;
-   __gcry_log_bug(59223,$vararg_buffer);
-   // unreachable;
-  }
- }
- $16 = ((($10)) + 1040|0);
- HEAP32[$10>>2] = $16;
- $17 = ((($10)) + 8|0);
- HEAP32[$17>>2] = 1025;
- $18 = ((($10)) + 4|0);
- HEAP32[$18>>2] = 0;
- $19 = ((($10)) + 1048|0);
- 
;HEAP32[$19>>2]=0|0;HEAP32[$19+4>>2]=0|0;HEAP32[$19+8>>2]=0|0;HEAP32[$19+12>>2]=0|0;HEAP32[$19+16>>2]=0|0;
- HEAP32[$16>>2] = 285677921;
- $20 = ((($10)) + 1044|0);
- HEAP32[$20>>2] = 1068;
- $21 = ((($10)) + 1052|0);
- HEAP8[$21>>0] = 0;
- __gcry_fast_random_poll();
- $22 = ($0|0)==(0);
- if (!($22)) {
-  $$0$idx$val$i = HEAP32[$10>>2]|0;
-  $23 = (_md_enable($$0$idx$val$i,$0)|0);
-  $24 = ($23|0)==(0);
-  if (!($24)) {
-   _md_close($10);
-   $$262$i = $23;
-   $25 = $$262$i & 65535;
-   $26 = $25 | 536870912;
-   $27 = (_gpg_strerror($26)|0);
-   HEAP32[$vararg_buffer>>2] = $0;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $27;
-   __gcry_log_bug(59223,$vararg_buffer);
-   // unreachable;
-  }
- }
- _md_write($10,$2,$3);
- _md_final($10);
- $$idx$val = HEAP32[$10>>2]|0;
- $$idx$val$idx = ((($$idx$val)) + 16|0);
- $$idx$val$idx$val = HEAP32[$$idx$val$idx>>2]|0;
- $28 = ($$idx$val$idx$val|0)==(0|0);
- do {
-  if ($22) {
-   if ($28) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $29 = ((($$idx$val$idx$val)) + 4|0);
-   $30 = HEAP32[$29>>2]|0;
-   $31 = ($30|0)==(0|0);
-   if (!($31)) {
-    __gcry_log_debug(59127,$vararg_buffer2);
-   }
-   $32 = HEAP32[$$idx$val$idx$val>>2]|0;
-   $33 = ((($32)) + 40|0);
-   $34 = HEAP32[$33>>2]|0;
-   $35 = ((($$idx$val$idx$val)) + 16|0);
-   $36 = (FUNCTION_TABLE_ii[$34 & 63]($35)|0);
-   $$013$i = $36;
-  } else {
-   if ($28) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-   $$02$i = $$idx$val$idx$val;
-   while(1) {
-    $37 = HEAP32[$$02$i>>2]|0;
-    $38 = HEAP32[$37>>2]|0;
-    $39 = ($38|0)==($0|0);
-    if ($39) {
-     label = 22;
-     break;
-    }
-    $44 = ((($$02$i)) + 4|0);
-    $45 = HEAP32[$44>>2]|0;
-    $46 = ($45|0)==(0|0);
-    if ($46) {
-     label = 24;
-     break;
-    } else {
-     $$02$i = $45;
-    }
-   }
-   if ((label|0) == 22) {
-    $40 = ((($37)) + 40|0);
-    $41 = HEAP32[$40>>2]|0;
-    $42 = ((($$02$i)) + 16|0);
-    $43 = (FUNCTION_TABLE_ii[$41 & 63]($42)|0);
-    $$013$i = $43;
-    break;
-   }
-   else if ((label|0) == 24) {
-    __gcry_bug(59029,816,59166);
-    // unreachable;
-   }
-  }
- } while(0);
- $47 = HEAP32[9908]|0;
- $48 = ($47|0)==($0|0);
- if ($48) {
-  $$ph$i = 39632;
-  label = 31;
- } else {
-  $49 = HEAP32[9936]|0;
-  $50 = ($49|0)==($0|0);
-  if ($50) {
-   $$ph$i = 39744;
-   label = 31;
-  } else {
-   $51 = HEAP32[9921]|0;
-   $52 = ($51|0)==($0|0);
-   if ($52) {
-    $$ph$i = 39684;
-    label = 31;
-   } else {
-    $53 = HEAP32[9952]|0;
-    $54 = ($53|0)==($0|0);
-    if ($54) {
-     $$ph$i = 39808;
-     label = 31;
-    } else {
-     $55 = HEAP32[9968]|0;
-     $56 = ($55|0)==($0|0);
-     if ($56) {
-      $$ph$i = 39872;
-      label = 31;
-     } else {
-      $57 = HEAP32[9871]|0;
-      $58 = ($57|0)==($0|0);
-      if ($58) {
-       $$ph$i = 39484;
-       label = 31;
-      } else {
-       $61 = 0;
-      }
-     }
-    }
-   }
-  }
- }
- if ((label|0) == 31) {
-  $59 = ((($$ph$i)) + 24|0);
-  $60 = HEAP32[$59>>2]|0;
-  $61 = $60;
- }
- _memcpy(($1|0),($$013$i|0),($61|0))|0;
- _md_close($10);
- STACKTOP = sp;return;
-}
-function __gcry_md_read($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$013$i = 0, $$02$i = 0, $$idx$val = 0, $$idx$val$idx = 0, 
$$idx$val$idx$val = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- _md_final($0);
- $$idx$val = HEAP32[$0>>2]|0;
- $$idx$val$idx = ((($$idx$val)) + 16|0);
- $$idx$val$idx$val = HEAP32[$$idx$val$idx>>2]|0;
- $2 = ($1|0)==(0);
- $3 = ($$idx$val$idx$val|0)==(0|0);
- if ($2) {
-  if ($3) {
-   __gcry_bug(59029,816,59166);
-   // unreachable;
-  }
-  $4 = ((($$idx$val$idx$val)) + 4|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = ($5|0)==(0|0);
-  if (!($6)) {
-   __gcry_log_debug(59127,$vararg_buffer);
-  }
-  $7 = HEAP32[$$idx$val$idx$val>>2]|0;
-  $8 = ((($7)) + 40|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ((($$idx$val$idx$val)) + 16|0);
-  $11 = (FUNCTION_TABLE_ii[$9 & 63]($10)|0);
-  $$013$i = $11;
-  STACKTOP = sp;return ($$013$i|0);
- }
- if ($3) {
-  __gcry_bug(59029,816,59166);
-  // unreachable;
- }
- $$02$i = $$idx$val$idx$val;
- while(1) {
-  $12 = HEAP32[$$02$i>>2]|0;
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($13|0)==($1|0);
-  if ($14) {
-   break;
-  }
-  $19 = ((($$02$i)) + 4|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ($20|0)==(0|0);
-  if ($21) {
-   label = 11;
-   break;
-  } else {
-   $$02$i = $20;
-  }
- }
- if ((label|0) == 11) {
-  __gcry_bug(59029,816,59166);
-  // unreachable;
- }
- $15 = ((($12)) + 40|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = ((($$02$i)) + 16|0);
- $18 = (FUNCTION_TABLE_ii[$16 & 63]($17)|0);
- $$013$i = $18;
- STACKTOP = sp;return ($$013$i|0);
-}
-function __gcry_md_hash_buffers($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$013$i = 0, $$02$i = 0, $$042$ph = 0, $$043 = 0, $$045 = 0, $$045$pn = 
0, $$1 = 0, $$14453 = 0, $$14652 = 0, $$idx$val = 0, $$idx$val$idx = 0, 
$$idx$val$idx$val = 0, $$ph$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 
0, $34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0;
- var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $or$cond$not = 0, 
$or$cond3 = 0, $or$cond48 = 0, $or$cond5 = 0, $vararg_buffer = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $5 = sp + 4|0;
- $6 = ($3|0)!=(0|0);
- $7 = ($4|0)>(-1);
- $or$cond$not = $6 & $7;
- $8 = $1 & -3;
- $9 = ($8|0)==(0);
- $or$cond48 = $9 & $or$cond$not;
- if (!($or$cond48)) {
-  $$1 = 45;
-  STACKTOP = sp;return ($$1|0);
- }
- $10 = $1 & 2;
- $11 = ($10|0)!=(0);
- $12 = ($4|0)<(1);
- $or$cond3 = $11 & $12;
- if ($or$cond3) {
-  $$1 = 45;
-  STACKTOP = sp;return ($$1|0);
- }
- $13 = ($0|0)!=(2);
- $or$cond5 = $13 | $11;
- if (!($or$cond5)) {
-  __gcry_sha1_hash_buffers($2,$3,$4);
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $14 = ($0|0)==(1);
- if ($14) {
-  $15 = (__gcry_fips_mode()|0);
-  $16 = ($15|0)==(0);
-  if (!($16)) {
-   __gcry_inactivate_fips_mode(59020);
-   $17 = (__gcry_enforced_fips_mode()|0);
-   $18 = ($17|0)==(0);
-   if (!($18)) {
-    __gcry_fips_noreturn();
-    // unreachable;
-   }
-  }
- }
- $19 = (_md_open($5,$0,$10)|0);
- $20 = ($19|0)==(0);
- L16: do {
-  if ($20) {
-   $21 = HEAP32[$5>>2]|0;
-   do {
-    if ($11) {
-     $22 = ((($3)) + 12|0);
-     $23 = HEAP32[$22>>2]|0;
-     $24 = ((($3)) + 4|0);
-     $25 = HEAP32[$24>>2]|0;
-     $26 = (($23) + ($25)|0);
-     $27 = ((($3)) + 8|0);
-     $28 = HEAP32[$27>>2]|0;
-     $29 = (__gcry_md_setkey($21,$26,$28)|0);
-     $30 = ($29|0)==(0);
-     if ($30) {
-      $31 = ((($3)) + 16|0);
-      $32 = (($4) + -1)|0;
-      $$043 = $32;$$045 = $31;
-      break;
-     } else {
-      _md_close($21);
-      $$042$ph = $29;
-      break L16;
-     }
-    } else {
-     $$043 = $4;$$045 = $3;
-    }
-   } while(0);
-   $33 = ($$043|0)==(0);
-   if (!($33)) {
-    $34 = ((($$045)) + 12|0);
-    $35 = HEAP32[$34>>2]|0;
-    $36 = ((($$045)) + 4|0);
-    $37 = HEAP32[$36>>2]|0;
-    $38 = (($35) + ($37)|0);
-    $39 = ((($$045)) + 8|0);
-    $40 = HEAP32[$39>>2]|0;
-    _md_write($21,$38,$40);
-    $41 = (($$043) + -1)|0;
-    $42 = ($41|0)==(0);
-    if (!($42)) {
-     $$045$pn = $$045;$$14453 = $41;
-     while(1) {
-      $$14652 = ((($$045$pn)) + 16|0);
-      $43 = ((($$045$pn)) + 28|0);
-      $44 = HEAP32[$43>>2]|0;
-      $45 = ((($$045$pn)) + 20|0);
-      $46 = HEAP32[$45>>2]|0;
-      $47 = (($44) + ($46)|0);
-      $48 = ((($$045$pn)) + 24|0);
-      $49 = HEAP32[$48>>2]|0;
-      _md_write($21,$47,$49);
-      $50 = (($$14453) + -1)|0;
-      $51 = ($50|0)==(0);
-      if ($51) {
-       break;
-      } else {
-       $$045$pn = $$14652;$$14453 = $50;
-      }
-     }
-    }
-   }
-   _md_final($21);
-   $$idx$val = HEAP32[$21>>2]|0;
-   $$idx$val$idx = ((($$idx$val)) + 16|0);
-   $$idx$val$idx$val = HEAP32[$$idx$val$idx>>2]|0;
-   $52 = ($0|0)==(0);
-   $53 = ($$idx$val$idx$val|0)==(0|0);
-   do {
-    if ($52) {
-     if ($53) {
-      __gcry_bug(59029,816,59166);
-      // unreachable;
-     }
-     $54 = ((($$idx$val$idx$val)) + 4|0);
-     $55 = HEAP32[$54>>2]|0;
-     $56 = ($55|0)==(0|0);
-     if (!($56)) {
-      __gcry_log_debug(59127,$vararg_buffer);
-     }
-     $57 = HEAP32[$$idx$val$idx$val>>2]|0;
-     $58 = ((($57)) + 40|0);
-     $59 = HEAP32[$58>>2]|0;
-     $60 = ((($$idx$val$idx$val)) + 16|0);
-     $61 = (FUNCTION_TABLE_ii[$59 & 63]($60)|0);
-     $$013$i = $61;
-    } else {
-     if ($53) {
-      __gcry_bug(59029,816,59166);
-      // unreachable;
-     }
-     $$02$i = $$idx$val$idx$val;
-     while(1) {
-      $62 = HEAP32[$$02$i>>2]|0;
-      $63 = HEAP32[$62>>2]|0;
-      $64 = ($63|0)==($0|0);
-      if ($64) {
-       label = 26;
-       break;
-      }
-      $69 = ((($$02$i)) + 4|0);
-      $70 = HEAP32[$69>>2]|0;
-      $71 = ($70|0)==(0|0);
-      if ($71) {
-       label = 28;
-       break;
-      } else {
-       $$02$i = $70;
-      }
-     }
-     if ((label|0) == 26) {
-      $65 = ((($62)) + 40|0);
-      $66 = HEAP32[$65>>2]|0;
-      $67 = ((($$02$i)) + 16|0);
-      $68 = (FUNCTION_TABLE_ii[$66 & 63]($67)|0);
-      $$013$i = $68;
-      break;
-     }
-     else if ((label|0) == 28) {
-      __gcry_bug(59029,816,59166);
-      // unreachable;
-     }
-    }
-   } while(0);
-   $72 = HEAP32[9908]|0;
-   $73 = ($72|0)==($0|0);
-   if ($73) {
-    $$ph$i = 39632;
-    label = 35;
-   } else {
-    $74 = HEAP32[9936]|0;
-    $75 = ($74|0)==($0|0);
-    if ($75) {
-     $$ph$i = 39744;
-     label = 35;
-    } else {
-     $76 = HEAP32[9921]|0;
-     $77 = ($76|0)==($0|0);
-     if ($77) {
-      $$ph$i = 39684;
-      label = 35;
-     } else {
-      $78 = HEAP32[9952]|0;
-      $79 = ($78|0)==($0|0);
-      if ($79) {
-       $$ph$i = 39808;
-       label = 35;
-      } else {
-       $80 = HEAP32[9968]|0;
-       $81 = ($80|0)==($0|0);
-       if ($81) {
-        $$ph$i = 39872;
-        label = 35;
-       } else {
-        $82 = HEAP32[9871]|0;
-        $83 = ($82|0)==($0|0);
-        if ($83) {
-         $$ph$i = 39484;
-         label = 35;
-        } else {
-         $86 = 0;
-        }
-       }
-      }
-     }
-    }
-   }
-   if ((label|0) == 35) {
-    $84 = ((($$ph$i)) + 24|0);
-    $85 = HEAP32[$84>>2]|0;
-    $86 = $85;
-   }
-   _memcpy(($2|0),($$013$i|0),($86|0))|0;
-   _md_close($21);
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  } else {
-   $$042$ph = $19;
-  }
- } while(0);
- $$1 = $$042$ph;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_md_get_algo($0) {
- $0 = $0|0;
- var $$idx$val = 0, $$idx$val$idx = 0, $$idx$val$idx$val = 0, $1 = 0, $2 = 0, 
$3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $$idx$val = HEAP32[$0>>2]|0;
- $$idx$val$idx = ((($$idx$val)) + 16|0);
- $$idx$val$idx$val = HEAP32[$$idx$val$idx>>2]|0;
- $1 = ($$idx$val$idx$val|0)==(0|0);
- if ($1) {
-  $7 = 0;
-  STACKTOP = sp;return ($7|0);
- }
- $2 = ((($$idx$val$idx$val)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ($3|0)==(0|0);
- if (!($4)) {
-  __gcry_fips_signal_error(59029,980,59043,0,59055);
-  __gcry_log_error(59076,$vararg_buffer);
- }
- $5 = HEAP32[$$idx$val$idx$val>>2]|0;
- $6 = HEAP32[$5>>2]|0;
- $7 = $6;
- STACKTOP = sp;return ($7|0);
-}
-function __gcry_md_get_algo_dlen($0) {
- $0 = $0|0;
- var $$ph$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = HEAP32[9908]|0;
- $2 = ($1|0)==($0|0);
- if ($2) {
-  $$ph$i = 39632;
- } else {
-  $3 = HEAP32[9936]|0;
-  $4 = ($3|0)==($0|0);
-  if ($4) {
-   $$ph$i = 39744;
-  } else {
-   $5 = HEAP32[9921]|0;
-   $6 = ($5|0)==($0|0);
-   if ($6) {
-    $$ph$i = 39684;
-   } else {
-    $7 = HEAP32[9952]|0;
-    $8 = ($7|0)==($0|0);
-    if ($8) {
-     $$ph$i = 39808;
-    } else {
-     $9 = HEAP32[9968]|0;
-     $10 = ($9|0)==($0|0);
-     if ($10) {
-      $$ph$i = 39872;
-     } else {
-      $11 = HEAP32[9871]|0;
-      $12 = ($11|0)==($0|0);
-      if ($12) {
-       $$ph$i = 39484;
-      } else {
-       $15 = 0;
-       return ($15|0);
-      }
-     }
-    }
-   }
-  }
- }
- $13 = ((($$ph$i)) + 24|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = $14;
- return ($15|0);
-}
-function __gcry_md_algo_info($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$ = 0, $$1 = 0, $$ph$i = 0, $$ph$i25 = 0, $$ph$i28 = 0, $$ph$i33 = 0, 
$10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $9 = 0, $or$cond = 0, $phitmp 
= 0, $spec$select = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- switch ($1|0) {
- case 8:  {
-  $4 = ($2|0)!=(0|0);
-  $5 = ($3|0)!=(0|0);
-  $or$cond = $4 | $5;
-  if ($or$cond) {
-   $$1 = 45;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $6 = HEAP32[9908]|0;
-  $7 = ($6|0)==($0|0);
-  if ($7) {
-   $$ph$i = 39632;
-   label = 9;
-  } else {
-   $8 = HEAP32[9936]|0;
-   $9 = ($8|0)==($0|0);
-   if ($9) {
-    $$ph$i = 39744;
-    label = 9;
-   } else {
-    $10 = HEAP32[9921]|0;
-    $11 = ($10|0)==($0|0);
-    if ($11) {
-     $$ph$i = 39684;
-     label = 9;
-    } else {
-     $12 = HEAP32[9952]|0;
-     $13 = ($12|0)==($0|0);
-     if ($13) {
-      $$ph$i = 39808;
-      label = 9;
-     } else {
-      $14 = HEAP32[9968]|0;
-      $15 = ($14|0)==($0|0);
-      if ($15) {
-       $$ph$i = 39872;
-       label = 9;
-      } else {
-       $16 = HEAP32[9871]|0;
-       $17 = ($16|0)==($0|0);
-       if ($17) {
-        $$ph$i = 39484;
-        label = 9;
-       }
-      }
-     }
-    }
-   }
-  }
-  if ((label|0) == 9) {
-   $18 = ((($$ph$i)) + 4|0);
-   $19 = HEAP8[$18>>0]|0;
-   $20 = $19 & 1;
-   $21 = ($20<<24>>24)==(0);
-   if ($21) {
-    $$1 = 0;
-    STACKTOP = sp;return ($$1|0);
-   }
-  }
-  $$1 = 5;
-  STACKTOP = sp;return ($$1|0);
-  break;
- }
- case 10:  {
-  $22 = HEAP32[9908]|0;
-  $23 = ($22|0)==($0|0);
-  if ($23) {
-   $$ph$i28 = 39632;
-  } else {
-   $24 = HEAP32[9936]|0;
-   $25 = ($24|0)==($0|0);
-   if ($25) {
-    $$ph$i28 = 39744;
-   } else {
-    $26 = HEAP32[9921]|0;
-    $27 = ($26|0)==($0|0);
-    if ($27) {
-     $$ph$i28 = 39684;
-    } else {
-     $28 = HEAP32[9952]|0;
-     $29 = ($28|0)==($0|0);
-     if ($29) {
-      $$ph$i28 = 39808;
-     } else {
-      $30 = HEAP32[9968]|0;
-      $31 = ($30|0)==($0|0);
-      if ($31) {
-       $$ph$i28 = 39872;
-      } else {
-       $32 = HEAP32[9871]|0;
-       $33 = ($32|0)==($0|0);
-       if ($33) {
-        $$ph$i28 = 39484;
-       } else {
-        $$1 = 5;
-        STACKTOP = sp;return ($$1|0);
-       }
-      }
-     }
-    }
-   }
-  }
-  $34 = ((($$ph$i28)) + 4|0);
-  $35 = HEAP8[$34>>0]|0;
-  $36 = $35 & 1;
-  $37 = ($36<<24>>24)==(0);
-  if (!($37)) {
-   $$1 = 5;
-   STACKTOP = sp;return ($$1|0);
-  }
-  if ($23) {
-   $$ph$i33 = 39632;
-  } else {
-   $38 = HEAP32[9936]|0;
-   $39 = ($38|0)==($0|0);
-   if ($39) {
-    $$ph$i33 = 39744;
-   } else {
-    $40 = HEAP32[9921]|0;
-    $41 = ($40|0)==($0|0);
-    if ($41) {
-     $$ph$i33 = 39684;
-    } else {
-     $42 = HEAP32[9952]|0;
-     $43 = ($42|0)==($0|0);
-     if ($43) {
-      $$ph$i33 = 39808;
-     } else {
-      $44 = HEAP32[9968]|0;
-      $45 = ($44|0)==($0|0);
-      if ($45) {
-       $$ph$i33 = 39872;
-      } else {
-       $46 = HEAP32[9871]|0;
-       $47 = ($46|0)==($0|0);
-       if ($47) {
-        $$ph$i33 = 39484;
-       } else {
-        HEAP32[$vararg_buffer>>2] = $0;
-        __gcry_log_bug(59259,$vararg_buffer);
-        // unreachable;
-       }
-      }
-     }
-    }
-   }
-  }
-  $48 = ((($$ph$i33)) + 16|0);
-  $49 = HEAP32[$48>>2]|0;
-  $50 = ((($$ph$i33)) + 12|0);
-  $51 = HEAP32[$50>>2]|0;
-  $52 = ($2|0)!=(0|0);
-  if ($52) {
-   $53 = HEAP32[$3>>2]|0;
-   $54 = ($53>>>0)<($49>>>0);
-   if (!($54)) {
-    _memcpy(($2|0),($51|0),($49|0))|0;
-    HEAP32[$3>>2] = $49;
-    $$1 = 0;
-    STACKTOP = sp;return ($$1|0);
-   }
-  } else {
-   $55 = ($3|0)==(0|0);
-   if (!($55)) {
-    HEAP32[$3>>2] = $49;
-    $$1 = 0;
-    STACKTOP = sp;return ($$1|0);
-   }
-  }
-  $$ = $52 ? 66 : 45;
-  $$1 = $$;
-  STACKTOP = sp;return ($$1|0);
-  break;
- }
- case 57:  {
-  $56 = ($3|0)==(0|0);
-  if ($56) {
-   $77 = 0;
-  } else {
-   $57 = HEAP32[$3>>2]|0;
-   $77 = $57;
-  }
-  $58 = HEAP32[9908]|0;
-  $59 = ($58|0)==($0|0);
-  if ($59) {
-   $$ph$i25 = 39632;
-   label = 39;
-  } else {
-   $60 = HEAP32[9936]|0;
-   $61 = ($60|0)==($0|0);
-   if ($61) {
-    $$ph$i25 = 39744;
-    label = 39;
-   } else {
-    $62 = HEAP32[9921]|0;
-    $63 = ($62|0)==($0|0);
-    if ($63) {
-     $$ph$i25 = 39684;
-     label = 39;
-    } else {
-     $64 = HEAP32[9952]|0;
-     $65 = ($64|0)==($0|0);
-     if ($65) {
-      $$ph$i25 = 39808;
-      label = 39;
-     } else {
-      $66 = HEAP32[9968]|0;
-      $67 = ($66|0)==($0|0);
-      if ($67) {
-       $$ph$i25 = 39872;
-       label = 39;
-      } else {
-       $68 = HEAP32[9871]|0;
-       $69 = ($68|0)==($0|0);
-       if ($69) {
-        $$ph$i25 = 39484;
-        label = 39;
-       } else {
-        $83 = 16777285;
-       }
-      }
-     }
-    }
-   }
-  }
-  do {
-   if ((label|0) == 39) {
-    $70 = ((($$ph$i25)) + 4|0);
-    $71 = HEAP8[$70>>0]|0;
-    $72 = $71 & 1;
-    $73 = ($72<<24>>24)==(0);
-    $74 = ((($$ph$i25)) + 48|0);
-    $75 = HEAP32[$74>>2]|0;
-    $76 = ($75|0)==(0|0);
-    if (!($73)) {
-     $phitmp = $76 ? 16777285 : 16777221;
-     $83 = $phitmp;
-     break;
-    }
-    if ($76) {
-     $83 = 16777285;
-    } else {
-     $78 = (FUNCTION_TABLE_iiii[$75 & 127]($0,$77,0)|0);
-     $79 = ($78|0)==(0);
-     $80 = $78 & 65535;
-     $81 = $80 | 16777216;
-     $spec$select = $79 ? 0 : $81;
-     $83 = $spec$select;
-    }
-   }
-  } while(0);
-  $82 = $83 & 65535;
-  $$1 = $82;
-  STACKTOP = sp;return ($$1|0);
-  break;
- }
- default: {
-  $$1 = 61;
-  STACKTOP = sp;return ($$1|0);
- }
- }
- return (0)|0;
-}
-function __gcry_md_selftest($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$ph = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $phitmp20 = 0, 
$spec$select$i$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[9908]|0;
- $4 = ($3|0)==($0|0);
- if ($4) {
-  $$ph = 39632;
-  label = 7;
- } else {
-  $5 = HEAP32[9936]|0;
-  $6 = ($5|0)==($0|0);
-  if ($6) {
-   $$ph = 39744;
-   label = 7;
-  } else {
-   $7 = HEAP32[9921]|0;
-   $8 = ($7|0)==($0|0);
-   if ($8) {
-    $$ph = 39684;
-    label = 7;
-   } else {
-    $9 = HEAP32[9952]|0;
-    $10 = ($9|0)==($0|0);
-    if ($10) {
-     $$ph = 39808;
-     label = 7;
-    } else {
-     $11 = HEAP32[9968]|0;
-     $12 = ($11|0)==($0|0);
-     if ($12) {
-      $$ph = 39872;
-      label = 7;
-     } else {
-      $13 = HEAP32[9871]|0;
-      $14 = ($13|0)==($0|0);
-      if ($14) {
-       $$ph = 39484;
-       label = 7;
-      } else {
-       $25 = 0;$30 = 0;$35 = 69;
-       label = 11;
-      }
-     }
-    }
-   }
-  }
- }
- do {
-  if ((label|0) == 7) {
-   $15 = ((($$ph)) + 4|0);
-   $16 = HEAP8[$15>>0]|0;
-   $17 = $16 & 1;
-   $18 = ($17<<24>>24)==(0);
-   $19 = ((($$ph)) + 48|0);
-   $20 = HEAP32[$19>>2]|0;
-   $21 = ($20|0)==(0|0);
-   if (!($18)) {
-    $phitmp20 = $21 ? 69 : 5;
-    $25 = $$ph;$30 = 1;$35 = $phitmp20;
-    label = 11;
-    break;
-   }
-   if ($21) {
-    $25 = $$ph;$30 = 1;$35 = 69;
-    label = 11;
-   } else {
-    $22 = (FUNCTION_TABLE_iiii[$20 & 127]($0,$1,$2)|0);
-    $$0 = $22;
-   }
-  }
- } while(0);
- if ((label|0) == 11) {
-  $23 = ($2|0)==(0|0);
-  if ($23) {
-   $$0 = $35;
-  } else {
-   if ($30) {
-    $24 = ((($25)) + 4|0);
-    $26 = HEAP8[$24>>0]|0;
-    $27 = $26 & 1;
-    $28 = ($27<<24>>24)==(0);
-    if ($28) {
-     $31 = 59812;
-    } else {
-     label = 14;
-    }
-   } else {
-    label = 14;
-   }
-   if ((label|0) == 14) {
-    $29 = $30 ? 59773 : 59792;
-    $31 = $29;
-   }
-   FUNCTION_TABLE_viiii[$2 & 63](63225,$0,59834,$31);
-   $$0 = $35;
-  }
- }
- $32 = ($$0|0)==(0);
- $33 = $$0 & 65535;
- $34 = $33 | 16777216;
- $spec$select$i$i = $32 ? 0 : $34;
- return ($spec$select$i$i|0);
-}
-function __gcry_md_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_primegen_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_register_primegen_progress($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18114] = $0;
- HEAP32[18115] = $1;
- return;
-}
-function __gcry_generate_secret_prime($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (_gen_prime($0,1,$1,$2,$3)|0);
- $5 = HEAP32[18114]|0;
- $6 = ($5|0)==(0|0);
- if ($6) {
-  return ($4|0);
- }
- $7 = HEAP32[18115]|0;
- FUNCTION_TABLE_viiiii[$5 & 127]($7,59288,10,0,0);
- return ($4|0);
-}
-function _gen_prime($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$087109 = 0, $$087109$us = 0, $$092107 = 0, $$092107$us = 0, $$093104 = 
0, $$1 = 0, $$1$us = 0, $$194106 = 0, $$194106$us = 0, $$lcssa = 0, $$lcssa$us 
= 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $5 = sp + 12|0;
- $6 = ($0>>>0)<(16);
- if ($6) {
-  HEAP32[$vararg_buffer>>2] = 16;
-  __gcry_log_fatal(59297,$vararg_buffer);
-  // unreachable;
- }
- $7 = (__gcry_xmalloc(2672)|0);
- $8 = (__gcry_mpi_alloc_set_ui(2)|0);
- $9 = (__gcry_mpi_alloc_set_ui(3)|0);
- $10 = ($1|0)!=(0);
- if ($10) {
-  $11 = (__gcry_mpi_snew($0)|0);
-  $13 = $11;
- } else {
-  $12 = (__gcry_mpi_new($0)|0);
-  $13 = $12;
- }
- $14 = (__gcry_mpi_alloc_like($13)|0);
- $15 = (__gcry_mpi_alloc_like($13)|0);
- $16 = (__gcry_mpi_alloc_like($13)|0);
- HEAP32[$5>>2] = 0;
- $17 = (($0) + -1)|0;
- $18 = (($0) + -2)|0;
- $19 = (($17) - ($1))|0;
- $20 = ($3|0)==(0|0);
- L8: while(1) {
-  __gcry_mpi_randomize($13,$0,$2);
-  __gcry_mpi_set_highbit($13,$17);
-  if ($10) {
-   __gcry_mpi_set_bit($13,$18);
-  }
-  __gcry_mpi_set_bit($13,0);
-  $$093104 = 0;
-  while(1) {
-   $21 = (3184 + ($$093104<<1)|0);
-   $22 = HEAP16[$21>>1]|0;
-   $23 = $22&65535;
-   $24 = (__gcry_mpi_fdiv_r_ui(0,$13,$23)|0);
-   $25 = (($7) + ($$093104<<2)|0);
-   HEAP32[$25>>2] = $24;
-   $26 = (($$093104) + 1)|0;
-   $27 = ($26|0)==(668);
-   if ($27) {
-    break;
-   } else {
-    $$093104 = $26;
-   }
-  }
-  L16: do {
-   if ($20) {
-    $$087109$us = 0;$$092107$us = 0;
-    while(1) {
-     $$194106$us = 0;$37 = 3;
-     while(1) {
-      $33 = (($7) + ($$194106$us<<2)|0);
-      $34 = HEAP32[$33>>2]|0;
-      $35 = (($34) + ($$092107$us))|0;
-      $36 = ($35>>>0)<($37>>>0);
-      if ($36) {
-       $$lcssa$us = $35;
-      } else {
-       $39 = $34;
-       while(1) {
-        $38 = (($39) - ($37))|0;
-        $40 = (($38) + ($$092107$us))|0;
-        $41 = ($40>>>0)<($37>>>0);
-        if ($41) {
-         break;
-        } else {
-         $39 = $38;
-        }
-       }
-       HEAP32[$33>>2] = $38;
-       $$lcssa$us = $40;
-      }
-      $42 = ($$lcssa$us|0)==(0);
-      $29 = (($$194106$us) + 1)|0;
-      if ($42) {
-       $$1$us = $$087109$us;
-       break;
-      }
-      $28 = (3184 + ($29<<1)|0);
-      $30 = HEAP16[$28>>1]|0;
-      $31 = $30&65535;
-      $32 = ($29|0)==(668);
-      if ($32) {
-       label = 20;
-       break;
-      } else {
-       $$194106$us = $29;$37 = $31;
-      }
-     }
-     if ((label|0) == 20) {
-      label = 0;
-      __gcry_mpi_add_ui($16,$13,$$092107$us);
-      $43 = HEAP32[$5>>2]|0;
-      $44 = (($43) + 1)|0;
-      HEAP32[$5>>2] = $44;
-      __gcry_mpi_sub_ui($15,$16,1);
-      __gcry_mpi_powm($14,$8,$15,$16);
-      $45 = (__gcry_mpi_cmp_ui($14,1)|0);
-      $46 = ($45|0)==(0);
-      if ($46) {
-       $47 = (_is_prime($16,5,$5)|0);
-       $48 = ($47|0)==(0);
-       if (!($48)) {
-        break;
-       }
-      }
-      $51 = (($$087109$us) + 1)|0;
-      $52 = ($51|0)==(10);
-      if ($52) {
-       $53 = HEAP32[18114]|0;
-       $54 = ($53|0)==(0|0);
-       if ($54) {
-        $$1$us = 0;
-       } else {
-        $55 = HEAP32[18115]|0;
-        FUNCTION_TABLE_viiiii[$53 & 127]($55,59288,46,0,0);
-        $$1$us = 0;
-       }
-      } else {
-       $$1$us = $51;
-      }
-     }
-     $56 = (($$092107$us) + 2)|0;
-     $57 = ($56>>>0)<(20000);
-     if ($57) {
-      $$087109$us = $$1$us;$$092107$us = $56;
-     } else {
-      break L16;
-     }
-    }
-    $49 = (__gcry_mpi_test_bit($16,$19)|0);
-    $50 = ($49|0)==(0);
-    if ($50) {
-     label = 38;
-    } else {
-     label = 51;
-     break L8;
-    }
-   } else {
-    $$087109 = 0;$$092107 = 0;
-    while(1) {
-     $$194106 = 0;$67 = 3;
-     while(1) {
-      $63 = (($7) + ($$194106<<2)|0);
-      $64 = HEAP32[$63>>2]|0;
-      $65 = (($64) + ($$092107))|0;
-      $66 = ($65>>>0)<($67>>>0);
-      if ($66) {
-       $$lcssa = $65;
-      } else {
-       $69 = $64;
-       while(1) {
-        $68 = (($69) - ($67))|0;
-        $70 = (($68) + ($$092107))|0;
-        $71 = ($70>>>0)<($67>>>0);
-        if ($71) {
-         break;
-        } else {
-         $69 = $68;
-        }
-       }
-       HEAP32[$63>>2] = $68;
-       $$lcssa = $70;
-      }
-      $72 = ($$lcssa|0)==(0);
-      $59 = (($$194106) + 1)|0;
-      if ($72) {
-       $$1 = $$087109;
-       break;
-      }
-      $58 = (3184 + ($59<<1)|0);
-      $60 = HEAP16[$58>>1]|0;
-      $61 = $60&65535;
-      $62 = ($59|0)==(668);
-      if ($62) {
-       label = 35;
-       break;
-      } else {
-       $$194106 = $59;$67 = $61;
-      }
-     }
-     if ((label|0) == 35) {
-      label = 0;
-      __gcry_mpi_add_ui($16,$13,$$092107);
-      $73 = HEAP32[$5>>2]|0;
-      $74 = (($73) + 1)|0;
-      HEAP32[$5>>2] = $74;
-      __gcry_mpi_sub_ui($15,$16,1);
-      __gcry_mpi_powm($14,$8,$15,$16);
-      $75 = (__gcry_mpi_cmp_ui($14,1)|0);
-      $76 = ($75|0)==(0);
-      if ($76) {
-       $77 = (_is_prime($16,5,$5)|0);
-       $78 = ($77|0)==(0);
-       if (!($78)) {
-        $79 = (__gcry_mpi_test_bit($16,$19)|0);
-        $80 = ($79|0)==(0);
-        if ($80) {
-         label = 38;
-         break L16;
-        }
-        $84 = (FUNCTION_TABLE_iii[$3 & 127]($4,$16)|0);
-        $85 = ($84|0)==(0);
-        if ($85) {
-         label = 51;
-         break L8;
-        }
-        $86 = HEAP32[18114]|0;
-        $87 = ($86|0)==(0|0);
-        if (!($87)) {
-         $88 = HEAP32[18115]|0;
-         FUNCTION_TABLE_viiiii[$86 & 127]($88,59288,47,0,0);
-        }
-       }
-      }
-      $89 = (($$087109) + 1)|0;
-      $90 = ($89|0)==(10);
-      if ($90) {
-       $91 = HEAP32[18114]|0;
-       $92 = ($91|0)==(0|0);
-       if ($92) {
-        $$1 = 0;
-       } else {
-        $93 = HEAP32[18115]|0;
-        FUNCTION_TABLE_viiiii[$91 & 127]($93,59288,46,0,0);
-        $$1 = 0;
-       }
-      } else {
-       $$1 = $89;
-      }
-     }
-     $94 = (($$092107) + 2)|0;
-     $95 = ($94>>>0)<(20000);
-     if ($95) {
-      $$087109 = $$1;$$092107 = $94;
-     } else {
-      break;
-     }
-    }
-   }
-  } while(0);
-  if ((label|0) == 38) {
-   label = 0;
-   $81 = HEAP32[18114]|0;
-   $82 = ($81|0)==(0|0);
-   if (!($82)) {
-    $83 = HEAP32[18115]|0;
-    FUNCTION_TABLE_viiiii[$81 & 127]($83,59288,10,0,0);
-   }
-   __gcry_log_debug(59344,$vararg_buffer1);
-  }
-  $96 = HEAP32[18114]|0;
-  $97 = ($96|0)==(0|0);
-  if (!($97)) {
-   $98 = HEAP32[18115]|0;
-   FUNCTION_TABLE_viiiii[$96 & 127]($98,59288,58,0,0);
-  }
- }
- if ((label|0) == 51) {
-  __gcry_mpi_free($8);
-  __gcry_mpi_free($9);
-  __gcry_mpi_free($14);
-  __gcry_mpi_free($15);
-  __gcry_mpi_free($13);
-  __gcry_free($7);
-  STACKTOP = sp;return ($16|0);
- }
- return (0)|0;
-}
-function _is_prime($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$074 = 0, $$07580 = 0, $$07580$us = 0, $$07678$us = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = (__gcry_mpi_alloc($4)|0);
- $6 = HEAP32[$3>>2]|0;
- $7 = (__gcry_mpi_alloc($6)|0);
- $8 = HEAP32[$3>>2]|0;
- $9 = (__gcry_mpi_alloc($8)|0);
- $10 = HEAP32[$3>>2]|0;
- $11 = (__gcry_mpi_alloc($10)|0);
- $12 = (__gcry_mpi_alloc_set_ui(2)|0);
- $13 = (__gcry_mpi_get_nbits($0)|0);
- $14 = ($1|0)>(5);
- $spec$select = $14 ? $1 : 5;
- __gcry_mpi_sub_ui($11,$0,1);
- $15 = (__gcry_mpi_copy($11)|0);
- $16 = (__gcry_mpi_trailing_zeros($15)|0);
- __gcry_mpi_tdiv_q_2exp($15,$15,$16);
- $17 = ($spec$select|0)==(0);
- L1: do {
-  if ($17) {
-   $$074 = 1;
-  } else {
-   $18 = (($13) + -2)|0;
-   $19 = ($16>>>0)>(1);
-   if (!($19)) {
-    $$07580 = 0;
-    while(1) {
-     $46 = HEAP32[$2>>2]|0;
-     $47 = (($46) + 1)|0;
-     HEAP32[$2>>2] = $47;
-     $48 = ($$07580|0)==(0);
-     if ($48) {
-      (__gcry_mpi_set_ui($5,2)|0);
-     } else {
-      __gcry_mpi_randomize($5,$13,0);
-      $49 = (__gcry_mpi_test_bit($5,$18)|0);
-      $50 = ($49|0)==(0);
-      __gcry_mpi_set_highbit($5,$18);
-      if ($50) {
-       __gcry_mpi_clear_bit($5,$18);
-      }
-      $51 = (__gcry_mpi_cmp($5,$11)|0);
-      $52 = ($51|0)<(0);
-      if (!($52)) {
-       label = 27;
-       break;
-      }
-      $53 = (__gcry_mpi_cmp_ui($5,1)|0);
-      $54 = ($53|0)>(0);
-      if (!($54)) {
-       label = 27;
-       break;
-      }
-     }
-     __gcry_mpi_powm($7,$5,$15,$0);
-     $55 = (__gcry_mpi_cmp_ui($7,1)|0);
-     $56 = ($55|0)==(0);
-     if (!($56)) {
-      $57 = (__gcry_mpi_cmp($7,$11)|0);
-      $58 = ($57|0)==(0);
-      if (!($58)) {
-       $59 = (__gcry_mpi_cmp($7,$11)|0);
-       $60 = ($59|0)==(0);
-       if (!($60)) {
-        $$074 = 0;
-        break L1;
-       }
-      }
-     }
-     $61 = HEAP32[18114]|0;
-     $62 = ($61|0)==(0|0);
-     if (!($62)) {
-      $63 = HEAP32[18115]|0;
-      FUNCTION_TABLE_viiiii[$61 & 127]($63,59288,43,0,0);
-     }
-     $64 = (($$07580) + 1)|0;
-     $65 = ($64>>>0)<($spec$select>>>0);
-     if ($65) {
-      $$07580 = $64;
-     } else {
-      $$074 = 1;
-      break L1;
-     }
-    }
-    if ((label|0) == 27) {
-     __gcry_assert_failed(59374,59446,951,59457);
-     // unreachable;
-    }
-   }
-   $$07580$us = 0;
-   while(1) {
-    $20 = HEAP32[$2>>2]|0;
-    $21 = (($20) + 1)|0;
-    HEAP32[$2>>2] = $21;
-    $22 = ($$07580$us|0)==(0);
-    if ($22) {
-     (__gcry_mpi_set_ui($5,2)|0);
-    } else {
-     __gcry_mpi_randomize($5,$13,0);
-     $23 = (__gcry_mpi_test_bit($5,$18)|0);
-     $24 = ($23|0)==(0);
-     __gcry_mpi_set_highbit($5,$18);
-     if ($24) {
-      __gcry_mpi_clear_bit($5,$18);
-     }
-     $25 = (__gcry_mpi_cmp($5,$11)|0);
-     $26 = ($25|0)<(0);
-     if (!($26)) {
-      label = 27;
-      break;
-     }
-     $27 = (__gcry_mpi_cmp_ui($5,1)|0);
-     $28 = ($27|0)>(0);
-     if (!($28)) {
-      label = 27;
-      break;
-     }
-    }
-    __gcry_mpi_powm($7,$5,$15,$0);
-    $29 = (__gcry_mpi_cmp_ui($7,1)|0);
-    $30 = ($29|0)==(0);
-    if (!($30)) {
-     $31 = (__gcry_mpi_cmp($7,$11)|0);
-     $32 = ($31|0)==(0);
-     if (!($32)) {
-      $$07678$us = 1;
-      while(1) {
-       $35 = (__gcry_mpi_cmp($7,$11)|0);
-       $36 = ($35|0)==(0);
-       if ($36) {
-        break;
-       }
-       __gcry_mpi_powm($7,$7,$12,$0);
-       $37 = (__gcry_mpi_cmp_ui($7,1)|0);
-       $38 = ($37|0)==(0);
-       $34 = (($$07678$us) + 1)|0;
-       if ($38) {
-        $$074 = 0;
-        break L1;
-       }
-       $33 = ($34>>>0)<($16>>>0);
-       if ($33) {
-        $$07678$us = $34;
-       } else {
-        break;
-       }
-      }
-      $39 = (__gcry_mpi_cmp($7,$11)|0);
-      $40 = ($39|0)==(0);
-      if (!($40)) {
-       $$074 = 0;
-       break L1;
-      }
-     }
-    }
-    $41 = HEAP32[18114]|0;
-    $42 = ($41|0)==(0|0);
-    if (!($42)) {
-     $43 = HEAP32[18115]|0;
-     FUNCTION_TABLE_viiiii[$41 & 127]($43,59288,43,0,0);
-    }
-    $44 = (($$07580$us) + 1)|0;
-    $45 = ($44>>>0)<($spec$select>>>0);
-    if ($45) {
-     $$07580$us = $44;
-    } else {
-     $$074 = 1;
-     break L1;
-    }
-   }
-   if ((label|0) == 27) {
-    __gcry_assert_failed(59374,59446,951,59457);
-    // unreachable;
-   }
-  }
- } while(0);
- __gcry_mpi_free($5);
- __gcry_mpi_free($7);
- __gcry_mpi_free($9);
- __gcry_mpi_free($11);
- __gcry_mpi_free($15);
- __gcry_mpi_free($12);
- return ($$074|0);
-}
-function _check_prime($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$03539 = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- HEAP32[$5>>2] = 0;
- $$03539 = 0;$11 = 3;
- while(1) {
-  $12 = (__gcry_mpi_divisible_ui($0,$11)|0);
-  $13 = ($12|0)==(0);
-  $7 = (($$03539) + 1)|0;
-  if (!($13)) {
-   label = 4;
-   break;
-  }
-  $6 = (3184 + ($7<<1)|0);
-  $8 = HEAP16[$6>>1]|0;
-  $9 = $8&65535;
-  $10 = ($7|0)==(668);
-  if ($10) {
-   break;
-  } else {
-   $$03539 = $7;$11 = $9;
-  }
- }
- if ((label|0) == 4) {
-  $14 = (__gcry_mpi_cmp_ui($0,$11)|0);
-  $15 = ($14|0)==(0);
-  $16 = $15&1;
-  $$1 = $16;
-  STACKTOP = sp;return ($$1|0);
- }
- $17 = (__gcry_mpi_alloc_like($0)|0);
- $18 = (__gcry_mpi_alloc_like($0)|0);
- __gcry_mpi_sub_ui($18,$0,1);
- __gcry_mpi_powm($17,$1,$18,$0);
- __gcry_mpi_free($18);
- $19 = (__gcry_mpi_cmp_ui($17,1)|0);
- $20 = ($19|0)==(0);
- __gcry_mpi_free($17);
- if (!($20)) {
-  $21 = HEAP32[18114]|0;
-  $22 = ($21|0)==(0|0);
-  if ($22) {
-   $$1 = 0;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $23 = HEAP32[18115]|0;
-  FUNCTION_TABLE_viiiii[$21 & 127]($23,59288,46,0,0);
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $24 = ($3|0)!=(0|0);
- if ($24) {
-  $25 = (FUNCTION_TABLE_iiii[$3 & 127]($4,2,$0)|0);
-  $26 = ($25|0)==(0);
-  if (!($26)) {
-   label = 10;
-  }
- } else {
-  label = 10;
- }
- if ((label|0) == 10) {
-  $27 = (_is_prime($0,$2,$5)|0);
-  $28 = ($27|0)==(0);
-  if (!($28)) {
-   if (!($24)) {
-    $$1 = 1;
-    STACKTOP = sp;return ($$1|0);
-   }
-   $29 = (FUNCTION_TABLE_iiii[$3 & 127]($4,1,$0)|0);
-   $30 = ($29|0)==(0);
-   if (!($30)) {
-    $$1 = 1;
-    STACKTOP = sp;return ($$1|0);
-   }
-  }
- }
- $31 = HEAP32[18114]|0;
- $32 = ($31|0)==(0|0);
- if ($32) {
-  $$1 = 0;
-  STACKTOP = sp;return ($$1|0);
- }
- $33 = HEAP32[18115]|0;
- FUNCTION_TABLE_viiiii[$31 & 127]($33,59288,46,0,0);
- $$1 = 0;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_derive_x931_prime($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, $or$cond3$not = 0, $or$cond93 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $6 = ($0|0)!=(0|0);
- $7 = ($1|0)!=(0|0);
- $or$cond = $6 & $7;
- $8 = ($2|0)!=(0|0);
- $or$cond3 = $or$cond & $8;
- $or$cond3$not = $or$cond3 ^ 1;
- $9 = ($3|0)==(0|0);
- $or$cond93 = $9 | $or$cond3$not;
- if ($or$cond93) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $10 = (__gcry_mpi_test_bit($3,0)|0);
- $11 = ($10|0)==(0);
- if ($11) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $12 = (_find_x931_prime($1)|0);
- $13 = (_find_x931_prime($2)|0);
- $14 = (__gcry_mpi_alloc_like($0)|0);
- __gcry_mpi_mul($14,$12,$13);
- $15 = (__gcry_mpi_alloc_like($12)|0);
- (__gcry_mpi_invm($15,$13,$12)|0);
- __gcry_mpi_mul($15,$15,$13);
- $16 = (__gcry_mpi_alloc_like($13)|0);
- (__gcry_mpi_invm($16,$12,$13)|0);
- __gcry_mpi_mul($16,$16,$12);
- __gcry_mpi_sub($15,$15,$16);
- $17 = ((($15)) + 8|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = ($18|0)==(0);
- if (!($19)) {
-  __gcry_mpi_add($15,$15,$14);
- }
- __gcry_mpi_subm($16,$15,$0,$14);
- __gcry_mpi_add($16,$16,$0);
- __gcry_mpi_free($15);
- $20 = (__gcry_mpi_cmp($16,$0)|0);
- $21 = ($20|0)<(0);
- if ($21) {
-  __gcry_mpi_add($16,$16,$14);
- }
- $22 = (__gcry_mpi_alloc_set_ui(2)|0);
- $23 = (__gcry_mpi_alloc_like($16)|0);
- __gcry_mpi_sub_ui($14,$14,1);
- __gcry_mpi_sub_ui($16,$16,1);
- while(1) {
-  $24 = (__gcry_mpi_gcd($23,$3,$16)|0);
-  __gcry_mpi_add_ui($16,$16,1);
-  $25 = ($24|0)==(0);
-  if ($25) {
-   $26 = HEAP32[18114]|0;
-   $27 = ($26|0)==(0|0);
-   if (!($27)) {
-    $28 = HEAP32[18115]|0;
-    FUNCTION_TABLE_viiiii[$26 & 127]($28,59288,47,0,0);
-   }
-  } else {
-   $29 = (_check_prime($16,$22,64,0,0)|0);
-   $30 = ($29|0)==(0);
-   if (!($30)) {
-    break;
-   }
-  }
-  __gcry_mpi_add($16,$16,$14);
- }
- __gcry_mpi_free($23);
- __gcry_mpi_free($22);
- __gcry_mpi_free($14);
- $31 = HEAP32[18114]|0;
- $32 = ($31|0)==(0|0);
- if (!($32)) {
-  $33 = HEAP32[18115]|0;
-  FUNCTION_TABLE_viiiii[$31 & 127]($33,59288,10,0,0);
- }
- $34 = ($4|0)==(0|0);
- if ($34) {
-  __gcry_mpi_free($12);
- } else {
-  HEAP32[$4>>2] = $12;
- }
- $35 = ($5|0)==(0|0);
- if ($35) {
-  __gcry_mpi_free($13);
-  $$0 = $16;
-  return ($$0|0);
- } else {
-  HEAP32[$5>>2] = $13;
-  $$0 = $16;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _find_x931_prime($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_mpi_alloc_set_ui(2)|0);
- $2 = (__gcry_mpi_copy($0)|0);
- __gcry_mpi_set_bit($2,0);
- $3 = (_check_prime($2,$1,64,0,0)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  __gcry_mpi_free($1);
-  return ($2|0);
- }
- while(1) {
-  __gcry_mpi_add_ui($2,$2,2);
-  $5 = (_check_prime($2,$1,64,0,0)|0);
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   break;
-  }
- }
- __gcry_mpi_free($1);
- return ($2|0);
-}
-function __gcry_pk_util_parse_flaglist($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0108 = 0, $$087$lcssa = 0, $$087107 = 0, $$089$lcssa = 0, $$089106 = 0, 
$$091105 = 0, $$091105$in = 0, $$092$lcssa = 0, $$092104 = 0, $$1 = 0, $$188 = 
0, $$190 = 0, $$193 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0;
- var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 
0, $7 = 0, $70 = 0, $71 = 0;
- var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, 
$8 = 0, $80 = 0, $81 = 0, $82 = 0, $9 = 0, $or$cond = 0, $or$cond11 = 0, 
$or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $spec$select = 0;
- var $spec$select100 = 0, $spec$select101 = 0, $spec$select102 = 0, 
$spec$select103 = 0, $spec$select94 = 0, $spec$select95 = 0, $spec$select96 = 
0, $spec$select97 = 0, $spec$select98 = 0, $spec$select99 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- $4 = ($0|0)==(0|0);
- if ($4) {
-  $$087$lcssa = 0;$$089$lcssa = 5;$$092$lcssa = 0;
- } else {
-  $5 = (__gcry_sexp_length($0)|0);
-  $6 = ($5|0)>(1);
-  if ($6) {
-   $$0108 = 0;$$087107 = 0;$$089106 = 5;$$091105$in = $5;$$092104 = 0;
-   while(1) {
-    $$091105 = (($$091105$in) + -1)|0;
-    $7 = (__gcry_sexp_nth_data($0,$$091105,$3)|0);
-    $8 = ($7|0)==(0|0);
-    L6: do {
-     if ($8) {
-      $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $$092104;
-     } else {
-      $9 = HEAP32[$3>>2]|0;
-      do {
-       switch ($9|0) {
-       case 3:  {
-        $10 = (_memcmp($7,59466,3)|0);
-        $11 = ($10|0)==(0);
-        $12 = ($$089106|0)==(5);
-        $or$cond = $12 & $11;
-        if ($or$cond) {
-         $13 = $$087107 | 4;
-         $$1 = $$0108;$$188 = $13;$$190 = 4;$$193 = $$092104;
-         break L6;
-        }
-        $14 = (_memcmp($7,59470,3)|0);
-        $15 = ($14|0)==(0);
-        $or$cond3 = $12 & $15;
-        if ($or$cond3) {
-         $16 = $$087107 | 16;
-         $$1 = $$0108;$$188 = $16;$$190 = 0;$$193 = $$092104;
-         break L6;
-        } else {
-         $17 = ($$0108|0)==(0);
-         $spec$select = $17 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select;
-         break L6;
-        }
-        break;
-       }
-       case 4:  {
-        $18 = (_memcmp($7,59474,4)|0);
-        $19 = ($18|0)==(0);
-        if ($19) {
-         $20 = $$087107 | 1024;
-         $$1 = $$0108;$$188 = $20;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        }
-        $21 = (_memcmp($7,59479,4)|0);
-        $22 = ($21|0)==(0);
-        $23 = ($$089106|0)==(5);
-        $or$cond5 = $23 & $22;
-        if ($or$cond5) {
-         $24 = $$087107 | 4;
-         $$1 = $$0108;$$188 = $24;$$190 = 3;$$193 = $$092104;
-         break L6;
-        }
-        $25 = (_memcmp($7,67440,4)|0);
-        $26 = ($25|0)==(0);
-        if ($26) {
-         $27 = $$087107 | 8192;
-         $$1 = $$0108;$$188 = $27;$$190 = 0;$$193 = $$092104;
-         break L6;
-        } else {
-         $28 = ($$0108|0)==(0);
-         $spec$select94 = $28 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select94;
-         break L6;
-        }
-        break;
-       }
-       case 5:  {
-        $29 = (_memcmp($7,67434,5)|0);
-        $30 = ($29|0)==(0);
-        if ($30) {
-         $31 = $$087107 | 4096;
-         $$1 = $$0108;$$188 = $31;$$190 = 0;$$193 = $$092104;
-         break L6;
-        }
-        $32 = (_memcmp($7,59484,5)|0);
-        $33 = ($32|0)==(0);
-        $34 = ($$089106|0)==(5);
-        $or$cond7 = $34 & $33;
-        if ($or$cond7) {
-         $35 = $$087107 | 4;
-         $$1 = $$0108;$$188 = $35;$$190 = 1;$$193 = $$092104;
-         break L6;
-        }
-        $36 = (_memcmp($7,59490,5)|0);
-        $37 = ($36|0)==(0);
-        if ($37) {
-         $38 = $$087107 | 512;
-         $$1 = $$0108;$$188 = $38;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $39 = ($$0108|0)==(0);
-         $spec$select95 = $39 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select95;
-         break L6;
-        }
-        break;
-       }
-       case 6:  {
-        $40 = (_memcmp($7,59496,6)|0);
-        $41 = ($40|0)==(0);
-        if ($41) {
-         $42 = $$087107 | 2048;
-         $$1 = $$0108;$$188 = $42;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $43 = ($$0108|0)==(0);
-         $spec$select96 = $43 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select96;
-         break L6;
-        }
-        break;
-       }
-       case 7:  {
-        $44 = (_memcmp($7,59503,7)|0);
-        $45 = ($44|0)==(0);
-        if ($45) {
-         $46 = $$087107 | 2;
-         $$1 = $$0108;$$188 = $46;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $47 = (_memcmp($7,59511,7)|0);
-         $48 = ($47|0)==(0);
-         $49 = ($$0108|0)!=(0);
-         $or$cond11 = $49 | $48;
-         $spec$select97 = $or$cond11 ? $$092104 : 72;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select97;
-         break L6;
-        }
-        break;
-       }
-       case 8:  {
-        $50 = (_memcmp($7,61924,8)|0);
-        $51 = ($50|0)==(0);
-        if ($51) {
-         $52 = $$087107 | 64;
-         $$1 = $$0108;$$188 = $52;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $53 = ($$0108|0)==(0);
-         $spec$select98 = $53 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select98;
-         break L6;
-        }
-        break;
-       }
-       case 9:  {
-        $54 = (_memcmp($7,59519,9)|0);
-        $55 = ($54|0)==(0);
-        $56 = ($$089106|0)==(5);
-        $or$cond9 = $56 & $55;
-        if ($or$cond9) {
-         $57 = $$087107 | 4;
-         $$1 = $$0108;$$188 = $57;$$190 = 2;$$193 = $$092104;
-         break L6;
-        } else {
-         $58 = ($$0108|0)==(0);
-         $spec$select99 = $58 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select99;
-         break L6;
-        }
-        break;
-       }
-       case 10:  {
-        $59 = (_memcmp($7,59529,10)|0);
-        $60 = ($59|0)==(0);
-        if ($60) {
-         $$1 = 1;$$188 = $$087107;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        }
-        $61 = (_memcmp($7,59540,10)|0);
-        $62 = ($61|0)==(0);
-        if ($62) {
-         $63 = $$087107 | 16384;
-         $$1 = $$0108;$$188 = $63;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $64 = ($$0108|0)==(0);
-         $spec$select100 = $64 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = 
$spec$select100;
-         break L6;
-        }
-        break;
-       }
-       case 11:  {
-        $65 = (_memcmp($7,59551,11)|0);
-        $66 = ($65|0)==(0);
-        if ($66) {
-         $67 = $$087107 | 1;
-         $$1 = $$0108;$$188 = $67;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        }
-        $68 = (_memcmp($7,59563,11)|0);
-        $69 = ($68|0)==(0);
-        if ($69) {
-         $70 = $$087107 | 128;
-         $$1 = $$0108;$$188 = $70;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $71 = ($$0108|0)==(0);
-         $spec$select101 = $71 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = 
$spec$select101;
-         break L6;
-        }
-        break;
-       }
-       case 13:  {
-        $72 = (_memcmp($7,59575,13)|0);
-        $73 = ($72|0)==(0);
-        if ($73) {
-         $74 = $$087107 | 256;
-         $$1 = $$0108;$$188 = $74;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        }
-        $75 = (_memcmp($7,66452,13)|0);
-        $76 = ($75|0)==(0);
-        if ($76) {
-         $77 = $$087107 | 32;
-         $$1 = $$0108;$$188 = $77;$$190 = $$089106;$$193 = $$092104;
-         break L6;
-        } else {
-         $78 = ($$0108|0)==(0);
-         $spec$select102 = $78 ? 72 : $$092104;
-         $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = 
$spec$select102;
-         break L6;
-        }
-        break;
-       }
-       default: {
-        $79 = ($$0108|0)==(0);
-        $spec$select103 = $79 ? 72 : $$092104;
-        $$1 = $$0108;$$188 = $$087107;$$190 = $$089106;$$193 = $spec$select103;
-        break L6;
-       }
-       }
-      } while(0);
-     }
-    } while(0);
-    $80 = ($$091105$in|0)>(2);
-    if ($80) {
-     $$0108 = $$1;$$087107 = $$188;$$089106 = $$190;$$091105$in = 
$$091105;$$092104 = $$193;
-    } else {
-     $$087$lcssa = $$188;$$089$lcssa = $$190;$$092$lcssa = $$193;
-     break;
-    }
-   }
-  } else {
-   $$087$lcssa = 0;$$089$lcssa = 5;$$092$lcssa = 0;
-  }
- }
- $81 = ($1|0)==(0|0);
- if (!($81)) {
-  HEAP32[$1>>2] = $$087$lcssa;
- }
- $82 = ($2|0)==(0|0);
- if ($82) {
-  STACKTOP = sp;return ($$092$lcssa|0);
- }
- HEAP32[$2>>2] = $$089$lcssa;
- STACKTOP = sp;return ($$092$lcssa|0);
-}
-function __gcry_pk_util_get_nbits($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $2 = sp;
- $3 = sp + 52|0;
- HEAP32[$1>>2] = 0;
- $4 = (__gcry_sexp_find_token($0,59589,0)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $6 = (__gcry_sexp_nth_data($4,1,$3)|0);
- $7 = ($6|0)==(0|0);
- $8 = HEAP32[$3>>2]|0;
- $9 = ($8>>>0)>(48);
- $or$cond = $7 | $9;
- if ($or$cond) {
-  __gcry_sexp_release($4);
-  $$0 = 65;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  _memcpy(($2|0),($6|0),($8|0))|0;
-  $10 = (($2) + ($8)|0);
-  HEAP8[$10>>0] = 0;
-  $11 = (_strtoul($2,0,0)|0);
-  HEAP32[$1>>2] = $11;
-  __gcry_sexp_release($4);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_pk_util_get_rsa_use_e($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $2 = sp;
- $3 = sp + 52|0;
- HEAP32[$1>>2] = 0;
- $4 = (__gcry_sexp_find_token($0,59595,0)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  HEAP32[$1>>2] = 65537;
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $6 = (__gcry_sexp_nth_data($4,1,$3)|0);
- $7 = ($6|0)==(0|0);
- $8 = HEAP32[$3>>2]|0;
- $9 = ($8>>>0)>(48);
- $or$cond = $7 | $9;
- if ($or$cond) {
-  __gcry_sexp_release($4);
-  $$0 = 65;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  _memcpy(($2|0),($6|0),($8|0))|0;
-  $10 = (($2) + ($8)|0);
-  HEAP8[$10>>0] = 0;
-  $11 = (_strtoul($2,0,0)|0);
-  HEAP32[$1>>2] = $11;
-  __gcry_sexp_release($4);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_pk_util_preparse_sigval($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$043 = 0, $$044 = 0, $$046 = 0, $$047 = 0, $$1 = 0, $$145 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[$2>>2] = 0;
- $4 = ($3|0)!=(0|0);
- if ($4) {
-  HEAP32[$3>>2] = 0;
- }
- $5 = (__gcry_sexp_find_token($0,59605,0)|0);
- $6 = ($5|0)==(0|0);
- L4: do {
-  if ($6) {
-   $$046 = 65;$$1 = 0;$$145 = 0;
-  } else {
-   $7 = (__gcry_sexp_nth($5,1)|0);
-   $8 = ($7|0)==(0|0);
-   if ($8) {
-    $$046 = 68;$$1 = 0;$$145 = 0;
-   } else {
-    $9 = (__gcry_sexp_nth_string($7,0)|0);
-    $10 = ($9|0)==(0|0);
-    if ($10) {
-     $$046 = 65;$$1 = 0;$$145 = $7;
-    } else {
-     $11 = (_strcmp($9,64705)|0);
-     $12 = ($11|0)==(0);
-     if ($12) {
-      __gcry_sexp_release($7);
-      $13 = (__gcry_sexp_nth($5,2)|0);
-      $14 = ($13|0)==(0|0);
-      if ($14) {
-       $$046 = 65;$$1 = $9;$$145 = 0;
-       break;
-      }
-      __gcry_free($9);
-      $15 = (__gcry_sexp_nth_string($13,0)|0);
-      $16 = ($15|0)==(0|0);
-      if ($16) {
-       $$046 = 65;$$1 = 0;$$145 = $13;
-       break;
-      } else {
-       $$043 = $15;$$044 = $13;
-      }
-     } else {
-      $$043 = $9;$$044 = $7;
-     }
-     $17 = HEAP32[$1>>2]|0;
-     $18 = ($17|0)==(0|0);
-     if ($18) {
-      $$046 = 70;$$1 = $$043;$$145 = $$044;
-     } else {
-      $$047 = 0;$23 = $17;
-      while(1) {
-       $24 = (_strcasecmp($$043,$23)|0);
-       $25 = ($24|0)==(0);
-       $20 = (($$047) + 1)|0;
-       if ($25) {
-        break;
-       }
-       $19 = (($1) + ($20<<2)|0);
-       $21 = HEAP32[$19>>2]|0;
-       $22 = ($21|0)==(0|0);
-       if ($22) {
-        $$046 = 70;$$1 = $$043;$$145 = $$044;
-        break L4;
-       } else {
-        $$047 = $20;$23 = $21;
-       }
-      }
-      if ($4) {
-       $26 = (_strcmp($$043,67434)|0);
-       $27 = ($26|0)==(0);
-       if ($27) {
-        HEAP32[$3>>2] = 4096;
-       }
-       $28 = (_strcmp($$043,67440)|0);
-       $29 = ($28|0)==(0);
-       if ($29) {
-        HEAP32[$3>>2] = 8192;
-       }
-      }
-      HEAP32[$2>>2] = $$044;
-      $$046 = 0;$$1 = $$043;$$145 = 0;
-     }
-    }
-   }
-  }
- } while(0);
- __gcry_free($$1);
- __gcry_sexp_release($$145);
- __gcry_sexp_release($5);
- return ($$046|0);
-}
-function __gcry_pk_util_preparse_encval($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$07296 = 0, $$075 = 0, $$174 = 0, $$195 = 0, $$2 = 0, $$3 = 0, $$4 = 0, 
$$5 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 
0, $18 = 0, $19 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp + 4|0;
- $5 = sp;
- HEAP32[$5>>2] = 0;
- HEAP32[$2>>2] = 0;
- $6 = (__gcry_sexp_find_token($0,61094,0)|0);
- $7 = ($6|0)==(0|0);
- L1: do {
-  if ($7) {
-   $$2 = 0;$$4 = 0;$$5 = 65;
-  } else {
-   $8 = (__gcry_sexp_nth($6,1)|0);
-   $9 = ($8|0)==(0|0);
-   if ($9) {
-    $$2 = 0;$$4 = 0;$$5 = 68;
-   } else {
-    $10 = (__gcry_sexp_nth_string($8,0)|0);
-    $11 = ($10|0)==(0|0);
-    if ($11) {
-     $$2 = 0;$$4 = $8;$$5 = 65;
-    } else {
-     $12 = (_strcmp($10,64705)|0);
-     $13 = ($12|0)==(0);
-     if ($13) {
-      $14 = ((($3)) + 8|0);
-      $15 = (__gcry_pk_util_parse_flaglist($8,$5,$14)|0);
-      $16 = ($15|0)==(0);
-      if (!($16)) {
-       $$2 = $10;$$4 = $8;$$5 = $15;
-       break;
-      }
-      $17 = HEAP32[$14>>2]|0;
-      L8: do {
-       switch ($17|0) {
-       case 4:  {
-        $$2 = $10;$$4 = $8;$$5 = 70;
-        break L1;
-        break;
-       }
-       case 3:  {
-        __gcry_sexp_release($8);
-        $18 = (__gcry_sexp_find_token($6,59613,0)|0);
-        $19 = ($18|0)==(0|0);
-        if (!($19)) {
-         $20 = (__gcry_sexp_nth_data($18,1,$4)|0);
-         $21 = ($20|0)==(0|0);
-         if ($21) {
-          $$2 = $10;$$4 = $18;$$5 = 68;
-          break L1;
-         }
-         $22 = HEAP32[$4>>2]|0;
-         $23 = (_get_hash_algo($20,$22)|0);
-         $24 = ((($3)) + 16|0);
-         HEAP32[$24>>2] = $23;
-         $25 = ($23|0)==(0);
-         if ($25) {
-          $$2 = $10;$$4 = $18;$$5 = 5;
-          break L1;
-         }
-        }
-        __gcry_sexp_release($18);
-        $26 = (__gcry_sexp_find_token($6,59623,0)|0);
-        $27 = ($26|0)==(0|0);
-        if ($27) {
-         $$075 = 0;
-        } else {
-         $28 = (__gcry_sexp_nth_data($26,1,$4)|0);
-         $29 = ($28|0)==(0|0);
-         if ($29) {
-          $$2 = $10;$$4 = $26;$$5 = 68;
-          break L1;
-         }
-         $30 = HEAP32[$4>>2]|0;
-         $31 = ($30|0)==(0);
-         if ($31) {
-          $$075 = $26;
-         } else {
-          $32 = (__gcry_malloc($30)|0);
-          $33 = ((($3)) + 20|0);
-          HEAP32[$33>>2] = $32;
-          $34 = ($32|0)==(0|0);
-          if ($34) {
-           $37 = (_gpg_err_code_from_syserror()|0);
-           $38 = ($37|0)==(0);
-           if ($38) {
-            $$075 = $26;
-            break L8;
-           } else {
-            $$2 = $10;$$4 = $26;$$5 = $37;
-            break L1;
-           }
-          } else {
-           $35 = HEAP32[$4>>2]|0;
-           _memcpy(($32|0),($28|0),($35|0))|0;
-           $36 = ((($3)) + 24|0);
-           HEAP32[$36>>2] = $35;
-           $$075 = $26;
-           break L8;
-          }
-         }
-        }
-        break;
-       }
-       default: {
-        $$075 = $8;
-       }
-       }
-      } while(0);
-      __gcry_sexp_release($$075);
-      $39 = (__gcry_sexp_nth($6,2)|0);
-      $40 = ($39|0)==(0|0);
-      if ($40) {
-       $$2 = $10;$$4 = 0;$$5 = 68;
-       break;
-      }
-      $$07296 = 2;$41 = $39;
-      L22: while(1) {
-       $42 = (__gcry_sexp_nth_data($41,0,$4)|0);
-       $43 = HEAP32[$4>>2]|0;
-       switch ($43|0) {
-       case 9:  {
-        $44 = (_memcmp($42,59613,9)|0);
-        $45 = ($44|0)==(0);
-        if (!($45)) {
-         break L22;
-        }
-        break;
-       }
-       case 5:  {
-        $46 = (_memcmp($42,59623,5)|0);
-        $47 = ($46|0)==(0);
-        if (!($47)) {
-         break L22;
-        }
-        break;
-       }
-       case 15:  {
-        $48 = (_memcmp($42,59629,15)|0);
-        $49 = ($48|0)==(0);
-        if (!($49)) {
-         break L22;
-        }
-        break;
-       }
-       default: {
-        break L22;
-       }
-       }
-       $50 = (($$07296) + 1)|0;
-       __gcry_sexp_release($41);
-       $51 = (__gcry_sexp_nth($6,$50)|0);
-       $52 = ($51|0)==(0|0);
-       if ($52) {
-        $$2 = $10;$$4 = 0;$$5 = 68;
-        break L1;
-       } else {
-        $$07296 = $50;$41 = $51;
-       }
-      }
-      __gcry_free($10);
-      $53 = (__gcry_sexp_nth_string($41,0)|0);
-      $54 = ($53|0)==(0|0);
-      if ($54) {
-       $$2 = 0;$$4 = $41;$$5 = 65;
-       break;
-      } else {
-       $$174 = $53;$$3 = $41;
-      }
-     } else {
-      HEAP32[$5>>2] = 8;
-      $$174 = $10;$$3 = $8;
-     }
-     $55 = HEAP32[$1>>2]|0;
-     $56 = ($55|0)==(0|0);
-     if ($56) {
-      $$2 = $$174;$$4 = $$3;$$5 = 70;
-     } else {
-      $$195 = 0;$61 = $55;
-      while(1) {
-       $62 = (_strcasecmp($$174,$61)|0);
-       $63 = ($62|0)==(0);
-       $58 = (($$195) + 1)|0;
-       if ($63) {
-        break;
-       }
-       $57 = (($1) + ($58<<2)|0);
-       $59 = HEAP32[$57>>2]|0;
-       $60 = ($59|0)==(0|0);
-       if ($60) {
-        $$2 = $$174;$$4 = $$3;$$5 = 70;
-        break L1;
-       } else {
-        $$195 = $58;$61 = $59;
-       }
-      }
-      HEAP32[$2>>2] = $$3;
-      $64 = HEAP32[$5>>2]|0;
-      $65 = ((($3)) + 12|0);
-      $66 = HEAP32[$65>>2]|0;
-      $67 = $66 | $64;
-      HEAP32[$65>>2] = $67;
-      $$2 = $$174;$$4 = 0;$$5 = 0;
-     }
-    }
-   }
-  }
- } while(0);
- __gcry_free($$2);
- __gcry_sexp_release($$4);
- __gcry_sexp_release($6);
- STACKTOP = sp;return ($$5|0);
-}
-function _get_hash_algo($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$02325$lcssa = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- switch ($1|0) {
- case 4:  {
-  $2 = (_memcmp(59645,$0,$1)|0);
-  $3 = ($2|0)==(0);
-  if ($3) {
-   $$02325$lcssa = 0;
-   label = 3;
-  }
-  break;
- }
- case 3:  {
-  $9 = (_memcmp(59650,$0,$1)|0);
-  $10 = ($9|0)==(0);
-  if ($10) {
-   $$02325$lcssa = 1;
-   label = 3;
-  } else {
-   $23 = (_memcmp(59699,$0,$1)|0);
-   $24 = ($23|0)==(0);
-   if ($24) {
-    $$02325$lcssa = 8;
-    label = 3;
-   } else {
-    $25 = (_memcmp(59703,$0,$1)|0);
-    $26 = ($25|0)==(0);
-    if ($26) {
-     $$02325$lcssa = 9;
-     label = 3;
-    }
-   }
-  }
-  break;
- }
- case 6:  {
-  $11 = (_memcmp(59654,$0,$1)|0);
-  $12 = ($11|0)==(0);
-  if ($12) {
-   $$02325$lcssa = 2;
-   label = 3;
-  } else {
-   $15 = (_memcmp(59671,$0,$1)|0);
-   $16 = ($15|0)==(0);
-   if ($16) {
-    $$02325$lcssa = 4;
-    label = 3;
-   } else {
-    $17 = (_memcmp(59678,$0,$1)|0);
-    $18 = ($17|0)==(0);
-    if ($18) {
-     $$02325$lcssa = 5;
-     label = 3;
-    } else {
-     $19 = (_memcmp(59685,$0,$1)|0);
-     $20 = ($19|0)==(0);
-     if ($20) {
-      $$02325$lcssa = 6;
-      label = 3;
-     } else {
-      $21 = (_memcmp(59692,$0,$1)|0);
-      $22 = ($21|0)==(0);
-      if ($22) {
-       $$02325$lcssa = 7;
-       label = 3;
-      }
-     }
-    }
-   }
-  }
-  break;
- }
- case 9:  {
-  $13 = (_memcmp(59661,$0,$1)|0);
-  $14 = ($13|0)==(0);
-  if ($14) {
-   $$02325$lcssa = 3;
-   label = 3;
-  }
-  break;
- }
- case 5:  {
-  $27 = (_memcmp(59707,$0,$1)|0);
-  $28 = ($27|0)==(0);
-  if ($28) {
-   $$02325$lcssa = 10;
-   label = 3;
-  } else {
-   $29 = (_memcmp(59713,$0,$1)|0);
-   $30 = ($29|0)==(0);
-   if ($30) {
-    $$02325$lcssa = 11;
-    label = 3;
-   }
-  }
-  break;
- }
- default: {
- }
- }
- if ((label|0) == 3) {
-  $4 = (((4528 + ($$02325$lcssa<<3)|0)) + 4|0);
-  $5 = HEAP32[$4>>2]|0;
-  $$1 = $5;
-  return ($$1|0);
- }
- $31 = (($1) + 1)|0;
- $6 = (__gcry_malloc($31)|0);
- $32 = ($6|0)==(0|0);
- if ($32) {
-  $$1 = 0;
-  return ($$1|0);
- }
- _memcpy(($6|0),($0|0),($1|0))|0;
- $7 = (($6) + ($1)|0);
- HEAP8[$7>>0] = 0;
- $8 = (__gcry_md_map_name($6)|0);
- __gcry_free($6);
- $$1 = $8;
- return ($$1|0);
-}
-function __gcry_pk_util_init_encoding_ctx($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[$0>>2] = $1;
- $3 = ((($0)) + 4|0);
- HEAP32[$3>>2] = $2;
- $4 = ((($0)) + 8|0);
- HEAP32[$4>>2] = 5;
- $5 = ((($0)) + 12|0);
- HEAP32[$5>>2] = 0;
- $6 = ((($0)) + 16|0);
- HEAP32[$6>>2] = 2;
- $7 = ((($0)) + 20|0);
- HEAP32[$7>>2] = 0;
- $8 = ((($0)) + 24|0);
- HEAP32[$8>>2] = 0;
- $9 = ((($0)) + 28|0);
- HEAP32[$9>>2] = 20;
- $10 = ((($0)) + 32|0);
- HEAP32[$10>>2] = 0;
- $11 = ((($0)) + 36|0);
- HEAP32[$11>>2] = 0;
- return;
-}
-function __gcry_pk_util_free_encoding_ctx($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 20|0);
- $2 = HEAP32[$1>>2]|0;
- __gcry_free($2);
- return;
-}
-function __gcry_pk_util_data_to_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$ph = 0, $$0278$ph = 0, $$0280 = 0, $$0281$ph = 0, $$0283$ph = 0, 
$$0285$ph = 0, $$0289$ph = 0, $$0291$ph = 0, $$0299312 = 0, $$1 = 0, $$10$ph = 
0, $$1279 = 0, $$1282 = 0, $$1284 = 0, $$1288 = 0, $$1290 = 0, $$1292 = 0, $$17 
= 0, $$21 = 0, $$23 = 0;
- var $$3 = 0, $$4 = 0, $$7 = 0, $$8 = 0, $$9 = 0, $$not = 0, $$pre = 0, $10 = 
0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 
0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0;
- var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 
= 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0;
- var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0;
- var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 
= 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond10 = 0, $or$cond12 = 0, 
$or$cond14 = 0, $or$cond16 = 0, $or$cond18 = 0, $or$cond20 = 0, $or$cond22 = 0, 
$or$cond24 = 0, $or$cond26 = 0, $or$cond28 = 0, $or$cond30 = 0, $or$cond34 = 0, 
$or$cond364 = 0, $or$cond4 = 0, $or$cond8 = 0, $spec$select = 0;
- var $spec$select365 = 0, $spec$select366 = 0, $switch = 0, $switch308 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $3 = sp + 32|0;
- $4 = sp + 28|0;
- $5 = sp + 24|0;
- $6 = sp + 20|0;
- $7 = sp + 16|0;
- $8 = sp + 12|0;
- $9 = sp + 8|0;
- $10 = sp + 4|0;
- $11 = sp;
- HEAP32[$4>>2] = 0;
- HEAP32[$1>>2] = 0;
- $12 = (__gcry_sexp_find_token($0,59719,0)|0);
- $13 = ($12|0)==(0|0);
- if ($13) {
-  $14 = (__gcry_sexp_nth_mpi($0,0,0)|0);
-  HEAP32[$1>>2] = $14;
-  $15 = ($14|0)==(0|0);
-  $16 = $15 ? 65 : 0;
-  $$0280 = $16;
-  STACKTOP = sp;return ($$0280|0);
- }
- $17 = (__gcry_sexp_find_token($12,64705,0)|0);
- $18 = ($17|0)==(0|0);
- $$pre = ((($2)) + 8|0);
- if ($18) {
-  $$1288 = 0;
- } else {
-  $19 = (__gcry_pk_util_parse_flaglist($17,$4,$$pre)|0);
-  $20 = ($19|0)!=(0);
-  $spec$select = $20&1;
-  __gcry_sexp_release($17);
-  $$1288 = $spec$select;
- }
- $21 = HEAP32[$$pre>>2]|0;
- $22 = ($21|0)==(5);
- if ($22) {
-  HEAP32[$$pre>>2] = 0;
- }
- $23 = (__gcry_sexp_find_token($12,59724,0)|0);
- $24 = ($23|0)!=(0|0);
- if ($24) {
-  $41 = 0;$73 = 0;
-  label = 9;
- } else {
-  $25 = (__gcry_sexp_find_token($12,61106,0)|0);
-  $26 = ($25|0)==(0|0);
-  if ($26) {
-   $$23 = 65;$233 = 0;
-  } else {
-   $41 = $25;$73 = 1;
-   label = 9;
-  }
- }
- L13: do {
-  if ((label|0) == 9) {
-   $27 = ($$1288|0)==(0);
-   if ($27) {
-    $28 = HEAP32[$$pre>>2]|0;
-    $29 = ($28|0)==(0);
-    if ($29) {
-     $30 = HEAP32[$4>>2]|0;
-     $31 = $30 & 4096;
-     $32 = ($31|0)==(0);
-     if ($32) {
-      $$not = $24 ^ 1;
-      $54 = $30 & 18;
-      $55 = ($54|0)==(0);
-      $or$cond = $55 | $$not;
-      if ($or$cond) {
-       $71 = $30 & 2;
-       $72 = ($71|0)==(0);
-       $or$cond364 = $73 & $72;
-       if (!($or$cond364)) {
-        $$23 = 70;$233 = $41;
-        break;
-       }
-       $74 = (__gcry_sexp_nth_mpi($41,1,5)|0);
-       HEAP32[$1>>2] = $74;
-       $75 = ($74|0)==(0|0);
-       $spec$select365 = $75 ? 65 : 0;
-       $$23 = $spec$select365;$233 = $41;
-       break;
-      }
-      $56 = (__gcry_sexp_length($23)|0);
-      $57 = ($56|0)==(3);
-      if (!($57)) {
-       $$23 = 65;$233 = $41;
-       break;
-      }
-      $58 = (__gcry_sexp_nth_data($23,1,$3)|0);
-      $59 = ($58|0)!=(0|0);
-      $60 = HEAP32[$3>>2]|0;
-      $61 = ($60|0)!=(0);
-      $or$cond4 = $59 & $61;
-      if (!($or$cond4)) {
-       $$23 = 65;$233 = $41;
-       break;
-      }
-      $62 = (_get_hash_algo($58,$60)|0);
-      $63 = ((($2)) + 16|0);
-      HEAP32[$63>>2] = $62;
-      $64 = ($62|0)==(0);
-      do {
-       if ($64) {
-        $$4 = 5;
-       } else {
-        $65 = (__gcry_sexp_nth_buffer($23,2,$6)|0);
-        $66 = ($65|0)==(0|0);
-        if ($66) {
-         $$4 = 65;
-        } else {
-         $67 = HEAP32[$6>>2]|0;
-         $68 = $67 << 3;
-         $69 = ($68>>>0)<($67>>>0);
-         if ($69) {
-          __gcry_free($65);
-          $$4 = 67;
-          break;
-         } else {
-          $70 = (__gcry_mpi_set_opaque(0,$65,$68)|0);
-          HEAP32[$1>>2] = $70;
-          $$4 = 0;
-          break;
-         }
-        }
-       }
-      } while(0);
-      $$23 = $$4;$233 = $41;
-      break;
-     }
-     do {
-      if ($73) {
-       $33 = (__gcry_sexp_find_token($12,59613,0)|0);
-       $34 = ($33|0)==(0|0);
-       if ($34) {
-        $$3 = 65;
-       } else {
-        $35 = (__gcry_sexp_nth_data($33,1,$3)|0);
-        $36 = ($35|0)==(0|0);
-        if ($36) {
-         $$0285$ph = 68;
-        } else {
-         $37 = HEAP32[$3>>2]|0;
-         $38 = (_get_hash_algo($35,$37)|0);
-         $39 = ((($2)) + 16|0);
-         HEAP32[$39>>2] = $38;
-         $40 = ($38|0)==(0);
-         if ($40) {
-          $$0285$ph = 5;
-         } else {
-          __gcry_sexp_release($33);
-          $42 = (__gcry_sexp_nth_buffer($41,1,$5)|0);
-          $43 = ($42|0)==(0|0);
-          if ($43) {
-           HEAP32[$5>>2] = 0;
-           $44 = (__gcry_malloc(1)|0);
-           $45 = ($44|0)==(0|0);
-           if ($45) {
-            $49 = (_gpg_err_code_from_syserror()|0);
-            $50 = ($49|0)==(0);
-            if ($50) {
-             $$0299312 = 0;
-            } else {
-             $$3 = $49;
-             break;
-            }
-           } else {
-            $$0299312 = $44;
-           }
-          } else {
-           $46 = HEAP32[$5>>2]|0;
-           $47 = $46 << 3;
-           $48 = ($47>>>0)<($46>>>0);
-           if ($48) {
-            __gcry_free($42);
-            $$3 = 67;
-            break;
-           } else {
-            $$0299312 = $42;
-           }
-          }
-          $51 = HEAP32[$5>>2]|0;
-          $52 = $51 << 3;
-          $53 = (__gcry_mpi_set_opaque(0,$$0299312,$52)|0);
-          HEAP32[$1>>2] = $53;
-          $$3 = 0;
-          break;
-         }
-        }
-        __gcry_sexp_release($33);
-        $$3 = $$0285$ph;
-       }
-      } else {
-       $$3 = 65;
-      }
-     } while(0);
-     $$23 = $$3;$233 = $41;
-     break;
-    }
-    $76 = ($28|0)==(1);
-    $or$cond8 = $73 & $76;
-    if ($or$cond8) {
-     $77 = HEAP32[$2>>2]|0;
-     $78 = ($77|0)==(0);
-     if ($78) {
-      $79 = (__gcry_sexp_nth_data($41,1,$7)|0);
-      $80 = ($79|0)!=(0|0);
-      $81 = HEAP32[$7>>2]|0;
-      $82 = ($81|0)!=(0);
-      $or$cond10 = $80 & $82;
-      L52: do {
-       if ($or$cond10) {
-        $83 = (__gcry_sexp_find_token($12,59629,0)|0);
-        $84 = ($83|0)==(0|0);
-        L54: do {
-         if ($84) {
-          $$1290 = 0;$$1292 = 0;
-         } else {
-          $85 = (__gcry_sexp_nth_data($83,1,$3)|0);
-          $86 = ($85|0)==(0|0);
-          if ($86) {
-           __gcry_sexp_release($83);
-           $$7 = 68;
-           break L52;
-          }
-          $87 = HEAP32[$3>>2]|0;
-          $88 = ($87|0)==(0);
-          do {
-           if ($88) {
-            $$0289$ph = 0;$$0291$ph = 0;
-           } else {
-            $89 = (__gcry_malloc($87)|0);
-            $90 = ($89|0)==(0|0);
-            if ($90) {
-             $92 = (_gpg_err_code_from_syserror()|0);
-             __gcry_sexp_release($83);
-             $93 = ($92|0)==(0);
-             if ($93) {
-              $$1290 = 0;$$1292 = 0;
-              break L54;
-             } else {
-              $$7 = $92;
-              break L52;
-             }
-            } else {
-             $91 = HEAP32[$3>>2]|0;
-             _memcpy(($89|0),($85|0),($91|0))|0;
-             $$0289$ph = $91;$$0291$ph = $89;
-             break;
-            }
-           }
-          } while(0);
-          __gcry_sexp_release($83);
-          $$1290 = $$0289$ph;$$1292 = $$0291$ph;
-         }
-        } while(0);
-        $94 = ((($2)) + 4|0);
-        $95 = HEAP32[$94>>2]|0;
-        $96 = HEAP32[$7>>2]|0;
-        $97 = 
(__gcry_rsa_pkcs1_encode_for_enc($1,$95,$79,$96,$$1292,$$1290)|0);
-        __gcry_free($$1292);
-        $$7 = $97;
-       } else {
-        $$7 = 65;
-       }
-      } while(0);
-      $$23 = $$7;$233 = $41;
-      break;
-     } else {
-      $98 = 1;
-     }
-    } else {
-     $98 = $76;
-    }
-    $or$cond12 = $24 & $98;
-    if ($or$cond12) {
-     $99 = HEAP32[$2>>2]|0;
-     $100 = $99 & -2;
-     $switch = ($100|0)==(2);
-     if ($switch) {
-      $101 = (__gcry_sexp_length($23)|0);
-      $102 = ($101|0)==(3);
-      if (!($102)) {
-       $$23 = 65;$233 = $41;
-       break;
-      }
-      $103 = (__gcry_sexp_nth_data($23,1,$3)|0);
-      $104 = ($103|0)!=(0|0);
-      $105 = HEAP32[$3>>2]|0;
-      $106 = ($105|0)!=(0);
-      $or$cond14 = $104 & $106;
-      if (!($or$cond14)) {
-       $$23 = 65;$233 = $41;
-       break;
-      }
-      $107 = (_get_hash_algo($103,$105)|0);
-      $108 = ((($2)) + 16|0);
-      HEAP32[$108>>2] = $107;
-      $109 = ($107|0)==(0);
-      if ($109) {
-       $$8 = 5;
-      } else {
-       $110 = (__gcry_sexp_nth_data($23,2,$8)|0);
-       $111 = ($110|0)!=(0|0);
-       $112 = HEAP32[$8>>2]|0;
-       $113 = ($112|0)!=(0);
-       $or$cond16 = $111 & $113;
-       if ($or$cond16) {
-        $114 = ((($2)) + 4|0);
-        $115 = HEAP32[$114>>2]|0;
-        $116 = HEAP32[$108>>2]|0;
-        $117 = (__gcry_rsa_pkcs1_encode_for_sig($1,$115,$110,$112,$116)|0);
-        $$8 = $117;
-       } else {
-        $$8 = 65;
-       }
-      }
-      $$23 = $$8;$233 = $41;
-      break;
-     }
-    }
-    $118 = ($28|0)==(2);
-    $or$cond18 = $73 & $118;
-    if ($or$cond18) {
-     $119 = HEAP32[$2>>2]|0;
-     $120 = $119 & -2;
-     $switch308 = ($120|0)==(2);
-     if (!($switch308)) {
-      $$23 = 70;$233 = $41;
-      break;
-     }
-     $121 = (__gcry_sexp_length($41)|0);
-     $122 = ($121|0)==(2);
-     if ($122) {
-      $123 = (__gcry_sexp_nth_data($41,1,$9)|0);
-      $124 = ($123|0)!=(0|0);
-      $125 = HEAP32[$9>>2]|0;
-      $126 = ($125|0)!=(0);
-      $or$cond20 = $124 & $126;
-      if ($or$cond20) {
-       $127 = ((($2)) + 4|0);
-       $128 = HEAP32[$127>>2]|0;
-       $129 = (__gcry_rsa_pkcs1_encode_raw_for_sig($1,$128,$123,$125)|0);
-       $$9 = $129;
-      } else {
-       $$9 = 65;
-      }
-     } else {
-      $$9 = 65;
-     }
-     $$23 = $$9;$233 = $41;
-     break;
-    }
-    $130 = ($28|0)==(3);
-    $or$cond22 = $73 & $130;
-    if (!($or$cond22)) {
-     $179 = ($28|0)==(4);
-     $or$cond26 = $24 & $179;
-     if (!($or$cond26)) {
-      $$23 = 70;$233 = $41;
-      break;
-     }
-     $180 = HEAP32[$2>>2]|0;
-     switch ($180|0) {
-     case 2:  {
-      break;
-     }
-     case 3:  {
-      $219 = (__gcry_sexp_length($23)|0);
-      $220 = ($219|0)==(3);
-      if (!($220)) {
-       $$23 = 65;$233 = $41;
-       break L13;
-      }
-      $221 = (__gcry_sexp_nth_data($23,1,$3)|0);
-      $222 = ($221|0)!=(0|0);
-      $223 = HEAP32[$3>>2]|0;
-      $224 = ($223|0)!=(0);
-      $or$cond34 = $222 & $224;
-      if (!($or$cond34)) {
-       $$23 = 65;$233 = $41;
-       break L13;
-      }
-      $225 = (_get_hash_algo($221,$223)|0);
-      $226 = ((($2)) + 16|0);
-      HEAP32[$226>>2] = $225;
-      $227 = ($225|0)==(0);
-      if ($227) {
-       $$23 = 5;$233 = $41;
-       break L13;
-      }
-      $228 = (__gcry_sexp_nth_mpi($23,2,5)|0);
-      HEAP32[$1>>2] = $228;
-      $229 = ($228|0)==(0|0);
-      $230 = ((($2)) + 32|0);
-      HEAP32[$230>>2] = 71;
-      $231 = HEAP32[$1>>2]|0;
-      $232 = ((($2)) + 36|0);
-      HEAP32[$232>>2] = $231;
-      $spec$select366 = $229 ? 65 : 0;
-      $$23 = $spec$select366;$233 = $41;
-      break L13;
-      break;
-     }
-     default: {
-      $$23 = 70;$233 = $41;
-      break L13;
-     }
-     }
-     $181 = (__gcry_sexp_length($23)|0);
-     $182 = ($181|0)==(3);
-     if (!($182)) {
-      $$23 = 65;$233 = $41;
-      break;
-     }
-     $183 = (__gcry_sexp_nth_data($23,1,$3)|0);
-     $184 = ($183|0)!=(0|0);
-     $185 = HEAP32[$3>>2]|0;
-     $186 = ($185|0)!=(0);
-     $or$cond28 = $184 & $186;
-     if (!($or$cond28)) {
-      $$23 = 65;$233 = $41;
-      break;
-     }
-     $187 = (_get_hash_algo($183,$185)|0);
-     $188 = ((($2)) + 16|0);
-     HEAP32[$188>>2] = $187;
-     $189 = ($187|0)==(0);
-     L97: do {
-      if ($189) {
-       $$21 = 5;
-      } else {
-       $190 = (__gcry_sexp_nth_data($23,2,$11)|0);
-       $191 = ($190|0)!=(0|0);
-       $192 = HEAP32[$11>>2]|0;
-       $193 = ($192|0)!=(0);
-       $or$cond30 = $191 & $193;
-       if ($or$cond30) {
-        $194 = (__gcry_sexp_find_token($12,59729,0)|0);
-        $195 = ($194|0)==(0|0);
-        if (!($195)) {
-         $196 = (__gcry_sexp_nth_data($194,1,$3)|0);
-         $197 = ($196|0)==(0|0);
-         if ($197) {
-          $$21 = 68;
-          break;
-         }
-         $198 = (_strtoul($196,0,10)|0);
-         $199 = ((($2)) + 28|0);
-         HEAP32[$199>>2] = $198;
-         __gcry_sexp_release($194);
-        }
-        $200 = (__gcry_sexp_find_token($12,59629,0)|0);
-        $201 = ($200|0)==(0|0);
-        L104: do {
-         if ($201) {
-          $$1 = 0;$$1279 = 0;
-         } else {
-          $202 = (__gcry_sexp_nth_data($200,1,$3)|0);
-          $203 = ($202|0)==(0|0);
-          if ($203) {
-           __gcry_sexp_release($200);
-           $$21 = 68;
-           break L97;
-          }
-          $204 = HEAP32[$3>>2]|0;
-          $205 = ($204|0)==(0);
-          do {
-           if ($205) {
-            $$0$ph = 0;$$0278$ph = 0;
-           } else {
-            $206 = (__gcry_malloc($204)|0);
-            $207 = ($206|0)==(0|0);
-            if ($207) {
-             $209 = (_gpg_err_code_from_syserror()|0);
-             __gcry_sexp_release($200);
-             $210 = ($209|0)==(0);
-             if ($210) {
-              $$1 = 0;$$1279 = 0;
-              break L104;
-             } else {
-              $$21 = $209;
-              break L97;
-             }
-            } else {
-             $208 = HEAP32[$3>>2]|0;
-             _memcpy(($206|0),($202|0),($208|0))|0;
-             $$0$ph = $208;$$0278$ph = $206;
-             break;
-            }
-           }
-          } while(0);
-          __gcry_sexp_release($200);
-          $$1 = $$0$ph;$$1279 = $$0278$ph;
-         }
-        } while(0);
-        $211 = ((($2)) + 4|0);
-        $212 = HEAP32[$211>>2]|0;
-        $213 = (($212) + -1)|0;
-        $214 = HEAP32[$188>>2]|0;
-        $215 = HEAP32[$11>>2]|0;
-        $216 = ((($2)) + 28|0);
-        $217 = HEAP32[$216>>2]|0;
-        $218 = 
(__gcry_rsa_pss_encode($1,$213,$214,$190,$215,$217,$$1279,$$1)|0);
-        __gcry_free($$1279);
-        $$21 = $218;
-       } else {
-        $$21 = 65;
-       }
-      }
-     } while(0);
-     $$23 = $$21;$233 = $41;
-     break;
-    }
-    $131 = HEAP32[$2>>2]|0;
-    $132 = ($131|0)==(0);
-    if ($132) {
-     $133 = (__gcry_sexp_nth_data($41,1,$10)|0);
-     $134 = ($133|0)!=(0|0);
-     $135 = HEAP32[$10>>2]|0;
-     $136 = ($135|0)!=(0);
-     $or$cond24 = $134 & $136;
-     L119: do {
-      if ($or$cond24) {
-       $137 = (__gcry_sexp_find_token($12,59613,0)|0);
-       $138 = ($137|0)==(0|0);
-       do {
-        if (!($138)) {
-         $139 = (__gcry_sexp_nth_data($137,1,$3)|0);
-         $140 = ($139|0)==(0|0);
-         if ($140) {
-          $$10$ph = 68;
-         } else {
-          $141 = HEAP32[$3>>2]|0;
-          $142 = (_get_hash_algo($139,$141)|0);
-          $143 = ((($2)) + 16|0);
-          HEAP32[$143>>2] = $142;
-          $144 = ($142|0)==(0);
-          if ($144) {
-           $$10$ph = 5;
-          } else {
-           __gcry_sexp_release($137);
-           break;
-          }
-         }
-         __gcry_sexp_release($137);
-         $$17 = $$10$ph;
-         break L119;
-        }
-       } while(0);
-       $145 = (__gcry_sexp_find_token($12,59623,0)|0);
-       $146 = ($145|0)==(0|0);
-       L128: do {
-        if (!($146)) {
-         $147 = (__gcry_sexp_nth_data($145,1,$3)|0);
-         $148 = ($147|0)==(0|0);
-         if ($148) {
-          __gcry_sexp_release($145);
-          $$17 = 68;
-          break L119;
-         }
-         $149 = HEAP32[$3>>2]|0;
-         $150 = ($149|0)==(0);
-         do {
-          if (!($150)) {
-           $151 = (__gcry_malloc($149)|0);
-           $152 = ((($2)) + 20|0);
-           HEAP32[$152>>2] = $151;
-           $153 = ($151|0)==(0|0);
-           if ($153) {
-            $156 = (_gpg_err_code_from_syserror()|0);
-            __gcry_sexp_release($145);
-            $157 = ($156|0)==(0);
-            if ($157) {
-             break L128;
-            } else {
-             $$17 = $156;
-             break L119;
-            }
-           } else {
-            $154 = HEAP32[$3>>2]|0;
-            _memcpy(($151|0),($147|0),($154|0))|0;
-            $155 = ((($2)) + 24|0);
-            HEAP32[$155>>2] = $154;
-            break;
-           }
-          }
-         } while(0);
-         __gcry_sexp_release($145);
-        }
-       } while(0);
-       $158 = (__gcry_sexp_find_token($12,59629,0)|0);
-       $159 = ($158|0)==(0|0);
-       L140: do {
-        if ($159) {
-         $$1282 = 0;$$1284 = 0;
-        } else {
-         $160 = (__gcry_sexp_nth_data($158,1,$3)|0);
-         $161 = ($160|0)==(0|0);
-         if ($161) {
-          __gcry_sexp_release($158);
-          $$17 = 68;
-          break L119;
-         }
-         $162 = HEAP32[$3>>2]|0;
-         $163 = ($162|0)==(0);
-         do {
-          if ($163) {
-           $$0281$ph = 0;$$0283$ph = 0;
-          } else {
-           $164 = (__gcry_malloc($162)|0);
-           $165 = ($164|0)==(0|0);
-           if ($165) {
-            $167 = (_gpg_err_code_from_syserror()|0);
-            __gcry_sexp_release($158);
-            $168 = ($167|0)==(0);
-            if ($168) {
-             $$1282 = 0;$$1284 = 0;
-             break L140;
-            } else {
-             $$17 = $167;
-             break L119;
-            }
-           } else {
-            $166 = HEAP32[$3>>2]|0;
-            _memcpy(($164|0),($160|0),($166|0))|0;
-            $$0281$ph = $166;$$0283$ph = $164;
-            break;
-           }
-          }
-         } while(0);
-         __gcry_sexp_release($158);
-         $$1282 = $$0281$ph;$$1284 = $$0283$ph;
-        }
-       } while(0);
-       $169 = ((($2)) + 4|0);
-       $170 = HEAP32[$169>>2]|0;
-       $171 = ((($2)) + 16|0);
-       $172 = HEAP32[$171>>2]|0;
-       $173 = HEAP32[$10>>2]|0;
-       $174 = ((($2)) + 20|0);
-       $175 = HEAP32[$174>>2]|0;
-       $176 = ((($2)) + 24|0);
-       $177 = HEAP32[$176>>2]|0;
-       $178 = 
(__gcry_rsa_oaep_encode($1,$170,$172,$133,$173,$175,$177,$$1284,$$1282)|0);
-       __gcry_free($$1284);
-       $$17 = $178;
-      } else {
-       $$17 = 65;
-      }
-     } while(0);
-     $$23 = $$17;$233 = $41;
-    } else {
-     $$23 = 70;$233 = $41;
-    }
-   } else {
-    $$23 = 72;$233 = $41;
-   }
-  }
- } while(0);
- __gcry_sexp_release($12);
- __gcry_sexp_release($23);
- __gcry_sexp_release($233);
- $234 = ($$23|0)==(0);
- if ($234) {
-  $235 = HEAP32[$4>>2]|0;
-  $236 = ((($2)) + 12|0);
-  HEAP32[$236>>2] = $235;
-  $$0280 = 0;
-  STACKTOP = sp;return ($$0280|0);
- } else {
-  $237 = ((($2)) + 20|0);
-  $238 = HEAP32[$237>>2]|0;
-  __gcry_free($238);
-  HEAP32[$237>>2] = 0;
-  $$0280 = $$23;
-  STACKTOP = sp;return ($$0280|0);
- }
- return (0)|0;
-}
-function _pss_verify_cmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 36|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($0)) + 4|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = (($5) + -1)|0;
- $7 = ((($0)) + 16|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 28|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (__gcry_rsa_pss_verify($3,$1,$6,$8,$10)|0);
- return ($11|0);
-}
-function __gcry_pk_algo_name($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i$i = 0, $$0$i$ph = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- switch ($0|0) {
- case 3: case 2:  {
-  $$0$i$i = 1;
-  break;
- }
- case 16:  {
-  $$0$i$i = 20;
-  break;
- }
- case 301:  {
-  $$0$i$i = 18;
-  break;
- }
- case 302:  {
-  $$0$i$i = 18;
-  break;
- }
- default: {
-  $$0$i$i = $0;
- }
- }
- $1 = HEAP32[10027]|0;
- $2 = ($$0$i$i|0)==($1|0);
- if ($2) {
-  $$0$i$ph = 40108;
- } else {
-  $3 = HEAP32[9887]|0;
-  $4 = ($$0$i$i|0)==($3|0);
-  if ($4) {
-   $$0$i$ph = 39548;
-  } else {
-   $$0 = 59741;
-   return ($$0|0);
-  }
- }
- $5 = ((($$0$i$ph)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $$0 = $6;
- return ($$0|0);
-}
-function __gcry_pk_encrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- HEAP32[$0>>2] = 0;
- $5 = (_spec_from_sexp($2,0,$3,$4)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $7 = HEAP32[$3>>2]|0;
-  $8 = ((($7)) + 48|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $$0 = 69;
-  } else {
-   $11 = HEAP32[$4>>2]|0;
-   $12 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$11)|0);
-   $$0 = $12;
-  }
- } else {
-  $$0 = $5;
- }
- $13 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($13);
- STACKTOP = sp;return ($$0|0);
-}
-function _spec_from_sexp($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$016$i$ph = 0, $$019$1$i = 0, $$019$i = 0, $$032 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, $or$cond = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[$2>>2] = 0;
- $4 = ($3|0)!=(0|0);
- if ($4) {
-  HEAP32[$3>>2] = 0;
- }
- $5 = ($1|0)!=(0);
- $6 = $5 ? 59743 : 59755;
- $7 = (__gcry_sexp_find_token($0,$6,0)|0);
- $8 = ($7|0)!=(0|0);
- $or$cond = $5 | $8;
- if ($or$cond) {
-  $$032 = $7;
- } else {
-  $9 = (__gcry_sexp_find_token($0,59743,0)|0);
-  $$032 = $9;
- }
- $10 = ($$032|0)==(0|0);
- if ($10) {
-  $$0 = 65;
-  return ($$0|0);
- }
- $11 = (__gcry_sexp_cadr($$032)|0);
- __gcry_sexp_release($$032);
- $12 = (__gcry_sexp_nth_string($11,0)|0);
- $13 = ($12|0)==(0|0);
- if ($13) {
-  __gcry_sexp_release($11);
-  $$0 = 65;
-  return ($$0|0);
- }
- $14 = HEAP32[(40120)>>2]|0;
- $15 = (_strcasecmp($12,$14)|0);
- $16 = ($15|0)==(0);
- L14: do {
-  if ($16) {
-   $$016$i$ph = 40108;
-  } else {
-   $17 = HEAP32[(40124)>>2]|0;
-   $18 = HEAP32[$17>>2]|0;
-   $19 = ($18|0)==(0|0);
-   if (!($19)) {
-    $$019$i = $17;$23 = $18;
-    while(1) {
-     $24 = (_strcasecmp($12,$23)|0);
-     $25 = ($24|0)==(0);
-     $21 = ((($$019$i)) + 4|0);
-     if ($25) {
-      $$016$i$ph = 40108;
-      break L14;
-     }
-     $20 = HEAP32[$21>>2]|0;
-     $22 = ($20|0)==(0|0);
-     if ($22) {
-      break;
-     } else {
-      $$019$i = $21;$23 = $20;
-     }
-    }
-   }
-   $26 = HEAP32[(39560)>>2]|0;
-   $27 = (_strcasecmp($12,$26)|0);
-   $28 = ($27|0)==(0);
-   if ($28) {
-    $$016$i$ph = 39548;
-   } else {
-    $29 = HEAP32[(39564)>>2]|0;
-    $30 = HEAP32[$29>>2]|0;
-    $31 = ($30|0)==(0|0);
-    if (!($31)) {
-     $$019$1$i = $29;$32 = $30;
-     while(1) {
-      $33 = (_strcasecmp($12,$32)|0);
-      $34 = ($33|0)==(0);
-      $35 = ((($$019$1$i)) + 4|0);
-      if ($34) {
-       $$016$i$ph = 39548;
-       break L14;
-      }
-      $36 = HEAP32[$35>>2]|0;
-      $37 = ($36|0)==(0|0);
-      if ($37) {
-       break;
-      } else {
-       $$019$1$i = $35;$32 = $36;
-      }
-     }
-    }
-    __gcry_free($12);
-    __gcry_sexp_release($11);
-    $$0 = 4;
-    return ($$0|0);
-   }
-  }
- } while(0);
- __gcry_free($12);
- HEAP32[$2>>2] = $$016$i$ph;
- if ($4) {
-  HEAP32[$3>>2] = $11;
-  $$0 = 0;
-  return ($$0|0);
- } else {
-  __gcry_sexp_release($11);
-  $$0 = 0;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_pk_decrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- HEAP32[$0>>2] = 0;
- $5 = (_spec_from_sexp($2,1,$3,$4)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $7 = HEAP32[$3>>2]|0;
-  $8 = ((($7)) + 52|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $$0 = 69;
-  } else {
-   $11 = HEAP32[$4>>2]|0;
-   $12 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$11)|0);
-   $$0 = $12;
-  }
- } else {
-  $$0 = $5;
- }
- $13 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($13);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_pk_sign($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- HEAP32[$0>>2] = 0;
- $5 = (_spec_from_sexp($2,1,$3,$4)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $7 = HEAP32[$3>>2]|0;
-  $8 = ((($7)) + 56|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $$0 = 69;
-  } else {
-   $11 = HEAP32[$4>>2]|0;
-   $12 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$11)|0);
-   $$0 = $12;
-  }
- } else {
-  $$0 = $5;
- }
- $13 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($13);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_pk_verify($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- $5 = (_spec_from_sexp($2,0,$3,$4)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $7 = HEAP32[$3>>2]|0;
-  $8 = ((($7)) + 60|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $$0 = 69;
-  } else {
-   $11 = HEAP32[$4>>2]|0;
-   $12 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$11)|0);
-   $$0 = $12;
-  }
- } else {
-  $$0 = $5;
- }
- $13 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($13);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_pk_testkey($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp + 4|0;
- $2 = sp;
- $3 = (_spec_from_sexp($0,1,$1,$2)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $5 = HEAP32[$1>>2]|0;
-  $6 = ((($5)) + 44|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = ($7|0)==(0|0);
-  if ($8) {
-   $$0 = 69;
-  } else {
-   $9 = HEAP32[$2>>2]|0;
-   $10 = (FUNCTION_TABLE_ii[$7 & 63]($9)|0);
-   $$0 = $10;
-  }
- } else {
-  $$0 = $3;
- }
- $11 = HEAP32[$2>>2]|0;
- __gcry_sexp_release($11);
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_pk_genkey($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$016$i$ph = 0, $$019$1$i = 0, $$019$i = 0, $$030 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- HEAP32[$0>>2] = 0;
- $2 = (__gcry_sexp_find_token($1,59766,0)|0);
- $3 = ($2|0)==(0|0);
- L1: do {
-  if ($3) {
-   $$0 = 65;$$030 = 0;
-  } else {
-   $4 = (__gcry_sexp_cadr($2)|0);
-   __gcry_sexp_release($2);
-   $5 = ($4|0)==(0|0);
-   if ($5) {
-    $$0 = 68;$$030 = 0;
-   } else {
-    $6 = (__gcry_sexp_nth_string($4,0)|0);
-    $7 = ($6|0)==(0|0);
-    if ($7) {
-     $$0 = 65;$$030 = $4;
-    } else {
-     $8 = HEAP32[(40120)>>2]|0;
-     $9 = (_strcasecmp($6,$8)|0);
-     $10 = ($9|0)==(0);
-     L5: do {
-      if ($10) {
-       $$016$i$ph = 40108;
-      } else {
-       $11 = HEAP32[(40124)>>2]|0;
-       $12 = HEAP32[$11>>2]|0;
-       $13 = ($12|0)==(0|0);
-       if (!($13)) {
-        $$019$i = $11;$17 = $12;
-        while(1) {
-         $18 = (_strcasecmp($6,$17)|0);
-         $19 = ($18|0)==(0);
-         $15 = ((($$019$i)) + 4|0);
-         if ($19) {
-          $$016$i$ph = 40108;
-          break L5;
-         }
-         $14 = HEAP32[$15>>2]|0;
-         $16 = ($14|0)==(0|0);
-         if ($16) {
-          break;
-         } else {
-          $$019$i = $15;$17 = $14;
-         }
-        }
-       }
-       $20 = HEAP32[(39560)>>2]|0;
-       $21 = (_strcasecmp($6,$20)|0);
-       $22 = ($21|0)==(0);
-       if ($22) {
-        $$016$i$ph = 39548;
-       } else {
-        $23 = HEAP32[(39564)>>2]|0;
-        $24 = HEAP32[$23>>2]|0;
-        $25 = ($24|0)==(0|0);
-        if (!($25)) {
-         $$019$1$i = $23;$26 = $24;
-         while(1) {
-          $27 = (_strcasecmp($6,$26)|0);
-          $28 = ($27|0)==(0);
-          $29 = ((($$019$1$i)) + 4|0);
-          if ($28) {
-           $$016$i$ph = 39548;
-           break L5;
-          }
-          $30 = HEAP32[$29>>2]|0;
-          $31 = ($30|0)==(0|0);
-          if ($31) {
-           break;
-          } else {
-           $$019$1$i = $29;$26 = $30;
-          }
-         }
-        }
-        __gcry_free($6);
-        $$0 = 4;$$030 = $4;
-        break L1;
-       }
-      }
-     } while(0);
-     __gcry_free($6);
-     $32 = ((($$016$i$ph)) + 40|0);
-     $33 = HEAP32[$32>>2]|0;
-     $34 = ($33|0)==(0|0);
-     if ($34) {
-      $$0 = 69;$$030 = $4;
-     } else {
-      $35 = (FUNCTION_TABLE_iii[$33 & 127]($4,$0)|0);
-      $$0 = $35;$$030 = $4;
-     }
-    }
-   }
-  }
- } while(0);
- __gcry_sexp_release($$030);
- __gcry_free(0);
- __gcry_sexp_release(0);
- return ($$0|0);
-}
-function __gcry_pk_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_pk_selftest($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$i18$ph = 0, $$0$i1822 = 0, $$0$i20 = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 
0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- switch ($0|0) {
- case 3: case 2:  {
-  $$0$i20 = 1;
-  break;
- }
- case 16:  {
-  $$0$i20 = 20;
-  break;
- }
- case 301:  {
-  $$0$i20 = 18;
-  break;
- }
- case 302:  {
-  $$0$i20 = 18;
-  break;
- }
- default: {
-  $$0$i20 = $0;
- }
- }
- $3 = HEAP32[10027]|0;
- $4 = ($$0$i20|0)==($3|0);
- if ($4) {
-  $$0$i18$ph = 40108;
-  label = 8;
- } else {
-  $5 = HEAP32[9887]|0;
-  $6 = ($$0$i20|0)==($5|0);
-  if ($6) {
-   $$0$i18$ph = 39548;
-   label = 8;
-  } else {
-   $$0$i1822 = 0;$20 = 0;
-  }
- }
- if ((label|0) == 8) {
-  $7 = ((($$0$i18$ph)) + 4|0);
-  $8 = HEAP8[$7>>0]|0;
-  $9 = $8 & 1;
-  $10 = ($9<<24>>24)==(0);
-  if ($10) {
-   $11 = ((($$0$i18$ph)) + 68|0);
-   $12 = HEAP32[$11>>2]|0;
-   $13 = ($12|0)==(0|0);
-   if ($13) {
-    $$0$i1822 = $$0$i18$ph;$20 = 1;
-   } else {
-    $22 = (FUNCTION_TABLE_iiii[$12 & 127]($$0$i20,$1,$2)|0);
-    $23 = ($22|0)==(0);
-    $24 = $22 & 65535;
-    $25 = $24 | 16777216;
-    $spec$select = $23 ? 0 : $25;
-    return ($spec$select|0);
-   }
-  } else {
-   $$0$i1822 = $$0$i18$ph;$20 = 1;
-  }
- }
- $14 = ($2|0)==(0|0);
- if ($14) {
-  return 16777220;
- }
- if ($20) {
-  $15 = ((($$0$i1822)) + 4|0);
-  $16 = HEAP8[$15>>0]|0;
-  $17 = $16 & 1;
-  $18 = ($17<<24>>24)==(0);
-  if ($18) {
-   $21 = 59812;
-  } else {
-   label = 13;
-  }
- } else {
-  label = 13;
- }
- if ((label|0) == 13) {
-  $19 = $20 ? 59773 : 59792;
-  $21 = $19;
- }
- FUNCTION_TABLE_viiii[$2 & 63](61280,$$0$i20,59834,$21);
- return 16777220;
-}
-function _rijndael_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (_do_setkey($0,$1,$2)|0);
- return ($3|0);
-}
-function _rijndael_encrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 496|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)==(0|0);
- if (!($5)) {
-  FUNCTION_TABLE_v[$4 & 127]();
- }
- $6 = ((($0)) + 488|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = (FUNCTION_TABLE_iiii[$7 & 127]($0,$1,$2)|0);
- return ($8|0);
-}
-function _rijndael_decrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- _check_decryption_preparation($0);
- $3 = ((($0)) + 500|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)==(0|0);
- if (!($5)) {
-  FUNCTION_TABLE_v[$4 & 127]();
- }
- $6 = ((($0)) + 492|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = (FUNCTION_TABLE_iiii[$7 & 127]($0,$1,$2)|0);
- return ($8|0);
-}
-function _run_selftests($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$0$i$ph$i = 0, $$0$i$ph$i10 = 0, $$0$i$ph$i14 = 0, 
$$011$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 
= 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 1552|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(1552|0);
- $3 = sp + 1040|0;
- $4 = sp + 528|0;
- $5 = sp + 16|0;
- $6 = sp;
- switch ($0|0) {
- case 7:  {
-  (_do_setkey($5,4704,16)|0);
-  $7 = ((($5)) + 496|0);
-  $8 = HEAP32[$7>>2]|0;
-  $9 = ($8|0)==(0|0);
-  if (!($9)) {
-   FUNCTION_TABLE_v[$8 & 127]();
-  }
-  $10 = ((($5)) + 488|0);
-  $11 = HEAP32[$10>>2]|0;
-  (FUNCTION_TABLE_iiii[$11 & 127]($5,$6,4720)|0);
-  $12 = (_memcmp($6,4736,16)|0);
-  $13 = ($12|0)==(0);
-  if ($13) {
-   _check_decryption_preparation($5);
-   $14 = ((($5)) + 500|0);
-   $15 = HEAP32[$14>>2]|0;
-   $16 = ($15|0)==(0|0);
-   if (!($16)) {
-    FUNCTION_TABLE_v[$15 & 127]();
-   }
-   $17 = ((($5)) + 492|0);
-   $18 = HEAP32[$17>>2]|0;
-   (FUNCTION_TABLE_iiii[$18 & 127]($5,$6,$6)|0);
-   $19 = (_memcmp($6,4720,16)|0);
-   $20 = ($19|0)==(0);
-   if ($20) {
-    $21 = ($1|0)==(0);
-    if ($21) {
-     $$0 = 0;
-     STACKTOP = sp;return ($$0|0);
-    }
-    $22 = (_selftest_fips_128_38a(2)|0);
-    $23 = ($22|0)==(0|0);
-    if ($23) {
-     $24 = (_selftest_fips_128_38a(5)|0);
-     $25 = ($24|0)==(0|0);
-     if ($25) {
-      $$0 = 0;
-      STACKTOP = sp;return ($$0|0);
-     } else {
-      $$0$i = $24;$$011$i = 59913;
-     }
-    } else {
-     $$0$i = $22;$$011$i = 59909;
-    }
-   } else {
-    $$0$i$ph$i = 59845;
-    label = 8;
-   }
-  } else {
-   $$0$i$ph$i = 59877;
-   label = 8;
-  }
-  if ((label|0) == 8) {
-   $$0$i = $$0$i$ph$i;$$011$i = 59917;
-  }
-  $26 = ($2|0)==(0|0);
-  if ($26) {
-   $$0 = 50;
-   STACKTOP = sp;return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](59927,7,$$011$i,$$0$i);
-  $$0 = 50;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 8:  {
-  (_do_setkey($4,4752,24)|0);
-  $27 = ((($4)) + 496|0);
-  $28 = HEAP32[$27>>2]|0;
-  $29 = ($28|0)==(0|0);
-  if (!($29)) {
-   FUNCTION_TABLE_v[$28 & 127]();
-  }
-  $30 = ((($4)) + 488|0);
-  $31 = HEAP32[$30>>2]|0;
-  (FUNCTION_TABLE_iiii[$31 & 127]($4,$6,4784)|0);
-  $32 = (_memcmp($6,4800,16)|0);
-  $33 = ($32|0)==(0);
-  if ($33) {
-   _check_decryption_preparation($4);
-   $34 = ((($4)) + 500|0);
-   $35 = HEAP32[$34>>2]|0;
-   $36 = ($35|0)==(0|0);
-   if (!($36)) {
-    FUNCTION_TABLE_v[$35 & 127]();
-   }
-   $37 = ((($4)) + 492|0);
-   $38 = HEAP32[$37>>2]|0;
-   (FUNCTION_TABLE_iiii[$38 & 127]($4,$6,$6)|0);
-   $39 = (_memcmp($6,4784,16)|0);
-   $40 = ($39|0)==(0);
-   if ($40) {
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   } else {
-    $$0$i$ph$i10 = 59934;
-   }
-  } else {
-   $$0$i$ph$i10 = 59966;
-  }
-  $41 = ($2|0)==(0|0);
-  if ($41) {
-   $$0 = 50;
-   STACKTOP = sp;return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](59927,8,59917,$$0$i$ph$i10);
-  $$0 = 50;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 9:  {
-  (_do_setkey($3,4816,32)|0);
-  $42 = ((($3)) + 496|0);
-  $43 = HEAP32[$42>>2]|0;
-  $44 = ($43|0)==(0|0);
-  if (!($44)) {
-   FUNCTION_TABLE_v[$43 & 127]();
-  }
-  $45 = ((($3)) + 488|0);
-  $46 = HEAP32[$45>>2]|0;
-  (FUNCTION_TABLE_iiii[$46 & 127]($3,$6,4848)|0);
-  $47 = (_memcmp($6,4864,16)|0);
-  $48 = ($47|0)==(0);
-  if ($48) {
-   _check_decryption_preparation($3);
-   $49 = ((($3)) + 500|0);
-   $50 = HEAP32[$49>>2]|0;
-   $51 = ($50|0)==(0|0);
-   if (!($51)) {
-    FUNCTION_TABLE_v[$50 & 127]();
-   }
-   $52 = ((($3)) + 492|0);
-   $53 = HEAP32[$52>>2]|0;
-   (FUNCTION_TABLE_iiii[$53 & 127]($3,$6,$6)|0);
-   $54 = (_memcmp($6,4848,16)|0);
-   $55 = ($54|0)==(0);
-   if ($55) {
-    $$0 = 0;
-    STACKTOP = sp;return ($$0|0);
-   } else {
-    $$0$i$ph$i14 = 59998;
-   }
-  } else {
-   $$0$i$ph$i14 = 60030;
-  }
-  $56 = ($2|0)==(0|0);
-  if ($56) {
-   $$0 = 50;
-   STACKTOP = sp;return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](59927,9,59917,$$0$i$ph$i14);
-  $$0 = 50;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- default: {
-  $$0 = 12;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- return (0)|0;
-}
-function _do_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i$i$ph = 0, $$0$i12$i$ph = 0, $$0$i9$i$ph = 0, $$0138 = 0, 
$$0144227 = 0, $$0146 = 0, $$0147213 = 0, $$0148225 = 0, $$0152224 = 0, 
$$0157226 = 0, $$06$i$ph = 0, $$06$i171 = 0, $$1149$lcssa = 0, $$1149217 = 0, 
$$1158223 = 0, $$2154211 = 0, $$2159$lcssa = 0, $$2159216 = 0, $$3151212 = 0;
- var $$3155$lcssa = 0, $$3155205 = 0, $$3160185 = 0, $$4$lcssa = 0, $$4161186 
= 0, $$4206 = 0, $$5$lcssa = 0, $$5162 = 0, $$5162191 = 0, $$5162193 = 0, 
$$5197 = 0, $$6163204 = 0, $$7$lcssa = 0, $$7196 = 0, $$phi$trans$insert255 = 
0, $$pr = 0, $$pre = 0, $$pre254 = 0, $$pre256 = 0, $10 = 0;
- var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, 
$114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0;
- var $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 
= 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0;
- var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0;
- var $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 
= 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0;
- var $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 
= 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0;
- var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, 
$198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, 
$205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0;
- var $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 
= 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 
= 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0;
- var $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 
= 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 
= 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0;
- var $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 
= 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0;
- var $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 
= 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0;
- var $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, 
$289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $3 = 0, $30 = 0, $31 
= 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0;
- var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 
0, $7 = 0, $70 = 0, $71 = 0;
- var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, 
$8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0;
- var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $exitcond = 0, $exitcond252 = 0, $or$cond = 0, $or$cond166 = 
0, $spec$select = 0, $spec$select165 = 0, $spec$select167 = 0, $spec$select168 
= 0, $uglygep = 0, $uglygep241 = 0;
- var $uglygep244 = 0, $uglygep247 = 0, $umax = 0, $umax249 = 0, $vararg_buffer 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 1616|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(1616|0);
- $vararg_buffer = sp + 1608|0;
- $3 = sp + 1104|0;
- $4 = sp + 592|0;
- $5 = sp + 80|0;
- $6 = sp + 64|0;
- $7 = sp;
- $8 = (__gcry_fips_mode()|0);
- $9 = HEAP32[18116]|0;
- $10 = $9 | $8;
- $11 = ($10|0)==(0);
- L1: do {
-  if ($11) {
-   HEAP32[18116] = 1;
-   (_do_setkey($3,4704,16)|0);
-   $12 = ((($3)) + 496|0);
-   $13 = HEAP32[$12>>2]|0;
-   $14 = ($13|0)==(0|0);
-   if (!($14)) {
-    FUNCTION_TABLE_v[$13 & 127]();
-   }
-   $15 = ((($3)) + 488|0);
-   $16 = HEAP32[$15>>2]|0;
-   (FUNCTION_TABLE_iiii[$16 & 127]($3,$6,4720)|0);
-   $17 = (_memcmp($6,4736,16)|0);
-   $18 = ($17|0)==(0);
-   do {
-    if ($18) {
-     _check_decryption_preparation($3);
-     $19 = ((($3)) + 500|0);
-     $20 = HEAP32[$19>>2]|0;
-     $21 = ($20|0)==(0|0);
-     if (!($21)) {
-      FUNCTION_TABLE_v[$20 & 127]();
-     }
-     $22 = ((($3)) + 492|0);
-     $23 = HEAP32[$22>>2]|0;
-     (FUNCTION_TABLE_iiii[$23 & 127]($3,$6,$6)|0);
-     $24 = (_memcmp($6,4720,16)|0);
-     $25 = ($24|0)==(0);
-     if ($25) {
-      (_do_setkey($4,4752,24)|0);
-      $26 = ((($4)) + 496|0);
-      $27 = HEAP32[$26>>2]|0;
-      $28 = ($27|0)==(0|0);
-      if (!($28)) {
-       FUNCTION_TABLE_v[$27 & 127]();
-      }
-      $29 = ((($4)) + 488|0);
-      $30 = HEAP32[$29>>2]|0;
-      (FUNCTION_TABLE_iiii[$30 & 127]($4,$6,4784)|0);
-      $31 = (_memcmp($6,4800,16)|0);
-      $32 = ($31|0)==(0);
-      if ($32) {
-       _check_decryption_preparation($4);
-       $33 = ((($4)) + 500|0);
-       $34 = HEAP32[$33>>2]|0;
-       $35 = ($34|0)==(0|0);
-       if (!($35)) {
-        FUNCTION_TABLE_v[$34 & 127]();
-       }
-       $36 = ((($4)) + 492|0);
-       $37 = HEAP32[$36>>2]|0;
-       (FUNCTION_TABLE_iiii[$37 & 127]($4,$6,$6)|0);
-       $38 = (_memcmp($6,4784,16)|0);
-       $39 = ($38|0)==(0);
-       if ($39) {
-        (_do_setkey($5,4816,32)|0);
-        $40 = ((($5)) + 496|0);
-        $41 = HEAP32[$40>>2]|0;
-        $42 = ($41|0)==(0|0);
-        if (!($42)) {
-         FUNCTION_TABLE_v[$41 & 127]();
-        }
-        $43 = ((($5)) + 488|0);
-        $44 = HEAP32[$43>>2]|0;
-        (FUNCTION_TABLE_iiii[$44 & 127]($5,$6,4848)|0);
-        $45 = (_memcmp($6,4864,16)|0);
-        $46 = ($45|0)==(0);
-        if ($46) {
-         _check_decryption_preparation($5);
-         $47 = ((($5)) + 500|0);
-         $48 = HEAP32[$47>>2]|0;
-         $49 = ($48|0)==(0|0);
-         if (!($49)) {
-          FUNCTION_TABLE_v[$48 & 127]();
-         }
-         $50 = ((($5)) + 492|0);
-         $51 = HEAP32[$50>>2]|0;
-         (FUNCTION_TABLE_iiii[$51 & 127]($5,$6,$6)|0);
-         $52 = (_memcmp($6,4848,16)|0);
-         $53 = ($52|0)==(0);
-         if ($53) {
-          $54 = (__gcry_selftest_helper_ctr(59841,1,2,65,9,16,504)|0);
-          $55 = ($54|0)==(0|0);
-          if (!($55)) {
-           $$06$i$ph = $54;
-           label = 25;
-           break;
-          }
-          $56 = (__gcry_selftest_helper_cbc(59841,1,2,64,10,16,504)|0);
-          $57 = ($56|0)==(0|0);
-          if (!($57)) {
-           $$06$i$ph = $56;
-           label = 25;
-           break;
-          }
-          $58 = (__gcry_selftest_helper_cfb(59841,1,2,62,10,16,504)|0);
-          HEAP32[18117] = $58;
-          $59 = ($58|0)==(0|0);
-          if ($59) {
-           break L1;
-          } else {
-           $$06$i171 = $58;
-           break;
-          }
-         } else {
-          $$0$i$i$ph = 59998;
-         }
-        } else {
-         $$0$i$i$ph = 60030;
-        }
-        $$06$i$ph = $$0$i$i$ph;
-        label = 25;
-        break;
-       } else {
-        $$0$i9$i$ph = 59934;
-       }
-      } else {
-       $$0$i9$i$ph = 59966;
-      }
-      $$06$i$ph = $$0$i9$i$ph;
-      label = 25;
-     } else {
-      $$0$i12$i$ph = 59845;
-      label = 8;
-     }
-    } else {
-     $$0$i12$i$ph = 59877;
-     label = 8;
-    }
-   } while(0);
-   if ((label|0) == 8) {
-    $$06$i$ph = $$0$i12$i$ph;
-    label = 25;
-   }
-   if ((label|0) == 25) {
-    HEAP32[18117] = $$06$i$ph;
-    $$06$i171 = $$06$i$ph;
-   }
-   HEAP32[$vararg_buffer>>2] = $$06$i171;
-   __gcry_log_error(63676,$vararg_buffer);
-   label = 28;
-  } else {
-   label = 28;
-  }
- } while(0);
- if ((label|0) == 28) {
-  $$pr = HEAP32[18117]|0;
-  $60 = ($$pr|0)==(0|0);
-  if (!($60)) {
-   $$0 = 50;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- switch ($2|0) {
- case 16:  {
-  $$0138 = 10;$$0146 = 4;
-  break;
- }
- case 24:  {
-  $$0138 = 12;$$0146 = 6;
-  break;
- }
- case 32:  {
-  $$0138 = 14;$$0146 = 8;
-  break;
- }
- default: {
-  $$0 = 44;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- $61 = ((($0)) + 480|0);
- HEAP32[$61>>2] = $$0138;
- $62 = ((($0)) + 484|0);
- $63 = HEAP8[$62>>0]|0;
- $64 = $63 & -2;
- HEAP8[$62>>0] = $64;
- $65 = ((($0)) + 488|0);
- HEAP32[$65>>2] = 72;
- $66 = ((($0)) + 492|0);
- HEAP32[$66>>2] = 73;
- $67 = ((($0)) + 496|0);
- HEAP32[$67>>2] = 74;
- $68 = ((($0)) + 500|0);
- HEAP32[$68>>2] = 75;
- $69 = HEAP8[5216]|0;
- $70 = HEAP8[(5248)>>0]|0;
- $71 = HEAP8[(5280)>>0]|0;
- $72 = HEAP8[(5312)>>0]|0;
- $73 = HEAP8[(5344)>>0]|0;
- $74 = HEAP8[(5376)>>0]|0;
- $75 = HEAP8[(5408)>>0]|0;
- $76 = HEAP8[(5440)>>0]|0;
- $77 = HEAP8[(5472)>>0]|0;
- $78 = HEAP8[(5504)>>0]|0;
- $79 = HEAP8[(5536)>>0]|0;
- $80 = HEAP8[(5568)>>0]|0;
- $81 = HEAP8[(5600)>>0]|0;
- $82 = HEAP8[(5632)>>0]|0;
- $83 = HEAP8[(5664)>>0]|0;
- $84 = HEAP8[(5696)>>0]|0;
- $85 = HEAP8[(5728)>>0]|0;
- $86 = HEAP8[(5760)>>0]|0;
- $87 = HEAP8[(5792)>>0]|0;
- $88 = HEAP8[(5824)>>0]|0;
- $89 = HEAP8[(5856)>>0]|0;
- $90 = HEAP8[(5888)>>0]|0;
- $91 = HEAP8[(5920)>>0]|0;
- $92 = HEAP8[(5952)>>0]|0;
- $93 = HEAP8[(5984)>>0]|0;
- $94 = HEAP8[(6016)>>0]|0;
- $95 = HEAP8[(6048)>>0]|0;
- $96 = HEAP8[(6080)>>0]|0;
- $97 = HEAP8[(6112)>>0]|0;
- $98 = HEAP8[(6144)>>0]|0;
- $99 = HEAP8[(6176)>>0]|0;
- $100 = HEAP8[(6208)>>0]|0;
- $101 = HEAP8[(6239)>>0]|0;
- $$0144227 = 0;
- while(1) {
-  $102 = (($1) + ($$0144227)|0);
-  $103 = HEAP8[$102>>0]|0;
-  $104 = $$0144227 >>> 2;
-  $105 = $$0144227 & 3;
-  $106 = ((($7) + ($104<<2)|0) + ($105)|0);
-  HEAP8[$106>>0] = $103;
-  $107 = (($$0144227) + 1)|0;
-  $exitcond252 = ($107|0)==($2|0);
-  if ($exitcond252) {
-   break;
-  } else {
-   $$0144227 = $107;
-  }
- }
- $108 = (($$0146) + -1)|0;
- $109 = ((($7)) + 32|0);
- $$0157226 = $108;
- while(1) {
-  $110 = (($7) + ($$0157226<<2)|0);
-  $111 = HEAP32[$110>>2]|0;
-  $112 = (($109) + ($$0157226<<2)|0);
-  HEAP32[$112>>2] = $111;
-  $113 = (($$0157226) + -1)|0;
-  $114 = ($$0157226|0)>(0);
-  if ($114) {
-   $$0157226 = $113;
-  } else {
-   break;
-  }
- }
- $115 = $$0138 | 1;
- $$0148225 = 0;$$0152224 = 0;$$1158223 = 0;
- while(1) {
-  $116 = ($$1158223|0)<($$0146|0);
-  $117 = ($$0148225|0)<(4);
-  $118 = $116 & $117;
-  if ($118) {
-   $119 = $$0152224 << 4;
-   $120 = $$0148225 << 2;
-   $121 = (($119) + ($120))|0;
-   $uglygep244 = (($0) + ($121)|0);
-   $122 = $$1158223 << 2;
-   $uglygep247 = (($109) + ($122)|0);
-   $123 = (($$0148225) + -4)|0;
-   $124 = (($$1158223) - ($$0146))|0;
-   $125 = ($123>>>0)>($124>>>0);
-   $umax249 = $125 ? $123 : $124;
-   $126 = Math_imul($umax249, -4)|0;
-   _memcpy(($uglygep244|0),($uglygep247|0),($126|0))|0;
-   $$1149217 = $$0148225;$$2159216 = $$1158223;
-   while(1) {
-    $127 = (($$2159216) + 1)|0;
-    $128 = (($$1149217) + 1)|0;
-    $129 = ($127|0)<($$0146|0);
-    $130 = ($$1149217|0)<(3);
-    $131 = $129 & $130;
-    if ($131) {
-     $$1149217 = $128;$$2159216 = $127;
-    } else {
-     $$1149$lcssa = $128;$$2159$lcssa = $127;
-     break;
-    }
-   }
-  } else {
-   $$1149$lcssa = $$0148225;$$2159$lcssa = $$1158223;
-  }
-  $132 = ($$1149$lcssa|0)==(4);
-  $133 = $132&1;
-  $spec$select = (($$0152224) + ($133))|0;
-  $spec$select165 = $132 ? 0 : $$1149$lcssa;
-  $134 = ($$2159$lcssa|0)<($$0146|0);
-  $135 = ($spec$select>>>0)<($115>>>0);
-  $or$cond = $134 & $135;
-  if ($or$cond) {
-   $$0148225 = $spec$select165;$$0152224 = $spec$select;$$1158223 = 
$$2159$lcssa;
-  } else {
-   break;
-  }
- }
- if ($135) {
-  $136 = (((($109) + ($108<<2)|0)) + 1|0);
-  $137 = (((($109) + ($108<<2)|0)) + 2|0);
-  $138 = ((($109)) + 1|0);
-  $139 = (((($109) + ($108<<2)|0)) + 3|0);
-  $140 = ((($109)) + 2|0);
-  $141 = (($109) + ($108<<2)|0);
-  $142 = ((($109)) + 3|0);
-  $143 = ($$0146|0)==(8);
-  $144 = $$0146 >>> 1;
-  $145 = (($144) + -1)|0;
-  $146 = (($109) + ($145<<2)|0);
-  $147 = (($109) + ($144<<2)|0);
-  $148 = (((($109) + ($145<<2)|0)) + 1|0);
-  $149 = (((($109) + ($144<<2)|0)) + 1|0);
-  $150 = (((($109) + ($145<<2)|0)) + 2|0);
-  $151 = (((($109) + ($144<<2)|0)) + 2|0);
-  $152 = (((($109) + ($145<<2)|0)) + 3|0);
-  $153 = (((($109) + ($144<<2)|0)) + 3|0);
-  $$5162191 = (($144) + 1)|0;
-  $154 = ($$5162191>>>0)<(8);
-  $$phi$trans$insert255 = (($109) + ($144<<2)|0);
-  $$0147213 = 0;$$2154211 = $spec$select;$$3151212 = $spec$select165;
-  while(1) {
-   $155 = HEAP8[$136>>0]|0;
-   $156 = $155&255;
-   $157 = $156 << 2;
-   $158 = ((5217) + ($157)|0);
-   $159 = HEAP8[$158>>0]|0;
-   $160 = HEAP8[$109>>0]|0;
-   $161 = $160 ^ $159;
-   HEAP8[$109>>0] = $161;
-   $162 = HEAP8[$137>>0]|0;
-   $163 = $162&255;
-   $164 = $163 << 2;
-   $165 = ((5217) + ($164)|0);
-   $166 = HEAP8[$165>>0]|0;
-   $167 = HEAP8[$138>>0]|0;
-   $168 = $167 ^ $166;
-   HEAP8[$138>>0] = $168;
-   $169 = HEAP8[$139>>0]|0;
-   $170 = $169&255;
-   $171 = $170 << 2;
-   $172 = ((5217) + ($171)|0);
-   $173 = HEAP8[$172>>0]|0;
-   $174 = HEAP8[$140>>0]|0;
-   $175 = $174 ^ $173;
-   HEAP8[$140>>0] = $175;
-   $176 = HEAP8[$141>>0]|0;
-   $177 = $176&255;
-   $178 = $177 << 2;
-   $179 = ((5217) + ($178)|0);
-   $180 = HEAP8[$179>>0]|0;
-   $181 = HEAP8[$142>>0]|0;
-   $182 = $181 ^ $180;
-   HEAP8[$142>>0] = $182;
-   $183 = (($$0147213) + 1)|0;
-   $184 = (6240 + ($$0147213<<2)|0);
-   $185 = HEAP32[$184>>2]|0;
-   $186 = $161&255;
-   $187 = $185 ^ $186;
-   $188 = $187&255;
-   HEAP8[$109>>0] = $188;
-   if ($143) {
-    $$pre254 = HEAP32[$109>>2]|0;
-    $$4161186 = 1;$198 = $$pre254;
-    while(1) {
-     $195 = (($109) + ($$4161186<<2)|0);
-     $196 = HEAP32[$195>>2]|0;
-     $197 = $196 ^ $198;
-     HEAP32[$195>>2] = $197;
-     $199 = (($$4161186) + 1)|0;
-     $200 = ($199>>>0)<($144>>>0);
-     if ($200) {
-      $$4161186 = $199;$198 = $197;
-     } else {
-      break;
-     }
-    }
-    $201 = HEAP8[$146>>0]|0;
-    $202 = $201&255;
-    $203 = $202 << 2;
-    $204 = ((5217) + ($203)|0);
-    $205 = HEAP8[$204>>0]|0;
-    $206 = HEAP8[$147>>0]|0;
-    $207 = $206 ^ $205;
-    HEAP8[$147>>0] = $207;
-    $208 = HEAP8[$148>>0]|0;
-    $209 = $208&255;
-    $210 = $209 << 2;
-    $211 = ((5217) + ($210)|0);
-    $212 = HEAP8[$211>>0]|0;
-    $213 = HEAP8[$149>>0]|0;
-    $214 = $213 ^ $212;
-    HEAP8[$149>>0] = $214;
-    $215 = HEAP8[$150>>0]|0;
-    $216 = $215&255;
-    $217 = $216 << 2;
-    $218 = ((5217) + ($217)|0);
-    $219 = HEAP8[$218>>0]|0;
-    $220 = HEAP8[$151>>0]|0;
-    $221 = $220 ^ $219;
-    HEAP8[$151>>0] = $221;
-    $222 = HEAP8[$152>>0]|0;
-    $223 = $222&255;
-    $224 = $223 << 2;
-    $225 = ((5217) + ($224)|0);
-    $226 = HEAP8[$225>>0]|0;
-    $227 = HEAP8[$153>>0]|0;
-    $228 = $227 ^ $226;
-    HEAP8[$153>>0] = $228;
-    if ($154) {
-     $$pre256 = HEAP32[$$phi$trans$insert255>>2]|0;
-     $$5162193 = $$5162191;$232 = $$pre256;
-     while(1) {
-      $229 = (($109) + ($$5162193<<2)|0);
-      $230 = HEAP32[$229>>2]|0;
-      $231 = $230 ^ $232;
-      HEAP32[$229>>2] = $231;
-      $$5162 = (($$5162193) + 1)|0;
-      $exitcond = ($$5162|0)==(8);
-      if ($exitcond) {
-       break;
-      } else {
-       $$5162193 = $$5162;$232 = $231;
-      }
-     }
-    }
-   } else {
-    $$pre = HEAP32[$109>>2]|0;
-    $$3160185 = 1;$192 = $$pre;
-    while(1) {
-     $189 = (($109) + ($$3160185<<2)|0);
-     $190 = HEAP32[$189>>2]|0;
-     $191 = $190 ^ $192;
-     HEAP32[$189>>2] = $191;
-     $193 = (($$3160185) + 1)|0;
-     $194 = ($193>>>0)<($$0146>>>0);
-     if ($194) {
-      $$3160185 = $193;$192 = $191;
-     } else {
-      break;
-     }
-    }
-   }
-   $233 = ($$2154211|0)<($115|0);
-   if ($233) {
-    $$3155205 = $$2154211;$$4206 = $$3151212;$$6163204 = 0;
-    while(1) {
-     $234 = ($$6163204|0)<($$0146|0);
-     $235 = ($$4206|0)<(4);
-     $236 = $234 & $235;
-     if ($236) {
-      $237 = $$3155205 << 4;
-      $238 = $$4206 << 2;
-      $239 = (($237) + ($238))|0;
-      $uglygep = (($0) + ($239)|0);
-      $240 = $$6163204 << 2;
-      $uglygep241 = (($109) + ($240)|0);
-      $241 = (($$4206) + -4)|0;
-      $242 = (($$6163204) - ($$0146))|0;
-      $243 = ($241>>>0)>($242>>>0);
-      $umax = $243 ? $241 : $242;
-      $244 = Math_imul($umax, -4)|0;
-      _memcpy(($uglygep|0),($uglygep241|0),($244|0))|0;
-      $$5197 = $$4206;$$7196 = $$6163204;
-      while(1) {
-       $245 = (($$7196) + 1)|0;
-       $246 = (($$5197) + 1)|0;
-       $247 = ($245|0)<($$0146|0);
-       $248 = ($$5197|0)<(3);
-       $249 = $247 & $248;
-       if ($249) {
-        $$5197 = $246;$$7196 = $245;
-       } else {
-        $$5$lcssa = $246;$$7$lcssa = $245;
-        break;
-       }
-      }
-     } else {
-      $$5$lcssa = $$4206;$$7$lcssa = $$6163204;
-     }
-     $250 = ($$5$lcssa|0)==(4);
-     $251 = $250&1;
-     $spec$select167 = (($$3155205) + ($251))|0;
-     $spec$select168 = $250 ? 0 : $$5$lcssa;
-     $252 = ($$7$lcssa|0)<($$0146|0);
-     $253 = ($spec$select167|0)<($115|0);
-     $or$cond166 = $252 & $253;
-     if ($or$cond166) {
-      $$3155205 = $spec$select167;$$4206 = $spec$select168;$$6163204 = 
$$7$lcssa;
-     } else {
-      $$3155$lcssa = $spec$select167;$$4$lcssa = $spec$select168;
-      break;
-     }
-    }
-   } else {
-    $$3155$lcssa = $$2154211;$$4$lcssa = $$3151212;
-   }
-   $254 = ($$3155$lcssa|0)<($115|0);
-   if ($254) {
-    $$0147213 = $183;$$2154211 = $$3155$lcssa;$$3151212 = $$4$lcssa;
-   } else {
-    break;
-   }
-  }
- }
- $255 = $7;
- $256 = $255;
- HEAP32[$256>>2] = 0;
- $257 = (($255) + 4)|0;
- $258 = $257;
- HEAP32[$258>>2] = 0;
- $259 = ((($7)) + 8|0);
- $260 = $259;
- $261 = $260;
- HEAP32[$261>>2] = 0;
- $262 = (($260) + 4)|0;
- $263 = $262;
- HEAP32[$263>>2] = 0;
- $264 = ((($7)) + 16|0);
- $265 = $264;
- $266 = $265;
- HEAP32[$266>>2] = 0;
- $267 = (($265) + 4)|0;
- $268 = $267;
- HEAP32[$268>>2] = 0;
- $269 = ((($7)) + 24|0);
- $270 = $269;
- $271 = $270;
- HEAP32[$271>>2] = 0;
- $272 = (($270) + 4)|0;
- $273 = $272;
- HEAP32[$273>>2] = 0;
- $274 = ((($7)) + 32|0);
- $275 = $274;
- $276 = $275;
- HEAP32[$276>>2] = 0;
- $277 = (($275) + 4)|0;
- $278 = $277;
- HEAP32[$278>>2] = 0;
- $279 = ((($7)) + 40|0);
- $280 = $279;
- $281 = $280;
- HEAP32[$281>>2] = 0;
- $282 = (($280) + 4)|0;
- $283 = $282;
- HEAP32[$283>>2] = 0;
- $284 = ((($7)) + 48|0);
- $285 = $284;
- $286 = $285;
- HEAP32[$286>>2] = 0;
- $287 = (($285) + 4)|0;
- $288 = $287;
- HEAP32[$288>>2] = 0;
- $289 = ((($7)) + 56|0);
- $290 = $289;
- $291 = $290;
- HEAP32[$291>>2] = 0;
- $292 = (($290) + 4)|0;
- $293 = $292;
- HEAP32[$293>>2] = 0;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _check_decryption_preparation($0) {
- $0 = $0|0;
- var $$0$lcssa$i = 0, $$079$i = 0, $$lcssa$i = 0, $1 = 0, $10 = 0, $100 = 0, 
$101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, 
$164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0;
- var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 
= 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0;
- var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 
= 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 
0, $200 = 0, $201 = 0, $202 = 0, $203 = 0;
- var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 
= 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 
= 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0;
- var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, 
$229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, 
$236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0;
- var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, 
$247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, 
$254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0;
- var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 
= 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 
= 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0;
- var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $29 
= 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 
= 0, $38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 484|0);
- $2 = HEAP8[$1>>0]|0;
- $3 = $2 & 1;
- $4 = ($3<<24>>24)==(0);
- if (!($4)) {
-  return;
- }
- $5 = HEAP8[5216]|0;
- $6 = HEAP8[(5248)>>0]|0;
- $7 = HEAP8[(5280)>>0]|0;
- $8 = HEAP8[(5312)>>0]|0;
- $9 = HEAP8[(5344)>>0]|0;
- $10 = HEAP8[(5376)>>0]|0;
- $11 = HEAP8[(5408)>>0]|0;
- $12 = HEAP8[(5440)>>0]|0;
- $13 = HEAP8[(5472)>>0]|0;
- $14 = HEAP8[(5504)>>0]|0;
- $15 = HEAP8[(5536)>>0]|0;
- $16 = HEAP8[(5568)>>0]|0;
- $17 = HEAP8[(5600)>>0]|0;
- $18 = HEAP8[(5632)>>0]|0;
- $19 = HEAP8[(5664)>>0]|0;
- $20 = HEAP8[(5696)>>0]|0;
- $21 = HEAP8[(5728)>>0]|0;
- $22 = HEAP8[(5760)>>0]|0;
- $23 = HEAP8[(5792)>>0]|0;
- $24 = HEAP8[(5824)>>0]|0;
- $25 = HEAP8[(5856)>>0]|0;
- $26 = HEAP8[(5888)>>0]|0;
- $27 = HEAP8[(5920)>>0]|0;
- $28 = HEAP8[(5952)>>0]|0;
- $29 = HEAP8[(5984)>>0]|0;
- $30 = HEAP8[(6016)>>0]|0;
- $31 = HEAP8[(6048)>>0]|0;
- $32 = HEAP8[(6080)>>0]|0;
- $33 = HEAP8[(6112)>>0]|0;
- $34 = HEAP8[(6144)>>0]|0;
- $35 = HEAP8[(6176)>>0]|0;
- $36 = HEAP8[(6208)>>0]|0;
- $37 = HEAP8[(6239)>>0]|0;
- $38 = HEAP8[38052]|0;
- $39 = HEAP8[(38084)>>0]|0;
- $40 = HEAP8[(38116)>>0]|0;
- $41 = HEAP8[(38148)>>0]|0;
- $42 = HEAP8[(38180)>>0]|0;
- $43 = HEAP8[(38212)>>0]|0;
- $44 = HEAP8[(38244)>>0]|0;
- $45 = HEAP8[(38276)>>0]|0;
- $46 = HEAP8[(38308)>>0]|0;
- $47 = HEAP8[(38340)>>0]|0;
- $48 = HEAP8[(38372)>>0]|0;
- $49 = HEAP8[(38404)>>0]|0;
- $50 = HEAP8[(38436)>>0]|0;
- $51 = HEAP8[(38468)>>0]|0;
- $52 = HEAP8[(38500)>>0]|0;
- $53 = HEAP8[(38532)>>0]|0;
- $54 = HEAP8[(38564)>>0]|0;
- $55 = HEAP8[(38596)>>0]|0;
- $56 = HEAP8[(38628)>>0]|0;
- $57 = HEAP8[(38660)>>0]|0;
- $58 = HEAP8[(38692)>>0]|0;
- $59 = HEAP8[(38724)>>0]|0;
- $60 = HEAP8[(38756)>>0]|0;
- $61 = HEAP8[(38788)>>0]|0;
- $62 = HEAP8[(38820)>>0]|0;
- $63 = HEAP8[(38852)>>0]|0;
- $64 = HEAP8[(38884)>>0]|0;
- $65 = HEAP8[(38916)>>0]|0;
- $66 = HEAP8[(38948)>>0]|0;
- $67 = HEAP8[(38980)>>0]|0;
- $68 = HEAP8[(39012)>>0]|0;
- $69 = HEAP8[(39044)>>0]|0;
- $70 = HEAP8[(39076)>>0]|0;
- $71 = HEAP8[(39108)>>0]|0;
- $72 = HEAP8[(39140)>>0]|0;
- $73 = HEAP8[(39172)>>0]|0;
- $74 = HEAP8[(39204)>>0]|0;
- $75 = HEAP8[(39236)>>0]|0;
- $76 = HEAP8[(39268)>>0]|0;
- $77 = HEAP8[(39300)>>0]|0;
- $78 = HEAP8[(39331)>>0]|0;
- $79 = HEAP32[$0>>2]|0;
- $80 = ((($0)) + 240|0);
- HEAP32[$80>>2] = $79;
- $81 = ((($0)) + 4|0);
- $82 = HEAP32[$81>>2]|0;
- $83 = ((($80)) + 4|0);
- HEAP32[$83>>2] = $82;
- $84 = ((($0)) + 8|0);
- $85 = HEAP32[$84>>2]|0;
- $86 = ((($0)) + 248|0);
- HEAP32[$86>>2] = $85;
- $87 = ((($0)) + 12|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = ((($0)) + 252|0);
- HEAP32[$89>>2] = $88;
- $90 = ((($0)) + 480|0);
- $91 = HEAP32[$90>>2]|0;
- $92 = ($91|0)>(1);
- $93 = ((($0)) + 16|0);
- if ($92) {
-  $$079$i = 1;$96 = $93;
-  while(1) {
-   $94 = (($80) + ($$079$i<<4)|0);
-   $95 = HEAP32[$96>>2]|0;
-   $97 = $95 << 2;
-   $98 = $97 & 1020;
-   $99 = ((5217) + ($98)|0);
-   $100 = HEAP8[$99>>0]|0;
-   $101 = $100&255;
-   $102 = (38052 + ($101<<2)|0);
-   $103 = HEAP32[$102>>2]|0;
-   $104 = $95 >>> 6;
-   $105 = $104 & 1020;
-   $106 = ((5217) + ($105)|0);
-   $107 = HEAP8[$106>>0]|0;
-   $108 = $107&255;
-   $109 = (38052 + ($108<<2)|0);
-   $110 = HEAP32[$109>>2]|0;
-   $111 = $110 << 8;
-   $112 = $110 >>> 24;
-   $113 = $111 | $112;
-   $114 = $113 ^ $103;
-   $115 = $95 >>> 14;
-   $116 = $115 & 1020;
-   $117 = ((5217) + ($116)|0);
-   $118 = HEAP8[$117>>0]|0;
-   $119 = $118&255;
-   $120 = (38052 + ($119<<2)|0);
-   $121 = HEAP32[$120>>2]|0;
-   $122 = $121 << 16;
-   $123 = $121 >>> 16;
-   $124 = $122 | $123;
-   $125 = $114 ^ $124;
-   $126 = $95 >>> 24;
-   $127 = $126 << 2;
-   $128 = ((5217) + ($127)|0);
-   $129 = HEAP8[$128>>0]|0;
-   $130 = $129&255;
-   $131 = (38052 + ($130<<2)|0);
-   $132 = HEAP32[$131>>2]|0;
-   $133 = $132 << 24;
-   $134 = $132 >>> 8;
-   $135 = $133 | $134;
-   $136 = $125 ^ $135;
-   HEAP32[$94>>2] = $136;
-   $137 = (((($0) + ($$079$i<<4)|0)) + 4|0);
-   $138 = HEAP32[$137>>2]|0;
-   $139 = $138 << 2;
-   $140 = $139 & 1020;
-   $141 = ((5217) + ($140)|0);
-   $142 = HEAP8[$141>>0]|0;
-   $143 = $142&255;
-   $144 = (38052 + ($143<<2)|0);
-   $145 = HEAP32[$144>>2]|0;
-   $146 = $138 >>> 6;
-   $147 = $146 & 1020;
-   $148 = ((5217) + ($147)|0);
-   $149 = HEAP8[$148>>0]|0;
-   $150 = $149&255;
-   $151 = (38052 + ($150<<2)|0);
-   $152 = HEAP32[$151>>2]|0;
-   $153 = $152 << 8;
-   $154 = $152 >>> 24;
-   $155 = $153 | $154;
-   $156 = $155 ^ $145;
-   $157 = $138 >>> 14;
-   $158 = $157 & 1020;
-   $159 = ((5217) + ($158)|0);
-   $160 = HEAP8[$159>>0]|0;
-   $161 = $160&255;
-   $162 = (38052 + ($161<<2)|0);
-   $163 = HEAP32[$162>>2]|0;
-   $164 = $163 << 16;
-   $165 = $163 >>> 16;
-   $166 = $164 | $165;
-   $167 = $156 ^ $166;
-   $168 = $138 >>> 24;
-   $169 = $168 << 2;
-   $170 = ((5217) + ($169)|0);
-   $171 = HEAP8[$170>>0]|0;
-   $172 = $171&255;
-   $173 = (38052 + ($172<<2)|0);
-   $174 = HEAP32[$173>>2]|0;
-   $175 = $174 << 24;
-   $176 = $174 >>> 8;
-   $177 = $175 | $176;
-   $178 = $167 ^ $177;
-   $179 = (((($80) + ($$079$i<<4)|0)) + 4|0);
-   HEAP32[$179>>2] = $178;
-   $180 = (((($0) + ($$079$i<<4)|0)) + 8|0);
-   $181 = HEAP32[$180>>2]|0;
-   $182 = $181 << 2;
-   $183 = $182 & 1020;
-   $184 = ((5217) + ($183)|0);
-   $185 = HEAP8[$184>>0]|0;
-   $186 = $185&255;
-   $187 = (38052 + ($186<<2)|0);
-   $188 = HEAP32[$187>>2]|0;
-   $189 = $181 >>> 6;
-   $190 = $189 & 1020;
-   $191 = ((5217) + ($190)|0);
-   $192 = HEAP8[$191>>0]|0;
-   $193 = $192&255;
-   $194 = (38052 + ($193<<2)|0);
-   $195 = HEAP32[$194>>2]|0;
-   $196 = $195 << 8;
-   $197 = $195 >>> 24;
-   $198 = $196 | $197;
-   $199 = $198 ^ $188;
-   $200 = $181 >>> 14;
-   $201 = $200 & 1020;
-   $202 = ((5217) + ($201)|0);
-   $203 = HEAP8[$202>>0]|0;
-   $204 = $203&255;
-   $205 = (38052 + ($204<<2)|0);
-   $206 = HEAP32[$205>>2]|0;
-   $207 = $206 << 16;
-   $208 = $206 >>> 16;
-   $209 = $207 | $208;
-   $210 = $199 ^ $209;
-   $211 = $181 >>> 24;
-   $212 = $211 << 2;
-   $213 = ((5217) + ($212)|0);
-   $214 = HEAP8[$213>>0]|0;
-   $215 = $214&255;
-   $216 = (38052 + ($215<<2)|0);
-   $217 = HEAP32[$216>>2]|0;
-   $218 = $217 << 24;
-   $219 = $217 >>> 8;
-   $220 = $218 | $219;
-   $221 = $210 ^ $220;
-   $222 = (((($80) + ($$079$i<<4)|0)) + 8|0);
-   HEAP32[$222>>2] = $221;
-   $223 = (((($0) + ($$079$i<<4)|0)) + 12|0);
-   $224 = HEAP32[$223>>2]|0;
-   $225 = $224 << 2;
-   $226 = $225 & 1020;
-   $227 = ((5217) + ($226)|0);
-   $228 = HEAP8[$227>>0]|0;
-   $229 = $228&255;
-   $230 = (38052 + ($229<<2)|0);
-   $231 = HEAP32[$230>>2]|0;
-   $232 = $224 >>> 6;
-   $233 = $232 & 1020;
-   $234 = ((5217) + ($233)|0);
-   $235 = HEAP8[$234>>0]|0;
-   $236 = $235&255;
-   $237 = (38052 + ($236<<2)|0);
-   $238 = HEAP32[$237>>2]|0;
-   $239 = $238 << 8;
-   $240 = $238 >>> 24;
-   $241 = $239 | $240;
-   $242 = $241 ^ $231;
-   $243 = $224 >>> 14;
-   $244 = $243 & 1020;
-   $245 = ((5217) + ($244)|0);
-   $246 = HEAP8[$245>>0]|0;
-   $247 = $246&255;
-   $248 = (38052 + ($247<<2)|0);
-   $249 = HEAP32[$248>>2]|0;
-   $250 = $249 << 16;
-   $251 = $249 >>> 16;
-   $252 = $250 | $251;
-   $253 = $242 ^ $252;
-   $254 = $224 >>> 24;
-   $255 = $254 << 2;
-   $256 = ((5217) + ($255)|0);
-   $257 = HEAP8[$256>>0]|0;
-   $258 = $257&255;
-   $259 = (38052 + ($258<<2)|0);
-   $260 = HEAP32[$259>>2]|0;
-   $261 = $260 << 24;
-   $262 = $260 >>> 8;
-   $263 = $261 | $262;
-   $264 = $253 ^ $263;
-   $265 = (((($80) + ($$079$i<<4)|0)) + 12|0);
-   HEAP32[$265>>2] = $264;
-   $266 = (($$079$i) + 1)|0;
-   $267 = HEAP32[$90>>2]|0;
-   $268 = ($266|0)<($267|0);
-   $269 = (($0) + ($266<<4)|0);
-   if ($268) {
-    $$079$i = $266;$96 = $269;
-   } else {
-    $$0$lcssa$i = $266;$$lcssa$i = $269;
-    break;
-   }
-  }
- } else {
-  $$0$lcssa$i = 1;$$lcssa$i = $93;
- }
- $270 = HEAP32[$$lcssa$i>>2]|0;
- $271 = (($80) + ($$0$lcssa$i<<4)|0);
- HEAP32[$271>>2] = $270;
- $272 = (((($0) + ($$0$lcssa$i<<4)|0)) + 4|0);
- $273 = HEAP32[$272>>2]|0;
- $274 = (((($80) + ($$0$lcssa$i<<4)|0)) + 4|0);
- HEAP32[$274>>2] = $273;
- $275 = (((($0) + ($$0$lcssa$i<<4)|0)) + 8|0);
- $276 = HEAP32[$275>>2]|0;
- $277 = (((($80) + ($$0$lcssa$i<<4)|0)) + 8|0);
- HEAP32[$277>>2] = $276;
- $278 = (((($0) + ($$0$lcssa$i<<4)|0)) + 12|0);
- $279 = HEAP32[$278>>2]|0;
- $280 = (((($80) + ($$0$lcssa$i<<4)|0)) + 12|0);
- HEAP32[$280>>2] = $279;
- $281 = HEAP8[$1>>0]|0;
- $282 = $281 | 1;
- HEAP8[$1>>0] = $282;
- return;
-}
-function _selftest_fips_128_38a($0) {
- $0 = $0|0;
- var $$03446$lcssa = 0, $$036 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $1 = sp;
- $2 = sp + 20|0;
- $3 = sp + 16|0;
- HEAP32[$2>>2] = 0;
- HEAP32[$3>>2] = 0;
- switch ($0|0) {
- case 2:  {
-  $$03446$lcssa = 0;
-  break;
- }
- case 5:  {
-  $$03446$lcssa = 1;
-  break;
- }
- default: {
-  __gcry_cipher_close(0);
-  __gcry_cipher_close(0);
-  $$036 = 60062;
-  STACKTOP = sp;return ($$036|0);
- }
- }
- $4 = (4880 + (($$03446$lcssa*164)|0)|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = (__gcry_cipher_open($2,7,$5,0)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = HEAP32[$2>>2]|0;
-  __gcry_cipher_close($8);
-  $9 = HEAP32[$3>>2]|0;
-  __gcry_cipher_close($9);
-  $$036 = 60089;
-  STACKTOP = sp;return ($$036|0);
- }
- $10 = (__gcry_cipher_open($3,7,$5,0)|0);
- $11 = ($10|0)==(0);
- $12 = HEAP32[$2>>2]|0;
- if (!($11)) {
-  __gcry_cipher_close($12);
-  $13 = HEAP32[$3>>2]|0;
-  __gcry_cipher_close($13);
-  $$036 = 60089;
-  STACKTOP = sp;return ($$036|0);
- }
- $14 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 4|0);
- $15 = (__gcry_cipher_setkey($12,$14,16)|0);
- $16 = ($15|0)==(0);
- if ($16) {
-  $18 = HEAP32[$3>>2]|0;
-  $19 = (__gcry_cipher_setkey($18,$14,16)|0);
-  $20 = ($19|0)==(0);
-  $21 = HEAP32[$2>>2]|0;
-  if ($20) {
-   $24 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 20|0);
-   $25 = (__gcry_cipher_setiv($21,$24,16)|0);
-   $26 = ($25|0)==(0);
-   if ($26) {
-    $27 = HEAP32[$3>>2]|0;
-    $28 = (__gcry_cipher_setiv($27,$24,16)|0);
-    $29 = ($28|0)==(0);
-    if ($29) {
-     $32 = HEAP32[$2>>2]|0;
-     $33 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 36|0);
-     $34 = (__gcry_cipher_encrypt($32,$1,16,$33,16)|0);
-     $35 = ($34|0)==(0);
-     L20: do {
-      if ($35) {
-       $42 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 52|0);
-       $43 = (_memcmp($1,$42,16)|0);
-       $44 = ($43|0)==(0);
-       L22: do {
-        if ($44) {
-         $47 = HEAP32[$3>>2]|0;
-         $48 = (__gcry_cipher_decrypt($47,$1,16,$42,16)|0);
-         $49 = ($48|0)==(0);
-         L24: do {
-          if ($49) {
-           $52 = (_memcmp($1,$33,16)|0);
-           $53 = ($52|0)==(0);
-           do {
-            if ($53) {
-             $36 = HEAP32[$2>>2]|0;
-             $37 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 68|0);
-             $38 = (__gcry_cipher_encrypt($36,$1,16,$37,16)|0);
-             $39 = ($38|0)==(0);
-             if (!($39)) {
-              break L20;
-             }
-             $56 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 84|0);
-             $57 = (_memcmp($1,$56,16)|0);
-             $58 = ($57|0)==(0);
-             if (!($58)) {
-              break L22;
-             }
-             $59 = HEAP32[$3>>2]|0;
-             $60 = (__gcry_cipher_decrypt($59,$1,16,$56,16)|0);
-             $61 = ($60|0)==(0);
-             if (!($61)) {
-              break L24;
-             }
-             $62 = (_memcmp($1,$37,16)|0);
-             $63 = ($62|0)==(0);
-             if ($63) {
-              $64 = HEAP32[$2>>2]|0;
-              $65 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 100|0);
-              $66 = (__gcry_cipher_encrypt($64,$1,16,$65,16)|0);
-              $67 = ($66|0)==(0);
-              if (!($67)) {
-               break L20;
-              }
-              $68 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 116|0);
-              $69 = (_memcmp($1,$68,16)|0);
-              $70 = ($69|0)==(0);
-              if (!($70)) {
-               break L22;
-              }
-              $71 = HEAP32[$3>>2]|0;
-              $72 = (__gcry_cipher_decrypt($71,$1,16,$68,16)|0);
-              $73 = ($72|0)==(0);
-              if (!($73)) {
-               break L24;
-              }
-              $74 = (_memcmp($1,$65,16)|0);
-              $75 = ($74|0)==(0);
-              if (!($75)) {
-               break;
-              }
-              $76 = HEAP32[$2>>2]|0;
-              $77 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 132|0);
-              $78 = (__gcry_cipher_encrypt($76,$1,16,$77,16)|0);
-              $79 = ($78|0)==(0);
-              if (!($79)) {
-               break L20;
-              }
-              $80 = (((4880 + (($$03446$lcssa*164)|0)|0)) + 148|0);
-              $81 = (_memcmp($1,$80,16)|0);
-              $82 = ($81|0)==(0);
-              if (!($82)) {
-               break L22;
-              }
-              $83 = HEAP32[$3>>2]|0;
-              $84 = (__gcry_cipher_decrypt($83,$1,16,$80,16)|0);
-              $85 = ($84|0)==(0);
-              if (!($85)) {
-               break L24;
-              }
-              $86 = (_memcmp($1,$77,16)|0);
-              $87 = ($86|0)==(0);
-              if (!($87)) {
-               break;
-              }
-              $88 = HEAP32[$2>>2]|0;
-              __gcry_cipher_close($88);
-              $89 = HEAP32[$3>>2]|0;
-              __gcry_cipher_close($89);
-              $$036 = 0;
-              STACKTOP = sp;return ($$036|0);
-             }
-            }
-           } while(0);
-           $54 = HEAP32[$2>>2]|0;
-           __gcry_cipher_close($54);
-           $55 = HEAP32[$3>>2]|0;
-           __gcry_cipher_close($55);
-           $$036 = 60158;
-           STACKTOP = sp;return ($$036|0);
-          }
-         } while(0);
-         $50 = HEAP32[$2>>2]|0;
-         __gcry_cipher_close($50);
-         $51 = HEAP32[$3>>2]|0;
-         __gcry_cipher_close($51);
-         $$036 = 60142;
-         STACKTOP = sp;return ($$036|0);
-        }
-       } while(0);
-       $45 = HEAP32[$2>>2]|0;
-       __gcry_cipher_close($45);
-       $46 = HEAP32[$3>>2]|0;
-       __gcry_cipher_close($46);
-       $$036 = 60125;
-       STACKTOP = sp;return ($$036|0);
-      }
-     } while(0);
-     $40 = HEAP32[$2>>2]|0;
-     __gcry_cipher_close($40);
-     $41 = HEAP32[$3>>2]|0;
-     __gcry_cipher_close($41);
-     $$036 = 60109;
-     STACKTOP = sp;return ($$036|0);
-    }
-   }
-   $30 = HEAP32[$2>>2]|0;
-   __gcry_cipher_close($30);
-   $31 = HEAP32[$3>>2]|0;
-   __gcry_cipher_close($31);
-   $$036 = 60102;
-   STACKTOP = sp;return ($$036|0);
-  } else {
-   $22 = $21;
-  }
- } else {
-  $17 = HEAP32[$2>>2]|0;
-  $22 = $17;
- }
- __gcry_cipher_close($22);
- $23 = HEAP32[$3>>2]|0;
- __gcry_cipher_close($23);
- $$036 = 60094;
- STACKTOP = sp;return ($$036|0);
-}
-function __gcry_aes_ctr_enc($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$06383 = 0, $$06982 = 0, $$07081 = 0, $$084 = 0, $10 = 0, $100 = 0, $101 
= 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 
= 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, 
$19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 
0, $41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0;
- var $99 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ((($0)) + 496|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if (!($8)) {
-  FUNCTION_TABLE_v[$7 & 127]();
- }
- $9 = ((($0)) + 488|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($4|0)==(0);
- if ($11) {
-  $12 = $5;
-  $13 = $12;
-  HEAP32[$13>>2] = 0;
-  $14 = (($12) + 4)|0;
-  $15 = $14;
-  HEAP32[$15>>2] = 0;
-  $16 = ((($5)) + 8|0);
-  $17 = $16;
-  $18 = $17;
-  HEAP32[$18>>2] = 0;
-  $19 = (($17) + 4)|0;
-  $20 = $19;
-  HEAP32[$20>>2] = 0;
-  STACKTOP = sp;return;
- }
- $21 = ((($5)) + 4|0);
- $22 = ((($5)) + 8|0);
- $23 = ((($5)) + 12|0);
- $24 = ((($5)) + 1|0);
- $25 = ((($5)) + 2|0);
- $26 = ((($5)) + 3|0);
- $27 = ((($5)) + 4|0);
- $28 = ((($27)) + 1|0);
- $29 = ((($27)) + 2|0);
- $30 = ((($27)) + 3|0);
- $31 = ((($5)) + 8|0);
- $32 = ((($31)) + 1|0);
- $33 = ((($31)) + 2|0);
- $34 = ((($31)) + 3|0);
- $35 = ((($5)) + 12|0);
- $36 = ((($35)) + 1|0);
- $37 = ((($35)) + 2|0);
- $38 = ((($35)) + 3|0);
- $$06383 = $2;$$06982 = $3;$$084 = $4;
- while(1) {
-  $39 = (FUNCTION_TABLE_iiii[$10 & 127]($0,$5,$1)|0);
-  $40 = $$06383;
-  $41 = $$06982;
-  $42 = $40 | $41;
-  $43 = $42 & 3;
-  $44 = ($43|0)==(0);
-  if ($44) {
-   $45 = HEAP32[$5>>2]|0;
-   $46 = ((($$06982)) + 4|0);
-   $47 = HEAP32[$$06982>>2]|0;
-   $48 = $47 ^ $45;
-   $49 = ((($$06383)) + 4|0);
-   HEAP32[$$06383>>2] = $48;
-   $50 = HEAP32[$21>>2]|0;
-   $51 = ((($$06982)) + 8|0);
-   $52 = HEAP32[$46>>2]|0;
-   $53 = $52 ^ $50;
-   $54 = ((($$06383)) + 8|0);
-   HEAP32[$49>>2] = $53;
-   $55 = HEAP32[$22>>2]|0;
-   $56 = ((($$06982)) + 12|0);
-   $57 = HEAP32[$51>>2]|0;
-   $58 = $57 ^ $55;
-   $59 = ((($$06383)) + 12|0);
-   HEAP32[$54>>2] = $58;
-   $60 = HEAP32[$23>>2]|0;
-   $61 = HEAP32[$56>>2]|0;
-   $62 = $61 ^ $60;
-   HEAP32[$59>>2] = $62;
-  } else {
-   $63 = HEAP8[$5>>0]|0;
-   $64 = ((($$06982)) + 1|0);
-   $65 = HEAP8[$$06982>>0]|0;
-   $66 = $65 ^ $63;
-   $67 = ((($$06383)) + 1|0);
-   HEAP8[$$06383>>0] = $66;
-   $68 = HEAP8[$24>>0]|0;
-   $69 = ((($$06982)) + 2|0);
-   $70 = HEAP8[$64>>0]|0;
-   $71 = $70 ^ $68;
-   $72 = ((($$06383)) + 2|0);
-   HEAP8[$67>>0] = $71;
-   $73 = HEAP8[$25>>0]|0;
-   $74 = ((($$06982)) + 3|0);
-   $75 = HEAP8[$69>>0]|0;
-   $76 = $75 ^ $73;
-   $77 = ((($$06383)) + 3|0);
-   HEAP8[$72>>0] = $76;
-   $78 = HEAP8[$26>>0]|0;
-   $79 = ((($$06982)) + 4|0);
-   $80 = HEAP8[$74>>0]|0;
-   $81 = $80 ^ $78;
-   $82 = ((($$06383)) + 4|0);
-   HEAP8[$77>>0] = $81;
-   $83 = HEAP8[$27>>0]|0;
-   $84 = ((($$06982)) + 5|0);
-   $85 = HEAP8[$79>>0]|0;
-   $86 = $85 ^ $83;
-   $87 = ((($$06383)) + 5|0);
-   HEAP8[$82>>0] = $86;
-   $88 = HEAP8[$28>>0]|0;
-   $89 = ((($$06982)) + 6|0);
-   $90 = HEAP8[$84>>0]|0;
-   $91 = $90 ^ $88;
-   $92 = ((($$06383)) + 6|0);
-   HEAP8[$87>>0] = $91;
-   $93 = HEAP8[$29>>0]|0;
-   $94 = ((($$06982)) + 7|0);
-   $95 = HEAP8[$89>>0]|0;
-   $96 = $95 ^ $93;
-   $97 = ((($$06383)) + 7|0);
-   HEAP8[$92>>0] = $96;
-   $98 = HEAP8[$30>>0]|0;
-   $99 = ((($$06982)) + 8|0);
-   $100 = HEAP8[$94>>0]|0;
-   $101 = $100 ^ $98;
-   $102 = ((($$06383)) + 8|0);
-   HEAP8[$97>>0] = $101;
-   $103 = HEAP8[$31>>0]|0;
-   $104 = ((($$06982)) + 9|0);
-   $105 = HEAP8[$99>>0]|0;
-   $106 = $105 ^ $103;
-   $107 = ((($$06383)) + 9|0);
-   HEAP8[$102>>0] = $106;
-   $108 = HEAP8[$32>>0]|0;
-   $109 = ((($$06982)) + 10|0);
-   $110 = HEAP8[$104>>0]|0;
-   $111 = $110 ^ $108;
-   $112 = ((($$06383)) + 10|0);
-   HEAP8[$107>>0] = $111;
-   $113 = HEAP8[$33>>0]|0;
-   $114 = ((($$06982)) + 11|0);
-   $115 = HEAP8[$109>>0]|0;
-   $116 = $115 ^ $113;
-   $117 = ((($$06383)) + 11|0);
-   HEAP8[$112>>0] = $116;
-   $118 = HEAP8[$34>>0]|0;
-   $119 = ((($$06982)) + 12|0);
-   $120 = HEAP8[$114>>0]|0;
-   $121 = $120 ^ $118;
-   $122 = ((($$06383)) + 12|0);
-   HEAP8[$117>>0] = $121;
-   $123 = HEAP8[$35>>0]|0;
-   $124 = ((($$06982)) + 13|0);
-   $125 = HEAP8[$119>>0]|0;
-   $126 = $125 ^ $123;
-   $127 = ((($$06383)) + 13|0);
-   HEAP8[$122>>0] = $126;
-   $128 = HEAP8[$36>>0]|0;
-   $129 = ((($$06982)) + 14|0);
-   $130 = HEAP8[$124>>0]|0;
-   $131 = $130 ^ $128;
-   $132 = ((($$06383)) + 14|0);
-   HEAP8[$127>>0] = $131;
-   $133 = HEAP8[$37>>0]|0;
-   $134 = ((($$06982)) + 15|0);
-   $135 = HEAP8[$129>>0]|0;
-   $136 = $135 ^ $133;
-   $137 = ((($$06383)) + 15|0);
-   HEAP8[$132>>0] = $136;
-   $138 = HEAP8[$38>>0]|0;
-   $139 = HEAP8[$134>>0]|0;
-   $140 = $139 ^ $138;
-   HEAP8[$137>>0] = $140;
-  }
-  $141 = ((($$06383)) + 16|0);
-  $$07081 = 16;
-  while(1) {
-   $142 = (($$07081) + -1)|0;
-   $143 = (($1) + ($142)|0);
-   $144 = HEAP8[$143>>0]|0;
-   $145 = (($144) + 1)<<24>>24;
-   HEAP8[$143>>0] = $145;
-   $146 = ($145<<24>>24)==(0);
-   $147 = ($$07081>>>0)>(1);
-   $or$cond = $146 & $147;
-   if ($or$cond) {
-    $$07081 = $142;
-   } else {
-    break;
-   }
-  }
-  $148 = ((($$06982)) + 16|0);
-  $149 = (($$084) + -1)|0;
-  $150 = ($149|0)==(0);
-  if ($150) {
-   break;
-  } else {
-   $$06383 = $141;$$06982 = $148;$$084 = $149;
-  }
- }
- $151 = $5;
- $152 = $151;
- HEAP32[$152>>2] = 0;
- $153 = (($151) + 4)|0;
- $154 = $153;
- HEAP32[$154>>2] = 0;
- $155 = ((($5)) + 8|0);
- $156 = $155;
- $157 = $156;
- HEAP32[$157>>2] = 0;
- $158 = (($156) + 4)|0;
- $159 = $158;
- HEAP32[$159>>2] = 0;
- $160 = ($39|0)==(0);
- if ($160) {
-  STACKTOP = sp;return;
- }
- $161 = (($39) + 16)|0;
- ___gcry_burn_stack($161);
- STACKTOP = sp;return;
-}
-function __gcry_aes_cbc_dec($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$05775 = 0, $$06374 = 0, $$076 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 
0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0;
- var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 
= 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0;
- var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 
= 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 
= 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0;
- var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, 
$158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, 
$165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0;
- var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 
= 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 
= 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0;
- var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 
= 0, $195 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 
0, $48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- _check_decryption_preparation($0);
- $6 = ((($0)) + 500|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if (!($8)) {
-  FUNCTION_TABLE_v[$7 & 127]();
- }
- $9 = ((($0)) + 492|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($4|0)==(0);
- if ($11) {
-  $12 = $5;
-  $13 = $12;
-  HEAP32[$13>>2] = 0;
-  $14 = (($12) + 4)|0;
-  $15 = $14;
-  HEAP32[$15>>2] = 0;
-  $16 = ((($5)) + 8|0);
-  $17 = $16;
-  $18 = $17;
-  HEAP32[$18>>2] = 0;
-  $19 = (($17) + 4)|0;
-  $20 = $19;
-  HEAP32[$20>>2] = 0;
-  STACKTOP = sp;return;
- }
- $21 = $1;
- $22 = ((($5)) + 4|0);
- $23 = ((($1)) + 4|0);
- $24 = ((($5)) + 8|0);
- $25 = ((($1)) + 8|0);
- $26 = ((($5)) + 12|0);
- $27 = ((($1)) + 12|0);
- $28 = ((($5)) + 1|0);
- $29 = ((($1)) + 1|0);
- $30 = ((($5)) + 2|0);
- $31 = ((($1)) + 2|0);
- $32 = ((($5)) + 3|0);
- $33 = ((($1)) + 3|0);
- $34 = ((($5)) + 4|0);
- $35 = ((($1)) + 4|0);
- $36 = ((($5)) + 5|0);
- $37 = ((($1)) + 5|0);
- $38 = ((($5)) + 6|0);
- $39 = ((($1)) + 6|0);
- $40 = ((($5)) + 7|0);
- $41 = ((($1)) + 7|0);
- $42 = ((($5)) + 8|0);
- $43 = ((($1)) + 8|0);
- $44 = ((($5)) + 9|0);
- $45 = ((($1)) + 9|0);
- $46 = ((($5)) + 10|0);
- $47 = ((($1)) + 10|0);
- $48 = ((($5)) + 11|0);
- $49 = ((($1)) + 11|0);
- $50 = ((($5)) + 12|0);
- $51 = ((($1)) + 12|0);
- $52 = ((($5)) + 13|0);
- $53 = ((($1)) + 13|0);
- $54 = ((($5)) + 14|0);
- $55 = ((($1)) + 14|0);
- $56 = ((($5)) + 15|0);
- $57 = ((($1)) + 15|0);
- $$05775 = $2;$$06374 = $3;$$076 = $4;
- while(1) {
-  $58 = (FUNCTION_TABLE_iiii[$10 & 127]($0,$5,$$06374)|0);
-  $59 = $$06374;
-  $60 = $$05775;
-  $61 = $59 | $21;
-  $62 = $61 | $60;
-  $63 = $62 & 3;
-  $64 = ($63|0)==(0);
-  if ($64) {
-   $65 = ((($$06374)) + 4|0);
-   $66 = HEAP32[$$06374>>2]|0;
-   $67 = HEAP32[$1>>2]|0;
-   $68 = HEAP32[$5>>2]|0;
-   $69 = $68 ^ $67;
-   $70 = ((($$05775)) + 4|0);
-   HEAP32[$$05775>>2] = $69;
-   HEAP32[$1>>2] = $66;
-   $71 = ((($$06374)) + 8|0);
-   $72 = HEAP32[$65>>2]|0;
-   $73 = HEAP32[$23>>2]|0;
-   $74 = HEAP32[$22>>2]|0;
-   $75 = $74 ^ $73;
-   $76 = ((($$05775)) + 8|0);
-   HEAP32[$70>>2] = $75;
-   HEAP32[$23>>2] = $72;
-   $77 = ((($$06374)) + 12|0);
-   $78 = HEAP32[$71>>2]|0;
-   $79 = HEAP32[$25>>2]|0;
-   $80 = HEAP32[$24>>2]|0;
-   $81 = $80 ^ $79;
-   $82 = ((($$05775)) + 12|0);
-   HEAP32[$76>>2] = $81;
-   HEAP32[$25>>2] = $78;
-   $83 = HEAP32[$77>>2]|0;
-   $84 = HEAP32[$27>>2]|0;
-   $85 = HEAP32[$26>>2]|0;
-   $86 = $85 ^ $84;
-   HEAP32[$82>>2] = $86;
-   HEAP32[$27>>2] = $83;
-  } else {
-   $87 = ((($$06374)) + 1|0);
-   $88 = HEAP8[$$06374>>0]|0;
-   $89 = HEAP8[$1>>0]|0;
-   $90 = HEAP8[$5>>0]|0;
-   $91 = $90 ^ $89;
-   $92 = ((($$05775)) + 1|0);
-   HEAP8[$$05775>>0] = $91;
-   HEAP8[$1>>0] = $88;
-   $93 = ((($$06374)) + 2|0);
-   $94 = HEAP8[$87>>0]|0;
-   $95 = HEAP8[$29>>0]|0;
-   $96 = HEAP8[$28>>0]|0;
-   $97 = $96 ^ $95;
-   $98 = ((($$05775)) + 2|0);
-   HEAP8[$92>>0] = $97;
-   HEAP8[$29>>0] = $94;
-   $99 = ((($$06374)) + 3|0);
-   $100 = HEAP8[$93>>0]|0;
-   $101 = HEAP8[$31>>0]|0;
-   $102 = HEAP8[$30>>0]|0;
-   $103 = $102 ^ $101;
-   $104 = ((($$05775)) + 3|0);
-   HEAP8[$98>>0] = $103;
-   HEAP8[$31>>0] = $100;
-   $105 = ((($$06374)) + 4|0);
-   $106 = HEAP8[$99>>0]|0;
-   $107 = HEAP8[$33>>0]|0;
-   $108 = HEAP8[$32>>0]|0;
-   $109 = $108 ^ $107;
-   $110 = ((($$05775)) + 4|0);
-   HEAP8[$104>>0] = $109;
-   HEAP8[$33>>0] = $106;
-   $111 = ((($$06374)) + 5|0);
-   $112 = HEAP8[$105>>0]|0;
-   $113 = HEAP8[$35>>0]|0;
-   $114 = HEAP8[$34>>0]|0;
-   $115 = $114 ^ $113;
-   $116 = ((($$05775)) + 5|0);
-   HEAP8[$110>>0] = $115;
-   HEAP8[$35>>0] = $112;
-   $117 = ((($$06374)) + 6|0);
-   $118 = HEAP8[$111>>0]|0;
-   $119 = HEAP8[$37>>0]|0;
-   $120 = HEAP8[$36>>0]|0;
-   $121 = $120 ^ $119;
-   $122 = ((($$05775)) + 6|0);
-   HEAP8[$116>>0] = $121;
-   HEAP8[$37>>0] = $118;
-   $123 = ((($$06374)) + 7|0);
-   $124 = HEAP8[$117>>0]|0;
-   $125 = HEAP8[$39>>0]|0;
-   $126 = HEAP8[$38>>0]|0;
-   $127 = $126 ^ $125;
-   $128 = ((($$05775)) + 7|0);
-   HEAP8[$122>>0] = $127;
-   HEAP8[$39>>0] = $124;
-   $129 = ((($$06374)) + 8|0);
-   $130 = HEAP8[$123>>0]|0;
-   $131 = HEAP8[$41>>0]|0;
-   $132 = HEAP8[$40>>0]|0;
-   $133 = $132 ^ $131;
-   $134 = ((($$05775)) + 8|0);
-   HEAP8[$128>>0] = $133;
-   HEAP8[$41>>0] = $130;
-   $135 = ((($$06374)) + 9|0);
-   $136 = HEAP8[$129>>0]|0;
-   $137 = HEAP8[$43>>0]|0;
-   $138 = HEAP8[$42>>0]|0;
-   $139 = $138 ^ $137;
-   $140 = ((($$05775)) + 9|0);
-   HEAP8[$134>>0] = $139;
-   HEAP8[$43>>0] = $136;
-   $141 = ((($$06374)) + 10|0);
-   $142 = HEAP8[$135>>0]|0;
-   $143 = HEAP8[$45>>0]|0;
-   $144 = HEAP8[$44>>0]|0;
-   $145 = $144 ^ $143;
-   $146 = ((($$05775)) + 10|0);
-   HEAP8[$140>>0] = $145;
-   HEAP8[$45>>0] = $142;
-   $147 = ((($$06374)) + 11|0);
-   $148 = HEAP8[$141>>0]|0;
-   $149 = HEAP8[$47>>0]|0;
-   $150 = HEAP8[$46>>0]|0;
-   $151 = $150 ^ $149;
-   $152 = ((($$05775)) + 11|0);
-   HEAP8[$146>>0] = $151;
-   HEAP8[$47>>0] = $148;
-   $153 = ((($$06374)) + 12|0);
-   $154 = HEAP8[$147>>0]|0;
-   $155 = HEAP8[$49>>0]|0;
-   $156 = HEAP8[$48>>0]|0;
-   $157 = $156 ^ $155;
-   $158 = ((($$05775)) + 12|0);
-   HEAP8[$152>>0] = $157;
-   HEAP8[$49>>0] = $154;
-   $159 = ((($$06374)) + 13|0);
-   $160 = HEAP8[$153>>0]|0;
-   $161 = HEAP8[$51>>0]|0;
-   $162 = HEAP8[$50>>0]|0;
-   $163 = $162 ^ $161;
-   $164 = ((($$05775)) + 13|0);
-   HEAP8[$158>>0] = $163;
-   HEAP8[$51>>0] = $160;
-   $165 = ((($$06374)) + 14|0);
-   $166 = HEAP8[$159>>0]|0;
-   $167 = HEAP8[$53>>0]|0;
-   $168 = HEAP8[$52>>0]|0;
-   $169 = $168 ^ $167;
-   $170 = ((($$05775)) + 14|0);
-   HEAP8[$164>>0] = $169;
-   HEAP8[$53>>0] = $166;
-   $171 = ((($$06374)) + 15|0);
-   $172 = HEAP8[$165>>0]|0;
-   $173 = HEAP8[$55>>0]|0;
-   $174 = HEAP8[$54>>0]|0;
-   $175 = $174 ^ $173;
-   $176 = ((($$05775)) + 15|0);
-   HEAP8[$170>>0] = $175;
-   HEAP8[$55>>0] = $172;
-   $177 = HEAP8[$171>>0]|0;
-   $178 = HEAP8[$57>>0]|0;
-   $179 = HEAP8[$56>>0]|0;
-   $180 = $179 ^ $178;
-   HEAP8[$176>>0] = $180;
-   HEAP8[$57>>0] = $177;
-  }
-  $181 = ((($$06374)) + 16|0);
-  $182 = ((($$05775)) + 16|0);
-  $183 = (($$076) + -1)|0;
-  $184 = ($183|0)==(0);
-  if ($184) {
-   break;
-  } else {
-   $$05775 = $182;$$06374 = $181;$$076 = $183;
-  }
- }
- $185 = $5;
- $186 = $185;
- HEAP32[$186>>2] = 0;
- $187 = (($185) + 4)|0;
- $188 = $187;
- HEAP32[$188>>2] = 0;
- $189 = ((($5)) + 8|0);
- $190 = $189;
- $191 = $190;
- HEAP32[$191>>2] = 0;
- $192 = (($190) + 4)|0;
- $193 = $192;
- HEAP32[$193>>2] = 0;
- $194 = ($58|0)==(0);
- if ($194) {
-  STACKTOP = sp;return;
- }
- $195 = (($58) + 16)|0;
- ___gcry_burn_stack($195);
- STACKTOP = sp;return;
-}
-function __gcry_aes_cfb_dec($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$02831 = 0, $$02930 = 0, $$032 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 
0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0;
- var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 
= 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0;
- var $133 = 0, $134 = 0, $135 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 
= 0, $28 = 0, $29 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 
0, $48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 496|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)==(0|0);
- if (!($7)) {
-  FUNCTION_TABLE_v[$6 & 127]();
- }
- $8 = ((($0)) + 488|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($4|0)==(0);
- if ($10) {
-  return;
- }
- $11 = $1;
- $12 = ((($1)) + 4|0);
- $13 = ((($1)) + 8|0);
- $14 = ((($1)) + 12|0);
- $15 = ((($1)) + 1|0);
- $16 = ((($1)) + 2|0);
- $17 = ((($1)) + 3|0);
- $18 = ((($1)) + 5|0);
- $19 = ((($1)) + 6|0);
- $20 = ((($1)) + 7|0);
- $21 = ((($1)) + 9|0);
- $22 = ((($1)) + 10|0);
- $23 = ((($1)) + 11|0);
- $24 = ((($1)) + 13|0);
- $25 = ((($1)) + 14|0);
- $26 = ((($1)) + 15|0);
- $$02831 = $3;$$02930 = $2;$$032 = $4;
- while(1) {
-  $27 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$1)|0);
-  $28 = $$02831;
-  $29 = $$02930;
-  $30 = $29 | $11;
-  $31 = $30 | $28;
-  $32 = $31 & 3;
-  $33 = ($32|0)==(0);
-  if ($33) {
-   $34 = ((($$02831)) + 4|0);
-   $35 = HEAP32[$$02831>>2]|0;
-   $36 = HEAP32[$1>>2]|0;
-   $37 = $36 ^ $35;
-   $38 = ((($$02930)) + 4|0);
-   HEAP32[$$02930>>2] = $37;
-   HEAP32[$1>>2] = $35;
-   $39 = ((($$02831)) + 8|0);
-   $40 = HEAP32[$34>>2]|0;
-   $41 = HEAP32[$12>>2]|0;
-   $42 = $41 ^ $40;
-   $43 = ((($$02930)) + 8|0);
-   HEAP32[$38>>2] = $42;
-   HEAP32[$12>>2] = $40;
-   $44 = ((($$02831)) + 12|0);
-   $45 = HEAP32[$39>>2]|0;
-   $46 = HEAP32[$13>>2]|0;
-   $47 = $46 ^ $45;
-   $48 = ((($$02930)) + 12|0);
-   HEAP32[$43>>2] = $47;
-   HEAP32[$13>>2] = $45;
-   $49 = HEAP32[$44>>2]|0;
-   $50 = HEAP32[$14>>2]|0;
-   $51 = $50 ^ $49;
-   HEAP32[$48>>2] = $51;
-   HEAP32[$14>>2] = $49;
-  } else {
-   $52 = ((($$02831)) + 1|0);
-   $53 = HEAP8[$$02831>>0]|0;
-   $54 = HEAP8[$1>>0]|0;
-   $55 = $54 ^ $53;
-   $56 = ((($$02930)) + 1|0);
-   HEAP8[$$02930>>0] = $55;
-   HEAP8[$1>>0] = $53;
-   $57 = ((($$02831)) + 2|0);
-   $58 = HEAP8[$52>>0]|0;
-   $59 = HEAP8[$15>>0]|0;
-   $60 = $59 ^ $58;
-   $61 = ((($$02930)) + 2|0);
-   HEAP8[$56>>0] = $60;
-   HEAP8[$15>>0] = $58;
-   $62 = ((($$02831)) + 3|0);
-   $63 = HEAP8[$57>>0]|0;
-   $64 = HEAP8[$16>>0]|0;
-   $65 = $64 ^ $63;
-   $66 = ((($$02930)) + 3|0);
-   HEAP8[$61>>0] = $65;
-   HEAP8[$16>>0] = $63;
-   $67 = ((($$02831)) + 4|0);
-   $68 = HEAP8[$62>>0]|0;
-   $69 = HEAP8[$17>>0]|0;
-   $70 = $69 ^ $68;
-   $71 = ((($$02930)) + 4|0);
-   HEAP8[$66>>0] = $70;
-   HEAP8[$17>>0] = $68;
-   $72 = ((($$02831)) + 5|0);
-   $73 = HEAP8[$67>>0]|0;
-   $74 = HEAP8[$12>>0]|0;
-   $75 = $74 ^ $73;
-   $76 = ((($$02930)) + 5|0);
-   HEAP8[$71>>0] = $75;
-   HEAP8[$12>>0] = $73;
-   $77 = ((($$02831)) + 6|0);
-   $78 = HEAP8[$72>>0]|0;
-   $79 = HEAP8[$18>>0]|0;
-   $80 = $79 ^ $78;
-   $81 = ((($$02930)) + 6|0);
-   HEAP8[$76>>0] = $80;
-   HEAP8[$18>>0] = $78;
-   $82 = ((($$02831)) + 7|0);
-   $83 = HEAP8[$77>>0]|0;
-   $84 = HEAP8[$19>>0]|0;
-   $85 = $84 ^ $83;
-   $86 = ((($$02930)) + 7|0);
-   HEAP8[$81>>0] = $85;
-   HEAP8[$19>>0] = $83;
-   $87 = ((($$02831)) + 8|0);
-   $88 = HEAP8[$82>>0]|0;
-   $89 = HEAP8[$20>>0]|0;
-   $90 = $89 ^ $88;
-   $91 = ((($$02930)) + 8|0);
-   HEAP8[$86>>0] = $90;
-   HEAP8[$20>>0] = $88;
-   $92 = ((($$02831)) + 9|0);
-   $93 = HEAP8[$87>>0]|0;
-   $94 = HEAP8[$13>>0]|0;
-   $95 = $94 ^ $93;
-   $96 = ((($$02930)) + 9|0);
-   HEAP8[$91>>0] = $95;
-   HEAP8[$13>>0] = $93;
-   $97 = ((($$02831)) + 10|0);
-   $98 = HEAP8[$92>>0]|0;
-   $99 = HEAP8[$21>>0]|0;
-   $100 = $99 ^ $98;
-   $101 = ((($$02930)) + 10|0);
-   HEAP8[$96>>0] = $100;
-   HEAP8[$21>>0] = $98;
-   $102 = ((($$02831)) + 11|0);
-   $103 = HEAP8[$97>>0]|0;
-   $104 = HEAP8[$22>>0]|0;
-   $105 = $104 ^ $103;
-   $106 = ((($$02930)) + 11|0);
-   HEAP8[$101>>0] = $105;
-   HEAP8[$22>>0] = $103;
-   $107 = ((($$02831)) + 12|0);
-   $108 = HEAP8[$102>>0]|0;
-   $109 = HEAP8[$23>>0]|0;
-   $110 = $109 ^ $108;
-   $111 = ((($$02930)) + 12|0);
-   HEAP8[$106>>0] = $110;
-   HEAP8[$23>>0] = $108;
-   $112 = ((($$02831)) + 13|0);
-   $113 = HEAP8[$107>>0]|0;
-   $114 = HEAP8[$14>>0]|0;
-   $115 = $114 ^ $113;
-   $116 = ((($$02930)) + 13|0);
-   HEAP8[$111>>0] = $115;
-   HEAP8[$14>>0] = $113;
-   $117 = ((($$02831)) + 14|0);
-   $118 = HEAP8[$112>>0]|0;
-   $119 = HEAP8[$24>>0]|0;
-   $120 = $119 ^ $118;
-   $121 = ((($$02930)) + 14|0);
-   HEAP8[$116>>0] = $120;
-   HEAP8[$24>>0] = $118;
-   $122 = ((($$02831)) + 15|0);
-   $123 = HEAP8[$117>>0]|0;
-   $124 = HEAP8[$25>>0]|0;
-   $125 = $124 ^ $123;
-   $126 = ((($$02930)) + 15|0);
-   HEAP8[$121>>0] = $125;
-   HEAP8[$25>>0] = $123;
-   $127 = HEAP8[$122>>0]|0;
-   $128 = HEAP8[$26>>0]|0;
-   $129 = $128 ^ $127;
-   HEAP8[$126>>0] = $129;
-   HEAP8[$26>>0] = $127;
-  }
-  $130 = ((($$02930)) + 16|0);
-  $131 = ((($$02831)) + 16|0);
-  $132 = (($$032) + -1)|0;
-  $133 = ($132|0)==(0);
-  if ($133) {
-   break;
-  } else {
-   $$02831 = $131;$$02930 = $130;$$032 = $132;
-  }
- }
- $134 = ($27|0)==(0);
- if ($134) {
-  return;
- }
- $135 = (($27) + 16)|0;
- ___gcry_burn_stack($135);
- return;
-}
-function _do_encrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa$i = 0, $$01$i = 0, $$sroa$045$0$lcssa$i = 0, $$sroa$045$05$i = 
0, $$sroa$116$0$lcssa$i = 0, $$sroa$116$02$i = 0, $$sroa$48$0$lcssa$i = 0, 
$$sroa$48$04$i = 0, $$sroa$86$0$lcssa$i = 0, $$sroa$86$03$i = 0, $10 = 0, $100 
= 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 
= 0;
- var $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 
= 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0;
- var $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0;
- var $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 
= 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0;
- var $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 
= 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0;
- var $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, 
$188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, 
$195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0;
- var $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 
= 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0;
- var $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 
= 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0;
- var $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0;
- var $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 
= 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0;
- var $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, 
$279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, 
$286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0;
- var $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, 
$297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, 
$303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0;
- var $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 
= 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 
= 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0;
- var $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 
= 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 
= 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0;
- var $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 
= 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 
= 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0;
- var $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, 
$369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, 
$376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0;
- var $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, 
$387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, 
$394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0;
- var $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 
0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 
0, $412 = 0, $413 = 0, $414 = 0, $415 = 0;
- var $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 
= 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 
= 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0;
- var $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 
= 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 
= 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0;
- var $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, 
$459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, 
$466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0;
- var $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, 
$477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, 
$484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0;
- var $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 
= 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 
0, $502 = 0, $503 = 0, $504 = 0, $505 = 0;
- var $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 
= 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 
= 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0;
- var $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 
= 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 
= 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0;
- var $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, 
$549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, 
$556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0;
- var $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, 
$567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, 
$574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0;
- var $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 
= 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 
= 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0;
- var $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 480|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($2)) + 3|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6&255;
- $8 = $7 << 24;
- $9 = ((($2)) + 2|0);
- $10 = HEAP8[$9>>0]|0;
- $11 = $10&255;
- $12 = $11 << 16;
- $13 = $12 | $8;
- $14 = ((($2)) + 1|0);
- $15 = HEAP8[$14>>0]|0;
- $16 = $15&255;
- $17 = $16 << 8;
- $18 = $13 | $17;
- $19 = HEAP8[$2>>0]|0;
- $20 = $19&255;
- $21 = $18 | $20;
- $22 = ((($2)) + 4|0);
- $23 = ((($2)) + 7|0);
- $24 = HEAP8[$23>>0]|0;
- $25 = $24&255;
- $26 = $25 << 24;
- $27 = ((($2)) + 6|0);
- $28 = HEAP8[$27>>0]|0;
- $29 = $28&255;
- $30 = $29 << 16;
- $31 = $30 | $26;
- $32 = ((($2)) + 5|0);
- $33 = HEAP8[$32>>0]|0;
- $34 = $33&255;
- $35 = $34 << 8;
- $36 = $31 | $35;
- $37 = HEAP8[$22>>0]|0;
- $38 = $37&255;
- $39 = $36 | $38;
- $40 = ((($2)) + 8|0);
- $41 = ((($2)) + 11|0);
- $42 = HEAP8[$41>>0]|0;
- $43 = $42&255;
- $44 = $43 << 24;
- $45 = ((($2)) + 10|0);
- $46 = HEAP8[$45>>0]|0;
- $47 = $46&255;
- $48 = $47 << 16;
- $49 = $48 | $44;
- $50 = ((($2)) + 9|0);
- $51 = HEAP8[$50>>0]|0;
- $52 = $51&255;
- $53 = $52 << 8;
- $54 = $49 | $53;
- $55 = HEAP8[$40>>0]|0;
- $56 = $55&255;
- $57 = $54 | $56;
- $58 = ((($2)) + 12|0);
- $59 = ((($2)) + 15|0);
- $60 = HEAP8[$59>>0]|0;
- $61 = $60&255;
- $62 = $61 << 24;
- $63 = ((($2)) + 14|0);
- $64 = HEAP8[$63>>0]|0;
- $65 = $64&255;
- $66 = $65 << 16;
- $67 = $66 | $62;
- $68 = ((($2)) + 13|0);
- $69 = HEAP8[$68>>0]|0;
- $70 = $69&255;
- $71 = $70 << 8;
- $72 = $67 | $71;
- $73 = HEAP8[$58>>0]|0;
- $74 = $73&255;
- $75 = $72 | $74;
- $76 = HEAP32[$0>>2]|0;
- $77 = $76 ^ $21;
- $78 = ((($0)) + 4|0);
- $79 = HEAP32[$78>>2]|0;
- $80 = $79 ^ $39;
- $81 = ((($0)) + 8|0);
- $82 = HEAP32[$81>>2]|0;
- $83 = $82 ^ $57;
- $84 = ((($0)) + 12|0);
- $85 = HEAP32[$84>>2]|0;
- $86 = $85 ^ $75;
- $87 = $77 & 255;
- $88 = (5216 + ($87<<2)|0);
- $89 = HEAP32[$88>>2]|0;
- $90 = $77 >>> 8;
- $91 = $90 & 255;
- $92 = (5216 + ($91<<2)|0);
- $93 = HEAP32[$92>>2]|0;
- $94 = $93 << 8;
- $95 = $93 >>> 24;
- $96 = $94 | $95;
- $97 = $77 >>> 16;
- $98 = $97 & 255;
- $99 = (5216 + ($98<<2)|0);
- $100 = HEAP32[$99>>2]|0;
- $101 = $100 << 16;
- $102 = $100 >>> 16;
- $103 = $101 | $102;
- $104 = $77 >>> 24;
- $105 = (5216 + ($104<<2)|0);
- $106 = HEAP32[$105>>2]|0;
- $107 = $106 << 24;
- $108 = $106 >>> 8;
- $109 = $107 | $108;
- $110 = ((($0)) + 16|0);
- $111 = HEAP32[$110>>2]|0;
- $112 = $111 ^ $89;
- $113 = $80 & 255;
- $114 = (5216 + ($113<<2)|0);
- $115 = HEAP32[$114>>2]|0;
- $116 = $109 ^ $115;
- $117 = $80 >>> 8;
- $118 = $117 & 255;
- $119 = (5216 + ($118<<2)|0);
- $120 = HEAP32[$119>>2]|0;
- $121 = $120 << 8;
- $122 = $120 >>> 24;
- $123 = $121 | $122;
- $124 = $112 ^ $123;
- $125 = $80 >>> 16;
- $126 = $125 & 255;
- $127 = (5216 + ($126<<2)|0);
- $128 = HEAP32[$127>>2]|0;
- $129 = $128 << 16;
- $130 = $128 >>> 16;
- $131 = $129 | $130;
- $132 = $131 ^ $96;
- $133 = $80 >>> 24;
- $134 = (5216 + ($133<<2)|0);
- $135 = HEAP32[$134>>2]|0;
- $136 = $135 << 24;
- $137 = $135 >>> 8;
- $138 = $136 | $137;
- $139 = $138 ^ $103;
- $140 = ((($0)) + 20|0);
- $141 = HEAP32[$140>>2]|0;
- $142 = $116 ^ $141;
- $143 = $83 & 255;
- $144 = (5216 + ($143<<2)|0);
- $145 = HEAP32[$144>>2]|0;
- $146 = $139 ^ $145;
- $147 = $83 >>> 8;
- $148 = $147 & 255;
- $149 = (5216 + ($148<<2)|0);
- $150 = HEAP32[$149>>2]|0;
- $151 = $150 << 8;
- $152 = $150 >>> 24;
- $153 = $151 | $152;
- $154 = $142 ^ $153;
- $155 = $83 >>> 16;
- $156 = $155 & 255;
- $157 = (5216 + ($156<<2)|0);
- $158 = HEAP32[$157>>2]|0;
- $159 = $158 << 16;
- $160 = $158 >>> 16;
- $161 = $159 | $160;
- $162 = $124 ^ $161;
- $163 = $83 >>> 24;
- $164 = (5216 + ($163<<2)|0);
- $165 = HEAP32[$164>>2]|0;
- $166 = $165 << 24;
- $167 = $165 >>> 8;
- $168 = $166 | $167;
- $169 = $132 ^ $168;
- $170 = ((($0)) + 24|0);
- $171 = HEAP32[$170>>2]|0;
- $172 = $146 ^ $171;
- $173 = $86 & 255;
- $174 = (5216 + ($173<<2)|0);
- $175 = HEAP32[$174>>2]|0;
- $176 = $169 ^ $175;
- $177 = $86 >>> 8;
- $178 = $177 & 255;
- $179 = (5216 + ($178<<2)|0);
- $180 = HEAP32[$179>>2]|0;
- $181 = $180 << 8;
- $182 = $180 >>> 24;
- $183 = $181 | $182;
- $184 = $172 ^ $183;
- $185 = $86 >>> 16;
- $186 = $185 & 255;
- $187 = (5216 + ($186<<2)|0);
- $188 = HEAP32[$187>>2]|0;
- $189 = $188 << 16;
- $190 = $188 >>> 16;
- $191 = $189 | $190;
- $192 = $154 ^ $191;
- $193 = $86 >>> 24;
- $194 = (5216 + ($193<<2)|0);
- $195 = HEAP32[$194>>2]|0;
- $196 = $195 << 24;
- $197 = $195 >>> 8;
- $198 = $196 | $197;
- $199 = $162 ^ $198;
- $200 = ((($0)) + 28|0);
- $201 = HEAP32[$200>>2]|0;
- $202 = $176 ^ $201;
- $203 = ($4|0)>(2);
- if ($203) {
-  $$01$i = 2;$$sroa$045$05$i = $199;$$sroa$116$02$i = $202;$$sroa$48$04$i = 
$192;$$sroa$86$03$i = $184;
-  while(1) {
-   $204 = $$sroa$045$05$i & 255;
-   $205 = (5216 + ($204<<2)|0);
-   $206 = HEAP32[$205>>2]|0;
-   $207 = $$sroa$045$05$i >>> 8;
-   $208 = $207 & 255;
-   $209 = (5216 + ($208<<2)|0);
-   $210 = HEAP32[$209>>2]|0;
-   $211 = $210 << 8;
-   $212 = $210 >>> 24;
-   $213 = $211 | $212;
-   $214 = $$sroa$045$05$i >>> 16;
-   $215 = $214 & 255;
-   $216 = (5216 + ($215<<2)|0);
-   $217 = HEAP32[$216>>2]|0;
-   $218 = $217 << 16;
-   $219 = $217 >>> 16;
-   $220 = $218 | $219;
-   $221 = $$sroa$045$05$i >>> 24;
-   $222 = (5216 + ($221<<2)|0);
-   $223 = HEAP32[$222>>2]|0;
-   $224 = $223 << 24;
-   $225 = $223 >>> 8;
-   $226 = $224 | $225;
-   $227 = (($0) + ($$01$i<<4)|0);
-   $228 = HEAP32[$227>>2]|0;
-   $229 = $228 ^ $206;
-   $230 = $$sroa$48$04$i & 255;
-   $231 = (5216 + ($230<<2)|0);
-   $232 = HEAP32[$231>>2]|0;
-   $233 = $226 ^ $232;
-   $234 = $$sroa$48$04$i >>> 8;
-   $235 = $234 & 255;
-   $236 = (5216 + ($235<<2)|0);
-   $237 = HEAP32[$236>>2]|0;
-   $238 = $237 << 8;
-   $239 = $237 >>> 24;
-   $240 = $238 | $239;
-   $241 = $229 ^ $240;
-   $242 = $$sroa$48$04$i >>> 16;
-   $243 = $242 & 255;
-   $244 = (5216 + ($243<<2)|0);
-   $245 = HEAP32[$244>>2]|0;
-   $246 = $245 << 16;
-   $247 = $245 >>> 16;
-   $248 = $246 | $247;
-   $249 = $248 ^ $213;
-   $250 = $$sroa$48$04$i >>> 24;
-   $251 = (5216 + ($250<<2)|0);
-   $252 = HEAP32[$251>>2]|0;
-   $253 = $252 << 24;
-   $254 = $252 >>> 8;
-   $255 = $253 | $254;
-   $256 = $255 ^ $220;
-   $257 = (((($0) + ($$01$i<<4)|0)) + 4|0);
-   $258 = HEAP32[$257>>2]|0;
-   $259 = $233 ^ $258;
-   $260 = $$sroa$86$03$i & 255;
-   $261 = (5216 + ($260<<2)|0);
-   $262 = HEAP32[$261>>2]|0;
-   $263 = $256 ^ $262;
-   $264 = $$sroa$86$03$i >>> 8;
-   $265 = $264 & 255;
-   $266 = (5216 + ($265<<2)|0);
-   $267 = HEAP32[$266>>2]|0;
-   $268 = $267 << 8;
-   $269 = $267 >>> 24;
-   $270 = $268 | $269;
-   $271 = $259 ^ $270;
-   $272 = $$sroa$86$03$i >>> 16;
-   $273 = $272 & 255;
-   $274 = (5216 + ($273<<2)|0);
-   $275 = HEAP32[$274>>2]|0;
-   $276 = $275 << 16;
-   $277 = $275 >>> 16;
-   $278 = $276 | $277;
-   $279 = $241 ^ $278;
-   $280 = $$sroa$86$03$i >>> 24;
-   $281 = (5216 + ($280<<2)|0);
-   $282 = HEAP32[$281>>2]|0;
-   $283 = $282 << 24;
-   $284 = $282 >>> 8;
-   $285 = $283 | $284;
-   $286 = $249 ^ $285;
-   $287 = (((($0) + ($$01$i<<4)|0)) + 8|0);
-   $288 = HEAP32[$287>>2]|0;
-   $289 = $263 ^ $288;
-   $290 = $$sroa$116$02$i & 255;
-   $291 = (5216 + ($290<<2)|0);
-   $292 = HEAP32[$291>>2]|0;
-   $293 = $286 ^ $292;
-   $294 = $$sroa$116$02$i >>> 8;
-   $295 = $294 & 255;
-   $296 = (5216 + ($295<<2)|0);
-   $297 = HEAP32[$296>>2]|0;
-   $298 = $297 << 8;
-   $299 = $297 >>> 24;
-   $300 = $298 | $299;
-   $301 = $289 ^ $300;
-   $302 = $$sroa$116$02$i >>> 16;
-   $303 = $302 & 255;
-   $304 = (5216 + ($303<<2)|0);
-   $305 = HEAP32[$304>>2]|0;
-   $306 = $305 << 16;
-   $307 = $305 >>> 16;
-   $308 = $306 | $307;
-   $309 = $271 ^ $308;
-   $310 = $$sroa$116$02$i >>> 24;
-   $311 = (5216 + ($310<<2)|0);
-   $312 = HEAP32[$311>>2]|0;
-   $313 = $312 << 24;
-   $314 = $312 >>> 8;
-   $315 = $313 | $314;
-   $316 = $279 ^ $315;
-   $317 = (((($0) + ($$01$i<<4)|0)) + 12|0);
-   $318 = HEAP32[$317>>2]|0;
-   $319 = $293 ^ $318;
-   $320 = $$01$i | 1;
-   $321 = $316 & 255;
-   $322 = (5216 + ($321<<2)|0);
-   $323 = HEAP32[$322>>2]|0;
-   $324 = $316 >>> 8;
-   $325 = $324 & 255;
-   $326 = (5216 + ($325<<2)|0);
-   $327 = HEAP32[$326>>2]|0;
-   $328 = $327 << 8;
-   $329 = $327 >>> 24;
-   $330 = $328 | $329;
-   $331 = $316 >>> 16;
-   $332 = $331 & 255;
-   $333 = (5216 + ($332<<2)|0);
-   $334 = HEAP32[$333>>2]|0;
-   $335 = $334 << 16;
-   $336 = $334 >>> 16;
-   $337 = $335 | $336;
-   $338 = $316 >>> 24;
-   $339 = (5216 + ($338<<2)|0);
-   $340 = HEAP32[$339>>2]|0;
-   $341 = $340 << 24;
-   $342 = $340 >>> 8;
-   $343 = $341 | $342;
-   $344 = (($0) + ($320<<4)|0);
-   $345 = HEAP32[$344>>2]|0;
-   $346 = $345 ^ $323;
-   $347 = $309 & 255;
-   $348 = (5216 + ($347<<2)|0);
-   $349 = HEAP32[$348>>2]|0;
-   $350 = $343 ^ $349;
-   $351 = $309 >>> 8;
-   $352 = $351 & 255;
-   $353 = (5216 + ($352<<2)|0);
-   $354 = HEAP32[$353>>2]|0;
-   $355 = $354 << 8;
-   $356 = $354 >>> 24;
-   $357 = $355 | $356;
-   $358 = $346 ^ $357;
-   $359 = $309 >>> 16;
-   $360 = $359 & 255;
-   $361 = (5216 + ($360<<2)|0);
-   $362 = HEAP32[$361>>2]|0;
-   $363 = $362 << 16;
-   $364 = $362 >>> 16;
-   $365 = $363 | $364;
-   $366 = $365 ^ $330;
-   $367 = $309 >>> 24;
-   $368 = (5216 + ($367<<2)|0);
-   $369 = HEAP32[$368>>2]|0;
-   $370 = $369 << 24;
-   $371 = $369 >>> 8;
-   $372 = $370 | $371;
-   $373 = $372 ^ $337;
-   $374 = (((($0) + ($320<<4)|0)) + 4|0);
-   $375 = HEAP32[$374>>2]|0;
-   $376 = $350 ^ $375;
-   $377 = $301 & 255;
-   $378 = (5216 + ($377<<2)|0);
-   $379 = HEAP32[$378>>2]|0;
-   $380 = $373 ^ $379;
-   $381 = $301 >>> 8;
-   $382 = $381 & 255;
-   $383 = (5216 + ($382<<2)|0);
-   $384 = HEAP32[$383>>2]|0;
-   $385 = $384 << 8;
-   $386 = $384 >>> 24;
-   $387 = $385 | $386;
-   $388 = $376 ^ $387;
-   $389 = $301 >>> 16;
-   $390 = $389 & 255;
-   $391 = (5216 + ($390<<2)|0);
-   $392 = HEAP32[$391>>2]|0;
-   $393 = $392 << 16;
-   $394 = $392 >>> 16;
-   $395 = $393 | $394;
-   $396 = $358 ^ $395;
-   $397 = $301 >>> 24;
-   $398 = (5216 + ($397<<2)|0);
-   $399 = HEAP32[$398>>2]|0;
-   $400 = $399 << 24;
-   $401 = $399 >>> 8;
-   $402 = $400 | $401;
-   $403 = $366 ^ $402;
-   $404 = (((($0) + ($320<<4)|0)) + 8|0);
-   $405 = HEAP32[$404>>2]|0;
-   $406 = $380 ^ $405;
-   $407 = $319 & 255;
-   $408 = (5216 + ($407<<2)|0);
-   $409 = HEAP32[$408>>2]|0;
-   $410 = $403 ^ $409;
-   $411 = $319 >>> 8;
-   $412 = $411 & 255;
-   $413 = (5216 + ($412<<2)|0);
-   $414 = HEAP32[$413>>2]|0;
-   $415 = $414 << 8;
-   $416 = $414 >>> 24;
-   $417 = $415 | $416;
-   $418 = $406 ^ $417;
-   $419 = $319 >>> 16;
-   $420 = $419 & 255;
-   $421 = (5216 + ($420<<2)|0);
-   $422 = HEAP32[$421>>2]|0;
-   $423 = $422 << 16;
-   $424 = $422 >>> 16;
-   $425 = $423 | $424;
-   $426 = $388 ^ $425;
-   $427 = $319 >>> 24;
-   $428 = (5216 + ($427<<2)|0);
-   $429 = HEAP32[$428>>2]|0;
-   $430 = $429 << 24;
-   $431 = $429 >>> 8;
-   $432 = $430 | $431;
-   $433 = $396 ^ $432;
-   $434 = (((($0) + ($320<<4)|0)) + 12|0);
-   $435 = HEAP32[$434>>2]|0;
-   $436 = $410 ^ $435;
-   $437 = (($$01$i) + 2)|0;
-   $438 = ($437|0)<($4|0);
-   if ($438) {
-    $$01$i = $437;$$sroa$045$05$i = $433;$$sroa$116$02$i = $436;$$sroa$48$04$i 
= $426;$$sroa$86$03$i = $418;
-   } else {
-    break;
-   }
-  }
-  $439 = (($4) + 1)|0;
-  $440 = $439 & -2;
-  $$0$lcssa$i = $440;$$sroa$045$0$lcssa$i = $433;$$sroa$116$0$lcssa$i = 
$436;$$sroa$48$0$lcssa$i = $426;$$sroa$86$0$lcssa$i = $418;
- } else {
-  $$0$lcssa$i = 2;$$sroa$045$0$lcssa$i = $199;$$sroa$116$0$lcssa$i = 
$202;$$sroa$48$0$lcssa$i = $192;$$sroa$86$0$lcssa$i = $184;
- }
- $441 = $$sroa$045$0$lcssa$i << 2;
- $442 = $441 & 1020;
- $443 = ((5217) + ($442)|0);
- $444 = HEAP8[$443>>0]|0;
- $445 = $444&255;
- $446 = $$sroa$045$0$lcssa$i >>> 6;
- $447 = $446 & 1020;
- $448 = ((5217) + ($447)|0);
- $449 = HEAP8[$448>>0]|0;
- $450 = $449&255;
- $451 = $450 << 8;
- $452 = $$sroa$045$0$lcssa$i >>> 14;
- $453 = $452 & 1020;
- $454 = ((5217) + ($453)|0);
- $455 = HEAP8[$454>>0]|0;
- $456 = $455&255;
- $457 = $456 << 16;
- $458 = $$sroa$045$0$lcssa$i >>> 24;
- $459 = $458 << 2;
- $460 = ((5217) + ($459)|0);
- $461 = HEAP8[$460>>0]|0;
- $462 = $461&255;
- $463 = $462 << 24;
- $464 = (($0) + ($$0$lcssa$i<<4)|0);
- $465 = HEAP32[$464>>2]|0;
- $466 = $465 ^ $445;
- $467 = $$sroa$48$0$lcssa$i << 2;
- $468 = $467 & 1020;
- $469 = ((5217) + ($468)|0);
- $470 = HEAP8[$469>>0]|0;
- $471 = $470&255;
- $472 = $463 | $471;
- $473 = $$sroa$48$0$lcssa$i >>> 6;
- $474 = $473 & 1020;
- $475 = ((5217) + ($474)|0);
- $476 = HEAP8[$475>>0]|0;
- $477 = $476&255;
- $478 = $477 << 8;
- $479 = $478 ^ $465;
- $480 = $$sroa$48$0$lcssa$i >>> 14;
- $481 = $480 & 1020;
- $482 = ((5217) + ($481)|0);
- $483 = HEAP8[$482>>0]|0;
- $484 = $483&255;
- $485 = $484 << 16;
- $486 = $485 | $451;
- $487 = $$sroa$48$0$lcssa$i >>> 24;
- $488 = $487 << 2;
- $489 = ((5217) + ($488)|0);
- $490 = HEAP8[$489>>0]|0;
- $491 = $490&255;
- $492 = $491 << 24;
- $493 = $492 | $457;
- $494 = (((($0) + ($$0$lcssa$i<<4)|0)) + 4|0);
- $495 = HEAP32[$494>>2]|0;
- $496 = $495 ^ $472;
- $497 = $$sroa$86$0$lcssa$i << 2;
- $498 = $497 & 1020;
- $499 = ((5217) + ($498)|0);
- $500 = HEAP8[$499>>0]|0;
- $501 = $500&255;
- $502 = $493 | $501;
- $503 = $$sroa$86$0$lcssa$i >>> 6;
- $504 = $503 & 1020;
- $505 = ((5217) + ($504)|0);
- $506 = HEAP8[$505>>0]|0;
- $507 = $506&255;
- $508 = $507 << 8;
- $509 = $508 ^ $495;
- $510 = $$sroa$86$0$lcssa$i >>> 14;
- $511 = $510 & 1020;
- $512 = ((5217) + ($511)|0);
- $513 = HEAP8[$512>>0]|0;
- $514 = $513&255;
- $515 = $514 << 16;
- $516 = $515 ^ $465;
- $517 = $$sroa$86$0$lcssa$i >>> 24;
- $518 = $517 << 2;
- $519 = ((5217) + ($518)|0);
- $520 = HEAP8[$519>>0]|0;
- $521 = $520&255;
- $522 = $521 << 24;
- $523 = $486 | $522;
- $524 = (((($0) + ($$0$lcssa$i<<4)|0)) + 8|0);
- $525 = HEAP32[$524>>2]|0;
- $526 = $525 ^ $502;
- $527 = $$sroa$116$0$lcssa$i << 2;
- $528 = $527 & 1020;
- $529 = ((5217) + ($528)|0);
- $530 = HEAP8[$529>>0]|0;
- $531 = $530&255;
- $532 = $523 | $531;
- $533 = $$sroa$116$0$lcssa$i >>> 6;
- $534 = $533 & 1020;
- $535 = ((5217) + ($534)|0);
- $536 = HEAP8[$535>>0]|0;
- $537 = $536&255;
- $538 = $537 << 8;
- $539 = $538 ^ $526;
- $540 = $$sroa$116$0$lcssa$i >>> 14;
- $541 = $540 & 1020;
- $542 = ((5217) + ($541)|0);
- $543 = HEAP8[$542>>0]|0;
- $544 = $543&255;
- $545 = $544 << 16;
- $546 = $545 ^ $495;
- $547 = $$sroa$116$0$lcssa$i >>> 24;
- $548 = $547 << 2;
- $549 = ((5217) + ($548)|0);
- $550 = HEAP8[$549>>0]|0;
- $551 = $550&255;
- $552 = $551 << 24;
- $553 = $552 ^ $465;
- $554 = (((($0) + ($$0$lcssa$i<<4)|0)) + 12|0);
- $555 = HEAP32[$554>>2]|0;
- $556 = $555 ^ $532;
- $557 = $553 >>> 24;
- $558 = $557&255;
- $559 = ((($1)) + 3|0);
- HEAP8[$559>>0] = $558;
- $560 = $516 >>> 16;
- $561 = $560&255;
- $562 = ((($1)) + 2|0);
- HEAP8[$562>>0] = $561;
- $563 = $479 >>> 8;
- $564 = $563&255;
- $565 = ((($1)) + 1|0);
- HEAP8[$565>>0] = $564;
- $566 = $466&255;
- HEAP8[$1>>0] = $566;
- $567 = ((($1)) + 4|0);
- $568 = $496 >>> 24;
- $569 = $568&255;
- $570 = ((($1)) + 7|0);
- HEAP8[$570>>0] = $569;
- $571 = $546 >>> 16;
- $572 = $571&255;
- $573 = ((($1)) + 6|0);
- HEAP8[$573>>0] = $572;
- $574 = $509 >>> 8;
- $575 = $574&255;
- $576 = ((($1)) + 5|0);
- HEAP8[$576>>0] = $575;
- $577 = $496&255;
- HEAP8[$567>>0] = $577;
- $578 = ((($1)) + 8|0);
- $579 = $526 >>> 24;
- $580 = $579&255;
- $581 = ((($1)) + 11|0);
- HEAP8[$581>>0] = $580;
- $582 = $526 >>> 16;
- $583 = $582&255;
- $584 = ((($1)) + 10|0);
- HEAP8[$584>>0] = $583;
- $585 = $539 >>> 8;
- $586 = $585&255;
- $587 = ((($1)) + 9|0);
- HEAP8[$587>>0] = $586;
- $588 = $526&255;
- HEAP8[$578>>0] = $588;
- $589 = ((($1)) + 12|0);
- $590 = $556 >>> 24;
- $591 = $590&255;
- $592 = ((($1)) + 15|0);
- HEAP8[$592>>0] = $591;
- $593 = $556 >>> 16;
- $594 = $593&255;
- $595 = ((($1)) + 14|0);
- HEAP8[$595>>0] = $594;
- $596 = $556 >>> 8;
- $597 = $596&255;
- $598 = ((($1)) + 13|0);
- HEAP8[$598>>0] = $597;
- $599 = $556&255;
- HEAP8[$589>>0] = $599;
- return 64;
-}
-function _do_decrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$i = 0, $$0$in$i = 0, $$sink = 0, $$sink15 = 0, $$sroa$045$0$i = 0, 
$$sroa$44$0$i = 0, $$sroa$82$0$i = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, 
$103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, 
$110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0;
- var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 
= 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0;
- var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0;
- var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 
= 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 
= 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0;
- var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 
= 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0;
- var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 
= 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 
= 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0;
- var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 
= 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 
= 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0;
- var $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, 
$317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, 
$324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0;
- var $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 
= 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 
= 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0;
- var $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 
= 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 
= 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0;
- var $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 
= 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 
= 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0;
- var $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 
= 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 
= 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0;
- var $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, 
$407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, 
$414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0;
- var $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 
= 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 
= 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0;
- var $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 
= 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 
= 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0;
- var $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 
= 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 
= 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0;
- var $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 
= 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 
= 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0;
- var $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, 
$498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, 
$504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0;
- var $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 
= 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 
= 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0;
- var $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 
= 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 
= 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0;
- var $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 
= 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 
= 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0;
- var $563 = 0, $564 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 480|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($2)) + 3|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6&255;
- $8 = $7 << 24;
- $9 = ((($2)) + 2|0);
- $10 = HEAP8[$9>>0]|0;
- $11 = $10&255;
- $12 = $11 << 16;
- $13 = $12 | $8;
- $14 = ((($2)) + 1|0);
- $15 = HEAP8[$14>>0]|0;
- $16 = $15&255;
- $17 = $16 << 8;
- $18 = $13 | $17;
- $19 = HEAP8[$2>>0]|0;
- $20 = $19&255;
- $21 = $18 | $20;
- $22 = ((($2)) + 4|0);
- $23 = ((($2)) + 7|0);
- $24 = HEAP8[$23>>0]|0;
- $25 = $24&255;
- $26 = $25 << 24;
- $27 = ((($2)) + 6|0);
- $28 = HEAP8[$27>>0]|0;
- $29 = $28&255;
- $30 = $29 << 16;
- $31 = $30 | $26;
- $32 = ((($2)) + 5|0);
- $33 = HEAP8[$32>>0]|0;
- $34 = $33&255;
- $35 = $34 << 8;
- $36 = $31 | $35;
- $37 = HEAP8[$22>>0]|0;
- $38 = $37&255;
- $39 = $36 | $38;
- $40 = ((($2)) + 8|0);
- $41 = ((($2)) + 11|0);
- $42 = HEAP8[$41>>0]|0;
- $43 = $42&255;
- $44 = $43 << 24;
- $45 = ((($2)) + 10|0);
- $46 = HEAP8[$45>>0]|0;
- $47 = $46&255;
- $48 = $47 << 16;
- $49 = $48 | $44;
- $50 = ((($2)) + 9|0);
- $51 = HEAP8[$50>>0]|0;
- $52 = $51&255;
- $53 = $52 << 8;
- $54 = $49 | $53;
- $55 = HEAP8[$40>>0]|0;
- $56 = $55&255;
- $57 = $54 | $56;
- $58 = ((($2)) + 12|0);
- $59 = ((($2)) + 15|0);
- $60 = HEAP8[$59>>0]|0;
- $61 = $60&255;
- $62 = $61 << 24;
- $63 = ((($2)) + 14|0);
- $64 = HEAP8[$63>>0]|0;
- $65 = $64&255;
- $66 = $65 << 16;
- $67 = $66 | $62;
- $68 = ((($2)) + 13|0);
- $69 = HEAP8[$68>>0]|0;
- $70 = $69&255;
- $71 = $70 << 8;
- $72 = $67 | $71;
- $73 = HEAP8[$58>>0]|0;
- $74 = $73&255;
- $75 = $72 | $74;
- $76 = ((($0)) + 240|0);
- $77 = (($76) + ($4<<4)|0);
- $78 = HEAP32[$77>>2]|0;
- $79 = $78 ^ $21;
- $80 = (((($76) + ($4<<4)|0)) + 4|0);
- $81 = HEAP32[$80>>2]|0;
- $82 = $81 ^ $39;
- $83 = (((($76) + ($4<<4)|0)) + 8|0);
- $84 = HEAP32[$83>>2]|0;
- $85 = $84 ^ $57;
- $86 = (((($76) + ($4<<4)|0)) + 12|0);
- $87 = HEAP32[$86>>2]|0;
- $$0$in$i = $4;$$sink = $87;$$sink15 = $75;$$sroa$045$0$i = $79;$$sroa$44$0$i 
= $82;$$sroa$82$0$i = $85;
- while(1) {
-  $88 = $$sink ^ $$sink15;
-  $$0$i = (($$0$in$i) + -1)|0;
-  $89 = ($$0$in$i|0)>(2);
-  $90 = $$sroa$045$0$i & 255;
-  $91 = (38052 + ($90<<2)|0);
-  $92 = HEAP32[$91>>2]|0;
-  $93 = $$sroa$045$0$i >>> 8;
-  $94 = $93 & 255;
-  $95 = (38052 + ($94<<2)|0);
-  $96 = HEAP32[$95>>2]|0;
-  $97 = $96 << 8;
-  $98 = $96 >>> 24;
-  $99 = $97 | $98;
-  $100 = $$sroa$045$0$i >>> 16;
-  $101 = $100 & 255;
-  $102 = (38052 + ($101<<2)|0);
-  $103 = HEAP32[$102>>2]|0;
-  $104 = $103 << 16;
-  $105 = $103 >>> 16;
-  $106 = $104 | $105;
-  $107 = $$sroa$045$0$i >>> 24;
-  $108 = (38052 + ($107<<2)|0);
-  $109 = HEAP32[$108>>2]|0;
-  $110 = $109 << 24;
-  $111 = $109 >>> 8;
-  $112 = $110 | $111;
-  if (!($89)) {
-   break;
-  }
-  $113 = (($76) + ($$0$i<<4)|0);
-  $114 = HEAP32[$113>>2]|0;
-  $115 = $114 ^ $92;
-  $116 = $$sroa$44$0$i & 255;
-  $117 = (38052 + ($116<<2)|0);
-  $118 = HEAP32[$117>>2]|0;
-  $119 = $118 ^ $99;
-  $120 = $$sroa$44$0$i >>> 8;
-  $121 = $120 & 255;
-  $122 = (38052 + ($121<<2)|0);
-  $123 = HEAP32[$122>>2]|0;
-  $124 = $123 << 8;
-  $125 = $123 >>> 24;
-  $126 = $124 | $125;
-  $127 = $126 ^ $106;
-  $128 = $$sroa$44$0$i >>> 16;
-  $129 = $128 & 255;
-  $130 = (38052 + ($129<<2)|0);
-  $131 = HEAP32[$130>>2]|0;
-  $132 = $131 << 16;
-  $133 = $131 >>> 16;
-  $134 = $132 | $133;
-  $135 = $134 ^ $112;
-  $136 = $$sroa$44$0$i >>> 24;
-  $137 = (38052 + ($136<<2)|0);
-  $138 = HEAP32[$137>>2]|0;
-  $139 = $138 << 24;
-  $140 = $138 >>> 8;
-  $141 = $139 | $140;
-  $142 = $115 ^ $141;
-  $143 = (((($76) + ($$0$i<<4)|0)) + 4|0);
-  $144 = HEAP32[$143>>2]|0;
-  $145 = $119 ^ $144;
-  $146 = $$sroa$82$0$i & 255;
-  $147 = (38052 + ($146<<2)|0);
-  $148 = HEAP32[$147>>2]|0;
-  $149 = $127 ^ $148;
-  $150 = $$sroa$82$0$i >>> 8;
-  $151 = $150 & 255;
-  $152 = (38052 + ($151<<2)|0);
-  $153 = HEAP32[$152>>2]|0;
-  $154 = $153 << 8;
-  $155 = $153 >>> 24;
-  $156 = $154 | $155;
-  $157 = $135 ^ $156;
-  $158 = $$sroa$82$0$i >>> 16;
-  $159 = $158 & 255;
-  $160 = (38052 + ($159<<2)|0);
-  $161 = HEAP32[$160>>2]|0;
-  $162 = $161 << 16;
-  $163 = $161 >>> 16;
-  $164 = $162 | $163;
-  $165 = $142 ^ $164;
-  $166 = $$sroa$82$0$i >>> 24;
-  $167 = (38052 + ($166<<2)|0);
-  $168 = HEAP32[$167>>2]|0;
-  $169 = $168 << 24;
-  $170 = $168 >>> 8;
-  $171 = $169 | $170;
-  $172 = $145 ^ $171;
-  $173 = (((($76) + ($$0$i<<4)|0)) + 8|0);
-  $174 = HEAP32[$173>>2]|0;
-  $175 = $149 ^ $174;
-  $176 = $88 & 255;
-  $177 = (38052 + ($176<<2)|0);
-  $178 = HEAP32[$177>>2]|0;
-  $179 = $157 ^ $178;
-  $180 = $88 >>> 8;
-  $181 = $180 & 255;
-  $182 = (38052 + ($181<<2)|0);
-  $183 = HEAP32[$182>>2]|0;
-  $184 = $183 << 8;
-  $185 = $183 >>> 24;
-  $186 = $184 | $185;
-  $187 = $165 ^ $186;
-  $188 = $88 >>> 16;
-  $189 = $188 & 255;
-  $190 = (38052 + ($189<<2)|0);
-  $191 = HEAP32[$190>>2]|0;
-  $192 = $191 << 16;
-  $193 = $191 >>> 16;
-  $194 = $192 | $193;
-  $195 = $172 ^ $194;
-  $196 = $88 >>> 24;
-  $197 = (38052 + ($196<<2)|0);
-  $198 = HEAP32[$197>>2]|0;
-  $199 = $198 << 24;
-  $200 = $198 >>> 8;
-  $201 = $199 | $200;
-  $202 = $175 ^ $201;
-  $203 = (((($76) + ($$0$i<<4)|0)) + 12|0);
-  $204 = HEAP32[$203>>2]|0;
-  $205 = $179 ^ $204;
-  $206 = (($$0$in$i) + -2)|0;
-  $207 = $187 & 255;
-  $208 = (38052 + ($207<<2)|0);
-  $209 = HEAP32[$208>>2]|0;
-  $210 = $187 >>> 8;
-  $211 = $210 & 255;
-  $212 = (38052 + ($211<<2)|0);
-  $213 = HEAP32[$212>>2]|0;
-  $214 = $213 << 8;
-  $215 = $213 >>> 24;
-  $216 = $214 | $215;
-  $217 = $187 >>> 16;
-  $218 = $217 & 255;
-  $219 = (38052 + ($218<<2)|0);
-  $220 = HEAP32[$219>>2]|0;
-  $221 = $220 << 16;
-  $222 = $220 >>> 16;
-  $223 = $221 | $222;
-  $224 = $187 >>> 24;
-  $225 = (38052 + ($224<<2)|0);
-  $226 = HEAP32[$225>>2]|0;
-  $227 = $226 << 24;
-  $228 = $226 >>> 8;
-  $229 = $227 | $228;
-  $230 = (($76) + ($206<<4)|0);
-  $231 = HEAP32[$230>>2]|0;
-  $232 = $231 ^ $209;
-  $233 = $195 & 255;
-  $234 = (38052 + ($233<<2)|0);
-  $235 = HEAP32[$234>>2]|0;
-  $236 = $235 ^ $216;
-  $237 = $195 >>> 8;
-  $238 = $237 & 255;
-  $239 = (38052 + ($238<<2)|0);
-  $240 = HEAP32[$239>>2]|0;
-  $241 = $240 << 8;
-  $242 = $240 >>> 24;
-  $243 = $241 | $242;
-  $244 = $243 ^ $223;
-  $245 = $195 >>> 16;
-  $246 = $245 & 255;
-  $247 = (38052 + ($246<<2)|0);
-  $248 = HEAP32[$247>>2]|0;
-  $249 = $248 << 16;
-  $250 = $248 >>> 16;
-  $251 = $249 | $250;
-  $252 = $251 ^ $229;
-  $253 = $195 >>> 24;
-  $254 = (38052 + ($253<<2)|0);
-  $255 = HEAP32[$254>>2]|0;
-  $256 = $255 << 24;
-  $257 = $255 >>> 8;
-  $258 = $256 | $257;
-  $259 = $232 ^ $258;
-  $260 = (((($76) + ($206<<4)|0)) + 4|0);
-  $261 = HEAP32[$260>>2]|0;
-  $262 = $236 ^ $261;
-  $263 = $202 & 255;
-  $264 = (38052 + ($263<<2)|0);
-  $265 = HEAP32[$264>>2]|0;
-  $266 = $244 ^ $265;
-  $267 = $202 >>> 8;
-  $268 = $267 & 255;
-  $269 = (38052 + ($268<<2)|0);
-  $270 = HEAP32[$269>>2]|0;
-  $271 = $270 << 8;
-  $272 = $270 >>> 24;
-  $273 = $271 | $272;
-  $274 = $252 ^ $273;
-  $275 = $202 >>> 16;
-  $276 = $275 & 255;
-  $277 = (38052 + ($276<<2)|0);
-  $278 = HEAP32[$277>>2]|0;
-  $279 = $278 << 16;
-  $280 = $278 >>> 16;
-  $281 = $279 | $280;
-  $282 = $259 ^ $281;
-  $283 = $202 >>> 24;
-  $284 = (38052 + ($283<<2)|0);
-  $285 = HEAP32[$284>>2]|0;
-  $286 = $285 << 24;
-  $287 = $285 >>> 8;
-  $288 = $286 | $287;
-  $289 = $262 ^ $288;
-  $290 = (((($76) + ($206<<4)|0)) + 8|0);
-  $291 = HEAP32[$290>>2]|0;
-  $292 = $266 ^ $291;
-  $293 = $205 & 255;
-  $294 = (38052 + ($293<<2)|0);
-  $295 = HEAP32[$294>>2]|0;
-  $296 = $274 ^ $295;
-  $297 = $205 >>> 8;
-  $298 = $297 & 255;
-  $299 = (38052 + ($298<<2)|0);
-  $300 = HEAP32[$299>>2]|0;
-  $301 = $300 << 8;
-  $302 = $300 >>> 24;
-  $303 = $301 | $302;
-  $304 = $282 ^ $303;
-  $305 = $205 >>> 16;
-  $306 = $305 & 255;
-  $307 = (38052 + ($306<<2)|0);
-  $308 = HEAP32[$307>>2]|0;
-  $309 = $308 << 16;
-  $310 = $308 >>> 16;
-  $311 = $309 | $310;
-  $312 = $289 ^ $311;
-  $313 = $205 >>> 24;
-  $314 = (38052 + ($313<<2)|0);
-  $315 = HEAP32[$314>>2]|0;
-  $316 = $315 << 24;
-  $317 = $315 >>> 8;
-  $318 = $316 | $317;
-  $319 = $292 ^ $318;
-  $320 = (((($76) + ($206<<4)|0)) + 12|0);
-  $321 = HEAP32[$320>>2]|0;
-  $$0$in$i = $206;$$sink = $296;$$sink15 = $321;$$sroa$045$0$i = 
$304;$$sroa$44$0$i = $312;$$sroa$82$0$i = $319;
- }
- $322 = ((($0)) + 256|0);
- $323 = HEAP32[$322>>2]|0;
- $324 = $323 ^ $92;
- $325 = $$sroa$44$0$i & 255;
- $326 = (38052 + ($325<<2)|0);
- $327 = HEAP32[$326>>2]|0;
- $328 = $327 ^ $99;
- $329 = $$sroa$44$0$i >>> 8;
- $330 = $329 & 255;
- $331 = (38052 + ($330<<2)|0);
- $332 = HEAP32[$331>>2]|0;
- $333 = $332 << 8;
- $334 = $332 >>> 24;
- $335 = $333 | $334;
- $336 = $335 ^ $106;
- $337 = $$sroa$44$0$i >>> 16;
- $338 = $337 & 255;
- $339 = (38052 + ($338<<2)|0);
- $340 = HEAP32[$339>>2]|0;
- $341 = $340 << 16;
- $342 = $340 >>> 16;
- $343 = $341 | $342;
- $344 = $343 ^ $112;
- $345 = $$sroa$44$0$i >>> 24;
- $346 = (38052 + ($345<<2)|0);
- $347 = HEAP32[$346>>2]|0;
- $348 = $347 << 24;
- $349 = $347 >>> 8;
- $350 = $348 | $349;
- $351 = $324 ^ $350;
- $352 = ((($0)) + 260|0);
- $353 = HEAP32[$352>>2]|0;
- $354 = $328 ^ $353;
- $355 = $$sroa$82$0$i & 255;
- $356 = (38052 + ($355<<2)|0);
- $357 = HEAP32[$356>>2]|0;
- $358 = $336 ^ $357;
- $359 = $$sroa$82$0$i >>> 8;
- $360 = $359 & 255;
- $361 = (38052 + ($360<<2)|0);
- $362 = HEAP32[$361>>2]|0;
- $363 = $362 << 8;
- $364 = $362 >>> 24;
- $365 = $363 | $364;
- $366 = $344 ^ $365;
- $367 = $$sroa$82$0$i >>> 16;
- $368 = $367 & 255;
- $369 = (38052 + ($368<<2)|0);
- $370 = HEAP32[$369>>2]|0;
- $371 = $370 << 16;
- $372 = $370 >>> 16;
- $373 = $371 | $372;
- $374 = $351 ^ $373;
- $375 = $$sroa$82$0$i >>> 24;
- $376 = (38052 + ($375<<2)|0);
- $377 = HEAP32[$376>>2]|0;
- $378 = $377 << 24;
- $379 = $377 >>> 8;
- $380 = $378 | $379;
- $381 = $354 ^ $380;
- $382 = ((($0)) + 264|0);
- $383 = HEAP32[$382>>2]|0;
- $384 = $358 ^ $383;
- $385 = $88 & 255;
- $386 = (38052 + ($385<<2)|0);
- $387 = HEAP32[$386>>2]|0;
- $388 = $366 ^ $387;
- $389 = $88 >>> 8;
- $390 = $389 & 255;
- $391 = (38052 + ($390<<2)|0);
- $392 = HEAP32[$391>>2]|0;
- $393 = $392 << 8;
- $394 = $392 >>> 24;
- $395 = $393 | $394;
- $396 = $374 ^ $395;
- $397 = $88 >>> 16;
- $398 = $397 & 255;
- $399 = (38052 + ($398<<2)|0);
- $400 = HEAP32[$399>>2]|0;
- $401 = $400 << 16;
- $402 = $400 >>> 16;
- $403 = $401 | $402;
- $404 = $381 ^ $403;
- $405 = $88 >>> 24;
- $406 = (38052 + ($405<<2)|0);
- $407 = HEAP32[$406>>2]|0;
- $408 = $407 << 24;
- $409 = $407 >>> 8;
- $410 = $408 | $409;
- $411 = $384 ^ $410;
- $412 = ((($0)) + 268|0);
- $413 = HEAP32[$412>>2]|0;
- $414 = $388 ^ $413;
- $415 = $396 & 255;
- $416 = (39076 + ($415)|0);
- $417 = HEAP8[$416>>0]|0;
- $418 = $417&255;
- $419 = $396 >>> 8;
- $420 = $419 & 255;
- $421 = (39076 + ($420)|0);
- $422 = HEAP8[$421>>0]|0;
- $423 = $422&255;
- $424 = $423 << 8;
- $425 = $396 >>> 16;
- $426 = $425 & 255;
- $427 = (39076 + ($426)|0);
- $428 = HEAP8[$427>>0]|0;
- $429 = $428&255;
- $430 = $429 << 16;
- $431 = $396 >>> 24;
- $432 = (39076 + ($431)|0);
- $433 = HEAP8[$432>>0]|0;
- $434 = $433&255;
- $435 = $434 << 24;
- $436 = HEAP32[$76>>2]|0;
- $437 = $436 ^ $418;
- $438 = $404 & 255;
- $439 = (39076 + ($438)|0);
- $440 = HEAP8[$439>>0]|0;
- $441 = $440&255;
- $442 = $424 | $441;
- $443 = $404 >>> 8;
- $444 = $443 & 255;
- $445 = (39076 + ($444)|0);
- $446 = HEAP8[$445>>0]|0;
- $447 = $446&255;
- $448 = $447 << 8;
- $449 = $448 | $430;
- $450 = $404 >>> 16;
- $451 = $450 & 255;
- $452 = (39076 + ($451)|0);
- $453 = HEAP8[$452>>0]|0;
- $454 = $453&255;
- $455 = $454 << 16;
- $456 = $455 | $435;
- $457 = $404 >>> 24;
- $458 = (39076 + ($457)|0);
- $459 = HEAP8[$458>>0]|0;
- $460 = $459&255;
- $461 = $460 << 24;
- $462 = $461 ^ $436;
- $463 = ((($76)) + 4|0);
- $464 = HEAP32[$463>>2]|0;
- $465 = $464 ^ $442;
- $466 = $411 & 255;
- $467 = (39076 + ($466)|0);
- $468 = HEAP8[$467>>0]|0;
- $469 = $468&255;
- $470 = $449 | $469;
- $471 = $411 >>> 8;
- $472 = $471 & 255;
- $473 = (39076 + ($472)|0);
- $474 = HEAP8[$473>>0]|0;
- $475 = $474&255;
- $476 = $475 << 8;
- $477 = $456 | $476;
- $478 = $411 >>> 16;
- $479 = $478 & 255;
- $480 = (39076 + ($479)|0);
- $481 = HEAP8[$480>>0]|0;
- $482 = $481&255;
- $483 = $482 << 16;
- $484 = $483 ^ $436;
- $485 = $411 >>> 24;
- $486 = (39076 + ($485)|0);
- $487 = HEAP8[$486>>0]|0;
- $488 = $487&255;
- $489 = $488 << 24;
- $490 = $489 ^ $464;
- $491 = ((($0)) + 248|0);
- $492 = HEAP32[$491>>2]|0;
- $493 = $492 ^ $470;
- $494 = $414 & 255;
- $495 = (39076 + ($494)|0);
- $496 = HEAP8[$495>>0]|0;
- $497 = $496&255;
- $498 = $477 | $497;
- $499 = $414 >>> 8;
- $500 = $499 & 255;
- $501 = (39076 + ($500)|0);
- $502 = HEAP8[$501>>0]|0;
- $503 = $502&255;
- $504 = $503 << 8;
- $505 = $504 ^ $436;
- $506 = $414 >>> 16;
- $507 = $506 & 255;
- $508 = (39076 + ($507)|0);
- $509 = HEAP8[$508>>0]|0;
- $510 = $509&255;
- $511 = $510 << 16;
- $512 = $511 ^ $464;
- $513 = $414 >>> 24;
- $514 = (39076 + ($513)|0);
- $515 = HEAP8[$514>>0]|0;
- $516 = $515&255;
- $517 = $516 << 24;
- $518 = $517 ^ $493;
- $519 = ((($0)) + 252|0);
- $520 = HEAP32[$519>>2]|0;
- $521 = $520 ^ $498;
- $522 = $462 >>> 24;
- $523 = $522&255;
- $524 = ((($1)) + 3|0);
- HEAP8[$524>>0] = $523;
- $525 = $484 >>> 16;
- $526 = $525&255;
- $527 = ((($1)) + 2|0);
- HEAP8[$527>>0] = $526;
- $528 = $505 >>> 8;
- $529 = $528&255;
- $530 = ((($1)) + 1|0);
- HEAP8[$530>>0] = $529;
- $531 = $437&255;
- HEAP8[$1>>0] = $531;
- $532 = ((($1)) + 4|0);
- $533 = $490 >>> 24;
- $534 = $533&255;
- $535 = ((($1)) + 7|0);
- HEAP8[$535>>0] = $534;
- $536 = $512 >>> 16;
- $537 = $536&255;
- $538 = ((($1)) + 6|0);
- HEAP8[$538>>0] = $537;
- $539 = $465 >>> 8;
- $540 = $539&255;
- $541 = ((($1)) + 5|0);
- HEAP8[$541>>0] = $540;
- $542 = $465&255;
- HEAP8[$532>>0] = $542;
- $543 = ((($1)) + 8|0);
- $544 = $518 >>> 24;
- $545 = $544&255;
- $546 = ((($1)) + 11|0);
- HEAP8[$546>>0] = $545;
- $547 = $493 >>> 16;
- $548 = $547&255;
- $549 = ((($1)) + 10|0);
- HEAP8[$549>>0] = $548;
- $550 = $493 >>> 8;
- $551 = $550&255;
- $552 = ((($1)) + 9|0);
- HEAP8[$552>>0] = $551;
- $553 = $493&255;
- HEAP8[$543>>0] = $553;
- $554 = ((($1)) + 12|0);
- $555 = $521 >>> 24;
- $556 = $555&255;
- $557 = ((($1)) + 15|0);
- HEAP8[$557>>0] = $556;
- $558 = $521 >>> 16;
- $559 = $558&255;
- $560 = ((($1)) + 14|0);
- HEAP8[$560>>0] = $559;
- $561 = $521 >>> 8;
- $562 = $561&255;
- $563 = ((($1)) + 13|0);
- HEAP8[$563>>0] = $562;
- $564 = $521&255;
- HEAP8[$554>>0] = $564;
- return 64;
-}
-function _prefetch_enc() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP8[5216]|0;
- $1 = HEAP8[(5248)>>0]|0;
- $2 = HEAP8[(5280)>>0]|0;
- $3 = HEAP8[(5312)>>0]|0;
- $4 = HEAP8[(5344)>>0]|0;
- $5 = HEAP8[(5376)>>0]|0;
- $6 = HEAP8[(5408)>>0]|0;
- $7 = HEAP8[(5440)>>0]|0;
- $8 = HEAP8[(5472)>>0]|0;
- $9 = HEAP8[(5504)>>0]|0;
- $10 = HEAP8[(5536)>>0]|0;
- $11 = HEAP8[(5568)>>0]|0;
- $12 = HEAP8[(5600)>>0]|0;
- $13 = HEAP8[(5632)>>0]|0;
- $14 = HEAP8[(5664)>>0]|0;
- $15 = HEAP8[(5696)>>0]|0;
- $16 = HEAP8[(5728)>>0]|0;
- $17 = HEAP8[(5760)>>0]|0;
- $18 = HEAP8[(5792)>>0]|0;
- $19 = HEAP8[(5824)>>0]|0;
- $20 = HEAP8[(5856)>>0]|0;
- $21 = HEAP8[(5888)>>0]|0;
- $22 = HEAP8[(5920)>>0]|0;
- $23 = HEAP8[(5952)>>0]|0;
- $24 = HEAP8[(5984)>>0]|0;
- $25 = HEAP8[(6016)>>0]|0;
- $26 = HEAP8[(6048)>>0]|0;
- $27 = HEAP8[(6080)>>0]|0;
- $28 = HEAP8[(6112)>>0]|0;
- $29 = HEAP8[(6144)>>0]|0;
- $30 = HEAP8[(6176)>>0]|0;
- $31 = HEAP8[(6208)>>0]|0;
- $32 = HEAP8[(6239)>>0]|0;
- return;
-}
-function _prefetch_dec() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP8[38052]|0;
- $1 = HEAP8[(38084)>>0]|0;
- $2 = HEAP8[(38116)>>0]|0;
- $3 = HEAP8[(38148)>>0]|0;
- $4 = HEAP8[(38180)>>0]|0;
- $5 = HEAP8[(38212)>>0]|0;
- $6 = HEAP8[(38244)>>0]|0;
- $7 = HEAP8[(38276)>>0]|0;
- $8 = HEAP8[(38308)>>0]|0;
- $9 = HEAP8[(38340)>>0]|0;
- $10 = HEAP8[(38372)>>0]|0;
- $11 = HEAP8[(38404)>>0]|0;
- $12 = HEAP8[(38436)>>0]|0;
- $13 = HEAP8[(38468)>>0]|0;
- $14 = HEAP8[(38500)>>0]|0;
- $15 = HEAP8[(38532)>>0]|0;
- $16 = HEAP8[(38564)>>0]|0;
- $17 = HEAP8[(38596)>>0]|0;
- $18 = HEAP8[(38628)>>0]|0;
- $19 = HEAP8[(38660)>>0]|0;
- $20 = HEAP8[(38692)>>0]|0;
- $21 = HEAP8[(38724)>>0]|0;
- $22 = HEAP8[(38756)>>0]|0;
- $23 = HEAP8[(38788)>>0]|0;
- $24 = HEAP8[(38820)>>0]|0;
- $25 = HEAP8[(38852)>>0]|0;
- $26 = HEAP8[(38884)>>0]|0;
- $27 = HEAP8[(38916)>>0]|0;
- $28 = HEAP8[(38948)>>0]|0;
- $29 = HEAP8[(38980)>>0]|0;
- $30 = HEAP8[(39012)>>0]|0;
- $31 = HEAP8[(39044)>>0]|0;
- $32 = HEAP8[(39076)>>0]|0;
- $33 = HEAP8[(39108)>>0]|0;
- $34 = HEAP8[(39140)>>0]|0;
- $35 = HEAP8[(39172)>>0]|0;
- $36 = HEAP8[(39204)>>0]|0;
- $37 = HEAP8[(39236)>>0]|0;
- $38 = HEAP8[(39268)>>0]|0;
- $39 = HEAP8[(39300)>>0]|0;
- $40 = HEAP8[(39331)>>0]|0;
- return;
-}
-function __gcry_aes_cfb_enc($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$02831 = 0, $$02930 = 0, $$032 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 
0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0;
- var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 
= 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0;
- var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 
0, $45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 496|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)==(0|0);
- if (!($7)) {
-  FUNCTION_TABLE_v[$6 & 127]();
- }
- $8 = ((($0)) + 488|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($4|0)==(0);
- if ($10) {
-  return;
- }
- $11 = $1;
- $12 = ((($1)) + 4|0);
- $13 = ((($1)) + 8|0);
- $14 = ((($1)) + 12|0);
- $15 = ((($1)) + 1|0);
- $16 = ((($1)) + 2|0);
- $17 = ((($1)) + 3|0);
- $18 = ((($1)) + 4|0);
- $19 = ((($1)) + 5|0);
- $20 = ((($1)) + 6|0);
- $21 = ((($1)) + 7|0);
- $22 = ((($1)) + 8|0);
- $23 = ((($1)) + 9|0);
- $24 = ((($1)) + 10|0);
- $25 = ((($1)) + 11|0);
- $26 = ((($1)) + 12|0);
- $27 = ((($1)) + 13|0);
- $28 = ((($1)) + 14|0);
- $29 = ((($1)) + 15|0);
- $$02831 = $3;$$02930 = $2;$$032 = $4;
- while(1) {
-  $30 = (FUNCTION_TABLE_iiii[$9 & 127]($0,$1,$1)|0);
-  $31 = $$02831;
-  $32 = $$02930;
-  $33 = $32 | $11;
-  $34 = $33 | $31;
-  $35 = $34 & 3;
-  $36 = ($35|0)==(0);
-  if ($36) {
-   $37 = ((($$02831)) + 4|0);
-   $38 = HEAP32[$$02831>>2]|0;
-   $39 = HEAP32[$1>>2]|0;
-   $40 = $39 ^ $38;
-   HEAP32[$1>>2] = $40;
-   $41 = ((($$02930)) + 4|0);
-   HEAP32[$$02930>>2] = $40;
-   $42 = ((($$02831)) + 8|0);
-   $43 = HEAP32[$37>>2]|0;
-   $44 = HEAP32[$12>>2]|0;
-   $45 = $44 ^ $43;
-   HEAP32[$12>>2] = $45;
-   $46 = ((($$02930)) + 8|0);
-   HEAP32[$41>>2] = $45;
-   $47 = ((($$02831)) + 12|0);
-   $48 = HEAP32[$42>>2]|0;
-   $49 = HEAP32[$13>>2]|0;
-   $50 = $49 ^ $48;
-   HEAP32[$13>>2] = $50;
-   $51 = ((($$02930)) + 12|0);
-   HEAP32[$46>>2] = $50;
-   $52 = HEAP32[$47>>2]|0;
-   $53 = HEAP32[$14>>2]|0;
-   $54 = $53 ^ $52;
-   HEAP32[$14>>2] = $54;
-   HEAP32[$51>>2] = $54;
-  } else {
-   $55 = ((($$02831)) + 1|0);
-   $56 = HEAP8[$$02831>>0]|0;
-   $57 = HEAP8[$1>>0]|0;
-   $58 = $57 ^ $56;
-   HEAP8[$1>>0] = $58;
-   $59 = ((($$02930)) + 1|0);
-   HEAP8[$$02930>>0] = $58;
-   $60 = ((($$02831)) + 2|0);
-   $61 = HEAP8[$55>>0]|0;
-   $62 = HEAP8[$15>>0]|0;
-   $63 = $62 ^ $61;
-   HEAP8[$15>>0] = $63;
-   $64 = ((($$02930)) + 2|0);
-   HEAP8[$59>>0] = $63;
-   $65 = ((($$02831)) + 3|0);
-   $66 = HEAP8[$60>>0]|0;
-   $67 = HEAP8[$16>>0]|0;
-   $68 = $67 ^ $66;
-   HEAP8[$16>>0] = $68;
-   $69 = ((($$02930)) + 3|0);
-   HEAP8[$64>>0] = $68;
-   $70 = ((($$02831)) + 4|0);
-   $71 = HEAP8[$65>>0]|0;
-   $72 = HEAP8[$17>>0]|0;
-   $73 = $72 ^ $71;
-   HEAP8[$17>>0] = $73;
-   $74 = ((($$02930)) + 4|0);
-   HEAP8[$69>>0] = $73;
-   $75 = ((($$02831)) + 5|0);
-   $76 = HEAP8[$70>>0]|0;
-   $77 = HEAP8[$18>>0]|0;
-   $78 = $77 ^ $76;
-   HEAP8[$18>>0] = $78;
-   $79 = ((($$02930)) + 5|0);
-   HEAP8[$74>>0] = $78;
-   $80 = ((($$02831)) + 6|0);
-   $81 = HEAP8[$75>>0]|0;
-   $82 = HEAP8[$19>>0]|0;
-   $83 = $82 ^ $81;
-   HEAP8[$19>>0] = $83;
-   $84 = ((($$02930)) + 6|0);
-   HEAP8[$79>>0] = $83;
-   $85 = ((($$02831)) + 7|0);
-   $86 = HEAP8[$80>>0]|0;
-   $87 = HEAP8[$20>>0]|0;
-   $88 = $87 ^ $86;
-   HEAP8[$20>>0] = $88;
-   $89 = ((($$02930)) + 7|0);
-   HEAP8[$84>>0] = $88;
-   $90 = ((($$02831)) + 8|0);
-   $91 = HEAP8[$85>>0]|0;
-   $92 = HEAP8[$21>>0]|0;
-   $93 = $92 ^ $91;
-   HEAP8[$21>>0] = $93;
-   $94 = ((($$02930)) + 8|0);
-   HEAP8[$89>>0] = $93;
-   $95 = ((($$02831)) + 9|0);
-   $96 = HEAP8[$90>>0]|0;
-   $97 = HEAP8[$22>>0]|0;
-   $98 = $97 ^ $96;
-   HEAP8[$22>>0] = $98;
-   $99 = ((($$02930)) + 9|0);
-   HEAP8[$94>>0] = $98;
-   $100 = ((($$02831)) + 10|0);
-   $101 = HEAP8[$95>>0]|0;
-   $102 = HEAP8[$23>>0]|0;
-   $103 = $102 ^ $101;
-   HEAP8[$23>>0] = $103;
-   $104 = ((($$02930)) + 10|0);
-   HEAP8[$99>>0] = $103;
-   $105 = ((($$02831)) + 11|0);
-   $106 = HEAP8[$100>>0]|0;
-   $107 = HEAP8[$24>>0]|0;
-   $108 = $107 ^ $106;
-   HEAP8[$24>>0] = $108;
-   $109 = ((($$02930)) + 11|0);
-   HEAP8[$104>>0] = $108;
-   $110 = ((($$02831)) + 12|0);
-   $111 = HEAP8[$105>>0]|0;
-   $112 = HEAP8[$25>>0]|0;
-   $113 = $112 ^ $111;
-   HEAP8[$25>>0] = $113;
-   $114 = ((($$02930)) + 12|0);
-   HEAP8[$109>>0] = $113;
-   $115 = ((($$02831)) + 13|0);
-   $116 = HEAP8[$110>>0]|0;
-   $117 = HEAP8[$26>>0]|0;
-   $118 = $117 ^ $116;
-   HEAP8[$26>>0] = $118;
-   $119 = ((($$02930)) + 13|0);
-   HEAP8[$114>>0] = $118;
-   $120 = ((($$02831)) + 14|0);
-   $121 = HEAP8[$115>>0]|0;
-   $122 = HEAP8[$27>>0]|0;
-   $123 = $122 ^ $121;
-   HEAP8[$27>>0] = $123;
-   $124 = ((($$02930)) + 14|0);
-   HEAP8[$119>>0] = $123;
-   $125 = ((($$02831)) + 15|0);
-   $126 = HEAP8[$120>>0]|0;
-   $127 = HEAP8[$28>>0]|0;
-   $128 = $127 ^ $126;
-   HEAP8[$28>>0] = $128;
-   $129 = ((($$02930)) + 15|0);
-   HEAP8[$124>>0] = $128;
-   $130 = HEAP8[$125>>0]|0;
-   $131 = HEAP8[$29>>0]|0;
-   $132 = $131 ^ $130;
-   HEAP8[$29>>0] = $132;
-   HEAP8[$129>>0] = $132;
-  }
-  $133 = ((($$02930)) + 16|0);
-  $134 = ((($$02831)) + 16|0);
-  $135 = (($$032) + -1)|0;
-  $136 = ($135|0)==(0);
-  if ($136) {
-   break;
-  } else {
-   $$02831 = $134;$$02930 = $133;$$032 = $135;
-  }
- }
- $137 = ($30|0)==(0);
- if ($137) {
-  return;
- }
- $138 = (($30) + 16)|0;
- ___gcry_burn_stack($138);
- return;
-}
-function __gcry_aes_cbc_enc($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$036$lcssa = 0, $$037$lcssa = 0, $$03744$us = 0, $$03744$us$phi = 0, 
$$03843 = 0, $$03843$us = 0, $$03942$us = 0, $$045 = 0, $$045$us = 0, $$pn = 0, 
$10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0;
- var $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 
= 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0;
- var $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0;
- var $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 
= 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0;
- var $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 
= 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0;
- var $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, 
$188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, 
$195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0;
- var $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 
= 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0;
- var $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 
= 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0;
- var $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0;
- var $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 
= 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0;
- var $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, 
$279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, 
$286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0;
- var $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, 
$297 = 0, $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, 
$304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0;
- var $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 
= 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 
= 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0;
- var $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 
= 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 
= 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0;
- var $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 
= 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 
= 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0;
- var $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 
= 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 
= 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0;
- var $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, 
$388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, 
$395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0;
- var $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 
= 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0;
- var $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 
= 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0;
- var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
$scevgep = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $6 = ((($0)) + 496|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if (!($8)) {
-  FUNCTION_TABLE_v[$7 & 127]();
- }
- $9 = ((($0)) + 488|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($4|0)==(0);
- if ($11) {
-  return;
- }
- $12 = ($5|0)==(0);
- if ($12) {
-  $13 = $4 << 4;
-  $14 = (($13) + -16)|0;
-  $$03744$us = $1;$$03843$us = $3;$$03942$us = $2;$$045$us = $4;
-  while(1) {
-   $15 = $$03942$us;
-   $16 = $$03843$us;
-   $17 = $16 | $15;
-   $18 = $$03744$us;
-   $19 = $17 | $18;
-   $20 = $19 & 3;
-   $21 = ($20|0)==(0);
-   if ($21) {
-    $115 = ((($$03843$us)) + 4|0);
-    $116 = HEAP32[$$03843$us>>2]|0;
-    $117 = ((($$03744$us)) + 4|0);
-    $118 = HEAP32[$$03744$us>>2]|0;
-    $119 = $118 ^ $116;
-    $120 = ((($$03942$us)) + 4|0);
-    HEAP32[$$03942$us>>2] = $119;
-    $121 = ((($$03843$us)) + 8|0);
-    $122 = HEAP32[$115>>2]|0;
-    $123 = ((($$03744$us)) + 8|0);
-    $124 = HEAP32[$117>>2]|0;
-    $125 = $124 ^ $122;
-    $126 = ((($$03942$us)) + 8|0);
-    HEAP32[$120>>2] = $125;
-    $127 = ((($$03843$us)) + 12|0);
-    $128 = HEAP32[$121>>2]|0;
-    $129 = ((($$03744$us)) + 12|0);
-    $130 = HEAP32[$123>>2]|0;
-    $131 = $130 ^ $128;
-    $132 = ((($$03942$us)) + 12|0);
-    HEAP32[$126>>2] = $131;
-    $133 = HEAP32[$127>>2]|0;
-    $134 = HEAP32[$129>>2]|0;
-    $135 = $134 ^ $133;
-    HEAP32[$132>>2] = $135;
-   } else {
-    $22 = ((($$03843$us)) + 1|0);
-    $23 = HEAP8[$$03843$us>>0]|0;
-    $24 = ((($$03744$us)) + 1|0);
-    $25 = HEAP8[$$03744$us>>0]|0;
-    $26 = $25 ^ $23;
-    $27 = ((($$03942$us)) + 1|0);
-    HEAP8[$$03942$us>>0] = $26;
-    $28 = ((($$03843$us)) + 2|0);
-    $29 = HEAP8[$22>>0]|0;
-    $30 = ((($$03744$us)) + 2|0);
-    $31 = HEAP8[$24>>0]|0;
-    $32 = $31 ^ $29;
-    $33 = ((($$03942$us)) + 2|0);
-    HEAP8[$27>>0] = $32;
-    $34 = ((($$03843$us)) + 3|0);
-    $35 = HEAP8[$28>>0]|0;
-    $36 = ((($$03744$us)) + 3|0);
-    $37 = HEAP8[$30>>0]|0;
-    $38 = $37 ^ $35;
-    $39 = ((($$03942$us)) + 3|0);
-    HEAP8[$33>>0] = $38;
-    $40 = ((($$03843$us)) + 4|0);
-    $41 = HEAP8[$34>>0]|0;
-    $42 = ((($$03744$us)) + 4|0);
-    $43 = HEAP8[$36>>0]|0;
-    $44 = $43 ^ $41;
-    $45 = ((($$03942$us)) + 4|0);
-    HEAP8[$39>>0] = $44;
-    $46 = ((($$03843$us)) + 5|0);
-    $47 = HEAP8[$40>>0]|0;
-    $48 = ((($$03744$us)) + 5|0);
-    $49 = HEAP8[$42>>0]|0;
-    $50 = $49 ^ $47;
-    $51 = ((($$03942$us)) + 5|0);
-    HEAP8[$45>>0] = $50;
-    $52 = ((($$03843$us)) + 6|0);
-    $53 = HEAP8[$46>>0]|0;
-    $54 = ((($$03744$us)) + 6|0);
-    $55 = HEAP8[$48>>0]|0;
-    $56 = $55 ^ $53;
-    $57 = ((($$03942$us)) + 6|0);
-    HEAP8[$51>>0] = $56;
-    $58 = ((($$03843$us)) + 7|0);
-    $59 = HEAP8[$52>>0]|0;
-    $60 = ((($$03744$us)) + 7|0);
-    $61 = HEAP8[$54>>0]|0;
-    $62 = $61 ^ $59;
-    $63 = ((($$03942$us)) + 7|0);
-    HEAP8[$57>>0] = $62;
-    $64 = ((($$03843$us)) + 8|0);
-    $65 = HEAP8[$58>>0]|0;
-    $66 = ((($$03744$us)) + 8|0);
-    $67 = HEAP8[$60>>0]|0;
-    $68 = $67 ^ $65;
-    $69 = ((($$03942$us)) + 8|0);
-    HEAP8[$63>>0] = $68;
-    $70 = ((($$03843$us)) + 9|0);
-    $71 = HEAP8[$64>>0]|0;
-    $72 = ((($$03744$us)) + 9|0);
-    $73 = HEAP8[$66>>0]|0;
-    $74 = $73 ^ $71;
-    $75 = ((($$03942$us)) + 9|0);
-    HEAP8[$69>>0] = $74;
-    $76 = ((($$03843$us)) + 10|0);
-    $77 = HEAP8[$70>>0]|0;
-    $78 = ((($$03744$us)) + 10|0);
-    $79 = HEAP8[$72>>0]|0;
-    $80 = $79 ^ $77;
-    $81 = ((($$03942$us)) + 10|0);
-    HEAP8[$75>>0] = $80;
-    $82 = ((($$03843$us)) + 11|0);
-    $83 = HEAP8[$76>>0]|0;
-    $84 = ((($$03744$us)) + 11|0);
-    $85 = HEAP8[$78>>0]|0;
-    $86 = $85 ^ $83;
-    $87 = ((($$03942$us)) + 11|0);
-    HEAP8[$81>>0] = $86;
-    $88 = ((($$03843$us)) + 12|0);
-    $89 = HEAP8[$82>>0]|0;
-    $90 = ((($$03744$us)) + 12|0);
-    $91 = HEAP8[$84>>0]|0;
-    $92 = $91 ^ $89;
-    $93 = ((($$03942$us)) + 12|0);
-    HEAP8[$87>>0] = $92;
-    $94 = ((($$03843$us)) + 13|0);
-    $95 = HEAP8[$88>>0]|0;
-    $96 = ((($$03744$us)) + 13|0);
-    $97 = HEAP8[$90>>0]|0;
-    $98 = $97 ^ $95;
-    $99 = ((($$03942$us)) + 13|0);
-    HEAP8[$93>>0] = $98;
-    $100 = ((($$03843$us)) + 14|0);
-    $101 = HEAP8[$94>>0]|0;
-    $102 = ((($$03744$us)) + 14|0);
-    $103 = HEAP8[$96>>0]|0;
-    $104 = $103 ^ $101;
-    $105 = ((($$03942$us)) + 14|0);
-    HEAP8[$99>>0] = $104;
-    $106 = ((($$03843$us)) + 15|0);
-    $107 = HEAP8[$100>>0]|0;
-    $108 = ((($$03744$us)) + 15|0);
-    $109 = HEAP8[$102>>0]|0;
-    $110 = $109 ^ $107;
-    $111 = ((($$03942$us)) + 15|0);
-    HEAP8[$105>>0] = $110;
-    $112 = HEAP8[$106>>0]|0;
-    $113 = HEAP8[$108>>0]|0;
-    $114 = $113 ^ $112;
-    HEAP8[$111>>0] = $114;
-   }
-   $136 = (FUNCTION_TABLE_iiii[$10 & 127]($0,$$03942$us,$$03942$us)|0);
-   $137 = ((($$03843$us)) + 16|0);
-   $138 = ((($$03942$us)) + 16|0);
-   $139 = (($$045$us) + -1)|0;
-   $140 = ($139|0)==(0);
-   if ($140) {
-    break;
-   } else {
-    $$03744$us$phi = $$03942$us;$$03843$us = $137;$$03942$us = $138;$$045$us = 
$139;$$03744$us = $$03744$us$phi;
-   }
-  }
-  $scevgep = (($2) + ($14)|0);
-  $$036$lcssa = $136;$$037$lcssa = $scevgep;
- } else {
-  $141 = $2;
-  $142 = $3;
-  $143 = $142 | $141;
-  $144 = $1;
-  $145 = $143 | $144;
-  $146 = $145 & 3;
-  $147 = ($146|0)==(0);
-  if ($147) {
-   $241 = ((($3)) + 4|0);
-   $242 = HEAP32[$3>>2]|0;
-   $243 = ((($1)) + 4|0);
-   $244 = HEAP32[$1>>2]|0;
-   $245 = $244 ^ $242;
-   $246 = ((($2)) + 4|0);
-   HEAP32[$2>>2] = $245;
-   $247 = ((($3)) + 8|0);
-   $248 = HEAP32[$241>>2]|0;
-   $249 = ((($1)) + 8|0);
-   $250 = HEAP32[$243>>2]|0;
-   $251 = $250 ^ $248;
-   $252 = ((($2)) + 8|0);
-   HEAP32[$246>>2] = $251;
-   $253 = ((($3)) + 12|0);
-   $254 = HEAP32[$247>>2]|0;
-   $255 = ((($1)) + 12|0);
-   $256 = HEAP32[$249>>2]|0;
-   $257 = $256 ^ $254;
-   $258 = ((($2)) + 12|0);
-   HEAP32[$252>>2] = $257;
-   $259 = HEAP32[$253>>2]|0;
-   $260 = HEAP32[$255>>2]|0;
-   $261 = $260 ^ $259;
-   HEAP32[$258>>2] = $261;
-  } else {
-   $148 = ((($3)) + 1|0);
-   $149 = HEAP8[$3>>0]|0;
-   $150 = ((($1)) + 1|0);
-   $151 = HEAP8[$1>>0]|0;
-   $152 = $151 ^ $149;
-   $153 = ((($2)) + 1|0);
-   HEAP8[$2>>0] = $152;
-   $154 = ((($3)) + 2|0);
-   $155 = HEAP8[$148>>0]|0;
-   $156 = ((($1)) + 2|0);
-   $157 = HEAP8[$150>>0]|0;
-   $158 = $157 ^ $155;
-   $159 = ((($2)) + 2|0);
-   HEAP8[$153>>0] = $158;
-   $160 = ((($3)) + 3|0);
-   $161 = HEAP8[$154>>0]|0;
-   $162 = ((($1)) + 3|0);
-   $163 = HEAP8[$156>>0]|0;
-   $164 = $163 ^ $161;
-   $165 = ((($2)) + 3|0);
-   HEAP8[$159>>0] = $164;
-   $166 = ((($3)) + 4|0);
-   $167 = HEAP8[$160>>0]|0;
-   $168 = ((($1)) + 4|0);
-   $169 = HEAP8[$162>>0]|0;
-   $170 = $169 ^ $167;
-   $171 = ((($2)) + 4|0);
-   HEAP8[$165>>0] = $170;
-   $172 = ((($3)) + 5|0);
-   $173 = HEAP8[$166>>0]|0;
-   $174 = ((($1)) + 5|0);
-   $175 = HEAP8[$168>>0]|0;
-   $176 = $175 ^ $173;
-   $177 = ((($2)) + 5|0);
-   HEAP8[$171>>0] = $176;
-   $178 = ((($3)) + 6|0);
-   $179 = HEAP8[$172>>0]|0;
-   $180 = ((($1)) + 6|0);
-   $181 = HEAP8[$174>>0]|0;
-   $182 = $181 ^ $179;
-   $183 = ((($2)) + 6|0);
-   HEAP8[$177>>0] = $182;
-   $184 = ((($3)) + 7|0);
-   $185 = HEAP8[$178>>0]|0;
-   $186 = ((($1)) + 7|0);
-   $187 = HEAP8[$180>>0]|0;
-   $188 = $187 ^ $185;
-   $189 = ((($2)) + 7|0);
-   HEAP8[$183>>0] = $188;
-   $190 = ((($3)) + 8|0);
-   $191 = HEAP8[$184>>0]|0;
-   $192 = ((($1)) + 8|0);
-   $193 = HEAP8[$186>>0]|0;
-   $194 = $193 ^ $191;
-   $195 = ((($2)) + 8|0);
-   HEAP8[$189>>0] = $194;
-   $196 = ((($3)) + 9|0);
-   $197 = HEAP8[$190>>0]|0;
-   $198 = ((($1)) + 9|0);
-   $199 = HEAP8[$192>>0]|0;
-   $200 = $199 ^ $197;
-   $201 = ((($2)) + 9|0);
-   HEAP8[$195>>0] = $200;
-   $202 = ((($3)) + 10|0);
-   $203 = HEAP8[$196>>0]|0;
-   $204 = ((($1)) + 10|0);
-   $205 = HEAP8[$198>>0]|0;
-   $206 = $205 ^ $203;
-   $207 = ((($2)) + 10|0);
-   HEAP8[$201>>0] = $206;
-   $208 = ((($3)) + 11|0);
-   $209 = HEAP8[$202>>0]|0;
-   $210 = ((($1)) + 11|0);
-   $211 = HEAP8[$204>>0]|0;
-   $212 = $211 ^ $209;
-   $213 = ((($2)) + 11|0);
-   HEAP8[$207>>0] = $212;
-   $214 = ((($3)) + 12|0);
-   $215 = HEAP8[$208>>0]|0;
-   $216 = ((($1)) + 12|0);
-   $217 = HEAP8[$210>>0]|0;
-   $218 = $217 ^ $215;
-   $219 = ((($2)) + 12|0);
-   HEAP8[$213>>0] = $218;
-   $220 = ((($3)) + 13|0);
-   $221 = HEAP8[$214>>0]|0;
-   $222 = ((($1)) + 13|0);
-   $223 = HEAP8[$216>>0]|0;
-   $224 = $223 ^ $221;
-   $225 = ((($2)) + 13|0);
-   HEAP8[$219>>0] = $224;
-   $226 = ((($3)) + 14|0);
-   $227 = HEAP8[$220>>0]|0;
-   $228 = ((($1)) + 14|0);
-   $229 = HEAP8[$222>>0]|0;
-   $230 = $229 ^ $227;
-   $231 = ((($2)) + 14|0);
-   HEAP8[$225>>0] = $230;
-   $232 = ((($3)) + 15|0);
-   $233 = HEAP8[$226>>0]|0;
-   $234 = ((($1)) + 15|0);
-   $235 = HEAP8[$228>>0]|0;
-   $236 = $235 ^ $233;
-   $237 = ((($2)) + 15|0);
-   HEAP8[$231>>0] = $236;
-   $238 = HEAP8[$232>>0]|0;
-   $239 = HEAP8[$234>>0]|0;
-   $240 = $239 ^ $238;
-   HEAP8[$237>>0] = $240;
-  }
-  $262 = (FUNCTION_TABLE_iiii[$10 & 127]($0,$2,$2)|0);
-  $263 = (($4) + -1)|0;
-  $264 = ($263|0)==(0);
-  if ($264) {
-   $$036$lcssa = $262;$$037$lcssa = $2;
-  } else {
-   $265 = ((($2)) + 4|0);
-   $266 = ((($2)) + 8|0);
-   $267 = ((($2)) + 12|0);
-   $268 = ((($2)) + 1|0);
-   $269 = ((($2)) + 2|0);
-   $270 = ((($2)) + 3|0);
-   $271 = ((($2)) + 4|0);
-   $272 = ((($2)) + 5|0);
-   $273 = ((($2)) + 6|0);
-   $274 = ((($2)) + 7|0);
-   $275 = ((($2)) + 8|0);
-   $276 = ((($2)) + 9|0);
-   $277 = ((($2)) + 10|0);
-   $278 = ((($2)) + 11|0);
-   $279 = ((($2)) + 12|0);
-   $280 = ((($2)) + 13|0);
-   $281 = ((($2)) + 14|0);
-   $282 = ((($2)) + 15|0);
-   $$045 = $263;$$pn = $3;
-   while(1) {
-    $$03843 = ((($$pn)) + 16|0);
-    $283 = $$03843;
-    $284 = $283 | $141;
-    $285 = $284 & 3;
-    $286 = ($285|0)==(0);
-    if ($286) {
-     $287 = ((($$pn)) + 20|0);
-     $288 = HEAP32[$$03843>>2]|0;
-     $289 = HEAP32[$2>>2]|0;
-     $290 = $289 ^ $288;
-     HEAP32[$2>>2] = $290;
-     $291 = ((($$pn)) + 24|0);
-     $292 = HEAP32[$287>>2]|0;
-     $293 = HEAP32[$265>>2]|0;
-     $294 = $293 ^ $292;
-     HEAP32[$265>>2] = $294;
-     $295 = ((($$pn)) + 28|0);
-     $296 = HEAP32[$291>>2]|0;
-     $297 = HEAP32[$266>>2]|0;
-     $298 = $297 ^ $296;
-     HEAP32[$266>>2] = $298;
-     $299 = HEAP32[$295>>2]|0;
-     $300 = HEAP32[$267>>2]|0;
-     $301 = $300 ^ $299;
-     HEAP32[$267>>2] = $301;
-    } else {
-     $302 = ((($$pn)) + 17|0);
-     $303 = HEAP8[$$03843>>0]|0;
-     $304 = HEAP8[$2>>0]|0;
-     $305 = $304 ^ $303;
-     HEAP8[$2>>0] = $305;
-     $306 = ((($$pn)) + 18|0);
-     $307 = HEAP8[$302>>0]|0;
-     $308 = HEAP8[$268>>0]|0;
-     $309 = $308 ^ $307;
-     HEAP8[$268>>0] = $309;
-     $310 = ((($$pn)) + 19|0);
-     $311 = HEAP8[$306>>0]|0;
-     $312 = HEAP8[$269>>0]|0;
-     $313 = $312 ^ $311;
-     HEAP8[$269>>0] = $313;
-     $314 = ((($$pn)) + 20|0);
-     $315 = HEAP8[$310>>0]|0;
-     $316 = HEAP8[$270>>0]|0;
-     $317 = $316 ^ $315;
-     HEAP8[$270>>0] = $317;
-     $318 = ((($$pn)) + 21|0);
-     $319 = HEAP8[$314>>0]|0;
-     $320 = HEAP8[$271>>0]|0;
-     $321 = $320 ^ $319;
-     HEAP8[$271>>0] = $321;
-     $322 = ((($$pn)) + 22|0);
-     $323 = HEAP8[$318>>0]|0;
-     $324 = HEAP8[$272>>0]|0;
-     $325 = $324 ^ $323;
-     HEAP8[$272>>0] = $325;
-     $326 = ((($$pn)) + 23|0);
-     $327 = HEAP8[$322>>0]|0;
-     $328 = HEAP8[$273>>0]|0;
-     $329 = $328 ^ $327;
-     HEAP8[$273>>0] = $329;
-     $330 = ((($$pn)) + 24|0);
-     $331 = HEAP8[$326>>0]|0;
-     $332 = HEAP8[$274>>0]|0;
-     $333 = $332 ^ $331;
-     HEAP8[$274>>0] = $333;
-     $334 = ((($$pn)) + 25|0);
-     $335 = HEAP8[$330>>0]|0;
-     $336 = HEAP8[$275>>0]|0;
-     $337 = $336 ^ $335;
-     HEAP8[$275>>0] = $337;
-     $338 = ((($$pn)) + 26|0);
-     $339 = HEAP8[$334>>0]|0;
-     $340 = HEAP8[$276>>0]|0;
-     $341 = $340 ^ $339;
-     HEAP8[$276>>0] = $341;
-     $342 = ((($$pn)) + 27|0);
-     $343 = HEAP8[$338>>0]|0;
-     $344 = HEAP8[$277>>0]|0;
-     $345 = $344 ^ $343;
-     HEAP8[$277>>0] = $345;
-     $346 = ((($$pn)) + 28|0);
-     $347 = HEAP8[$342>>0]|0;
-     $348 = HEAP8[$278>>0]|0;
-     $349 = $348 ^ $347;
-     HEAP8[$278>>0] = $349;
-     $350 = ((($$pn)) + 29|0);
-     $351 = HEAP8[$346>>0]|0;
-     $352 = HEAP8[$279>>0]|0;
-     $353 = $352 ^ $351;
-     HEAP8[$279>>0] = $353;
-     $354 = ((($$pn)) + 30|0);
-     $355 = HEAP8[$350>>0]|0;
-     $356 = HEAP8[$280>>0]|0;
-     $357 = $356 ^ $355;
-     HEAP8[$280>>0] = $357;
-     $358 = ((($$pn)) + 31|0);
-     $359 = HEAP8[$354>>0]|0;
-     $360 = HEAP8[$281>>0]|0;
-     $361 = $360 ^ $359;
-     HEAP8[$281>>0] = $361;
-     $362 = HEAP8[$358>>0]|0;
-     $363 = HEAP8[$282>>0]|0;
-     $364 = $363 ^ $362;
-     HEAP8[$282>>0] = $364;
-    }
-    $365 = (FUNCTION_TABLE_iiii[$10 & 127]($0,$2,$2)|0);
-    $366 = (($$045) + -1)|0;
-    $367 = ($366|0)==(0);
-    if ($367) {
-     $$036$lcssa = $365;$$037$lcssa = $2;
-     break;
-    } else {
-     $$045 = $366;$$pn = $$03843;
-    }
-   }
-  }
- }
- $368 = ($$037$lcssa|0)==($1|0);
- do {
-  if (!($368)) {
-   $369 = $1;
-   $370 = $$037$lcssa;
-   $371 = $370 | $369;
-   $372 = $371 & 3;
-   $373 = ($372|0)==(0);
-   if ($373) {
-    $374 = ((($$037$lcssa)) + 4|0);
-    $375 = HEAP32[$$037$lcssa>>2]|0;
-    $376 = ((($1)) + 4|0);
-    HEAP32[$1>>2] = $375;
-    $377 = ((($$037$lcssa)) + 8|0);
-    $378 = HEAP32[$374>>2]|0;
-    $379 = ((($1)) + 8|0);
-    HEAP32[$376>>2] = $378;
-    $380 = ((($$037$lcssa)) + 12|0);
-    $381 = HEAP32[$377>>2]|0;
-    $382 = ((($1)) + 12|0);
-    HEAP32[$379>>2] = $381;
-    $383 = HEAP32[$380>>2]|0;
-    HEAP32[$382>>2] = $383;
-    break;
-   } else {
-    $384 = ((($$037$lcssa)) + 1|0);
-    $385 = HEAP8[$$037$lcssa>>0]|0;
-    $386 = ((($1)) + 1|0);
-    HEAP8[$1>>0] = $385;
-    $387 = ((($$037$lcssa)) + 2|0);
-    $388 = HEAP8[$384>>0]|0;
-    $389 = ((($1)) + 2|0);
-    HEAP8[$386>>0] = $388;
-    $390 = ((($$037$lcssa)) + 3|0);
-    $391 = HEAP8[$387>>0]|0;
-    $392 = ((($1)) + 3|0);
-    HEAP8[$389>>0] = $391;
-    $393 = ((($$037$lcssa)) + 4|0);
-    $394 = HEAP8[$390>>0]|0;
-    $395 = ((($1)) + 4|0);
-    HEAP8[$392>>0] = $394;
-    $396 = ((($$037$lcssa)) + 5|0);
-    $397 = HEAP8[$393>>0]|0;
-    $398 = ((($1)) + 5|0);
-    HEAP8[$395>>0] = $397;
-    $399 = ((($$037$lcssa)) + 6|0);
-    $400 = HEAP8[$396>>0]|0;
-    $401 = ((($1)) + 6|0);
-    HEAP8[$398>>0] = $400;
-    $402 = ((($$037$lcssa)) + 7|0);
-    $403 = HEAP8[$399>>0]|0;
-    $404 = ((($1)) + 7|0);
-    HEAP8[$401>>0] = $403;
-    $405 = ((($$037$lcssa)) + 8|0);
-    $406 = HEAP8[$402>>0]|0;
-    $407 = ((($1)) + 8|0);
-    HEAP8[$404>>0] = $406;
-    $408 = ((($$037$lcssa)) + 9|0);
-    $409 = HEAP8[$405>>0]|0;
-    $410 = ((($1)) + 9|0);
-    HEAP8[$407>>0] = $409;
-    $411 = ((($$037$lcssa)) + 10|0);
-    $412 = HEAP8[$408>>0]|0;
-    $413 = ((($1)) + 10|0);
-    HEAP8[$410>>0] = $412;
-    $414 = ((($$037$lcssa)) + 11|0);
-    $415 = HEAP8[$411>>0]|0;
-    $416 = ((($1)) + 11|0);
-    HEAP8[$413>>0] = $415;
-    $417 = ((($$037$lcssa)) + 12|0);
-    $418 = HEAP8[$414>>0]|0;
-    $419 = ((($1)) + 12|0);
-    HEAP8[$416>>0] = $418;
-    $420 = ((($$037$lcssa)) + 13|0);
-    $421 = HEAP8[$417>>0]|0;
-    $422 = ((($1)) + 13|0);
-    HEAP8[$419>>0] = $421;
-    $423 = ((($$037$lcssa)) + 14|0);
-    $424 = HEAP8[$420>>0]|0;
-    $425 = ((($1)) + 14|0);
-    HEAP8[$422>>0] = $424;
-    $426 = ((($$037$lcssa)) + 15|0);
-    $427 = HEAP8[$423>>0]|0;
-    $428 = ((($1)) + 15|0);
-    HEAP8[$425>>0] = $427;
-    $429 = HEAP8[$426>>0]|0;
-    HEAP8[$428>>0] = $429;
-    break;
-   }
-  }
- } while(0);
- $430 = ($$036$lcssa|0)==(0);
- if ($430) {
-  return;
- }
- $431 = (($$036$lcssa) + 16)|0;
- ___gcry_burn_stack($431);
- return;
-}
-function __gcry_aes_ocb_crypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$073153 = 0, $$074152 = 0, $$076151 = 0, $$078 = 0, $$079$lcssa 
= 0, $$1150 = 0, $$175149 = 0, $$177148 = 0, $$180$lcssa = 0, $$2 = 0, $10 = 0, 
$100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, 
$1006 = 0;
- var $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, 
$111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0;
- var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 
= 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0;
- var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, 
$159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, 
$166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0;
- var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, 
$177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, 
$184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0;
- var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 
= 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 
= 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0;
- var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0;
- var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 
= 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0;
- var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 
= 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0;
- var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, 
$268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, 
$275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0;
- var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 
= 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 
= 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0;
- var $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 
= 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 
= 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0;
- var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 
= 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 
= 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0;
- var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 
= 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 
= 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0;
- var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, 
$359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, 
$366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0;
- var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, 
$377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, 
$384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0;
- var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 
= 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $40 = 0, $400 = 0, $401 = 0, $402 
= 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0;
- var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 
= 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0;
- var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 
= 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0;
- var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 
= 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0;
- var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, 
$468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, 
$475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0;
- var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 
= 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 
= 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0;
- var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 
0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 
0, $511 = 0, $512 = 0, $513 = 0, $514 = 0;
- var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 
= 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0;
- var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 
= 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0;
- var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, 
$558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, 
$565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0;
- var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 
= 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 
= 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0;
- var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 
= 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 
0, $601 = 0, $602 = 0, $603 = 0, $604 = 0;
- var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 
= 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 
= 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0;
- var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 
= 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 
= 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0;
- var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, 
$648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, 
$655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0;
- var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 
= 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 
= 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0;
- var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 
= 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 
= 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0;
- var $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 
0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 
0, $71 = 0, $710 = 0, $711 = 0, $712 = 0;
- var $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 
= 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 
= 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0;
- var $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, 
$738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, 
$745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0;
- var $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 
= 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 
= 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0;
- var $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 
= 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 
= 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0;
- var $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 
= 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 
0, $80 = 0, $800 = 0, $801 = 0, $802 = 0;
- var $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 
= 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 
= 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0;
- var $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, 
$828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, 
$835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0;
- var $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 
= 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 
= 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0;
- var $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 
= 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 
= 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0;
- var $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 
= 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 
= 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0;
- var $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 
0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 
0, $908 = 0, $909 = 0, $91 = 0, $910 = 0;
- var $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, 
$918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, 
$925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0;
- var $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 
= 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 
= 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0;
- var $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 
= 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 
= 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0;
- var $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 
= 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 
= 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0;
- var $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 
= 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 
= 0, $999 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $5 = sp + 16|0;
- $6 = sp;
- $7 = ((($0)) + 496|0);
- $8 = ($4|0)==(0);
- if ($8) {
-  _check_decryption_preparation($7);
-  $12 = ((($7)) + 500|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($13|0)==(0|0);
-  if (!($14)) {
-   FUNCTION_TABLE_v[$13 & 127]();
-  }
-  $511 = ((($7)) + 492|0);
-  $512 = HEAP32[$511>>2]|0;
-  $513 = ($3|0)==(0);
-  if ($513) {
-   $$180$lcssa = 0;
-  } else {
-   $514 = ((($0)) + 464|0);
-   $515 = ((($0)) + 64|0);
-   $516 = $515;
-   $517 = ((($515)) + 4|0);
-   $518 = ((($0)) + 72|0);
-   $519 = ((($0)) + 76|0);
-   $520 = ((($0)) + 160|0);
-   $521 = ((($6)) + 4|0);
-   $522 = ((($6)) + 8|0);
-   $523 = ((($6)) + 12|0);
-   $524 = $516 & 3;
-   $525 = ($524|0)==(0);
-   $526 = ((($0)) + 80|0);
-   $527 = $526;
-   $528 = $527 & 3;
-   $529 = ($528|0)==(0);
-   $530 = ((($526)) + 4|0);
-   $531 = ((($0)) + 88|0);
-   $532 = ((($0)) + 92|0);
-   $533 = ((($515)) + 1|0);
-   $534 = ((($515)) + 2|0);
-   $535 = ((($515)) + 3|0);
-   $536 = ((($515)) + 4|0);
-   $537 = ((($515)) + 5|0);
-   $538 = ((($515)) + 6|0);
-   $539 = ((($515)) + 7|0);
-   $540 = ((($0)) + 72|0);
-   $541 = ((($0)) + 73|0);
-   $542 = ((($0)) + 74|0);
-   $543 = ((($0)) + 75|0);
-   $544 = ((($0)) + 76|0);
-   $545 = ((($0)) + 77|0);
-   $546 = ((($0)) + 78|0);
-   $547 = ((($0)) + 79|0);
-   $548 = ((($6)) + 1|0);
-   $549 = ((($6)) + 2|0);
-   $550 = ((($6)) + 3|0);
-   $551 = ((($6)) + 4|0);
-   $552 = ((($551)) + 1|0);
-   $553 = ((($551)) + 2|0);
-   $554 = ((($551)) + 3|0);
-   $555 = ((($6)) + 8|0);
-   $556 = ((($555)) + 1|0);
-   $557 = ((($555)) + 2|0);
-   $558 = ((($555)) + 3|0);
-   $559 = ((($6)) + 12|0);
-   $560 = ((($559)) + 1|0);
-   $561 = ((($559)) + 2|0);
-   $562 = ((($559)) + 3|0);
-   $563 = ((($515)) + 1|0);
-   $564 = ((($6)) + 1|0);
-   $565 = ((($515)) + 2|0);
-   $566 = ((($6)) + 2|0);
-   $567 = ((($515)) + 3|0);
-   $568 = ((($6)) + 3|0);
-   $569 = ((($515)) + 4|0);
-   $570 = ((($6)) + 4|0);
-   $571 = ((($515)) + 5|0);
-   $572 = ((($570)) + 1|0);
-   $573 = ((($515)) + 6|0);
-   $574 = ((($570)) + 2|0);
-   $575 = ((($515)) + 7|0);
-   $576 = ((($570)) + 3|0);
-   $577 = ((($0)) + 72|0);
-   $578 = ((($6)) + 8|0);
-   $579 = ((($0)) + 73|0);
-   $580 = ((($578)) + 1|0);
-   $581 = ((($0)) + 74|0);
-   $582 = ((($578)) + 2|0);
-   $583 = ((($0)) + 75|0);
-   $584 = ((($578)) + 3|0);
-   $585 = ((($0)) + 76|0);
-   $586 = ((($6)) + 12|0);
-   $587 = ((($0)) + 77|0);
-   $588 = ((($586)) + 1|0);
-   $589 = ((($0)) + 78|0);
-   $590 = ((($586)) + 2|0);
-   $591 = ((($0)) + 79|0);
-   $592 = ((($586)) + 3|0);
-   $593 = ((($6)) + 1|0);
-   $594 = ((($526)) + 1|0);
-   $595 = ((($6)) + 2|0);
-   $596 = ((($526)) + 2|0);
-   $597 = ((($6)) + 3|0);
-   $598 = ((($526)) + 3|0);
-   $599 = ((($6)) + 4|0);
-   $600 = ((($526)) + 4|0);
-   $601 = ((($599)) + 1|0);
-   $602 = ((($526)) + 5|0);
-   $603 = ((($599)) + 2|0);
-   $604 = ((($526)) + 6|0);
-   $605 = ((($599)) + 3|0);
-   $606 = ((($526)) + 7|0);
-   $607 = ((($6)) + 8|0);
-   $608 = ((($0)) + 88|0);
-   $609 = ((($607)) + 1|0);
-   $610 = ((($0)) + 89|0);
-   $611 = ((($607)) + 2|0);
-   $612 = ((($0)) + 90|0);
-   $613 = ((($607)) + 3|0);
-   $614 = ((($0)) + 91|0);
-   $615 = ((($6)) + 12|0);
-   $616 = ((($0)) + 92|0);
-   $617 = ((($615)) + 1|0);
-   $618 = ((($0)) + 93|0);
-   $619 = ((($615)) + 2|0);
-   $620 = ((($0)) + 94|0);
-   $621 = ((($615)) + 3|0);
-   $622 = ((($0)) + 95|0);
-   $623 = ((($6)) + 1|0);
-   $624 = ((($6)) + 2|0);
-   $625 = ((($6)) + 3|0);
-   $626 = ((($6)) + 4|0);
-   $627 = ((($626)) + 1|0);
-   $628 = ((($626)) + 2|0);
-   $629 = ((($626)) + 3|0);
-   $630 = ((($6)) + 8|0);
-   $631 = ((($630)) + 1|0);
-   $632 = ((($630)) + 2|0);
-   $633 = ((($630)) + 3|0);
-   $634 = ((($6)) + 12|0);
-   $635 = ((($634)) + 1|0);
-   $636 = ((($634)) + 2|0);
-   $637 = ((($634)) + 3|0);
-   $$1150 = $3;$$175149 = $1;$$177148 = $2;
-   while(1) {
-    $638 = $514;
-    $639 = $638;
-    $640 = HEAP32[$639>>2]|0;
-    $641 = (($638) + 4)|0;
-    $642 = $641;
-    $643 = HEAP32[$642>>2]|0;
-    $644 = (_i64Add(($640|0),($643|0),1,0)|0);
-    $645 = tempRet0;
-    $646 = $514;
-    $647 = $646;
-    HEAP32[$647>>2] = $644;
-    $648 = (($646) + 4)|0;
-    $649 = $648;
-    HEAP32[$649>>2] = $645;
-    $650 = ($644|0)==(0);
-    $651 = (0)==(0);
-    $652 = $650 & $651;
-    if ($652) {
-     label = 34;
-    } else {
-     $653 = (_llvm_cttz_i32(($644|0))|0);
-     $654 = ($653>>>0)<(16);
-     if ($654) {
-      $655 = (($520) + ($653<<4)|0);
-      $$0 = $655;
-     } else {
-      label = 34;
-     }
-    }
-    if ((label|0) == 34) {
-     label = 0;
-     $656 = (__gcry_cipher_ocb_get_l($0,$6,$644,$645)|0);
-     $$0 = $656;
-    }
-    $657 = $$0;
-    $658 = $657 | $516;
-    $659 = $658 & 3;
-    $660 = ($659|0)==(0);
-    if ($660) {
-     $661 = ((($$0)) + 4|0);
-     $662 = HEAP32[$$0>>2]|0;
-     $663 = HEAP32[$515>>2]|0;
-     $664 = $663 ^ $662;
-     HEAP32[$515>>2] = $664;
-     $665 = ((($$0)) + 8|0);
-     $666 = HEAP32[$661>>2]|0;
-     $667 = HEAP32[$517>>2]|0;
-     $668 = $667 ^ $666;
-     HEAP32[$517>>2] = $668;
-     $669 = ((($$0)) + 12|0);
-     $670 = HEAP32[$665>>2]|0;
-     $671 = HEAP32[$518>>2]|0;
-     $672 = $671 ^ $670;
-     HEAP32[$518>>2] = $672;
-     $673 = HEAP32[$669>>2]|0;
-     $674 = HEAP32[$519>>2]|0;
-     $675 = $674 ^ $673;
-     HEAP32[$519>>2] = $675;
-    } else {
-     $676 = ((($$0)) + 1|0);
-     $677 = HEAP8[$$0>>0]|0;
-     $678 = HEAP8[$515>>0]|0;
-     $679 = $678 ^ $677;
-     HEAP8[$515>>0] = $679;
-     $680 = ((($$0)) + 2|0);
-     $681 = HEAP8[$676>>0]|0;
-     $682 = HEAP8[$533>>0]|0;
-     $683 = $682 ^ $681;
-     HEAP8[$533>>0] = $683;
-     $684 = ((($$0)) + 3|0);
-     $685 = HEAP8[$680>>0]|0;
-     $686 = HEAP8[$534>>0]|0;
-     $687 = $686 ^ $685;
-     HEAP8[$534>>0] = $687;
-     $688 = ((($$0)) + 4|0);
-     $689 = HEAP8[$684>>0]|0;
-     $690 = HEAP8[$535>>0]|0;
-     $691 = $690 ^ $689;
-     HEAP8[$535>>0] = $691;
-     $692 = ((($$0)) + 5|0);
-     $693 = HEAP8[$688>>0]|0;
-     $694 = HEAP8[$536>>0]|0;
-     $695 = $694 ^ $693;
-     HEAP8[$536>>0] = $695;
-     $696 = ((($$0)) + 6|0);
-     $697 = HEAP8[$692>>0]|0;
-     $698 = HEAP8[$537>>0]|0;
-     $699 = $698 ^ $697;
-     HEAP8[$537>>0] = $699;
-     $700 = ((($$0)) + 7|0);
-     $701 = HEAP8[$696>>0]|0;
-     $702 = HEAP8[$538>>0]|0;
-     $703 = $702 ^ $701;
-     HEAP8[$538>>0] = $703;
-     $704 = ((($$0)) + 8|0);
-     $705 = HEAP8[$700>>0]|0;
-     $706 = HEAP8[$539>>0]|0;
-     $707 = $706 ^ $705;
-     HEAP8[$539>>0] = $707;
-     $708 = ((($$0)) + 9|0);
-     $709 = HEAP8[$704>>0]|0;
-     $710 = HEAP8[$540>>0]|0;
-     $711 = $710 ^ $709;
-     HEAP8[$540>>0] = $711;
-     $712 = ((($$0)) + 10|0);
-     $713 = HEAP8[$708>>0]|0;
-     $714 = HEAP8[$541>>0]|0;
-     $715 = $714 ^ $713;
-     HEAP8[$541>>0] = $715;
-     $716 = ((($$0)) + 11|0);
-     $717 = HEAP8[$712>>0]|0;
-     $718 = HEAP8[$542>>0]|0;
-     $719 = $718 ^ $717;
-     HEAP8[$542>>0] = $719;
-     $720 = ((($$0)) + 12|0);
-     $721 = HEAP8[$716>>0]|0;
-     $722 = HEAP8[$543>>0]|0;
-     $723 = $722 ^ $721;
-     HEAP8[$543>>0] = $723;
-     $724 = ((($$0)) + 13|0);
-     $725 = HEAP8[$720>>0]|0;
-     $726 = HEAP8[$544>>0]|0;
-     $727 = $726 ^ $725;
-     HEAP8[$544>>0] = $727;
-     $728 = ((($$0)) + 14|0);
-     $729 = HEAP8[$724>>0]|0;
-     $730 = HEAP8[$545>>0]|0;
-     $731 = $730 ^ $729;
-     HEAP8[$545>>0] = $731;
-     $732 = ((($$0)) + 15|0);
-     $733 = HEAP8[$728>>0]|0;
-     $734 = HEAP8[$546>>0]|0;
-     $735 = $734 ^ $733;
-     HEAP8[$546>>0] = $735;
-     $736 = HEAP8[$732>>0]|0;
-     $737 = HEAP8[$547>>0]|0;
-     $738 = $737 ^ $736;
-     HEAP8[$547>>0] = $738;
-    }
-    $739 = $$177148;
-    $740 = $739 & 3;
-    $741 = ($740|0)==(0);
-    if ($741) {
-     $742 = ((($$177148)) + 4|0);
-     $743 = HEAP32[$$177148>>2]|0;
-     HEAP32[$6>>2] = $743;
-     $744 = ((($$177148)) + 8|0);
-     $745 = HEAP32[$742>>2]|0;
-     HEAP32[$521>>2] = $745;
-     $746 = ((($$177148)) + 12|0);
-     $747 = HEAP32[$744>>2]|0;
-     HEAP32[$522>>2] = $747;
-     $748 = HEAP32[$746>>2]|0;
-     HEAP32[$523>>2] = $748;
-    } else {
-     $749 = ((($$177148)) + 1|0);
-     $750 = HEAP8[$$177148>>0]|0;
-     HEAP8[$6>>0] = $750;
-     $751 = ((($$177148)) + 2|0);
-     $752 = HEAP8[$749>>0]|0;
-     HEAP8[$548>>0] = $752;
-     $753 = ((($$177148)) + 3|0);
-     $754 = HEAP8[$751>>0]|0;
-     HEAP8[$549>>0] = $754;
-     $755 = ((($$177148)) + 4|0);
-     $756 = HEAP8[$753>>0]|0;
-     HEAP8[$550>>0] = $756;
-     $757 = ((($$177148)) + 5|0);
-     $758 = HEAP8[$755>>0]|0;
-     HEAP8[$551>>0] = $758;
-     $759 = ((($$177148)) + 6|0);
-     $760 = HEAP8[$757>>0]|0;
-     HEAP8[$552>>0] = $760;
-     $761 = ((($$177148)) + 7|0);
-     $762 = HEAP8[$759>>0]|0;
-     HEAP8[$553>>0] = $762;
-     $763 = ((($$177148)) + 8|0);
-     $764 = HEAP8[$761>>0]|0;
-     HEAP8[$554>>0] = $764;
-     $765 = ((($$177148)) + 9|0);
-     $766 = HEAP8[$763>>0]|0;
-     HEAP8[$555>>0] = $766;
-     $767 = ((($$177148)) + 10|0);
-     $768 = HEAP8[$765>>0]|0;
-     HEAP8[$556>>0] = $768;
-     $769 = ((($$177148)) + 11|0);
-     $770 = HEAP8[$767>>0]|0;
-     HEAP8[$557>>0] = $770;
-     $771 = ((($$177148)) + 12|0);
-     $772 = HEAP8[$769>>0]|0;
-     HEAP8[$558>>0] = $772;
-     $773 = ((($$177148)) + 13|0);
-     $774 = HEAP8[$771>>0]|0;
-     HEAP8[$559>>0] = $774;
-     $775 = ((($$177148)) + 14|0);
-     $776 = HEAP8[$773>>0]|0;
-     HEAP8[$560>>0] = $776;
-     $777 = ((($$177148)) + 15|0);
-     $778 = HEAP8[$775>>0]|0;
-     HEAP8[$561>>0] = $778;
-     $779 = HEAP8[$777>>0]|0;
-     HEAP8[$562>>0] = $779;
-    }
-    if ($525) {
-     $780 = HEAP32[$515>>2]|0;
-     $781 = HEAP32[$6>>2]|0;
-     $782 = $781 ^ $780;
-     HEAP32[$6>>2] = $782;
-     $783 = HEAP32[$517>>2]|0;
-     $784 = HEAP32[$521>>2]|0;
-     $785 = $784 ^ $783;
-     HEAP32[$521>>2] = $785;
-     $786 = HEAP32[$518>>2]|0;
-     $787 = HEAP32[$522>>2]|0;
-     $788 = $787 ^ $786;
-     HEAP32[$522>>2] = $788;
-     $789 = HEAP32[$519>>2]|0;
-     $790 = HEAP32[$523>>2]|0;
-     $791 = $790 ^ $789;
-     HEAP32[$523>>2] = $791;
-     $792 = (FUNCTION_TABLE_iiii[$512 & 127]($7,$6,$6)|0);
-     $793 = HEAP32[$515>>2]|0;
-     $794 = HEAP32[$6>>2]|0;
-     $795 = $794 ^ $793;
-     HEAP32[$6>>2] = $795;
-     $796 = HEAP32[$517>>2]|0;
-     $797 = HEAP32[$521>>2]|0;
-     $798 = $797 ^ $796;
-     HEAP32[$521>>2] = $798;
-     $799 = HEAP32[$518>>2]|0;
-     $800 = HEAP32[$522>>2]|0;
-     $801 = $800 ^ $799;
-     HEAP32[$522>>2] = $801;
-     $802 = HEAP32[$519>>2]|0;
-     $803 = HEAP32[$523>>2]|0;
-     $804 = $803 ^ $802;
-     HEAP32[$523>>2] = $804;
-     $1010 = $792;
-    } else {
-     $805 = HEAP8[$515>>0]|0;
-     $806 = HEAP8[$6>>0]|0;
-     $807 = $806 ^ $805;
-     HEAP8[$6>>0] = $807;
-     $808 = HEAP8[$563>>0]|0;
-     $809 = HEAP8[$564>>0]|0;
-     $810 = $809 ^ $808;
-     HEAP8[$564>>0] = $810;
-     $811 = HEAP8[$565>>0]|0;
-     $812 = HEAP8[$566>>0]|0;
-     $813 = $812 ^ $811;
-     HEAP8[$566>>0] = $813;
-     $814 = HEAP8[$567>>0]|0;
-     $815 = HEAP8[$568>>0]|0;
-     $816 = $815 ^ $814;
-     HEAP8[$568>>0] = $816;
-     $817 = HEAP8[$569>>0]|0;
-     $818 = HEAP8[$570>>0]|0;
-     $819 = $818 ^ $817;
-     HEAP8[$570>>0] = $819;
-     $820 = HEAP8[$571>>0]|0;
-     $821 = HEAP8[$572>>0]|0;
-     $822 = $821 ^ $820;
-     HEAP8[$572>>0] = $822;
-     $823 = HEAP8[$573>>0]|0;
-     $824 = HEAP8[$574>>0]|0;
-     $825 = $824 ^ $823;
-     HEAP8[$574>>0] = $825;
-     $826 = HEAP8[$575>>0]|0;
-     $827 = HEAP8[$576>>0]|0;
-     $828 = $827 ^ $826;
-     HEAP8[$576>>0] = $828;
-     $829 = HEAP8[$577>>0]|0;
-     $830 = HEAP8[$578>>0]|0;
-     $831 = $830 ^ $829;
-     HEAP8[$578>>0] = $831;
-     $832 = HEAP8[$579>>0]|0;
-     $833 = HEAP8[$580>>0]|0;
-     $834 = $833 ^ $832;
-     HEAP8[$580>>0] = $834;
-     $835 = HEAP8[$581>>0]|0;
-     $836 = HEAP8[$582>>0]|0;
-     $837 = $836 ^ $835;
-     HEAP8[$582>>0] = $837;
-     $838 = HEAP8[$583>>0]|0;
-     $839 = HEAP8[$584>>0]|0;
-     $840 = $839 ^ $838;
-     HEAP8[$584>>0] = $840;
-     $841 = HEAP8[$585>>0]|0;
-     $842 = HEAP8[$586>>0]|0;
-     $843 = $842 ^ $841;
-     HEAP8[$586>>0] = $843;
-     $844 = HEAP8[$587>>0]|0;
-     $845 = HEAP8[$588>>0]|0;
-     $846 = $845 ^ $844;
-     HEAP8[$588>>0] = $846;
-     $847 = HEAP8[$589>>0]|0;
-     $848 = HEAP8[$590>>0]|0;
-     $849 = $848 ^ $847;
-     HEAP8[$590>>0] = $849;
-     $850 = HEAP8[$591>>0]|0;
-     $851 = HEAP8[$592>>0]|0;
-     $852 = $851 ^ $850;
-     HEAP8[$592>>0] = $852;
-     $853 = (FUNCTION_TABLE_iiii[$512 & 127]($7,$6,$6)|0);
-     $854 = HEAP8[$515>>0]|0;
-     $855 = HEAP8[$6>>0]|0;
-     $856 = $855 ^ $854;
-     HEAP8[$6>>0] = $856;
-     $857 = HEAP8[$563>>0]|0;
-     $858 = HEAP8[$564>>0]|0;
-     $859 = $858 ^ $857;
-     HEAP8[$564>>0] = $859;
-     $860 = HEAP8[$565>>0]|0;
-     $861 = HEAP8[$566>>0]|0;
-     $862 = $861 ^ $860;
-     HEAP8[$566>>0] = $862;
-     $863 = HEAP8[$567>>0]|0;
-     $864 = HEAP8[$568>>0]|0;
-     $865 = $864 ^ $863;
-     HEAP8[$568>>0] = $865;
-     $866 = HEAP8[$569>>0]|0;
-     $867 = HEAP8[$570>>0]|0;
-     $868 = $867 ^ $866;
-     HEAP8[$570>>0] = $868;
-     $869 = HEAP8[$571>>0]|0;
-     $870 = HEAP8[$572>>0]|0;
-     $871 = $870 ^ $869;
-     HEAP8[$572>>0] = $871;
-     $872 = HEAP8[$573>>0]|0;
-     $873 = HEAP8[$574>>0]|0;
-     $874 = $873 ^ $872;
-     HEAP8[$574>>0] = $874;
-     $875 = HEAP8[$575>>0]|0;
-     $876 = HEAP8[$576>>0]|0;
-     $877 = $876 ^ $875;
-     HEAP8[$576>>0] = $877;
-     $878 = HEAP8[$577>>0]|0;
-     $879 = HEAP8[$578>>0]|0;
-     $880 = $879 ^ $878;
-     HEAP8[$578>>0] = $880;
-     $881 = HEAP8[$579>>0]|0;
-     $882 = HEAP8[$580>>0]|0;
-     $883 = $882 ^ $881;
-     HEAP8[$580>>0] = $883;
-     $884 = HEAP8[$581>>0]|0;
-     $885 = HEAP8[$582>>0]|0;
-     $886 = $885 ^ $884;
-     HEAP8[$582>>0] = $886;
-     $887 = HEAP8[$583>>0]|0;
-     $888 = HEAP8[$584>>0]|0;
-     $889 = $888 ^ $887;
-     HEAP8[$584>>0] = $889;
-     $890 = HEAP8[$585>>0]|0;
-     $891 = HEAP8[$586>>0]|0;
-     $892 = $891 ^ $890;
-     HEAP8[$586>>0] = $892;
-     $893 = HEAP8[$587>>0]|0;
-     $894 = HEAP8[$588>>0]|0;
-     $895 = $894 ^ $893;
-     HEAP8[$588>>0] = $895;
-     $896 = HEAP8[$589>>0]|0;
-     $897 = HEAP8[$590>>0]|0;
-     $898 = $897 ^ $896;
-     HEAP8[$590>>0] = $898;
-     $899 = HEAP8[$591>>0]|0;
-     $900 = HEAP8[$592>>0]|0;
-     $901 = $900 ^ $899;
-     HEAP8[$592>>0] = $901;
-     $1010 = $853;
-    }
-    if ($529) {
-     $902 = HEAP32[$6>>2]|0;
-     $903 = HEAP32[$526>>2]|0;
-     $904 = $903 ^ $902;
-     HEAP32[$526>>2] = $904;
-     $905 = HEAP32[$521>>2]|0;
-     $906 = HEAP32[$530>>2]|0;
-     $907 = $906 ^ $905;
-     HEAP32[$530>>2] = $907;
-     $908 = HEAP32[$522>>2]|0;
-     $909 = HEAP32[$531>>2]|0;
-     $910 = $909 ^ $908;
-     HEAP32[$531>>2] = $910;
-     $911 = HEAP32[$523>>2]|0;
-     $912 = HEAP32[$532>>2]|0;
-     $913 = $912 ^ $911;
-     HEAP32[$532>>2] = $913;
-    } else {
-     $914 = HEAP8[$6>>0]|0;
-     $915 = HEAP8[$526>>0]|0;
-     $916 = $915 ^ $914;
-     HEAP8[$526>>0] = $916;
-     $917 = HEAP8[$593>>0]|0;
-     $918 = HEAP8[$594>>0]|0;
-     $919 = $918 ^ $917;
-     HEAP8[$594>>0] = $919;
-     $920 = HEAP8[$595>>0]|0;
-     $921 = HEAP8[$596>>0]|0;
-     $922 = $921 ^ $920;
-     HEAP8[$596>>0] = $922;
-     $923 = HEAP8[$597>>0]|0;
-     $924 = HEAP8[$598>>0]|0;
-     $925 = $924 ^ $923;
-     HEAP8[$598>>0] = $925;
-     $926 = HEAP8[$599>>0]|0;
-     $927 = HEAP8[$600>>0]|0;
-     $928 = $927 ^ $926;
-     HEAP8[$600>>0] = $928;
-     $929 = HEAP8[$601>>0]|0;
-     $930 = HEAP8[$602>>0]|0;
-     $931 = $930 ^ $929;
-     HEAP8[$602>>0] = $931;
-     $932 = HEAP8[$603>>0]|0;
-     $933 = HEAP8[$604>>0]|0;
-     $934 = $933 ^ $932;
-     HEAP8[$604>>0] = $934;
-     $935 = HEAP8[$605>>0]|0;
-     $936 = HEAP8[$606>>0]|0;
-     $937 = $936 ^ $935;
-     HEAP8[$606>>0] = $937;
-     $938 = HEAP8[$607>>0]|0;
-     $939 = HEAP8[$608>>0]|0;
-     $940 = $939 ^ $938;
-     HEAP8[$608>>0] = $940;
-     $941 = HEAP8[$609>>0]|0;
-     $942 = HEAP8[$610>>0]|0;
-     $943 = $942 ^ $941;
-     HEAP8[$610>>0] = $943;
-     $944 = HEAP8[$611>>0]|0;
-     $945 = HEAP8[$612>>0]|0;
-     $946 = $945 ^ $944;
-     HEAP8[$612>>0] = $946;
-     $947 = HEAP8[$613>>0]|0;
-     $948 = HEAP8[$614>>0]|0;
-     $949 = $948 ^ $947;
-     HEAP8[$614>>0] = $949;
-     $950 = HEAP8[$615>>0]|0;
-     $951 = HEAP8[$616>>0]|0;
-     $952 = $951 ^ $950;
-     HEAP8[$616>>0] = $952;
-     $953 = HEAP8[$617>>0]|0;
-     $954 = HEAP8[$618>>0]|0;
-     $955 = $954 ^ $953;
-     HEAP8[$618>>0] = $955;
-     $956 = HEAP8[$619>>0]|0;
-     $957 = HEAP8[$620>>0]|0;
-     $958 = $957 ^ $956;
-     HEAP8[$620>>0] = $958;
-     $959 = HEAP8[$621>>0]|0;
-     $960 = HEAP8[$622>>0]|0;
-     $961 = $960 ^ $959;
-     HEAP8[$622>>0] = $961;
-    }
-    $962 = $$175149;
-    $963 = $962 & 3;
-    $964 = ($963|0)==(0);
-    if ($964) {
-     $965 = HEAP32[$6>>2]|0;
-     $966 = ((($$175149)) + 4|0);
-     HEAP32[$$175149>>2] = $965;
-     $967 = HEAP32[$521>>2]|0;
-     $968 = ((($$175149)) + 8|0);
-     HEAP32[$966>>2] = $967;
-     $969 = HEAP32[$522>>2]|0;
-     $970 = ((($$175149)) + 12|0);
-     HEAP32[$968>>2] = $969;
-     $971 = HEAP32[$523>>2]|0;
-     HEAP32[$970>>2] = $971;
-    } else {
-     $972 = HEAP8[$6>>0]|0;
-     $973 = ((($$175149)) + 1|0);
-     HEAP8[$$175149>>0] = $972;
-     $974 = HEAP8[$623>>0]|0;
-     $975 = ((($$175149)) + 2|0);
-     HEAP8[$973>>0] = $974;
-     $976 = HEAP8[$624>>0]|0;
-     $977 = ((($$175149)) + 3|0);
-     HEAP8[$975>>0] = $976;
-     $978 = HEAP8[$625>>0]|0;
-     $979 = ((($$175149)) + 4|0);
-     HEAP8[$977>>0] = $978;
-     $980 = HEAP8[$626>>0]|0;
-     $981 = ((($$175149)) + 5|0);
-     HEAP8[$979>>0] = $980;
-     $982 = HEAP8[$627>>0]|0;
-     $983 = ((($$175149)) + 6|0);
-     HEAP8[$981>>0] = $982;
-     $984 = HEAP8[$628>>0]|0;
-     $985 = ((($$175149)) + 7|0);
-     HEAP8[$983>>0] = $984;
-     $986 = HEAP8[$629>>0]|0;
-     $987 = ((($$175149)) + 8|0);
-     HEAP8[$985>>0] = $986;
-     $988 = HEAP8[$630>>0]|0;
-     $989 = ((($$175149)) + 9|0);
-     HEAP8[$987>>0] = $988;
-     $990 = HEAP8[$631>>0]|0;
-     $991 = ((($$175149)) + 10|0);
-     HEAP8[$989>>0] = $990;
-     $992 = HEAP8[$632>>0]|0;
-     $993 = ((($$175149)) + 11|0);
-     HEAP8[$991>>0] = $992;
-     $994 = HEAP8[$633>>0]|0;
-     $995 = ((($$175149)) + 12|0);
-     HEAP8[$993>>0] = $994;
-     $996 = HEAP8[$634>>0]|0;
-     $997 = ((($$175149)) + 13|0);
-     HEAP8[$995>>0] = $996;
-     $998 = HEAP8[$635>>0]|0;
-     $999 = ((($$175149)) + 14|0);
-     HEAP8[$997>>0] = $998;
-     $1000 = HEAP8[$636>>0]|0;
-     $1001 = ((($$175149)) + 15|0);
-     HEAP8[$999>>0] = $1000;
-     $1002 = HEAP8[$637>>0]|0;
-     HEAP8[$1001>>0] = $1002;
-    }
-    $1003 = ((($$177148)) + 16|0);
-    $1004 = ((($$175149)) + 16|0);
-    $1005 = (($$1150) + -1)|0;
-    $1006 = ($1005|0)==(0);
-    if ($1006) {
-     $$180$lcssa = $1010;
-     break;
-    } else {
-     $$1150 = $1005;$$175149 = $1004;$$177148 = $1003;
-    }
-   }
-  }
-  $$2 = $$180$lcssa;
- } else {
-  $9 = ((($7)) + 496|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)==(0|0);
-  if (!($11)) {
-   FUNCTION_TABLE_v[$10 & 127]();
-  }
-  $15 = ((($7)) + 488|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = ($3|0)==(0);
-  if ($17) {
-   $$079$lcssa = 0;
-  } else {
-   $18 = ((($0)) + 464|0);
-   $19 = ((($0)) + 64|0);
-   $20 = $19;
-   $21 = ((($19)) + 4|0);
-   $22 = ((($0)) + 72|0);
-   $23 = ((($0)) + 76|0);
-   $24 = ((($0)) + 160|0);
-   $25 = ((($5)) + 4|0);
-   $26 = ((($5)) + 8|0);
-   $27 = ((($5)) + 12|0);
-   $28 = ((($0)) + 80|0);
-   $29 = $28;
-   $30 = $29 & 3;
-   $31 = ($30|0)==(0);
-   $32 = ((($28)) + 4|0);
-   $33 = ((($0)) + 88|0);
-   $34 = ((($0)) + 92|0);
-   $35 = $20 & 3;
-   $36 = ($35|0)==(0);
-   $37 = ((($19)) + 1|0);
-   $38 = ((($19)) + 2|0);
-   $39 = ((($19)) + 3|0);
-   $40 = ((($19)) + 4|0);
-   $41 = ((($19)) + 5|0);
-   $42 = ((($19)) + 6|0);
-   $43 = ((($19)) + 7|0);
-   $44 = ((($0)) + 72|0);
-   $45 = ((($0)) + 73|0);
-   $46 = ((($0)) + 74|0);
-   $47 = ((($0)) + 75|0);
-   $48 = ((($0)) + 76|0);
-   $49 = ((($0)) + 77|0);
-   $50 = ((($0)) + 78|0);
-   $51 = ((($0)) + 79|0);
-   $52 = ((($5)) + 1|0);
-   $53 = ((($5)) + 2|0);
-   $54 = ((($5)) + 3|0);
-   $55 = ((($5)) + 4|0);
-   $56 = ((($55)) + 1|0);
-   $57 = ((($55)) + 2|0);
-   $58 = ((($55)) + 3|0);
-   $59 = ((($5)) + 8|0);
-   $60 = ((($59)) + 1|0);
-   $61 = ((($59)) + 2|0);
-   $62 = ((($59)) + 3|0);
-   $63 = ((($5)) + 12|0);
-   $64 = ((($63)) + 1|0);
-   $65 = ((($63)) + 2|0);
-   $66 = ((($63)) + 3|0);
-   $67 = ((($5)) + 1|0);
-   $68 = ((($28)) + 1|0);
-   $69 = ((($5)) + 2|0);
-   $70 = ((($28)) + 2|0);
-   $71 = ((($5)) + 3|0);
-   $72 = ((($28)) + 3|0);
-   $73 = ((($5)) + 4|0);
-   $74 = ((($28)) + 4|0);
-   $75 = ((($73)) + 1|0);
-   $76 = ((($28)) + 5|0);
-   $77 = ((($73)) + 2|0);
-   $78 = ((($28)) + 6|0);
-   $79 = ((($73)) + 3|0);
-   $80 = ((($28)) + 7|0);
-   $81 = ((($5)) + 8|0);
-   $82 = ((($0)) + 88|0);
-   $83 = ((($81)) + 1|0);
-   $84 = ((($0)) + 89|0);
-   $85 = ((($81)) + 2|0);
-   $86 = ((($0)) + 90|0);
-   $87 = ((($81)) + 3|0);
-   $88 = ((($0)) + 91|0);
-   $89 = ((($5)) + 12|0);
-   $90 = ((($0)) + 92|0);
-   $91 = ((($89)) + 1|0);
-   $92 = ((($0)) + 93|0);
-   $93 = ((($89)) + 2|0);
-   $94 = ((($0)) + 94|0);
-   $95 = ((($89)) + 3|0);
-   $96 = ((($0)) + 95|0);
-   $97 = ((($19)) + 1|0);
-   $98 = ((($5)) + 1|0);
-   $99 = ((($19)) + 2|0);
-   $100 = ((($5)) + 2|0);
-   $101 = ((($19)) + 3|0);
-   $102 = ((($5)) + 3|0);
-   $103 = ((($19)) + 4|0);
-   $104 = ((($5)) + 4|0);
-   $105 = ((($19)) + 5|0);
-   $106 = ((($104)) + 1|0);
-   $107 = ((($19)) + 6|0);
-   $108 = ((($104)) + 2|0);
-   $109 = ((($19)) + 7|0);
-   $110 = ((($104)) + 3|0);
-   $111 = ((($0)) + 72|0);
-   $112 = ((($5)) + 8|0);
-   $113 = ((($0)) + 73|0);
-   $114 = ((($112)) + 1|0);
-   $115 = ((($0)) + 74|0);
-   $116 = ((($112)) + 2|0);
-   $117 = ((($0)) + 75|0);
-   $118 = ((($112)) + 3|0);
-   $119 = ((($0)) + 76|0);
-   $120 = ((($5)) + 12|0);
-   $121 = ((($0)) + 77|0);
-   $122 = ((($120)) + 1|0);
-   $123 = ((($0)) + 78|0);
-   $124 = ((($120)) + 2|0);
-   $125 = ((($0)) + 79|0);
-   $126 = ((($120)) + 3|0);
-   $127 = ((($5)) + 1|0);
-   $128 = ((($5)) + 2|0);
-   $129 = ((($5)) + 3|0);
-   $130 = ((($5)) + 4|0);
-   $131 = ((($130)) + 1|0);
-   $132 = ((($130)) + 2|0);
-   $133 = ((($130)) + 3|0);
-   $134 = ((($5)) + 8|0);
-   $135 = ((($134)) + 1|0);
-   $136 = ((($134)) + 2|0);
-   $137 = ((($134)) + 3|0);
-   $138 = ((($5)) + 12|0);
-   $139 = ((($138)) + 1|0);
-   $140 = ((($138)) + 2|0);
-   $141 = ((($138)) + 3|0);
-   $$073153 = $3;$$074152 = $1;$$076151 = $2;
-   while(1) {
-    $142 = $18;
-    $143 = $142;
-    $144 = HEAP32[$143>>2]|0;
-    $145 = (($142) + 4)|0;
-    $146 = $145;
-    $147 = HEAP32[$146>>2]|0;
-    $148 = (_i64Add(($144|0),($147|0),1,0)|0);
-    $149 = tempRet0;
-    $150 = $18;
-    $151 = $150;
-    HEAP32[$151>>2] = $148;
-    $152 = (($150) + 4)|0;
-    $153 = $152;
-    HEAP32[$153>>2] = $149;
-    $154 = ($148|0)==(0);
-    $155 = (0)==(0);
-    $156 = $154 & $155;
-    if ($156) {
-     label = 11;
-    } else {
-     $157 = (_llvm_cttz_i32(($148|0))|0);
-     $158 = ($157>>>0)<(16);
-     if ($158) {
-      $159 = (($24) + ($157<<4)|0);
-      $$078 = $159;
-     } else {
-      label = 11;
-     }
-    }
-    if ((label|0) == 11) {
-     label = 0;
-     $160 = (__gcry_cipher_ocb_get_l($0,$5,$148,$149)|0);
-     $$078 = $160;
-    }
-    $161 = $$078;
-    $162 = $161 | $20;
-    $163 = $162 & 3;
-    $164 = ($163|0)==(0);
-    if ($164) {
-     $165 = ((($$078)) + 4|0);
-     $166 = HEAP32[$$078>>2]|0;
-     $167 = HEAP32[$19>>2]|0;
-     $168 = $167 ^ $166;
-     HEAP32[$19>>2] = $168;
-     $169 = ((($$078)) + 8|0);
-     $170 = HEAP32[$165>>2]|0;
-     $171 = HEAP32[$21>>2]|0;
-     $172 = $171 ^ $170;
-     HEAP32[$21>>2] = $172;
-     $173 = ((($$078)) + 12|0);
-     $174 = HEAP32[$169>>2]|0;
-     $175 = HEAP32[$22>>2]|0;
-     $176 = $175 ^ $174;
-     HEAP32[$22>>2] = $176;
-     $177 = HEAP32[$173>>2]|0;
-     $178 = HEAP32[$23>>2]|0;
-     $179 = $178 ^ $177;
-     HEAP32[$23>>2] = $179;
-    } else {
-     $180 = ((($$078)) + 1|0);
-     $181 = HEAP8[$$078>>0]|0;
-     $182 = HEAP8[$19>>0]|0;
-     $183 = $182 ^ $181;
-     HEAP8[$19>>0] = $183;
-     $184 = ((($$078)) + 2|0);
-     $185 = HEAP8[$180>>0]|0;
-     $186 = HEAP8[$37>>0]|0;
-     $187 = $186 ^ $185;
-     HEAP8[$37>>0] = $187;
-     $188 = ((($$078)) + 3|0);
-     $189 = HEAP8[$184>>0]|0;
-     $190 = HEAP8[$38>>0]|0;
-     $191 = $190 ^ $189;
-     HEAP8[$38>>0] = $191;
-     $192 = ((($$078)) + 4|0);
-     $193 = HEAP8[$188>>0]|0;
-     $194 = HEAP8[$39>>0]|0;
-     $195 = $194 ^ $193;
-     HEAP8[$39>>0] = $195;
-     $196 = ((($$078)) + 5|0);
-     $197 = HEAP8[$192>>0]|0;
-     $198 = HEAP8[$40>>0]|0;
-     $199 = $198 ^ $197;
-     HEAP8[$40>>0] = $199;
-     $200 = ((($$078)) + 6|0);
-     $201 = HEAP8[$196>>0]|0;
-     $202 = HEAP8[$41>>0]|0;
-     $203 = $202 ^ $201;
-     HEAP8[$41>>0] = $203;
-     $204 = ((($$078)) + 7|0);
-     $205 = HEAP8[$200>>0]|0;
-     $206 = HEAP8[$42>>0]|0;
-     $207 = $206 ^ $205;
-     HEAP8[$42>>0] = $207;
-     $208 = ((($$078)) + 8|0);
-     $209 = HEAP8[$204>>0]|0;
-     $210 = HEAP8[$43>>0]|0;
-     $211 = $210 ^ $209;
-     HEAP8[$43>>0] = $211;
-     $212 = ((($$078)) + 9|0);
-     $213 = HEAP8[$208>>0]|0;
-     $214 = HEAP8[$44>>0]|0;
-     $215 = $214 ^ $213;
-     HEAP8[$44>>0] = $215;
-     $216 = ((($$078)) + 10|0);
-     $217 = HEAP8[$212>>0]|0;
-     $218 = HEAP8[$45>>0]|0;
-     $219 = $218 ^ $217;
-     HEAP8[$45>>0] = $219;
-     $220 = ((($$078)) + 11|0);
-     $221 = HEAP8[$216>>0]|0;
-     $222 = HEAP8[$46>>0]|0;
-     $223 = $222 ^ $221;
-     HEAP8[$46>>0] = $223;
-     $224 = ((($$078)) + 12|0);
-     $225 = HEAP8[$220>>0]|0;
-     $226 = HEAP8[$47>>0]|0;
-     $227 = $226 ^ $225;
-     HEAP8[$47>>0] = $227;
-     $228 = ((($$078)) + 13|0);
-     $229 = HEAP8[$224>>0]|0;
-     $230 = HEAP8[$48>>0]|0;
-     $231 = $230 ^ $229;
-     HEAP8[$48>>0] = $231;
-     $232 = ((($$078)) + 14|0);
-     $233 = HEAP8[$228>>0]|0;
-     $234 = HEAP8[$49>>0]|0;
-     $235 = $234 ^ $233;
-     HEAP8[$49>>0] = $235;
-     $236 = ((($$078)) + 15|0);
-     $237 = HEAP8[$232>>0]|0;
-     $238 = HEAP8[$50>>0]|0;
-     $239 = $238 ^ $237;
-     HEAP8[$50>>0] = $239;
-     $240 = HEAP8[$236>>0]|0;
-     $241 = HEAP8[$51>>0]|0;
-     $242 = $241 ^ $240;
-     HEAP8[$51>>0] = $242;
-    }
-    $243 = $$076151;
-    $244 = $243 & 3;
-    $245 = ($244|0)==(0);
-    if ($245) {
-     $246 = ((($$076151)) + 4|0);
-     $247 = HEAP32[$$076151>>2]|0;
-     HEAP32[$5>>2] = $247;
-     $248 = ((($$076151)) + 8|0);
-     $249 = HEAP32[$246>>2]|0;
-     HEAP32[$25>>2] = $249;
-     $250 = ((($$076151)) + 12|0);
-     $251 = HEAP32[$248>>2]|0;
-     HEAP32[$26>>2] = $251;
-     $252 = HEAP32[$250>>2]|0;
-     HEAP32[$27>>2] = $252;
-    } else {
-     $253 = ((($$076151)) + 1|0);
-     $254 = HEAP8[$$076151>>0]|0;
-     HEAP8[$5>>0] = $254;
-     $255 = ((($$076151)) + 2|0);
-     $256 = HEAP8[$253>>0]|0;
-     HEAP8[$52>>0] = $256;
-     $257 = ((($$076151)) + 3|0);
-     $258 = HEAP8[$255>>0]|0;
-     HEAP8[$53>>0] = $258;
-     $259 = ((($$076151)) + 4|0);
-     $260 = HEAP8[$257>>0]|0;
-     HEAP8[$54>>0] = $260;
-     $261 = ((($$076151)) + 5|0);
-     $262 = HEAP8[$259>>0]|0;
-     HEAP8[$55>>0] = $262;
-     $263 = ((($$076151)) + 6|0);
-     $264 = HEAP8[$261>>0]|0;
-     HEAP8[$56>>0] = $264;
-     $265 = ((($$076151)) + 7|0);
-     $266 = HEAP8[$263>>0]|0;
-     HEAP8[$57>>0] = $266;
-     $267 = ((($$076151)) + 8|0);
-     $268 = HEAP8[$265>>0]|0;
-     HEAP8[$58>>0] = $268;
-     $269 = ((($$076151)) + 9|0);
-     $270 = HEAP8[$267>>0]|0;
-     HEAP8[$59>>0] = $270;
-     $271 = ((($$076151)) + 10|0);
-     $272 = HEAP8[$269>>0]|0;
-     HEAP8[$60>>0] = $272;
-     $273 = ((($$076151)) + 11|0);
-     $274 = HEAP8[$271>>0]|0;
-     HEAP8[$61>>0] = $274;
-     $275 = ((($$076151)) + 12|0);
-     $276 = HEAP8[$273>>0]|0;
-     HEAP8[$62>>0] = $276;
-     $277 = ((($$076151)) + 13|0);
-     $278 = HEAP8[$275>>0]|0;
-     HEAP8[$63>>0] = $278;
-     $279 = ((($$076151)) + 14|0);
-     $280 = HEAP8[$277>>0]|0;
-     HEAP8[$64>>0] = $280;
-     $281 = ((($$076151)) + 15|0);
-     $282 = HEAP8[$279>>0]|0;
-     HEAP8[$65>>0] = $282;
-     $283 = HEAP8[$281>>0]|0;
-     HEAP8[$66>>0] = $283;
-    }
-    if ($31) {
-     $284 = HEAP32[$5>>2]|0;
-     $285 = HEAP32[$28>>2]|0;
-     $286 = $285 ^ $284;
-     HEAP32[$28>>2] = $286;
-     $287 = HEAP32[$25>>2]|0;
-     $288 = HEAP32[$32>>2]|0;
-     $289 = $288 ^ $287;
-     HEAP32[$32>>2] = $289;
-     $290 = HEAP32[$26>>2]|0;
-     $291 = HEAP32[$33>>2]|0;
-     $292 = $291 ^ $290;
-     HEAP32[$33>>2] = $292;
-     $293 = HEAP32[$27>>2]|0;
-     $294 = HEAP32[$34>>2]|0;
-     $295 = $294 ^ $293;
-     HEAP32[$34>>2] = $295;
-    } else {
-     $296 = HEAP8[$5>>0]|0;
-     $297 = HEAP8[$28>>0]|0;
-     $298 = $297 ^ $296;
-     HEAP8[$28>>0] = $298;
-     $299 = HEAP8[$67>>0]|0;
-     $300 = HEAP8[$68>>0]|0;
-     $301 = $300 ^ $299;
-     HEAP8[$68>>0] = $301;
-     $302 = HEAP8[$69>>0]|0;
-     $303 = HEAP8[$70>>0]|0;
-     $304 = $303 ^ $302;
-     HEAP8[$70>>0] = $304;
-     $305 = HEAP8[$71>>0]|0;
-     $306 = HEAP8[$72>>0]|0;
-     $307 = $306 ^ $305;
-     HEAP8[$72>>0] = $307;
-     $308 = HEAP8[$73>>0]|0;
-     $309 = HEAP8[$74>>0]|0;
-     $310 = $309 ^ $308;
-     HEAP8[$74>>0] = $310;
-     $311 = HEAP8[$75>>0]|0;
-     $312 = HEAP8[$76>>0]|0;
-     $313 = $312 ^ $311;
-     HEAP8[$76>>0] = $313;
-     $314 = HEAP8[$77>>0]|0;
-     $315 = HEAP8[$78>>0]|0;
-     $316 = $315 ^ $314;
-     HEAP8[$78>>0] = $316;
-     $317 = HEAP8[$79>>0]|0;
-     $318 = HEAP8[$80>>0]|0;
-     $319 = $318 ^ $317;
-     HEAP8[$80>>0] = $319;
-     $320 = HEAP8[$81>>0]|0;
-     $321 = HEAP8[$82>>0]|0;
-     $322 = $321 ^ $320;
-     HEAP8[$82>>0] = $322;
-     $323 = HEAP8[$83>>0]|0;
-     $324 = HEAP8[$84>>0]|0;
-     $325 = $324 ^ $323;
-     HEAP8[$84>>0] = $325;
-     $326 = HEAP8[$85>>0]|0;
-     $327 = HEAP8[$86>>0]|0;
-     $328 = $327 ^ $326;
-     HEAP8[$86>>0] = $328;
-     $329 = HEAP8[$87>>0]|0;
-     $330 = HEAP8[$88>>0]|0;
-     $331 = $330 ^ $329;
-     HEAP8[$88>>0] = $331;
-     $332 = HEAP8[$89>>0]|0;
-     $333 = HEAP8[$90>>0]|0;
-     $334 = $333 ^ $332;
-     HEAP8[$90>>0] = $334;
-     $335 = HEAP8[$91>>0]|0;
-     $336 = HEAP8[$92>>0]|0;
-     $337 = $336 ^ $335;
-     HEAP8[$92>>0] = $337;
-     $338 = HEAP8[$93>>0]|0;
-     $339 = HEAP8[$94>>0]|0;
-     $340 = $339 ^ $338;
-     HEAP8[$94>>0] = $340;
-     $341 = HEAP8[$95>>0]|0;
-     $342 = HEAP8[$96>>0]|0;
-     $343 = $342 ^ $341;
-     HEAP8[$96>>0] = $343;
-    }
-    if ($36) {
-     $344 = HEAP32[$19>>2]|0;
-     $345 = HEAP32[$5>>2]|0;
-     $346 = $345 ^ $344;
-     HEAP32[$5>>2] = $346;
-     $347 = HEAP32[$21>>2]|0;
-     $348 = HEAP32[$25>>2]|0;
-     $349 = $348 ^ $347;
-     HEAP32[$25>>2] = $349;
-     $350 = HEAP32[$22>>2]|0;
-     $351 = HEAP32[$26>>2]|0;
-     $352 = $351 ^ $350;
-     HEAP32[$26>>2] = $352;
-     $353 = HEAP32[$23>>2]|0;
-     $354 = HEAP32[$27>>2]|0;
-     $355 = $354 ^ $353;
-     HEAP32[$27>>2] = $355;
-     $356 = (FUNCTION_TABLE_iiii[$16 & 127]($7,$5,$5)|0);
-     $357 = HEAP32[$19>>2]|0;
-     $358 = HEAP32[$5>>2]|0;
-     $359 = $358 ^ $357;
-     HEAP32[$5>>2] = $359;
-     $360 = HEAP32[$21>>2]|0;
-     $361 = HEAP32[$25>>2]|0;
-     $362 = $361 ^ $360;
-     HEAP32[$25>>2] = $362;
-     $363 = HEAP32[$22>>2]|0;
-     $364 = HEAP32[$26>>2]|0;
-     $365 = $364 ^ $363;
-     HEAP32[$26>>2] = $365;
-     $366 = HEAP32[$23>>2]|0;
-     $367 = HEAP32[$27>>2]|0;
-     $368 = $367 ^ $366;
-     HEAP32[$27>>2] = $368;
-     $1009 = $356;
-    } else {
-     $369 = HEAP8[$19>>0]|0;
-     $370 = HEAP8[$5>>0]|0;
-     $371 = $370 ^ $369;
-     HEAP8[$5>>0] = $371;
-     $372 = HEAP8[$97>>0]|0;
-     $373 = HEAP8[$98>>0]|0;
-     $374 = $373 ^ $372;
-     HEAP8[$98>>0] = $374;
-     $375 = HEAP8[$99>>0]|0;
-     $376 = HEAP8[$100>>0]|0;
-     $377 = $376 ^ $375;
-     HEAP8[$100>>0] = $377;
-     $378 = HEAP8[$101>>0]|0;
-     $379 = HEAP8[$102>>0]|0;
-     $380 = $379 ^ $378;
-     HEAP8[$102>>0] = $380;
-     $381 = HEAP8[$103>>0]|0;
-     $382 = HEAP8[$104>>0]|0;
-     $383 = $382 ^ $381;
-     HEAP8[$104>>0] = $383;
-     $384 = HEAP8[$105>>0]|0;
-     $385 = HEAP8[$106>>0]|0;
-     $386 = $385 ^ $384;
-     HEAP8[$106>>0] = $386;
-     $387 = HEAP8[$107>>0]|0;
-     $388 = HEAP8[$108>>0]|0;
-     $389 = $388 ^ $387;
-     HEAP8[$108>>0] = $389;
-     $390 = HEAP8[$109>>0]|0;
-     $391 = HEAP8[$110>>0]|0;
-     $392 = $391 ^ $390;
-     HEAP8[$110>>0] = $392;
-     $393 = HEAP8[$111>>0]|0;
-     $394 = HEAP8[$112>>0]|0;
-     $395 = $394 ^ $393;
-     HEAP8[$112>>0] = $395;
-     $396 = HEAP8[$113>>0]|0;
-     $397 = HEAP8[$114>>0]|0;
-     $398 = $397 ^ $396;
-     HEAP8[$114>>0] = $398;
-     $399 = HEAP8[$115>>0]|0;
-     $400 = HEAP8[$116>>0]|0;
-     $401 = $400 ^ $399;
-     HEAP8[$116>>0] = $401;
-     $402 = HEAP8[$117>>0]|0;
-     $403 = HEAP8[$118>>0]|0;
-     $404 = $403 ^ $402;
-     HEAP8[$118>>0] = $404;
-     $405 = HEAP8[$119>>0]|0;
-     $406 = HEAP8[$120>>0]|0;
-     $407 = $406 ^ $405;
-     HEAP8[$120>>0] = $407;
-     $408 = HEAP8[$121>>0]|0;
-     $409 = HEAP8[$122>>0]|0;
-     $410 = $409 ^ $408;
-     HEAP8[$122>>0] = $410;
-     $411 = HEAP8[$123>>0]|0;
-     $412 = HEAP8[$124>>0]|0;
-     $413 = $412 ^ $411;
-     HEAP8[$124>>0] = $413;
-     $414 = HEAP8[$125>>0]|0;
-     $415 = HEAP8[$126>>0]|0;
-     $416 = $415 ^ $414;
-     HEAP8[$126>>0] = $416;
-     $417 = (FUNCTION_TABLE_iiii[$16 & 127]($7,$5,$5)|0);
-     $418 = HEAP8[$19>>0]|0;
-     $419 = HEAP8[$5>>0]|0;
-     $420 = $419 ^ $418;
-     HEAP8[$5>>0] = $420;
-     $421 = HEAP8[$97>>0]|0;
-     $422 = HEAP8[$98>>0]|0;
-     $423 = $422 ^ $421;
-     HEAP8[$98>>0] = $423;
-     $424 = HEAP8[$99>>0]|0;
-     $425 = HEAP8[$100>>0]|0;
-     $426 = $425 ^ $424;
-     HEAP8[$100>>0] = $426;
-     $427 = HEAP8[$101>>0]|0;
-     $428 = HEAP8[$102>>0]|0;
-     $429 = $428 ^ $427;
-     HEAP8[$102>>0] = $429;
-     $430 = HEAP8[$103>>0]|0;
-     $431 = HEAP8[$104>>0]|0;
-     $432 = $431 ^ $430;
-     HEAP8[$104>>0] = $432;
-     $433 = HEAP8[$105>>0]|0;
-     $434 = HEAP8[$106>>0]|0;
-     $435 = $434 ^ $433;
-     HEAP8[$106>>0] = $435;
-     $436 = HEAP8[$107>>0]|0;
-     $437 = HEAP8[$108>>0]|0;
-     $438 = $437 ^ $436;
-     HEAP8[$108>>0] = $438;
-     $439 = HEAP8[$109>>0]|0;
-     $440 = HEAP8[$110>>0]|0;
-     $441 = $440 ^ $439;
-     HEAP8[$110>>0] = $441;
-     $442 = HEAP8[$111>>0]|0;
-     $443 = HEAP8[$112>>0]|0;
-     $444 = $443 ^ $442;
-     HEAP8[$112>>0] = $444;
-     $445 = HEAP8[$113>>0]|0;
-     $446 = HEAP8[$114>>0]|0;
-     $447 = $446 ^ $445;
-     HEAP8[$114>>0] = $447;
-     $448 = HEAP8[$115>>0]|0;
-     $449 = HEAP8[$116>>0]|0;
-     $450 = $449 ^ $448;
-     HEAP8[$116>>0] = $450;
-     $451 = HEAP8[$117>>0]|0;
-     $452 = HEAP8[$118>>0]|0;
-     $453 = $452 ^ $451;
-     HEAP8[$118>>0] = $453;
-     $454 = HEAP8[$119>>0]|0;
-     $455 = HEAP8[$120>>0]|0;
-     $456 = $455 ^ $454;
-     HEAP8[$120>>0] = $456;
-     $457 = HEAP8[$121>>0]|0;
-     $458 = HEAP8[$122>>0]|0;
-     $459 = $458 ^ $457;
-     HEAP8[$122>>0] = $459;
-     $460 = HEAP8[$123>>0]|0;
-     $461 = HEAP8[$124>>0]|0;
-     $462 = $461 ^ $460;
-     HEAP8[$124>>0] = $462;
-     $463 = HEAP8[$125>>0]|0;
-     $464 = HEAP8[$126>>0]|0;
-     $465 = $464 ^ $463;
-     HEAP8[$126>>0] = $465;
-     $1009 = $417;
-    }
-    $466 = $$074152;
-    $467 = $466 & 3;
-    $468 = ($467|0)==(0);
-    if ($468) {
-     $469 = HEAP32[$5>>2]|0;
-     $470 = ((($$074152)) + 4|0);
-     HEAP32[$$074152>>2] = $469;
-     $471 = HEAP32[$25>>2]|0;
-     $472 = ((($$074152)) + 8|0);
-     HEAP32[$470>>2] = $471;
-     $473 = HEAP32[$26>>2]|0;
-     $474 = ((($$074152)) + 12|0);
-     HEAP32[$472>>2] = $473;
-     $475 = HEAP32[$27>>2]|0;
-     HEAP32[$474>>2] = $475;
-    } else {
-     $476 = HEAP8[$5>>0]|0;
-     $477 = ((($$074152)) + 1|0);
-     HEAP8[$$074152>>0] = $476;
-     $478 = HEAP8[$127>>0]|0;
-     $479 = ((($$074152)) + 2|0);
-     HEAP8[$477>>0] = $478;
-     $480 = HEAP8[$128>>0]|0;
-     $481 = ((($$074152)) + 3|0);
-     HEAP8[$479>>0] = $480;
-     $482 = HEAP8[$129>>0]|0;
-     $483 = ((($$074152)) + 4|0);
-     HEAP8[$481>>0] = $482;
-     $484 = HEAP8[$130>>0]|0;
-     $485 = ((($$074152)) + 5|0);
-     HEAP8[$483>>0] = $484;
-     $486 = HEAP8[$131>>0]|0;
-     $487 = ((($$074152)) + 6|0);
-     HEAP8[$485>>0] = $486;
-     $488 = HEAP8[$132>>0]|0;
-     $489 = ((($$074152)) + 7|0);
-     HEAP8[$487>>0] = $488;
-     $490 = HEAP8[$133>>0]|0;
-     $491 = ((($$074152)) + 8|0);
-     HEAP8[$489>>0] = $490;
-     $492 = HEAP8[$134>>0]|0;
-     $493 = ((($$074152)) + 9|0);
-     HEAP8[$491>>0] = $492;
-     $494 = HEAP8[$135>>0]|0;
-     $495 = ((($$074152)) + 10|0);
-     HEAP8[$493>>0] = $494;
-     $496 = HEAP8[$136>>0]|0;
-     $497 = ((($$074152)) + 11|0);
-     HEAP8[$495>>0] = $496;
-     $498 = HEAP8[$137>>0]|0;
-     $499 = ((($$074152)) + 12|0);
-     HEAP8[$497>>0] = $498;
-     $500 = HEAP8[$138>>0]|0;
-     $501 = ((($$074152)) + 13|0);
-     HEAP8[$499>>0] = $500;
-     $502 = HEAP8[$139>>0]|0;
-     $503 = ((($$074152)) + 14|0);
-     HEAP8[$501>>0] = $502;
-     $504 = HEAP8[$140>>0]|0;
-     $505 = ((($$074152)) + 15|0);
-     HEAP8[$503>>0] = $504;
-     $506 = HEAP8[$141>>0]|0;
-     HEAP8[$505>>0] = $506;
-    }
-    $507 = ((($$076151)) + 16|0);
-    $508 = ((($$074152)) + 16|0);
-    $509 = (($$073153) + -1)|0;
-    $510 = ($509|0)==(0);
-    if ($510) {
-     $$079$lcssa = $1009;
-     break;
-    } else {
-     $$073153 = $509;$$074152 = $508;$$076151 = $507;
-    }
-   }
-  }
-  $$2 = $$079$lcssa;
- }
- $1007 = ($$2|0)==(0);
- if ($1007) {
-  STACKTOP = sp;return;
- }
- $1008 = (($$2) + 16)|0;
- ___gcry_burn_stack($1008);
- STACKTOP = sp;return;
-}
-function __gcry_aes_ocb_auth($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$06590 = 0, $$071 = 0, $$091 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, 
$103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, 
$110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0;
- var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 
= 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0;
- var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 
= 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 
= 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0;
- var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, 
$158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, 
$165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0;
- var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 
= 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 
= 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0;
- var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 
= 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 
= 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0;
- var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 
= 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 
= 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0;
- var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 
= 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 
= 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0;
- var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, 
$249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, 
$256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0;
- var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, 
$267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, 
$274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0;
- var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 
= 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 
= 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0;
- var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 
0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 
0, $310 = 0, $311 = 0, $312 = 0, $313 = 0;
- var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 
= 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 
= 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0;
- var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, 
$339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, 
$346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0;
- var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, 
$357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, 
$364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0;
- var $369 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0;
- var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 
0, $7 = 0, $70 = 0, $71 = 0;
- var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, 
$8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0;
- var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- $4 = ((($0)) + 496|0);
- $5 = ((($4)) + 496|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)==(0|0);
- if (!($7)) {
-  FUNCTION_TABLE_v[$6 & 127]();
- }
- $8 = ((($4)) + 488|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($2|0)==(0);
- if ($10) {
-  $11 = $3;
-  $12 = $11;
-  HEAP32[$12>>2] = 0;
-  $13 = (($11) + 4)|0;
-  $14 = $13;
-  HEAP32[$14>>2] = 0;
-  $15 = ((($3)) + 8|0);
-  $16 = $15;
-  $17 = $16;
-  HEAP32[$17>>2] = 0;
-  $18 = (($16) + 4)|0;
-  $19 = $18;
-  HEAP32[$19>>2] = 0;
-  STACKTOP = sp;return;
- }
- $20 = ((($0)) + 472|0);
- $21 = ((($0)) + 432|0);
- $22 = $21;
- $23 = ((($0)) + 436|0);
- $24 = ((($0)) + 440|0);
- $25 = ((($0)) + 444|0);
- $26 = ((($0)) + 160|0);
- $27 = ((($3)) + 4|0);
- $28 = ((($3)) + 8|0);
- $29 = ((($3)) + 12|0);
- $30 = ((($0)) + 448|0);
- $31 = $30;
- $32 = $31 & 3;
- $33 = ($32|0)==(0);
- $34 = ((($0)) + 452|0);
- $35 = ((($0)) + 456|0);
- $36 = ((($0)) + 460|0);
- $37 = ((($21)) + 1|0);
- $38 = ((($21)) + 2|0);
- $39 = ((($21)) + 3|0);
- $40 = ((($0)) + 436|0);
- $41 = ((($40)) + 1|0);
- $42 = ((($40)) + 2|0);
- $43 = ((($40)) + 3|0);
- $44 = ((($0)) + 440|0);
- $45 = ((($44)) + 1|0);
- $46 = ((($44)) + 2|0);
- $47 = ((($44)) + 3|0);
- $48 = ((($0)) + 444|0);
- $49 = ((($48)) + 1|0);
- $50 = ((($48)) + 2|0);
- $51 = ((($48)) + 3|0);
- $52 = ((($21)) + 1|0);
- $53 = ((($3)) + 1|0);
- $54 = ((($21)) + 2|0);
- $55 = ((($3)) + 2|0);
- $56 = ((($21)) + 3|0);
- $57 = ((($3)) + 3|0);
- $58 = ((($0)) + 436|0);
- $59 = ((($3)) + 4|0);
- $60 = ((($58)) + 1|0);
- $61 = ((($59)) + 1|0);
- $62 = ((($58)) + 2|0);
- $63 = ((($59)) + 2|0);
- $64 = ((($58)) + 3|0);
- $65 = ((($59)) + 3|0);
- $66 = ((($0)) + 440|0);
- $67 = ((($3)) + 8|0);
- $68 = ((($66)) + 1|0);
- $69 = ((($67)) + 1|0);
- $70 = ((($66)) + 2|0);
- $71 = ((($67)) + 2|0);
- $72 = ((($66)) + 3|0);
- $73 = ((($67)) + 3|0);
- $74 = ((($0)) + 444|0);
- $75 = ((($3)) + 12|0);
- $76 = ((($74)) + 1|0);
- $77 = ((($75)) + 1|0);
- $78 = ((($74)) + 2|0);
- $79 = ((($75)) + 2|0);
- $80 = ((($74)) + 3|0);
- $81 = ((($75)) + 3|0);
- $82 = ((($3)) + 1|0);
- $83 = ((($30)) + 1|0);
- $84 = ((($3)) + 2|0);
- $85 = ((($30)) + 2|0);
- $86 = ((($3)) + 3|0);
- $87 = ((($30)) + 3|0);
- $88 = ((($3)) + 4|0);
- $89 = ((($0)) + 452|0);
- $90 = ((($88)) + 1|0);
- $91 = ((($89)) + 1|0);
- $92 = ((($88)) + 2|0);
- $93 = ((($89)) + 2|0);
- $94 = ((($88)) + 3|0);
- $95 = ((($89)) + 3|0);
- $96 = ((($3)) + 8|0);
- $97 = ((($0)) + 456|0);
- $98 = ((($96)) + 1|0);
- $99 = ((($97)) + 1|0);
- $100 = ((($96)) + 2|0);
- $101 = ((($97)) + 2|0);
- $102 = ((($96)) + 3|0);
- $103 = ((($97)) + 3|0);
- $104 = ((($3)) + 12|0);
- $105 = ((($0)) + 460|0);
- $106 = ((($104)) + 1|0);
- $107 = ((($105)) + 1|0);
- $108 = ((($104)) + 2|0);
- $109 = ((($105)) + 2|0);
- $110 = ((($104)) + 3|0);
- $111 = ((($105)) + 3|0);
- $$06590 = $1;$$091 = $2;
- while(1) {
-  $112 = $20;
-  $113 = $112;
-  $114 = HEAP32[$113>>2]|0;
-  $115 = (($112) + 4)|0;
-  $116 = $115;
-  $117 = HEAP32[$116>>2]|0;
-  $118 = (_i64Add(($114|0),($117|0),1,0)|0);
-  $119 = tempRet0;
-  $120 = $20;
-  $121 = $120;
-  HEAP32[$121>>2] = $118;
-  $122 = (($120) + 4)|0;
-  $123 = $122;
-  HEAP32[$123>>2] = $119;
-  $124 = ($118|0)==(0);
-  $125 = (0)==(0);
-  $126 = $124 & $125;
-  if ($126) {
-   label = 9;
-  } else {
-   $127 = (_llvm_cttz_i32(($118|0))|0);
-   $128 = ($127>>>0)<(16);
-   if ($128) {
-    $129 = (($26) + ($127<<4)|0);
-    $$071 = $129;
-   } else {
-    label = 9;
-   }
-  }
-  if ((label|0) == 9) {
-   label = 0;
-   $130 = (__gcry_cipher_ocb_get_l($0,$3,$118,$119)|0);
-   $$071 = $130;
-  }
-  $131 = $$071;
-  $132 = $131 | $22;
-  $133 = $132 & 3;
-  $134 = ($133|0)==(0);
-  if ($134) {
-   $135 = ((($$071)) + 4|0);
-   $136 = HEAP32[$$071>>2]|0;
-   $137 = HEAP32[$21>>2]|0;
-   $138 = $137 ^ $136;
-   HEAP32[$21>>2] = $138;
-   $139 = ((($$071)) + 8|0);
-   $140 = HEAP32[$135>>2]|0;
-   $141 = HEAP32[$23>>2]|0;
-   $142 = $141 ^ $140;
-   HEAP32[$23>>2] = $142;
-   $143 = ((($$071)) + 12|0);
-   $144 = HEAP32[$139>>2]|0;
-   $145 = HEAP32[$24>>2]|0;
-   $146 = $145 ^ $144;
-   HEAP32[$24>>2] = $146;
-   $147 = HEAP32[$143>>2]|0;
-   $148 = HEAP32[$25>>2]|0;
-   $149 = $148 ^ $147;
-   HEAP32[$25>>2] = $149;
-  } else {
-   $150 = ((($$071)) + 1|0);
-   $151 = HEAP8[$$071>>0]|0;
-   $152 = HEAP8[$21>>0]|0;
-   $153 = $152 ^ $151;
-   HEAP8[$21>>0] = $153;
-   $154 = ((($$071)) + 2|0);
-   $155 = HEAP8[$150>>0]|0;
-   $156 = HEAP8[$37>>0]|0;
-   $157 = $156 ^ $155;
-   HEAP8[$37>>0] = $157;
-   $158 = ((($$071)) + 3|0);
-   $159 = HEAP8[$154>>0]|0;
-   $160 = HEAP8[$38>>0]|0;
-   $161 = $160 ^ $159;
-   HEAP8[$38>>0] = $161;
-   $162 = ((($$071)) + 4|0);
-   $163 = HEAP8[$158>>0]|0;
-   $164 = HEAP8[$39>>0]|0;
-   $165 = $164 ^ $163;
-   HEAP8[$39>>0] = $165;
-   $166 = ((($$071)) + 5|0);
-   $167 = HEAP8[$162>>0]|0;
-   $168 = HEAP8[$40>>0]|0;
-   $169 = $168 ^ $167;
-   HEAP8[$40>>0] = $169;
-   $170 = ((($$071)) + 6|0);
-   $171 = HEAP8[$166>>0]|0;
-   $172 = HEAP8[$41>>0]|0;
-   $173 = $172 ^ $171;
-   HEAP8[$41>>0] = $173;
-   $174 = ((($$071)) + 7|0);
-   $175 = HEAP8[$170>>0]|0;
-   $176 = HEAP8[$42>>0]|0;
-   $177 = $176 ^ $175;
-   HEAP8[$42>>0] = $177;
-   $178 = ((($$071)) + 8|0);
-   $179 = HEAP8[$174>>0]|0;
-   $180 = HEAP8[$43>>0]|0;
-   $181 = $180 ^ $179;
-   HEAP8[$43>>0] = $181;
-   $182 = ((($$071)) + 9|0);
-   $183 = HEAP8[$178>>0]|0;
-   $184 = HEAP8[$44>>0]|0;
-   $185 = $184 ^ $183;
-   HEAP8[$44>>0] = $185;
-   $186 = ((($$071)) + 10|0);
-   $187 = HEAP8[$182>>0]|0;
-   $188 = HEAP8[$45>>0]|0;
-   $189 = $188 ^ $187;
-   HEAP8[$45>>0] = $189;
-   $190 = ((($$071)) + 11|0);
-   $191 = HEAP8[$186>>0]|0;
-   $192 = HEAP8[$46>>0]|0;
-   $193 = $192 ^ $191;
-   HEAP8[$46>>0] = $193;
-   $194 = ((($$071)) + 12|0);
-   $195 = HEAP8[$190>>0]|0;
-   $196 = HEAP8[$47>>0]|0;
-   $197 = $196 ^ $195;
-   HEAP8[$47>>0] = $197;
-   $198 = ((($$071)) + 13|0);
-   $199 = HEAP8[$194>>0]|0;
-   $200 = HEAP8[$48>>0]|0;
-   $201 = $200 ^ $199;
-   HEAP8[$48>>0] = $201;
-   $202 = ((($$071)) + 14|0);
-   $203 = HEAP8[$198>>0]|0;
-   $204 = HEAP8[$49>>0]|0;
-   $205 = $204 ^ $203;
-   HEAP8[$49>>0] = $205;
-   $206 = ((($$071)) + 15|0);
-   $207 = HEAP8[$202>>0]|0;
-   $208 = HEAP8[$50>>0]|0;
-   $209 = $208 ^ $207;
-   HEAP8[$50>>0] = $209;
-   $210 = HEAP8[$206>>0]|0;
-   $211 = HEAP8[$51>>0]|0;
-   $212 = $211 ^ $210;
-   HEAP8[$51>>0] = $212;
-  }
-  $213 = $$06590;
-  $214 = $213 | $22;
-  $215 = $214 & 3;
-  $216 = ($215|0)==(0);
-  if ($216) {
-   $217 = HEAP32[$21>>2]|0;
-   $218 = ((($$06590)) + 4|0);
-   $219 = HEAP32[$$06590>>2]|0;
-   $220 = $219 ^ $217;
-   HEAP32[$3>>2] = $220;
-   $221 = HEAP32[$23>>2]|0;
-   $222 = ((($$06590)) + 8|0);
-   $223 = HEAP32[$218>>2]|0;
-   $224 = $223 ^ $221;
-   HEAP32[$27>>2] = $224;
-   $225 = HEAP32[$24>>2]|0;
-   $226 = ((($$06590)) + 12|0);
-   $227 = HEAP32[$222>>2]|0;
-   $228 = $227 ^ $225;
-   HEAP32[$28>>2] = $228;
-   $229 = HEAP32[$25>>2]|0;
-   $230 = HEAP32[$226>>2]|0;
-   $231 = $230 ^ $229;
-   HEAP32[$29>>2] = $231;
-  } else {
-   $232 = HEAP8[$21>>0]|0;
-   $233 = ((($$06590)) + 1|0);
-   $234 = HEAP8[$$06590>>0]|0;
-   $235 = $234 ^ $232;
-   HEAP8[$3>>0] = $235;
-   $236 = HEAP8[$52>>0]|0;
-   $237 = ((($$06590)) + 2|0);
-   $238 = HEAP8[$233>>0]|0;
-   $239 = $238 ^ $236;
-   HEAP8[$53>>0] = $239;
-   $240 = HEAP8[$54>>0]|0;
-   $241 = ((($$06590)) + 3|0);
-   $242 = HEAP8[$237>>0]|0;
-   $243 = $242 ^ $240;
-   HEAP8[$55>>0] = $243;
-   $244 = HEAP8[$56>>0]|0;
-   $245 = ((($$06590)) + 4|0);
-   $246 = HEAP8[$241>>0]|0;
-   $247 = $246 ^ $244;
-   HEAP8[$57>>0] = $247;
-   $248 = HEAP8[$58>>0]|0;
-   $249 = ((($$06590)) + 5|0);
-   $250 = HEAP8[$245>>0]|0;
-   $251 = $250 ^ $248;
-   HEAP8[$59>>0] = $251;
-   $252 = HEAP8[$60>>0]|0;
-   $253 = ((($$06590)) + 6|0);
-   $254 = HEAP8[$249>>0]|0;
-   $255 = $254 ^ $252;
-   HEAP8[$61>>0] = $255;
-   $256 = HEAP8[$62>>0]|0;
-   $257 = ((($$06590)) + 7|0);
-   $258 = HEAP8[$253>>0]|0;
-   $259 = $258 ^ $256;
-   HEAP8[$63>>0] = $259;
-   $260 = HEAP8[$64>>0]|0;
-   $261 = ((($$06590)) + 8|0);
-   $262 = HEAP8[$257>>0]|0;
-   $263 = $262 ^ $260;
-   HEAP8[$65>>0] = $263;
-   $264 = HEAP8[$66>>0]|0;
-   $265 = ((($$06590)) + 9|0);
-   $266 = HEAP8[$261>>0]|0;
-   $267 = $266 ^ $264;
-   HEAP8[$67>>0] = $267;
-   $268 = HEAP8[$68>>0]|0;
-   $269 = ((($$06590)) + 10|0);
-   $270 = HEAP8[$265>>0]|0;
-   $271 = $270 ^ $268;
-   HEAP8[$69>>0] = $271;
-   $272 = HEAP8[$70>>0]|0;
-   $273 = ((($$06590)) + 11|0);
-   $274 = HEAP8[$269>>0]|0;
-   $275 = $274 ^ $272;
-   HEAP8[$71>>0] = $275;
-   $276 = HEAP8[$72>>0]|0;
-   $277 = ((($$06590)) + 12|0);
-   $278 = HEAP8[$273>>0]|0;
-   $279 = $278 ^ $276;
-   HEAP8[$73>>0] = $279;
-   $280 = HEAP8[$74>>0]|0;
-   $281 = ((($$06590)) + 13|0);
-   $282 = HEAP8[$277>>0]|0;
-   $283 = $282 ^ $280;
-   HEAP8[$75>>0] = $283;
-   $284 = HEAP8[$76>>0]|0;
-   $285 = ((($$06590)) + 14|0);
-   $286 = HEAP8[$281>>0]|0;
-   $287 = $286 ^ $284;
-   HEAP8[$77>>0] = $287;
-   $288 = HEAP8[$78>>0]|0;
-   $289 = ((($$06590)) + 15|0);
-   $290 = HEAP8[$285>>0]|0;
-   $291 = $290 ^ $288;
-   HEAP8[$79>>0] = $291;
-   $292 = HEAP8[$80>>0]|0;
-   $293 = HEAP8[$289>>0]|0;
-   $294 = $293 ^ $292;
-   HEAP8[$81>>0] = $294;
-  }
-  $295 = (FUNCTION_TABLE_iiii[$9 & 127]($4,$3,$3)|0);
-  if ($33) {
-   $296 = HEAP32[$3>>2]|0;
-   $297 = HEAP32[$30>>2]|0;
-   $298 = $297 ^ $296;
-   HEAP32[$30>>2] = $298;
-   $299 = HEAP32[$27>>2]|0;
-   $300 = HEAP32[$34>>2]|0;
-   $301 = $300 ^ $299;
-   HEAP32[$34>>2] = $301;
-   $302 = HEAP32[$28>>2]|0;
-   $303 = HEAP32[$35>>2]|0;
-   $304 = $303 ^ $302;
-   HEAP32[$35>>2] = $304;
-   $305 = HEAP32[$29>>2]|0;
-   $306 = HEAP32[$36>>2]|0;
-   $307 = $306 ^ $305;
-   HEAP32[$36>>2] = $307;
-  } else {
-   $308 = HEAP8[$3>>0]|0;
-   $309 = HEAP8[$30>>0]|0;
-   $310 = $309 ^ $308;
-   HEAP8[$30>>0] = $310;
-   $311 = HEAP8[$82>>0]|0;
-   $312 = HEAP8[$83>>0]|0;
-   $313 = $312 ^ $311;
-   HEAP8[$83>>0] = $313;
-   $314 = HEAP8[$84>>0]|0;
-   $315 = HEAP8[$85>>0]|0;
-   $316 = $315 ^ $314;
-   HEAP8[$85>>0] = $316;
-   $317 = HEAP8[$86>>0]|0;
-   $318 = HEAP8[$87>>0]|0;
-   $319 = $318 ^ $317;
-   HEAP8[$87>>0] = $319;
-   $320 = HEAP8[$88>>0]|0;
-   $321 = HEAP8[$89>>0]|0;
-   $322 = $321 ^ $320;
-   HEAP8[$89>>0] = $322;
-   $323 = HEAP8[$90>>0]|0;
-   $324 = HEAP8[$91>>0]|0;
-   $325 = $324 ^ $323;
-   HEAP8[$91>>0] = $325;
-   $326 = HEAP8[$92>>0]|0;
-   $327 = HEAP8[$93>>0]|0;
-   $328 = $327 ^ $326;
-   HEAP8[$93>>0] = $328;
-   $329 = HEAP8[$94>>0]|0;
-   $330 = HEAP8[$95>>0]|0;
-   $331 = $330 ^ $329;
-   HEAP8[$95>>0] = $331;
-   $332 = HEAP8[$96>>0]|0;
-   $333 = HEAP8[$97>>0]|0;
-   $334 = $333 ^ $332;
-   HEAP8[$97>>0] = $334;
-   $335 = HEAP8[$98>>0]|0;
-   $336 = HEAP8[$99>>0]|0;
-   $337 = $336 ^ $335;
-   HEAP8[$99>>0] = $337;
-   $338 = HEAP8[$100>>0]|0;
-   $339 = HEAP8[$101>>0]|0;
-   $340 = $339 ^ $338;
-   HEAP8[$101>>0] = $340;
-   $341 = HEAP8[$102>>0]|0;
-   $342 = HEAP8[$103>>0]|0;
-   $343 = $342 ^ $341;
-   HEAP8[$103>>0] = $343;
-   $344 = HEAP8[$104>>0]|0;
-   $345 = HEAP8[$105>>0]|0;
-   $346 = $345 ^ $344;
-   HEAP8[$105>>0] = $346;
-   $347 = HEAP8[$106>>0]|0;
-   $348 = HEAP8[$107>>0]|0;
-   $349 = $348 ^ $347;
-   HEAP8[$107>>0] = $349;
-   $350 = HEAP8[$108>>0]|0;
-   $351 = HEAP8[$109>>0]|0;
-   $352 = $351 ^ $350;
-   HEAP8[$109>>0] = $352;
-   $353 = HEAP8[$110>>0]|0;
-   $354 = HEAP8[$111>>0]|0;
-   $355 = $354 ^ $353;
-   HEAP8[$111>>0] = $355;
-  }
-  $356 = ((($$06590)) + 16|0);
-  $357 = (($$091) + -1)|0;
-  $358 = ($357|0)==(0);
-  if ($358) {
-   break;
-  } else {
-   $$06590 = $356;$$091 = $357;
-  }
- }
- $359 = $3;
- $360 = $359;
- HEAP32[$360>>2] = 0;
- $361 = (($359) + 4)|0;
- $362 = $361;
- HEAP32[$362>>2] = 0;
- $363 = ((($3)) + 8|0);
- $364 = $363;
- $365 = $364;
- HEAP32[$365>>2] = 0;
- $366 = (($364) + 4)|0;
- $367 = $366;
- HEAP32[$367>>2] = 0;
- $368 = ($295|0)==(0);
- if ($368) {
-  STACKTOP = sp;return;
- }
- $369 = (($295) + 16)|0;
- ___gcry_burn_stack($369);
- STACKTOP = sp;return;
-}
-function _rmd160_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- HEAP32[$2>>2] = 1732584193;
- $3 = ((($0)) + 164|0);
- HEAP32[$3>>2] = -271733879;
- $4 = ((($0)) + 168|0);
- HEAP32[$4>>2] = -1732584194;
- $5 = ((($0)) + 172|0);
- HEAP32[$5>>2] = 271733878;
- $6 = ((($0)) + 176|0);
- HEAP32[$6>>2] = -1009589776;
- $7 = ((($0)) + 128|0);
- $8 = ((($0)) + 148|0);
- 
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;HEAP32[$7+16>>2]=0|0;
- HEAP32[$8>>2] = 64;
- $9 = ((($0)) + 152|0);
- HEAP32[$9>>2] = 76;
- return;
-}
-function _rmd160_final($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 
0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, 
$2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $spec$select = 0, dest = 0, label = 
0, sp = 0, stop = 0;
- sp = STACKTOP;
- __gcry_md_block_write($0,0,0);
- $1 = ((($0)) + 128|0);
- $2 = $1;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = $4 << 6;
- $9 = (_bitshift64Lshr(($4|0),($7|0),26)|0);
- $10 = tempRet0;
- $11 = $9 & 536870848;
- $12 = $4 >>> 26;
- $13 = $11 | $12;
- $14 = ((($0)) + 144|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (($8) + ($15))|0;
- $17 = ($16>>>0)<($8>>>0);
- $18 = $17&1;
- $spec$select = (($13) + ($18))|0;
- $19 = $16 << 3;
- $20 = $spec$select << 3;
- $21 = $16 >>> 29;
- $22 = $20 | $21;
- $23 = ($15|0)<(56);
- $24 = (($15) + 1)|0;
- HEAP32[$14>>2] = $24;
- $25 = (($0) + ($15)|0);
- HEAP8[$25>>0] = -128;
- $26 = HEAP32[$14>>2]|0;
- if ($23) {
-  $27 = ($26|0)<(56);
-  if ($27) {
-   $29 = $26;
-   while(1) {
-    $28 = (($29) + 1)|0;
-    HEAP32[$14>>2] = $28;
-    $30 = (($0) + ($29)|0);
-    HEAP8[$30>>0] = 0;
-    $31 = HEAP32[$14>>2]|0;
-    $32 = ($31|0)<(56);
-    if ($32) {
-     $29 = $31;
-    } else {
-     break;
-    }
-   }
-  }
- } else {
-  $33 = ($26|0)<(64);
-  if ($33) {
-   $35 = $26;
-   while(1) {
-    $34 = (($35) + 1)|0;
-    HEAP32[$14>>2] = $34;
-    $36 = (($0) + ($35)|0);
-    HEAP8[$36>>0] = 0;
-    $37 = HEAP32[$14>>2]|0;
-    $38 = ($37|0)<(64);
-    if ($38) {
-     $35 = $37;
-    } else {
-     break;
-    }
-   }
-  }
-  __gcry_md_block_write($0,0,0);
-  dest=$0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- }
- $39 = ((($0)) + 56|0);
- $40 = $16 >>> 21;
- $41 = $40&255;
- $42 = ((($0)) + 59|0);
- HEAP8[$42>>0] = $41;
- $43 = $16 >>> 13;
- $44 = $43&255;
- $45 = ((($0)) + 58|0);
- HEAP8[$45>>0] = $44;
- $46 = $16 >>> 5;
- $47 = $46&255;
- $48 = ((($0)) + 57|0);
- HEAP8[$48>>0] = $47;
- $49 = $19&255;
- HEAP8[$39>>0] = $49;
- $50 = ((($0)) + 60|0);
- $51 = $spec$select >>> 21;
- $52 = $51&255;
- $53 = ((($0)) + 63|0);
- HEAP8[$53>>0] = $52;
- $54 = $spec$select >>> 13;
- $55 = $54&255;
- $56 = ((($0)) + 62|0);
- HEAP8[$56>>0] = $55;
- $57 = $spec$select >>> 5;
- $58 = $57&255;
- $59 = ((($0)) + 61|0);
- HEAP8[$59>>0] = $58;
- $60 = $22&255;
- HEAP8[$50>>0] = $60;
- (_transform($0,$0,1)|0);
- ___gcry_burn_stack(124);
- $61 = ((($0)) + 160|0);
- $62 = HEAP32[$61>>2]|0;
- $63 = $62 >>> 24;
- $64 = $63&255;
- $65 = ((($0)) + 3|0);
- HEAP8[$65>>0] = $64;
- $66 = $62 >>> 16;
- $67 = $66&255;
- $68 = ((($0)) + 2|0);
- HEAP8[$68>>0] = $67;
- $69 = $62 >>> 8;
- $70 = $69&255;
- $71 = ((($0)) + 1|0);
- HEAP8[$71>>0] = $70;
- $72 = $62&255;
- HEAP8[$0>>0] = $72;
- $73 = ((($0)) + 4|0);
- $74 = ((($0)) + 164|0);
- $75 = HEAP32[$74>>2]|0;
- $76 = $75 >>> 24;
- $77 = $76&255;
- $78 = ((($0)) + 7|0);
- HEAP8[$78>>0] = $77;
- $79 = $75 >>> 16;
- $80 = $79&255;
- $81 = ((($0)) + 6|0);
- HEAP8[$81>>0] = $80;
- $82 = $75 >>> 8;
- $83 = $82&255;
- $84 = ((($0)) + 5|0);
- HEAP8[$84>>0] = $83;
- $85 = $75&255;
- HEAP8[$73>>0] = $85;
- $86 = ((($0)) + 8|0);
- $87 = ((($0)) + 168|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $88 >>> 24;
- $90 = $89&255;
- $91 = ((($0)) + 11|0);
- HEAP8[$91>>0] = $90;
- $92 = $88 >>> 16;
- $93 = $92&255;
- $94 = ((($0)) + 10|0);
- HEAP8[$94>>0] = $93;
- $95 = $88 >>> 8;
- $96 = $95&255;
- $97 = ((($0)) + 9|0);
- HEAP8[$97>>0] = $96;
- $98 = $88&255;
- HEAP8[$86>>0] = $98;
- $99 = ((($0)) + 12|0);
- $100 = ((($0)) + 172|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $101 >>> 24;
- $103 = $102&255;
- $104 = ((($0)) + 15|0);
- HEAP8[$104>>0] = $103;
- $105 = $101 >>> 16;
- $106 = $105&255;
- $107 = ((($0)) + 14|0);
- HEAP8[$107>>0] = $106;
- $108 = $101 >>> 8;
- $109 = $108&255;
- $110 = ((($0)) + 13|0);
- HEAP8[$110>>0] = $109;
- $111 = $101&255;
- HEAP8[$99>>0] = $111;
- $112 = ((($0)) + 16|0);
- $113 = ((($0)) + 176|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $114 >>> 24;
- $116 = $115&255;
- $117 = ((($0)) + 19|0);
- HEAP8[$117>>0] = $116;
- $118 = $114 >>> 16;
- $119 = $118&255;
- $120 = ((($0)) + 18|0);
- HEAP8[$120>>0] = $119;
- $121 = $114 >>> 8;
- $122 = $121&255;
- $123 = ((($0)) + 17|0);
- HEAP8[$123>>0] = $122;
- $124 = $114&255;
- HEAP8[$112>>0] = $124;
- return;
-}
-function _rmd160_read($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function _transform($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$05 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, 
$1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, 
$101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0;
- var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 
0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, 
$1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0;
- var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 
0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, 
$1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0;
- var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 
0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, 
$1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0;
- var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 
0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, 
$1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0;
- var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 
0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, 
$110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0;
- var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 
0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, 
$1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0;
- var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 
0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, 
$1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0;
- var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 
0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, 
$1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0;
- var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 
0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, 
$1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0;
- var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 
0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, 
$1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0;
- var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, 
$1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, 
$1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0;
- var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 
0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, 
$1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0;
- var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 
0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, 
$1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0;
- var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 
0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, 
$1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0;
- var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 
0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, 
$1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0;
- var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 
0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, 
$1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0;
- var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 
0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, 
$1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0;
- var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 
0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, 
$1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0;
- var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 
0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, 
$1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0;
- var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 
0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, 
$1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0;
- var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 
0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, 
$1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0;
- var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 
0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, 
$1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0;
- var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 
0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, 
$1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0;
- var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 
0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, 
$1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0;
- var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 
0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, 
$1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0;
- var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 
0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, 
$1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0;
- var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 
0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, 
$1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0;
- var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 
0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, 
$1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0;
- var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 
0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, 
$1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0;
- var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 
0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, 
$1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0;
- var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 
0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, 
$1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0;
- var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 
0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, 
$1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0;
- var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 
0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, 
$1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0;
- var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 
0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, 
$1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0;
- var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 
0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, 
$1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0;
- var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 
0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, 
$1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0;
- var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 
0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, 
$1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0;
- var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 
0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, 
$1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0;
- var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 
0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, 
$1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0;
- var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 
0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, 
$1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0;
- var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 
0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, 
$1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0;
- var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 
0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, 
$1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0;
- var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 
0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, 
$1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0;
- var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 
0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, 
$1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0;
- var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 
0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, 
$1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0;
- var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 
0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, 
$1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0;
- var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 
0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, 
$1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0;
- var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 
0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, 
$1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0;
- var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 
0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, 
$1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0;
- var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, 
$1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, 
$1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0;
- var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 
0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, 
$1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0;
- var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 
0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, 
$1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0;
- var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 
0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, 
$1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0;
- var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 
0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, 
$1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0;
- var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 
0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $20 = 0, $200 = 0, 
$2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0, $2005 = 0;
- var $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 
0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, 
$2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0, $2023 = 0;
- var $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 
0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, 
$2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0, $2041 = 0;
- var $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 
0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, 
$2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0, $206 = 0;
- var $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 
0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, 
$2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0, $2078 = 0;
- var $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 
0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, 
$2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0, $2096 = 0;
- var $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, 
$2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, 
$2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0, $2113 = 0;
- var $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 
0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, 
$2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0, $2131 = 0;
- var $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 
0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, 
$2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0, $215 = 0;
- var $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 
0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, 
$2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0, $2168 = 0;
- var $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 
0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, 
$2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0, $2186 = 0;
- var $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 
0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, 
$22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0, $2203 = 0;
- var $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 
0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, 
$2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0, $2221 = 0;
- var $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 
0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, 
$2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0, $224 = 0;
- var $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 
0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, 
$2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0, $2258 = 0;
- var $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 
0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, 
$2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0, $2276 = 0;
- var $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 
0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, 
$229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0, $2294 = 0;
- var $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, 
$2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, 
$2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0, $2311 = 0;
- var $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 
0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, 
$2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0, $233 = 0;
- var $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 
0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, 
$2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0, $2348 = 0;
- var $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 
0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, 
$2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0, $2366 = 0;
- var $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 
0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, 
$238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0, $2384 = 0;
- var $2385 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, 
$244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, 
$251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0;
- var $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 
= 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 
= 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0;
- var $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 
= 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 
= 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0;
- var $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, 
$299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, 
$305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0;
- var $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 
= 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0;
- var $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 
= 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0;
- var $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 
= 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0;
- var $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 
= 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 
= 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0;
- var $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, 
$389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, 
$396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0;
- var $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 
= 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0;
- var $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 
= 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0;
- var $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 
= 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0;
- var $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 
= 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 
= 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0;
- var $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, 
$479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, 
$486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0;
- var $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, 
$497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, 
$503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0;
- var $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 
= 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0;
- var $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 
= 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0;
- var $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 
= 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 
= 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0;
- var $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, 
$569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, 
$576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0;
- var $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, 
$587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, 
$594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0;
- var $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 
0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 
0, $612 = 0, $613 = 0, $614 = 0, $615 = 0;
- var $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 
= 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 
= 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0;
- var $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 
= 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 
= 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0;
- var $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, 
$659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, 
$666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0;
- var $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, 
$677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, 
$684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0;
- var $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 
= 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 
0, $702 = 0, $703 = 0, $704 = 0, $705 = 0;
- var $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 
= 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 
= 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0;
- var $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 
= 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 
= 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0;
- var $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, 
$749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, 
$756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0;
- var $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, 
$767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, 
$774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0;
- var $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 
= 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 
= 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0;
- var $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 
0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 
0, $810 = 0, $811 = 0, $812 = 0, $813 = 0;
- var $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 
= 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 
= 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0;
- var $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, 
$839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, 
$846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0;
- var $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, 
$857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, 
$864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0;
- var $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 
= 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 
= 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0;
- var $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 
= 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 
0, $900 = 0, $901 = 0, $902 = 0, $903 = 0;
- var $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 
= 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 
= 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0;
- var $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, 
$929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, 
$936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0;
- var $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, 
$947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, 
$954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0;
- var $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 
= 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 
= 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0;
- var $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 
= 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 
= 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0;
- var $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 160|0);
- $4 = ((($0)) + 164|0);
- $5 = ((($0)) + 168|0);
- $6 = ((($0)) + 172|0);
- $7 = ((($0)) + 176|0);
- $$0 = $1;$$05 = $2;
- while(1) {
-  $8 = ((($$0)) + 3|0);
-  $9 = HEAP8[$8>>0]|0;
-  $10 = $9&255;
-  $11 = $10 << 24;
-  $12 = ((($$0)) + 2|0);
-  $13 = HEAP8[$12>>0]|0;
-  $14 = $13&255;
-  $15 = $14 << 16;
-  $16 = $15 | $11;
-  $17 = ((($$0)) + 1|0);
-  $18 = HEAP8[$17>>0]|0;
-  $19 = $18&255;
-  $20 = $19 << 8;
-  $21 = $16 | $20;
-  $22 = HEAP8[$$0>>0]|0;
-  $23 = $22&255;
-  $24 = $21 | $23;
-  $25 = ((($$0)) + 4|0);
-  $26 = ((($$0)) + 7|0);
-  $27 = HEAP8[$26>>0]|0;
-  $28 = $27&255;
-  $29 = $28 << 24;
-  $30 = ((($$0)) + 6|0);
-  $31 = HEAP8[$30>>0]|0;
-  $32 = $31&255;
-  $33 = $32 << 16;
-  $34 = $33 | $29;
-  $35 = ((($$0)) + 5|0);
-  $36 = HEAP8[$35>>0]|0;
-  $37 = $36&255;
-  $38 = $37 << 8;
-  $39 = $34 | $38;
-  $40 = HEAP8[$25>>0]|0;
-  $41 = $40&255;
-  $42 = $39 | $41;
-  $43 = ((($$0)) + 8|0);
-  $44 = ((($$0)) + 11|0);
-  $45 = HEAP8[$44>>0]|0;
-  $46 = $45&255;
-  $47 = $46 << 24;
-  $48 = ((($$0)) + 10|0);
-  $49 = HEAP8[$48>>0]|0;
-  $50 = $49&255;
-  $51 = $50 << 16;
-  $52 = $51 | $47;
-  $53 = ((($$0)) + 9|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = $54&255;
-  $56 = $55 << 8;
-  $57 = $52 | $56;
-  $58 = HEAP8[$43>>0]|0;
-  $59 = $58&255;
-  $60 = $57 | $59;
-  $61 = ((($$0)) + 12|0);
-  $62 = ((($$0)) + 15|0);
-  $63 = HEAP8[$62>>0]|0;
-  $64 = $63&255;
-  $65 = $64 << 24;
-  $66 = ((($$0)) + 14|0);
-  $67 = HEAP8[$66>>0]|0;
-  $68 = $67&255;
-  $69 = $68 << 16;
-  $70 = $69 | $65;
-  $71 = ((($$0)) + 13|0);
-  $72 = HEAP8[$71>>0]|0;
-  $73 = $72&255;
-  $74 = $73 << 8;
-  $75 = $70 | $74;
-  $76 = HEAP8[$61>>0]|0;
-  $77 = $76&255;
-  $78 = $75 | $77;
-  $79 = ((($$0)) + 16|0);
-  $80 = ((($$0)) + 19|0);
-  $81 = HEAP8[$80>>0]|0;
-  $82 = $81&255;
-  $83 = $82 << 24;
-  $84 = ((($$0)) + 18|0);
-  $85 = HEAP8[$84>>0]|0;
-  $86 = $85&255;
-  $87 = $86 << 16;
-  $88 = $87 | $83;
-  $89 = ((($$0)) + 17|0);
-  $90 = HEAP8[$89>>0]|0;
-  $91 = $90&255;
-  $92 = $91 << 8;
-  $93 = $88 | $92;
-  $94 = HEAP8[$79>>0]|0;
-  $95 = $94&255;
-  $96 = $93 | $95;
-  $97 = ((($$0)) + 20|0);
-  $98 = ((($$0)) + 23|0);
-  $99 = HEAP8[$98>>0]|0;
-  $100 = $99&255;
-  $101 = $100 << 24;
-  $102 = ((($$0)) + 22|0);
-  $103 = HEAP8[$102>>0]|0;
-  $104 = $103&255;
-  $105 = $104 << 16;
-  $106 = $105 | $101;
-  $107 = ((($$0)) + 21|0);
-  $108 = HEAP8[$107>>0]|0;
-  $109 = $108&255;
-  $110 = $109 << 8;
-  $111 = $106 | $110;
-  $112 = HEAP8[$97>>0]|0;
-  $113 = $112&255;
-  $114 = $111 | $113;
-  $115 = ((($$0)) + 24|0);
-  $116 = ((($$0)) + 27|0);
-  $117 = HEAP8[$116>>0]|0;
-  $118 = $117&255;
-  $119 = $118 << 24;
-  $120 = ((($$0)) + 26|0);
-  $121 = HEAP8[$120>>0]|0;
-  $122 = $121&255;
-  $123 = $122 << 16;
-  $124 = $123 | $119;
-  $125 = ((($$0)) + 25|0);
-  $126 = HEAP8[$125>>0]|0;
-  $127 = $126&255;
-  $128 = $127 << 8;
-  $129 = $124 | $128;
-  $130 = HEAP8[$115>>0]|0;
-  $131 = $130&255;
-  $132 = $129 | $131;
-  $133 = ((($$0)) + 28|0);
-  $134 = ((($$0)) + 31|0);
-  $135 = HEAP8[$134>>0]|0;
-  $136 = $135&255;
-  $137 = $136 << 24;
-  $138 = ((($$0)) + 30|0);
-  $139 = HEAP8[$138>>0]|0;
-  $140 = $139&255;
-  $141 = $140 << 16;
-  $142 = $141 | $137;
-  $143 = ((($$0)) + 29|0);
-  $144 = HEAP8[$143>>0]|0;
-  $145 = $144&255;
-  $146 = $145 << 8;
-  $147 = $142 | $146;
-  $148 = HEAP8[$133>>0]|0;
-  $149 = $148&255;
-  $150 = $147 | $149;
-  $151 = ((($$0)) + 32|0);
-  $152 = ((($$0)) + 35|0);
-  $153 = HEAP8[$152>>0]|0;
-  $154 = $153&255;
-  $155 = $154 << 24;
-  $156 = ((($$0)) + 34|0);
-  $157 = HEAP8[$156>>0]|0;
-  $158 = $157&255;
-  $159 = $158 << 16;
-  $160 = $159 | $155;
-  $161 = ((($$0)) + 33|0);
-  $162 = HEAP8[$161>>0]|0;
-  $163 = $162&255;
-  $164 = $163 << 8;
-  $165 = $160 | $164;
-  $166 = HEAP8[$151>>0]|0;
-  $167 = $166&255;
-  $168 = $165 | $167;
-  $169 = ((($$0)) + 36|0);
-  $170 = ((($$0)) + 39|0);
-  $171 = HEAP8[$170>>0]|0;
-  $172 = $171&255;
-  $173 = $172 << 24;
-  $174 = ((($$0)) + 38|0);
-  $175 = HEAP8[$174>>0]|0;
-  $176 = $175&255;
-  $177 = $176 << 16;
-  $178 = $177 | $173;
-  $179 = ((($$0)) + 37|0);
-  $180 = HEAP8[$179>>0]|0;
-  $181 = $180&255;
-  $182 = $181 << 8;
-  $183 = $178 | $182;
-  $184 = HEAP8[$169>>0]|0;
-  $185 = $184&255;
-  $186 = $183 | $185;
-  $187 = ((($$0)) + 40|0);
-  $188 = ((($$0)) + 43|0);
-  $189 = HEAP8[$188>>0]|0;
-  $190 = $189&255;
-  $191 = $190 << 24;
-  $192 = ((($$0)) + 42|0);
-  $193 = HEAP8[$192>>0]|0;
-  $194 = $193&255;
-  $195 = $194 << 16;
-  $196 = $195 | $191;
-  $197 = ((($$0)) + 41|0);
-  $198 = HEAP8[$197>>0]|0;
-  $199 = $198&255;
-  $200 = $199 << 8;
-  $201 = $196 | $200;
-  $202 = HEAP8[$187>>0]|0;
-  $203 = $202&255;
-  $204 = $201 | $203;
-  $205 = ((($$0)) + 44|0);
-  $206 = ((($$0)) + 47|0);
-  $207 = HEAP8[$206>>0]|0;
-  $208 = $207&255;
-  $209 = $208 << 24;
-  $210 = ((($$0)) + 46|0);
-  $211 = HEAP8[$210>>0]|0;
-  $212 = $211&255;
-  $213 = $212 << 16;
-  $214 = $213 | $209;
-  $215 = ((($$0)) + 45|0);
-  $216 = HEAP8[$215>>0]|0;
-  $217 = $216&255;
-  $218 = $217 << 8;
-  $219 = $214 | $218;
-  $220 = HEAP8[$205>>0]|0;
-  $221 = $220&255;
-  $222 = $219 | $221;
-  $223 = ((($$0)) + 48|0);
-  $224 = ((($$0)) + 51|0);
-  $225 = HEAP8[$224>>0]|0;
-  $226 = $225&255;
-  $227 = $226 << 24;
-  $228 = ((($$0)) + 50|0);
-  $229 = HEAP8[$228>>0]|0;
-  $230 = $229&255;
-  $231 = $230 << 16;
-  $232 = $231 | $227;
-  $233 = ((($$0)) + 49|0);
-  $234 = HEAP8[$233>>0]|0;
-  $235 = $234&255;
-  $236 = $235 << 8;
-  $237 = $232 | $236;
-  $238 = HEAP8[$223>>0]|0;
-  $239 = $238&255;
-  $240 = $237 | $239;
-  $241 = ((($$0)) + 52|0);
-  $242 = ((($$0)) + 55|0);
-  $243 = HEAP8[$242>>0]|0;
-  $244 = $243&255;
-  $245 = $244 << 24;
-  $246 = ((($$0)) + 54|0);
-  $247 = HEAP8[$246>>0]|0;
-  $248 = $247&255;
-  $249 = $248 << 16;
-  $250 = $249 | $245;
-  $251 = ((($$0)) + 53|0);
-  $252 = HEAP8[$251>>0]|0;
-  $253 = $252&255;
-  $254 = $253 << 8;
-  $255 = $250 | $254;
-  $256 = HEAP8[$241>>0]|0;
-  $257 = $256&255;
-  $258 = $255 | $257;
-  $259 = ((($$0)) + 56|0);
-  $260 = ((($$0)) + 59|0);
-  $261 = HEAP8[$260>>0]|0;
-  $262 = $261&255;
-  $263 = $262 << 24;
-  $264 = ((($$0)) + 58|0);
-  $265 = HEAP8[$264>>0]|0;
-  $266 = $265&255;
-  $267 = $266 << 16;
-  $268 = $267 | $263;
-  $269 = ((($$0)) + 57|0);
-  $270 = HEAP8[$269>>0]|0;
-  $271 = $270&255;
-  $272 = $271 << 8;
-  $273 = $268 | $272;
-  $274 = HEAP8[$259>>0]|0;
-  $275 = $274&255;
-  $276 = $273 | $275;
-  $277 = ((($$0)) + 60|0);
-  $278 = ((($$0)) + 63|0);
-  $279 = HEAP8[$278>>0]|0;
-  $280 = $279&255;
-  $281 = $280 << 24;
-  $282 = ((($$0)) + 62|0);
-  $283 = HEAP8[$282>>0]|0;
-  $284 = $283&255;
-  $285 = $284 << 16;
-  $286 = $285 | $281;
-  $287 = ((($$0)) + 61|0);
-  $288 = HEAP8[$287>>0]|0;
-  $289 = $288&255;
-  $290 = $289 << 8;
-  $291 = $286 | $290;
-  $292 = HEAP8[$277>>0]|0;
-  $293 = $292&255;
-  $294 = $291 | $293;
-  $295 = HEAP32[$3>>2]|0;
-  $296 = HEAP32[$4>>2]|0;
-  $297 = HEAP32[$5>>2]|0;
-  $298 = HEAP32[$6>>2]|0;
-  $299 = HEAP32[$7>>2]|0;
-  $300 = $297 ^ $296;
-  $301 = $300 ^ $298;
-  $302 = (($295) + ($24))|0;
-  $303 = (($302) + ($301))|0;
-  $304 = $303 << 11;
-  $305 = $303 >>> 21;
-  $306 = $304 | $305;
-  $307 = (($306) + ($299))|0;
-  $308 = $297 << 10;
-  $309 = $297 >>> 22;
-  $310 = $308 | $309;
-  $311 = $298 ^ -1;
-  $312 = $297 | $311;
-  $313 = $312 ^ $296;
-  $314 = (($114) + 1352829926)|0;
-  $315 = (($314) + ($295))|0;
-  $316 = (($315) + ($313))|0;
-  $317 = $316 << 8;
-  $318 = $316 >>> 24;
-  $319 = $317 | $318;
-  $320 = (($319) + ($299))|0;
-  $321 = $310 ^ $296;
-  $322 = $321 ^ $307;
-  $323 = (($299) + ($42))|0;
-  $324 = (($323) + ($322))|0;
-  $325 = $324 << 14;
-  $326 = $324 >>> 18;
-  $327 = $325 | $326;
-  $328 = (($327) + ($298))|0;
-  $329 = $296 << 10;
-  $330 = $296 >>> 22;
-  $331 = $329 | $330;
-  $332 = $310 ^ -1;
-  $333 = $296 | $332;
-  $334 = $320 ^ $333;
-  $335 = (($276) + 1352829926)|0;
-  $336 = (($335) + ($299))|0;
-  $337 = (($336) + ($334))|0;
-  $338 = $337 << 9;
-  $339 = $337 >>> 23;
-  $340 = $338 | $339;
-  $341 = (($340) + ($298))|0;
-  $342 = $307 ^ $331;
-  $343 = $342 ^ $328;
-  $344 = (($298) + ($60))|0;
-  $345 = (($344) + ($343))|0;
-  $346 = $345 << 15;
-  $347 = $345 >>> 17;
-  $348 = $346 | $347;
-  $349 = (($348) + ($310))|0;
-  $350 = $307 << 10;
-  $351 = $307 >>> 22;
-  $352 = $350 | $351;
-  $353 = $331 ^ -1;
-  $354 = $320 | $353;
-  $355 = $341 ^ $354;
-  $356 = (($150) + 1352829926)|0;
-  $357 = (($356) + ($298))|0;
-  $358 = (($357) + ($355))|0;
-  $359 = $358 << 9;
-  $360 = $358 >>> 23;
-  $361 = $359 | $360;
-  $362 = (($361) + ($310))|0;
-  $363 = $320 << 10;
-  $364 = $320 >>> 22;
-  $365 = $363 | $364;
-  $366 = $328 ^ $352;
-  $367 = $366 ^ $349;
-  $368 = (($310) + ($78))|0;
-  $369 = (($368) + ($367))|0;
-  $370 = $369 << 12;
-  $371 = $369 >>> 20;
-  $372 = $370 | $371;
-  $373 = (($372) + ($331))|0;
-  $374 = $328 << 10;
-  $375 = $328 >>> 22;
-  $376 = $374 | $375;
-  $377 = $365 ^ -1;
-  $378 = $341 | $377;
-  $379 = $362 ^ $378;
-  $380 = (($24) + 1352829926)|0;
-  $381 = (($380) + ($310))|0;
-  $382 = (($381) + ($379))|0;
-  $383 = $382 << 11;
-  $384 = $382 >>> 21;
-  $385 = $383 | $384;
-  $386 = (($385) + ($331))|0;
-  $387 = $341 << 10;
-  $388 = $341 >>> 22;
-  $389 = $387 | $388;
-  $390 = $349 ^ $376;
-  $391 = $390 ^ $373;
-  $392 = (($331) + ($96))|0;
-  $393 = (($392) + ($391))|0;
-  $394 = $393 << 5;
-  $395 = $393 >>> 27;
-  $396 = $394 | $395;
-  $397 = (($396) + ($352))|0;
-  $398 = $349 << 10;
-  $399 = $349 >>> 22;
-  $400 = $398 | $399;
-  $401 = $389 ^ -1;
-  $402 = $362 | $401;
-  $403 = $386 ^ $402;
-  $404 = (($186) + 1352829926)|0;
-  $405 = (($404) + ($331))|0;
-  $406 = (($405) + ($403))|0;
-  $407 = $406 << 13;
-  $408 = $406 >>> 19;
-  $409 = $407 | $408;
-  $410 = (($409) + ($365))|0;
-  $411 = $362 << 10;
-  $412 = $362 >>> 22;
-  $413 = $411 | $412;
-  $414 = $373 ^ $400;
-  $415 = $414 ^ $397;
-  $416 = (($352) + ($114))|0;
-  $417 = (($416) + ($415))|0;
-  $418 = $417 << 8;
-  $419 = $417 >>> 24;
-  $420 = $418 | $419;
-  $421 = (($420) + ($376))|0;
-  $422 = $373 << 10;
-  $423 = $373 >>> 22;
-  $424 = $422 | $423;
-  $425 = $413 ^ -1;
-  $426 = $386 | $425;
-  $427 = $410 ^ $426;
-  $428 = (($60) + 1352829926)|0;
-  $429 = (($428) + ($365))|0;
-  $430 = (($429) + ($427))|0;
-  $431 = $430 << 15;
-  $432 = $430 >>> 17;
-  $433 = $431 | $432;
-  $434 = (($433) + ($389))|0;
-  $435 = $386 << 10;
-  $436 = $386 >>> 22;
-  $437 = $435 | $436;
-  $438 = $397 ^ $424;
-  $439 = $438 ^ $421;
-  $440 = (($376) + ($132))|0;
-  $441 = (($440) + ($439))|0;
-  $442 = $441 << 7;
-  $443 = $441 >>> 25;
-  $444 = $442 | $443;
-  $445 = (($444) + ($400))|0;
-  $446 = $397 << 10;
-  $447 = $397 >>> 22;
-  $448 = $446 | $447;
-  $449 = $437 ^ -1;
-  $450 = $410 | $449;
-  $451 = $434 ^ $450;
-  $452 = (($222) + 1352829926)|0;
-  $453 = (($452) + ($389))|0;
-  $454 = (($453) + ($451))|0;
-  $455 = $454 << 15;
-  $456 = $454 >>> 17;
-  $457 = $455 | $456;
-  $458 = (($457) + ($413))|0;
-  $459 = $410 << 10;
-  $460 = $410 >>> 22;
-  $461 = $459 | $460;
-  $462 = $421 ^ $448;
-  $463 = $462 ^ $445;
-  $464 = (($400) + ($150))|0;
-  $465 = (($464) + ($463))|0;
-  $466 = $465 << 9;
-  $467 = $465 >>> 23;
-  $468 = $466 | $467;
-  $469 = (($468) + ($424))|0;
-  $470 = $421 << 10;
-  $471 = $421 >>> 22;
-  $472 = $470 | $471;
-  $473 = $461 ^ -1;
-  $474 = $434 | $473;
-  $475 = $458 ^ $474;
-  $476 = (($96) + 1352829926)|0;
-  $477 = (($476) + ($413))|0;
-  $478 = (($477) + ($475))|0;
-  $479 = $478 << 5;
-  $480 = $478 >>> 27;
-  $481 = $479 | $480;
-  $482 = (($481) + ($437))|0;
-  $483 = $434 << 10;
-  $484 = $434 >>> 22;
-  $485 = $483 | $484;
-  $486 = $445 ^ $472;
-  $487 = $486 ^ $469;
-  $488 = (($424) + ($168))|0;
-  $489 = (($488) + ($487))|0;
-  $490 = $489 << 11;
-  $491 = $489 >>> 21;
-  $492 = $490 | $491;
-  $493 = (($492) + ($448))|0;
-  $494 = $445 << 10;
-  $495 = $445 >>> 22;
-  $496 = $494 | $495;
-  $497 = $485 ^ -1;
-  $498 = $458 | $497;
-  $499 = $482 ^ $498;
-  $500 = (($258) + 1352829926)|0;
-  $501 = (($500) + ($437))|0;
-  $502 = (($501) + ($499))|0;
-  $503 = $502 << 7;
-  $504 = $502 >>> 25;
-  $505 = $503 | $504;
-  $506 = (($505) + ($461))|0;
-  $507 = $458 << 10;
-  $508 = $458 >>> 22;
-  $509 = $507 | $508;
-  $510 = $469 ^ $496;
-  $511 = $510 ^ $493;
-  $512 = (($448) + ($186))|0;
-  $513 = (($512) + ($511))|0;
-  $514 = $513 << 13;
-  $515 = $513 >>> 19;
-  $516 = $514 | $515;
-  $517 = (($516) + ($472))|0;
-  $518 = $469 << 10;
-  $519 = $469 >>> 22;
-  $520 = $518 | $519;
-  $521 = $509 ^ -1;
-  $522 = $482 | $521;
-  $523 = $506 ^ $522;
-  $524 = (($132) + 1352829926)|0;
-  $525 = (($524) + ($461))|0;
-  $526 = (($525) + ($523))|0;
-  $527 = $526 << 7;
-  $528 = $526 >>> 25;
-  $529 = $527 | $528;
-  $530 = (($529) + ($485))|0;
-  $531 = $482 << 10;
-  $532 = $482 >>> 22;
-  $533 = $531 | $532;
-  $534 = $493 ^ $520;
-  $535 = $534 ^ $517;
-  $536 = (($472) + ($204))|0;
-  $537 = (($536) + ($535))|0;
-  $538 = $537 << 14;
-  $539 = $537 >>> 18;
-  $540 = $538 | $539;
-  $541 = (($540) + ($496))|0;
-  $542 = $493 << 10;
-  $543 = $493 >>> 22;
-  $544 = $542 | $543;
-  $545 = $533 ^ -1;
-  $546 = $506 | $545;
-  $547 = $530 ^ $546;
-  $548 = (($294) + 1352829926)|0;
-  $549 = (($548) + ($485))|0;
-  $550 = (($549) + ($547))|0;
-  $551 = $550 << 8;
-  $552 = $550 >>> 24;
-  $553 = $551 | $552;
-  $554 = (($553) + ($509))|0;
-  $555 = $506 << 10;
-  $556 = $506 >>> 22;
-  $557 = $555 | $556;
-  $558 = $517 ^ $544;
-  $559 = $558 ^ $541;
-  $560 = (($496) + ($222))|0;
-  $561 = (($560) + ($559))|0;
-  $562 = $561 << 15;
-  $563 = $561 >>> 17;
-  $564 = $562 | $563;
-  $565 = (($564) + ($520))|0;
-  $566 = $517 << 10;
-  $567 = $517 >>> 22;
-  $568 = $566 | $567;
-  $569 = $557 ^ -1;
-  $570 = $530 | $569;
-  $571 = $554 ^ $570;
-  $572 = (($168) + 1352829926)|0;
-  $573 = (($572) + ($509))|0;
-  $574 = (($573) + ($571))|0;
-  $575 = $574 << 11;
-  $576 = $574 >>> 21;
-  $577 = $575 | $576;
-  $578 = (($577) + ($533))|0;
-  $579 = $530 << 10;
-  $580 = $530 >>> 22;
-  $581 = $579 | $580;
-  $582 = $541 ^ $568;
-  $583 = $582 ^ $565;
-  $584 = (($520) + ($240))|0;
-  $585 = (($584) + ($583))|0;
-  $586 = $585 << 6;
-  $587 = $585 >>> 26;
-  $588 = $586 | $587;
-  $589 = (($588) + ($544))|0;
-  $590 = $541 << 10;
-  $591 = $541 >>> 22;
-  $592 = $590 | $591;
-  $593 = $581 ^ -1;
-  $594 = $554 | $593;
-  $595 = $578 ^ $594;
-  $596 = (($42) + 1352829926)|0;
-  $597 = (($596) + ($533))|0;
-  $598 = (($597) + ($595))|0;
-  $599 = $598 << 14;
-  $600 = $598 >>> 18;
-  $601 = $599 | $600;
-  $602 = (($601) + ($557))|0;
-  $603 = $554 << 10;
-  $604 = $554 >>> 22;
-  $605 = $603 | $604;
-  $606 = $565 ^ $592;
-  $607 = $606 ^ $589;
-  $608 = (($544) + ($258))|0;
-  $609 = (($608) + ($607))|0;
-  $610 = $609 << 7;
-  $611 = $609 >>> 25;
-  $612 = $610 | $611;
-  $613 = (($612) + ($568))|0;
-  $614 = $565 << 10;
-  $615 = $565 >>> 22;
-  $616 = $614 | $615;
-  $617 = $605 ^ -1;
-  $618 = $578 | $617;
-  $619 = $602 ^ $618;
-  $620 = (($204) + 1352829926)|0;
-  $621 = (($620) + ($557))|0;
-  $622 = (($621) + ($619))|0;
-  $623 = $622 << 14;
-  $624 = $622 >>> 18;
-  $625 = $623 | $624;
-  $626 = (($625) + ($581))|0;
-  $627 = $578 << 10;
-  $628 = $578 >>> 22;
-  $629 = $627 | $628;
-  $630 = $589 ^ $616;
-  $631 = $630 ^ $613;
-  $632 = (($568) + ($276))|0;
-  $633 = (($632) + ($631))|0;
-  $634 = $633 << 9;
-  $635 = $633 >>> 23;
-  $636 = $634 | $635;
-  $637 = (($636) + ($592))|0;
-  $638 = $589 << 10;
-  $639 = $589 >>> 22;
-  $640 = $638 | $639;
-  $641 = $629 ^ -1;
-  $642 = $602 | $641;
-  $643 = $626 ^ $642;
-  $644 = (($78) + 1352829926)|0;
-  $645 = (($644) + ($581))|0;
-  $646 = (($645) + ($643))|0;
-  $647 = $646 << 12;
-  $648 = $646 >>> 20;
-  $649 = $647 | $648;
-  $650 = (($649) + ($605))|0;
-  $651 = $602 << 10;
-  $652 = $602 >>> 22;
-  $653 = $651 | $652;
-  $654 = $613 ^ $640;
-  $655 = $654 ^ $637;
-  $656 = (($592) + ($294))|0;
-  $657 = (($656) + ($655))|0;
-  $658 = $657 << 8;
-  $659 = $657 >>> 24;
-  $660 = $658 | $659;
-  $661 = (($660) + ($616))|0;
-  $662 = $613 << 10;
-  $663 = $613 >>> 22;
-  $664 = $662 | $663;
-  $665 = $653 ^ -1;
-  $666 = $626 | $665;
-  $667 = $650 ^ $666;
-  $668 = (($240) + 1352829926)|0;
-  $669 = (($668) + ($605))|0;
-  $670 = (($669) + ($667))|0;
-  $671 = $670 << 6;
-  $672 = $670 >>> 26;
-  $673 = $671 | $672;
-  $674 = (($673) + ($629))|0;
-  $675 = $626 << 10;
-  $676 = $626 >>> 22;
-  $677 = $675 | $676;
-  $678 = $661 & $637;
-  $679 = $661 ^ -1;
-  $680 = $664 & $679;
-  $681 = $678 | $680;
-  $682 = (($150) + 1518500249)|0;
-  $683 = (($682) + ($616))|0;
-  $684 = (($683) + ($681))|0;
-  $685 = $684 << 7;
-  $686 = $684 >>> 25;
-  $687 = $685 | $686;
-  $688 = (($687) + ($640))|0;
-  $689 = $637 << 10;
-  $690 = $637 >>> 22;
-  $691 = $689 | $690;
-  $692 = $674 & $677;
-  $693 = $677 ^ -1;
-  $694 = $650 & $693;
-  $695 = $692 | $694;
-  $696 = (($132) + 1548603684)|0;
-  $697 = (($696) + ($629))|0;
-  $698 = (($697) + ($695))|0;
-  $699 = $698 << 9;
-  $700 = $698 >>> 23;
-  $701 = $699 | $700;
-  $702 = (($701) + ($653))|0;
-  $703 = $650 << 10;
-  $704 = $650 >>> 22;
-  $705 = $703 | $704;
-  $706 = $688 & $661;
-  $707 = $688 ^ -1;
-  $708 = $691 & $707;
-  $709 = $706 | $708;
-  $710 = (($96) + 1518500249)|0;
-  $711 = (($710) + ($640))|0;
-  $712 = (($711) + ($709))|0;
-  $713 = $712 << 6;
-  $714 = $712 >>> 26;
-  $715 = $713 | $714;
-  $716 = (($715) + ($664))|0;
-  $717 = $661 << 10;
-  $718 = $661 >>> 22;
-  $719 = $717 | $718;
-  $720 = $702 & $705;
-  $721 = $705 ^ -1;
-  $722 = $674 & $721;
-  $723 = $720 | $722;
-  $724 = (($222) + 1548603684)|0;
-  $725 = (($724) + ($653))|0;
-  $726 = (($725) + ($723))|0;
-  $727 = $726 << 13;
-  $728 = $726 >>> 19;
-  $729 = $727 | $728;
-  $730 = (($729) + ($677))|0;
-  $731 = $674 << 10;
-  $732 = $674 >>> 22;
-  $733 = $731 | $732;
-  $734 = $716 & $688;
-  $735 = $716 ^ -1;
-  $736 = $719 & $735;
-  $737 = $734 | $736;
-  $738 = (($258) + 1518500249)|0;
-  $739 = (($738) + ($664))|0;
-  $740 = (($739) + ($737))|0;
-  $741 = $740 << 8;
-  $742 = $740 >>> 24;
-  $743 = $741 | $742;
-  $744 = (($743) + ($691))|0;
-  $745 = $688 << 10;
-  $746 = $688 >>> 22;
-  $747 = $745 | $746;
-  $748 = $730 & $733;
-  $749 = $733 ^ -1;
-  $750 = $702 & $749;
-  $751 = $748 | $750;
-  $752 = (($78) + 1548603684)|0;
-  $753 = (($752) + ($677))|0;
-  $754 = (($753) + ($751))|0;
-  $755 = $754 << 15;
-  $756 = $754 >>> 17;
-  $757 = $755 | $756;
-  $758 = (($757) + ($705))|0;
-  $759 = $702 << 10;
-  $760 = $702 >>> 22;
-  $761 = $759 | $760;
-  $762 = $744 & $716;
-  $763 = $744 ^ -1;
-  $764 = $747 & $763;
-  $765 = $762 | $764;
-  $766 = (($42) + 1518500249)|0;
-  $767 = (($766) + ($691))|0;
-  $768 = (($767) + ($765))|0;
-  $769 = $768 << 13;
-  $770 = $768 >>> 19;
-  $771 = $769 | $770;
-  $772 = (($771) + ($719))|0;
-  $773 = $716 << 10;
-  $774 = $716 >>> 22;
-  $775 = $773 | $774;
-  $776 = $758 & $761;
-  $777 = $761 ^ -1;
-  $778 = $730 & $777;
-  $779 = $776 | $778;
-  $780 = (($150) + 1548603684)|0;
-  $781 = (($780) + ($705))|0;
-  $782 = (($781) + ($779))|0;
-  $783 = $782 << 7;
-  $784 = $782 >>> 25;
-  $785 = $783 | $784;
-  $786 = (($785) + ($733))|0;
-  $787 = $730 << 10;
-  $788 = $730 >>> 22;
-  $789 = $787 | $788;
-  $790 = $772 & $744;
-  $791 = $772 ^ -1;
-  $792 = $775 & $791;
-  $793 = $790 | $792;
-  $794 = (($204) + 1518500249)|0;
-  $795 = (($794) + ($719))|0;
-  $796 = (($795) + ($793))|0;
-  $797 = $796 << 11;
-  $798 = $796 >>> 21;
-  $799 = $797 | $798;
-  $800 = (($799) + ($747))|0;
-  $801 = $744 << 10;
-  $802 = $744 >>> 22;
-  $803 = $801 | $802;
-  $804 = $786 & $789;
-  $805 = $789 ^ -1;
-  $806 = $758 & $805;
-  $807 = $804 | $806;
-  $808 = (($24) + 1548603684)|0;
-  $809 = (($808) + ($733))|0;
-  $810 = (($809) + ($807))|0;
-  $811 = $810 << 12;
-  $812 = $810 >>> 20;
-  $813 = $811 | $812;
-  $814 = (($813) + ($761))|0;
-  $815 = $758 << 10;
-  $816 = $758 >>> 22;
-  $817 = $815 | $816;
-  $818 = $800 & $772;
-  $819 = $800 ^ -1;
-  $820 = $803 & $819;
-  $821 = $818 | $820;
-  $822 = (($132) + 1518500249)|0;
-  $823 = (($822) + ($747))|0;
-  $824 = (($823) + ($821))|0;
-  $825 = $824 << 9;
-  $826 = $824 >>> 23;
-  $827 = $825 | $826;
-  $828 = (($827) + ($775))|0;
-  $829 = $772 << 10;
-  $830 = $772 >>> 22;
-  $831 = $829 | $830;
-  $832 = $814 & $817;
-  $833 = $817 ^ -1;
-  $834 = $786 & $833;
-  $835 = $832 | $834;
-  $836 = (($258) + 1548603684)|0;
-  $837 = (($836) + ($761))|0;
-  $838 = (($837) + ($835))|0;
-  $839 = $838 << 8;
-  $840 = $838 >>> 24;
-  $841 = $839 | $840;
-  $842 = (($841) + ($789))|0;
-  $843 = $786 << 10;
-  $844 = $786 >>> 22;
-  $845 = $843 | $844;
-  $846 = $828 & $800;
-  $847 = $828 ^ -1;
-  $848 = $831 & $847;
-  $849 = $846 | $848;
-  $850 = (($294) + 1518500249)|0;
-  $851 = (($850) + ($775))|0;
-  $852 = (($851) + ($849))|0;
-  $853 = $852 << 7;
-  $854 = $852 >>> 25;
-  $855 = $853 | $854;
-  $856 = (($855) + ($803))|0;
-  $857 = $800 << 10;
-  $858 = $800 >>> 22;
-  $859 = $857 | $858;
-  $860 = $842 & $845;
-  $861 = $845 ^ -1;
-  $862 = $814 & $861;
-  $863 = $860 | $862;
-  $864 = (($114) + 1548603684)|0;
-  $865 = (($864) + ($789))|0;
-  $866 = (($865) + ($863))|0;
-  $867 = $866 << 9;
-  $868 = $866 >>> 23;
-  $869 = $867 | $868;
-  $870 = (($869) + ($817))|0;
-  $871 = $814 << 10;
-  $872 = $814 >>> 22;
-  $873 = $871 | $872;
-  $874 = $856 & $828;
-  $875 = $856 ^ -1;
-  $876 = $859 & $875;
-  $877 = $874 | $876;
-  $878 = (($78) + 1518500249)|0;
-  $879 = (($878) + ($803))|0;
-  $880 = (($879) + ($877))|0;
-  $881 = $880 << 15;
-  $882 = $880 >>> 17;
-  $883 = $881 | $882;
-  $884 = (($883) + ($831))|0;
-  $885 = $828 << 10;
-  $886 = $828 >>> 22;
-  $887 = $885 | $886;
-  $888 = $870 & $873;
-  $889 = $873 ^ -1;
-  $890 = $842 & $889;
-  $891 = $888 | $890;
-  $892 = (($204) + 1548603684)|0;
-  $893 = (($892) + ($817))|0;
-  $894 = (($893) + ($891))|0;
-  $895 = $894 << 11;
-  $896 = $894 >>> 21;
-  $897 = $895 | $896;
-  $898 = (($897) + ($845))|0;
-  $899 = $842 << 10;
-  $900 = $842 >>> 22;
-  $901 = $899 | $900;
-  $902 = $884 & $856;
-  $903 = $884 ^ -1;
-  $904 = $887 & $903;
-  $905 = $902 | $904;
-  $906 = (($240) + 1518500249)|0;
-  $907 = (($906) + ($831))|0;
-  $908 = (($907) + ($905))|0;
-  $909 = $908 << 7;
-  $910 = $908 >>> 25;
-  $911 = $909 | $910;
-  $912 = (($911) + ($859))|0;
-  $913 = $856 << 10;
-  $914 = $856 >>> 22;
-  $915 = $913 | $914;
-  $916 = $898 & $901;
-  $917 = $901 ^ -1;
-  $918 = $870 & $917;
-  $919 = $916 | $918;
-  $920 = (($276) + 1548603684)|0;
-  $921 = (($920) + ($845))|0;
-  $922 = (($921) + ($919))|0;
-  $923 = $922 << 7;
-  $924 = $922 >>> 25;
-  $925 = $923 | $924;
-  $926 = (($925) + ($873))|0;
-  $927 = $870 << 10;
-  $928 = $870 >>> 22;
-  $929 = $927 | $928;
-  $930 = $912 & $884;
-  $931 = $912 ^ -1;
-  $932 = $915 & $931;
-  $933 = $930 | $932;
-  $934 = (($24) + 1518500249)|0;
-  $935 = (($934) + ($859))|0;
-  $936 = (($935) + ($933))|0;
-  $937 = $936 << 12;
-  $938 = $936 >>> 20;
-  $939 = $937 | $938;
-  $940 = (($939) + ($887))|0;
-  $941 = $884 << 10;
-  $942 = $884 >>> 22;
-  $943 = $941 | $942;
-  $944 = $926 & $929;
-  $945 = $929 ^ -1;
-  $946 = $898 & $945;
-  $947 = $944 | $946;
-  $948 = (($294) + 1548603684)|0;
-  $949 = (($948) + ($873))|0;
-  $950 = (($949) + ($947))|0;
-  $951 = $950 << 7;
-  $952 = $950 >>> 25;
-  $953 = $951 | $952;
-  $954 = (($953) + ($901))|0;
-  $955 = $898 << 10;
-  $956 = $898 >>> 22;
-  $957 = $955 | $956;
-  $958 = $940 & $912;
-  $959 = $940 ^ -1;
-  $960 = $943 & $959;
-  $961 = $958 | $960;
-  $962 = (($186) + 1518500249)|0;
-  $963 = (($962) + ($887))|0;
-  $964 = (($963) + ($961))|0;
-  $965 = $964 << 15;
-  $966 = $964 >>> 17;
-  $967 = $965 | $966;
-  $968 = (($967) + ($915))|0;
-  $969 = $912 << 10;
-  $970 = $912 >>> 22;
-  $971 = $969 | $970;
-  $972 = $954 & $957;
-  $973 = $957 ^ -1;
-  $974 = $926 & $973;
-  $975 = $972 | $974;
-  $976 = (($168) + 1548603684)|0;
-  $977 = (($976) + ($901))|0;
-  $978 = (($977) + ($975))|0;
-  $979 = $978 << 12;
-  $980 = $978 >>> 20;
-  $981 = $979 | $980;
-  $982 = (($981) + ($929))|0;
-  $983 = $926 << 10;
-  $984 = $926 >>> 22;
-  $985 = $983 | $984;
-  $986 = $968 & $940;
-  $987 = $968 ^ -1;
-  $988 = $971 & $987;
-  $989 = $986 | $988;
-  $990 = (($114) + 1518500249)|0;
-  $991 = (($990) + ($915))|0;
-  $992 = (($991) + ($989))|0;
-  $993 = $992 << 9;
-  $994 = $992 >>> 23;
-  $995 = $993 | $994;
-  $996 = (($995) + ($943))|0;
-  $997 = $940 << 10;
-  $998 = $940 >>> 22;
-  $999 = $997 | $998;
-  $1000 = $982 & $985;
-  $1001 = $985 ^ -1;
-  $1002 = $954 & $1001;
-  $1003 = $1000 | $1002;
-  $1004 = (($240) + 1548603684)|0;
-  $1005 = (($1004) + ($929))|0;
-  $1006 = (($1005) + ($1003))|0;
-  $1007 = $1006 << 7;
-  $1008 = $1006 >>> 25;
-  $1009 = $1007 | $1008;
-  $1010 = (($1009) + ($957))|0;
-  $1011 = $954 << 10;
-  $1012 = $954 >>> 22;
-  $1013 = $1011 | $1012;
-  $1014 = $996 & $968;
-  $1015 = $996 ^ -1;
-  $1016 = $999 & $1015;
-  $1017 = $1014 | $1016;
-  $1018 = (($60) + 1518500249)|0;
-  $1019 = (($1018) + ($943))|0;
-  $1020 = (($1019) + ($1017))|0;
-  $1021 = $1020 << 11;
-  $1022 = $1020 >>> 21;
-  $1023 = $1021 | $1022;
-  $1024 = (($1023) + ($971))|0;
-  $1025 = $968 << 10;
-  $1026 = $968 >>> 22;
-  $1027 = $1025 | $1026;
-  $1028 = $1010 & $1013;
-  $1029 = $1013 ^ -1;
-  $1030 = $982 & $1029;
-  $1031 = $1028 | $1030;
-  $1032 = (($96) + 1548603684)|0;
-  $1033 = (($1032) + ($957))|0;
-  $1034 = (($1033) + ($1031))|0;
-  $1035 = $1034 << 6;
-  $1036 = $1034 >>> 26;
-  $1037 = $1035 | $1036;
-  $1038 = (($1037) + ($985))|0;
-  $1039 = $982 << 10;
-  $1040 = $982 >>> 22;
-  $1041 = $1039 | $1040;
-  $1042 = $1024 & $996;
-  $1043 = $1024 ^ -1;
-  $1044 = $1027 & $1043;
-  $1045 = $1042 | $1044;
-  $1046 = (($276) + 1518500249)|0;
-  $1047 = (($1046) + ($971))|0;
-  $1048 = (($1047) + ($1045))|0;
-  $1049 = $1048 << 7;
-  $1050 = $1048 >>> 25;
-  $1051 = $1049 | $1050;
-  $1052 = (($1051) + ($999))|0;
-  $1053 = $996 << 10;
-  $1054 = $996 >>> 22;
-  $1055 = $1053 | $1054;
-  $1056 = $1038 & $1041;
-  $1057 = $1041 ^ -1;
-  $1058 = $1010 & $1057;
-  $1059 = $1056 | $1058;
-  $1060 = (($186) + 1548603684)|0;
-  $1061 = (($1060) + ($985))|0;
-  $1062 = (($1061) + ($1059))|0;
-  $1063 = $1062 << 15;
-  $1064 = $1062 >>> 17;
-  $1065 = $1063 | $1064;
-  $1066 = (($1065) + ($1013))|0;
-  $1067 = $1010 << 10;
-  $1068 = $1010 >>> 22;
-  $1069 = $1067 | $1068;
-  $1070 = $1052 & $1024;
-  $1071 = $1052 ^ -1;
-  $1072 = $1055 & $1071;
-  $1073 = $1070 | $1072;
-  $1074 = (($222) + 1518500249)|0;
-  $1075 = (($1074) + ($999))|0;
-  $1076 = (($1075) + ($1073))|0;
-  $1077 = $1076 << 13;
-  $1078 = $1076 >>> 19;
-  $1079 = $1077 | $1078;
-  $1080 = (($1079) + ($1027))|0;
-  $1081 = $1024 << 10;
-  $1082 = $1024 >>> 22;
-  $1083 = $1081 | $1082;
-  $1084 = $1066 & $1069;
-  $1085 = $1069 ^ -1;
-  $1086 = $1038 & $1085;
-  $1087 = $1084 | $1086;
-  $1088 = (($42) + 1548603684)|0;
-  $1089 = (($1088) + ($1013))|0;
-  $1090 = (($1089) + ($1087))|0;
-  $1091 = $1090 << 13;
-  $1092 = $1090 >>> 19;
-  $1093 = $1091 | $1092;
-  $1094 = (($1093) + ($1041))|0;
-  $1095 = $1038 << 10;
-  $1096 = $1038 >>> 22;
-  $1097 = $1095 | $1096;
-  $1098 = $1080 & $1052;
-  $1099 = $1080 ^ -1;
-  $1100 = $1083 & $1099;
-  $1101 = $1098 | $1100;
-  $1102 = (($168) + 1518500249)|0;
-  $1103 = (($1102) + ($1027))|0;
-  $1104 = (($1103) + ($1101))|0;
-  $1105 = $1104 << 12;
-  $1106 = $1104 >>> 20;
-  $1107 = $1105 | $1106;
-  $1108 = (($1107) + ($1055))|0;
-  $1109 = $1052 << 10;
-  $1110 = $1052 >>> 22;
-  $1111 = $1109 | $1110;
-  $1112 = $1094 & $1097;
-  $1113 = $1097 ^ -1;
-  $1114 = $1066 & $1113;
-  $1115 = $1112 | $1114;
-  $1116 = (($60) + 1548603684)|0;
-  $1117 = (($1116) + ($1041))|0;
-  $1118 = (($1117) + ($1115))|0;
-  $1119 = $1118 << 11;
-  $1120 = $1118 >>> 21;
-  $1121 = $1119 | $1120;
-  $1122 = (($1121) + ($1069))|0;
-  $1123 = $1066 << 10;
-  $1124 = $1066 >>> 22;
-  $1125 = $1123 | $1124;
-  $1126 = $1108 | $1099;
-  $1127 = $1126 ^ $1111;
-  $1128 = (($78) + 1859775393)|0;
-  $1129 = (($1128) + ($1055))|0;
-  $1130 = (($1129) + ($1127))|0;
-  $1131 = $1130 << 11;
-  $1132 = $1130 >>> 21;
-  $1133 = $1131 | $1132;
-  $1134 = (($1133) + ($1083))|0;
-  $1135 = $1080 << 10;
-  $1136 = $1080 >>> 22;
-  $1137 = $1135 | $1136;
-  $1138 = $1094 ^ -1;
-  $1139 = $1122 | $1138;
-  $1140 = $1139 ^ $1125;
-  $1141 = (($294) + 1836072691)|0;
-  $1142 = (($1141) + ($1069))|0;
-  $1143 = (($1142) + ($1140))|0;
-  $1144 = $1143 << 9;
-  $1145 = $1143 >>> 23;
-  $1146 = $1144 | $1145;
-  $1147 = (($1146) + ($1097))|0;
-  $1148 = $1094 << 10;
-  $1149 = $1094 >>> 22;
-  $1150 = $1148 | $1149;
-  $1151 = $1108 ^ -1;
-  $1152 = $1134 | $1151;
-  $1153 = $1152 ^ $1137;
-  $1154 = (($204) + 1859775393)|0;
-  $1155 = (($1154) + ($1083))|0;
-  $1156 = (($1155) + ($1153))|0;
-  $1157 = $1156 << 13;
-  $1158 = $1156 >>> 19;
-  $1159 = $1157 | $1158;
-  $1160 = (($1159) + ($1111))|0;
-  $1161 = $1108 << 10;
-  $1162 = $1108 >>> 22;
-  $1163 = $1161 | $1162;
-  $1164 = $1122 ^ -1;
-  $1165 = $1147 | $1164;
-  $1166 = $1165 ^ $1150;
-  $1167 = (($114) + 1836072691)|0;
-  $1168 = (($1167) + ($1097))|0;
-  $1169 = (($1168) + ($1166))|0;
-  $1170 = $1169 << 7;
-  $1171 = $1169 >>> 25;
-  $1172 = $1170 | $1171;
-  $1173 = (($1172) + ($1125))|0;
-  $1174 = $1122 << 10;
-  $1175 = $1122 >>> 22;
-  $1176 = $1174 | $1175;
-  $1177 = $1134 ^ -1;
-  $1178 = $1160 | $1177;
-  $1179 = $1178 ^ $1163;
-  $1180 = (($276) + 1859775393)|0;
-  $1181 = (($1180) + ($1111))|0;
-  $1182 = (($1181) + ($1179))|0;
-  $1183 = $1182 << 6;
-  $1184 = $1182 >>> 26;
-  $1185 = $1183 | $1184;
-  $1186 = (($1185) + ($1137))|0;
-  $1187 = $1134 << 10;
-  $1188 = $1134 >>> 22;
-  $1189 = $1187 | $1188;
-  $1190 = $1147 ^ -1;
-  $1191 = $1173 | $1190;
-  $1192 = $1191 ^ $1176;
-  $1193 = (($42) + 1836072691)|0;
-  $1194 = (($1193) + ($1125))|0;
-  $1195 = (($1194) + ($1192))|0;
-  $1196 = $1195 << 15;
-  $1197 = $1195 >>> 17;
-  $1198 = $1196 | $1197;
-  $1199 = (($1198) + ($1150))|0;
-  $1200 = $1147 << 10;
-  $1201 = $1147 >>> 22;
-  $1202 = $1200 | $1201;
-  $1203 = $1160 ^ -1;
-  $1204 = $1186 | $1203;
-  $1205 = $1204 ^ $1189;
-  $1206 = (($96) + 1859775393)|0;
-  $1207 = (($1206) + ($1137))|0;
-  $1208 = (($1207) + ($1205))|0;
-  $1209 = $1208 << 7;
-  $1210 = $1208 >>> 25;
-  $1211 = $1209 | $1210;
-  $1212 = (($1211) + ($1163))|0;
-  $1213 = $1160 << 10;
-  $1214 = $1160 >>> 22;
-  $1215 = $1213 | $1214;
-  $1216 = $1173 ^ -1;
-  $1217 = $1199 | $1216;
-  $1218 = $1217 ^ $1202;
-  $1219 = (($78) + 1836072691)|0;
-  $1220 = (($1219) + ($1150))|0;
-  $1221 = (($1220) + ($1218))|0;
-  $1222 = $1221 << 11;
-  $1223 = $1221 >>> 21;
-  $1224 = $1222 | $1223;
-  $1225 = (($1224) + ($1176))|0;
-  $1226 = $1173 << 10;
-  $1227 = $1173 >>> 22;
-  $1228 = $1226 | $1227;
-  $1229 = $1186 ^ -1;
-  $1230 = $1212 | $1229;
-  $1231 = $1230 ^ $1215;
-  $1232 = (($186) + 1859775393)|0;
-  $1233 = (($1232) + ($1163))|0;
-  $1234 = (($1233) + ($1231))|0;
-  $1235 = $1234 << 14;
-  $1236 = $1234 >>> 18;
-  $1237 = $1235 | $1236;
-  $1238 = (($1237) + ($1189))|0;
-  $1239 = $1186 << 10;
-  $1240 = $1186 >>> 22;
-  $1241 = $1239 | $1240;
-  $1242 = $1199 ^ -1;
-  $1243 = $1225 | $1242;
-  $1244 = $1243 ^ $1228;
-  $1245 = (($150) + 1836072691)|0;
-  $1246 = (($1245) + ($1176))|0;
-  $1247 = (($1246) + ($1244))|0;
-  $1248 = $1247 << 8;
-  $1249 = $1247 >>> 24;
-  $1250 = $1248 | $1249;
-  $1251 = (($1250) + ($1202))|0;
-  $1252 = $1199 << 10;
-  $1253 = $1199 >>> 22;
-  $1254 = $1252 | $1253;
-  $1255 = $1212 ^ -1;
-  $1256 = $1238 | $1255;
-  $1257 = $1256 ^ $1241;
-  $1258 = (($294) + 1859775393)|0;
-  $1259 = (($1258) + ($1189))|0;
-  $1260 = (($1259) + ($1257))|0;
-  $1261 = $1260 << 9;
-  $1262 = $1260 >>> 23;
-  $1263 = $1261 | $1262;
-  $1264 = (($1263) + ($1215))|0;
-  $1265 = $1212 << 10;
-  $1266 = $1212 >>> 22;
-  $1267 = $1265 | $1266;
-  $1268 = $1225 ^ -1;
-  $1269 = $1251 | $1268;
-  $1270 = $1269 ^ $1254;
-  $1271 = (($276) + 1836072691)|0;
-  $1272 = (($1271) + ($1202))|0;
-  $1273 = (($1272) + ($1270))|0;
-  $1274 = $1273 << 6;
-  $1275 = $1273 >>> 26;
-  $1276 = $1274 | $1275;
-  $1277 = (($1276) + ($1228))|0;
-  $1278 = $1225 << 10;
-  $1279 = $1225 >>> 22;
-  $1280 = $1278 | $1279;
-  $1281 = $1238 ^ -1;
-  $1282 = $1264 | $1281;
-  $1283 = $1282 ^ $1267;
-  $1284 = (($168) + 1859775393)|0;
-  $1285 = (($1284) + ($1215))|0;
-  $1286 = (($1285) + ($1283))|0;
-  $1287 = $1286 << 13;
-  $1288 = $1286 >>> 19;
-  $1289 = $1287 | $1288;
-  $1290 = (($1289) + ($1241))|0;
-  $1291 = $1238 << 10;
-  $1292 = $1238 >>> 22;
-  $1293 = $1291 | $1292;
-  $1294 = $1251 ^ -1;
-  $1295 = $1277 | $1294;
-  $1296 = $1295 ^ $1280;
-  $1297 = (($132) + 1836072691)|0;
-  $1298 = (($1297) + ($1228))|0;
-  $1299 = (($1298) + ($1296))|0;
-  $1300 = $1299 << 6;
-  $1301 = $1299 >>> 26;
-  $1302 = $1300 | $1301;
-  $1303 = (($1302) + ($1254))|0;
-  $1304 = $1251 << 10;
-  $1305 = $1251 >>> 22;
-  $1306 = $1304 | $1305;
-  $1307 = $1264 ^ -1;
-  $1308 = $1290 | $1307;
-  $1309 = $1308 ^ $1293;
-  $1310 = (($42) + 1859775393)|0;
-  $1311 = (($1310) + ($1241))|0;
-  $1312 = (($1311) + ($1309))|0;
-  $1313 = $1312 << 15;
-  $1314 = $1312 >>> 17;
-  $1315 = $1313 | $1314;
-  $1316 = (($1315) + ($1267))|0;
-  $1317 = $1264 << 10;
-  $1318 = $1264 >>> 22;
-  $1319 = $1317 | $1318;
-  $1320 = $1277 ^ -1;
-  $1321 = $1303 | $1320;
-  $1322 = $1321 ^ $1306;
-  $1323 = (($186) + 1836072691)|0;
-  $1324 = (($1323) + ($1254))|0;
-  $1325 = (($1324) + ($1322))|0;
-  $1326 = $1325 << 14;
-  $1327 = $1325 >>> 18;
-  $1328 = $1326 | $1327;
-  $1329 = (($1328) + ($1280))|0;
-  $1330 = $1277 << 10;
-  $1331 = $1277 >>> 22;
-  $1332 = $1330 | $1331;
-  $1333 = $1290 ^ -1;
-  $1334 = $1316 | $1333;
-  $1335 = $1334 ^ $1319;
-  $1336 = (($60) + 1859775393)|0;
-  $1337 = (($1336) + ($1267))|0;
-  $1338 = (($1337) + ($1335))|0;
-  $1339 = $1338 << 14;
-  $1340 = $1338 >>> 18;
-  $1341 = $1339 | $1340;
-  $1342 = (($1341) + ($1293))|0;
-  $1343 = $1290 << 10;
-  $1344 = $1290 >>> 22;
-  $1345 = $1343 | $1344;
-  $1346 = $1303 ^ -1;
-  $1347 = $1329 | $1346;
-  $1348 = $1347 ^ $1332;
-  $1349 = (($222) + 1836072691)|0;
-  $1350 = (($1349) + ($1280))|0;
-  $1351 = (($1350) + ($1348))|0;
-  $1352 = $1351 << 12;
-  $1353 = $1351 >>> 20;
-  $1354 = $1352 | $1353;
-  $1355 = (($1354) + ($1306))|0;
-  $1356 = $1303 << 10;
-  $1357 = $1303 >>> 22;
-  $1358 = $1356 | $1357;
-  $1359 = $1316 ^ -1;
-  $1360 = $1342 | $1359;
-  $1361 = $1360 ^ $1345;
-  $1362 = (($150) + 1859775393)|0;
-  $1363 = (($1362) + ($1293))|0;
-  $1364 = (($1363) + ($1361))|0;
-  $1365 = $1364 << 8;
-  $1366 = $1364 >>> 24;
-  $1367 = $1365 | $1366;
-  $1368 = (($1367) + ($1319))|0;
-  $1369 = $1316 << 10;
-  $1370 = $1316 >>> 22;
-  $1371 = $1369 | $1370;
-  $1372 = $1329 ^ -1;
-  $1373 = $1355 | $1372;
-  $1374 = $1373 ^ $1358;
-  $1375 = (($168) + 1836072691)|0;
-  $1376 = (($1375) + ($1306))|0;
-  $1377 = (($1376) + ($1374))|0;
-  $1378 = $1377 << 13;
-  $1379 = $1377 >>> 19;
-  $1380 = $1378 | $1379;
-  $1381 = (($1380) + ($1332))|0;
-  $1382 = $1329 << 10;
-  $1383 = $1329 >>> 22;
-  $1384 = $1382 | $1383;
-  $1385 = $1342 ^ -1;
-  $1386 = $1368 | $1385;
-  $1387 = $1386 ^ $1371;
-  $1388 = (($24) + 1859775393)|0;
-  $1389 = (($1388) + ($1319))|0;
-  $1390 = (($1389) + ($1387))|0;
-  $1391 = $1390 << 13;
-  $1392 = $1390 >>> 19;
-  $1393 = $1391 | $1392;
-  $1394 = (($1393) + ($1345))|0;
-  $1395 = $1342 << 10;
-  $1396 = $1342 >>> 22;
-  $1397 = $1395 | $1396;
-  $1398 = $1355 ^ -1;
-  $1399 = $1381 | $1398;
-  $1400 = $1399 ^ $1384;
-  $1401 = (($240) + 1836072691)|0;
-  $1402 = (($1401) + ($1332))|0;
-  $1403 = (($1402) + ($1400))|0;
-  $1404 = $1403 << 5;
-  $1405 = $1403 >>> 27;
-  $1406 = $1404 | $1405;
-  $1407 = (($1406) + ($1358))|0;
-  $1408 = $1355 << 10;
-  $1409 = $1355 >>> 22;
-  $1410 = $1408 | $1409;
-  $1411 = $1368 ^ -1;
-  $1412 = $1394 | $1411;
-  $1413 = $1412 ^ $1397;
-  $1414 = (($132) + 1859775393)|0;
-  $1415 = (($1414) + ($1345))|0;
-  $1416 = (($1415) + ($1413))|0;
-  $1417 = $1416 << 6;
-  $1418 = $1416 >>> 26;
-  $1419 = $1417 | $1418;
-  $1420 = (($1419) + ($1371))|0;
-  $1421 = $1368 << 10;
-  $1422 = $1368 >>> 22;
-  $1423 = $1421 | $1422;
-  $1424 = $1381 ^ -1;
-  $1425 = $1407 | $1424;
-  $1426 = $1425 ^ $1410;
-  $1427 = (($60) + 1836072691)|0;
-  $1428 = (($1427) + ($1358))|0;
-  $1429 = (($1428) + ($1426))|0;
-  $1430 = $1429 << 14;
-  $1431 = $1429 >>> 18;
-  $1432 = $1430 | $1431;
-  $1433 = (($1432) + ($1384))|0;
-  $1434 = $1381 << 10;
-  $1435 = $1381 >>> 22;
-  $1436 = $1434 | $1435;
-  $1437 = $1394 ^ -1;
-  $1438 = $1420 | $1437;
-  $1439 = $1438 ^ $1423;
-  $1440 = (($258) + 1859775393)|0;
-  $1441 = (($1440) + ($1371))|0;
-  $1442 = (($1441) + ($1439))|0;
-  $1443 = $1442 << 5;
-  $1444 = $1442 >>> 27;
-  $1445 = $1443 | $1444;
-  $1446 = (($1445) + ($1397))|0;
-  $1447 = $1394 << 10;
-  $1448 = $1394 >>> 22;
-  $1449 = $1447 | $1448;
-  $1450 = $1407 ^ -1;
-  $1451 = $1433 | $1450;
-  $1452 = $1451 ^ $1436;
-  $1453 = (($204) + 1836072691)|0;
-  $1454 = (($1453) + ($1384))|0;
-  $1455 = (($1454) + ($1452))|0;
-  $1456 = $1455 << 13;
-  $1457 = $1455 >>> 19;
-  $1458 = $1456 | $1457;
-  $1459 = (($1458) + ($1410))|0;
-  $1460 = $1407 << 10;
-  $1461 = $1407 >>> 22;
-  $1462 = $1460 | $1461;
-  $1463 = $1420 ^ -1;
-  $1464 = $1446 | $1463;
-  $1465 = $1464 ^ $1449;
-  $1466 = (($222) + 1859775393)|0;
-  $1467 = (($1466) + ($1397))|0;
-  $1468 = (($1467) + ($1465))|0;
-  $1469 = $1468 << 12;
-  $1470 = $1468 >>> 20;
-  $1471 = $1469 | $1470;
-  $1472 = (($1471) + ($1423))|0;
-  $1473 = $1420 << 10;
-  $1474 = $1420 >>> 22;
-  $1475 = $1473 | $1474;
-  $1476 = $1433 ^ -1;
-  $1477 = $1459 | $1476;
-  $1478 = $1477 ^ $1462;
-  $1479 = (($24) + 1836072691)|0;
-  $1480 = (($1479) + ($1410))|0;
-  $1481 = (($1480) + ($1478))|0;
-  $1482 = $1481 << 13;
-  $1483 = $1481 >>> 19;
-  $1484 = $1482 | $1483;
-  $1485 = (($1484) + ($1436))|0;
-  $1486 = $1433 << 10;
-  $1487 = $1433 >>> 22;
-  $1488 = $1486 | $1487;
-  $1489 = $1446 ^ -1;
-  $1490 = $1472 | $1489;
-  $1491 = $1490 ^ $1475;
-  $1492 = (($114) + 1859775393)|0;
-  $1493 = (($1492) + ($1423))|0;
-  $1494 = (($1493) + ($1491))|0;
-  $1495 = $1494 << 7;
-  $1496 = $1494 >>> 25;
-  $1497 = $1495 | $1496;
-  $1498 = (($1497) + ($1449))|0;
-  $1499 = $1446 << 10;
-  $1500 = $1446 >>> 22;
-  $1501 = $1499 | $1500;
-  $1502 = $1459 ^ -1;
-  $1503 = $1485 | $1502;
-  $1504 = $1503 ^ $1488;
-  $1505 = (($96) + 1836072691)|0;
-  $1506 = (($1505) + ($1436))|0;
-  $1507 = (($1506) + ($1504))|0;
-  $1508 = $1507 << 7;
-  $1509 = $1507 >>> 25;
-  $1510 = $1508 | $1509;
-  $1511 = (($1510) + ($1462))|0;
-  $1512 = $1459 << 10;
-  $1513 = $1459 >>> 22;
-  $1514 = $1512 | $1513;
-  $1515 = $1472 ^ -1;
-  $1516 = $1498 | $1515;
-  $1517 = $1516 ^ $1501;
-  $1518 = (($240) + 1859775393)|0;
-  $1519 = (($1518) + ($1449))|0;
-  $1520 = (($1519) + ($1517))|0;
-  $1521 = $1520 << 5;
-  $1522 = $1520 >>> 27;
-  $1523 = $1521 | $1522;
-  $1524 = (($1523) + ($1475))|0;
-  $1525 = $1472 << 10;
-  $1526 = $1472 >>> 22;
-  $1527 = $1525 | $1526;
-  $1528 = $1485 ^ -1;
-  $1529 = $1511 | $1528;
-  $1530 = $1529 ^ $1514;
-  $1531 = (($258) + 1836072691)|0;
-  $1532 = (($1531) + ($1462))|0;
-  $1533 = (($1532) + ($1530))|0;
-  $1534 = $1533 << 5;
-  $1535 = $1533 >>> 27;
-  $1536 = $1534 | $1535;
-  $1537 = (($1536) + ($1488))|0;
-  $1538 = $1485 << 10;
-  $1539 = $1485 >>> 22;
-  $1540 = $1538 | $1539;
-  $1541 = $1524 & $1527;
-  $1542 = $1527 ^ -1;
-  $1543 = $1498 & $1542;
-  $1544 = $1541 | $1543;
-  $1545 = (($42) + -1894007588)|0;
-  $1546 = (($1545) + ($1475))|0;
-  $1547 = (($1546) + ($1544))|0;
-  $1548 = $1547 << 11;
-  $1549 = $1547 >>> 21;
-  $1550 = $1548 | $1549;
-  $1551 = (($1550) + ($1501))|0;
-  $1552 = $1498 << 10;
-  $1553 = $1498 >>> 22;
-  $1554 = $1552 | $1553;
-  $1555 = $1537 & $1511;
-  $1556 = $1537 ^ -1;
-  $1557 = $1540 & $1556;
-  $1558 = $1555 | $1557;
-  $1559 = (($168) + 2053994217)|0;
-  $1560 = (($1559) + ($1488))|0;
-  $1561 = (($1560) + ($1558))|0;
-  $1562 = $1561 << 15;
-  $1563 = $1561 >>> 17;
-  $1564 = $1562 | $1563;
-  $1565 = (($1564) + ($1514))|0;
-  $1566 = $1511 << 10;
-  $1567 = $1511 >>> 22;
-  $1568 = $1566 | $1567;
-  $1569 = $1551 & $1554;
-  $1570 = $1554 ^ -1;
-  $1571 = $1524 & $1570;
-  $1572 = $1569 | $1571;
-  $1573 = (($186) + -1894007588)|0;
-  $1574 = (($1573) + ($1501))|0;
-  $1575 = (($1574) + ($1572))|0;
-  $1576 = $1575 << 12;
-  $1577 = $1575 >>> 20;
-  $1578 = $1576 | $1577;
-  $1579 = (($1578) + ($1527))|0;
-  $1580 = $1524 << 10;
-  $1581 = $1524 >>> 22;
-  $1582 = $1580 | $1581;
-  $1583 = $1565 & $1537;
-  $1584 = $1565 ^ -1;
-  $1585 = $1568 & $1584;
-  $1586 = $1583 | $1585;
-  $1587 = (($132) + 2053994217)|0;
-  $1588 = (($1587) + ($1514))|0;
-  $1589 = (($1588) + ($1586))|0;
-  $1590 = $1589 << 5;
-  $1591 = $1589 >>> 27;
-  $1592 = $1590 | $1591;
-  $1593 = (($1592) + ($1540))|0;
-  $1594 = $1537 << 10;
-  $1595 = $1537 >>> 22;
-  $1596 = $1594 | $1595;
-  $1597 = $1579 & $1582;
-  $1598 = $1582 ^ -1;
-  $1599 = $1551 & $1598;
-  $1600 = $1597 | $1599;
-  $1601 = (($222) + -1894007588)|0;
-  $1602 = (($1601) + ($1527))|0;
-  $1603 = (($1602) + ($1600))|0;
-  $1604 = $1603 << 14;
-  $1605 = $1603 >>> 18;
-  $1606 = $1604 | $1605;
-  $1607 = (($1606) + ($1554))|0;
-  $1608 = $1551 << 10;
-  $1609 = $1551 >>> 22;
-  $1610 = $1608 | $1609;
-  $1611 = $1593 & $1565;
-  $1612 = $1593 ^ -1;
-  $1613 = $1596 & $1612;
-  $1614 = $1611 | $1613;
-  $1615 = (($96) + 2053994217)|0;
-  $1616 = (($1615) + ($1540))|0;
-  $1617 = (($1616) + ($1614))|0;
-  $1618 = $1617 << 8;
-  $1619 = $1617 >>> 24;
-  $1620 = $1618 | $1619;
-  $1621 = (($1620) + ($1568))|0;
-  $1622 = $1565 << 10;
-  $1623 = $1565 >>> 22;
-  $1624 = $1622 | $1623;
-  $1625 = $1607 & $1610;
-  $1626 = $1610 ^ -1;
-  $1627 = $1579 & $1626;
-  $1628 = $1625 | $1627;
-  $1629 = (($204) + -1894007588)|0;
-  $1630 = (($1629) + ($1554))|0;
-  $1631 = (($1630) + ($1628))|0;
-  $1632 = $1631 << 15;
-  $1633 = $1631 >>> 17;
-  $1634 = $1632 | $1633;
-  $1635 = (($1634) + ($1582))|0;
-  $1636 = $1579 << 10;
-  $1637 = $1579 >>> 22;
-  $1638 = $1636 | $1637;
-  $1639 = $1621 & $1593;
-  $1640 = $1621 ^ -1;
-  $1641 = $1624 & $1640;
-  $1642 = $1639 | $1641;
-  $1643 = (($42) + 2053994217)|0;
-  $1644 = (($1643) + ($1568))|0;
-  $1645 = (($1644) + ($1642))|0;
-  $1646 = $1645 << 11;
-  $1647 = $1645 >>> 21;
-  $1648 = $1646 | $1647;
-  $1649 = (($1648) + ($1596))|0;
-  $1650 = $1593 << 10;
-  $1651 = $1593 >>> 22;
-  $1652 = $1650 | $1651;
-  $1653 = $1635 & $1638;
-  $1654 = $1638 ^ -1;
-  $1655 = $1607 & $1654;
-  $1656 = $1653 | $1655;
-  $1657 = (($24) + -1894007588)|0;
-  $1658 = (($1657) + ($1582))|0;
-  $1659 = (($1658) + ($1656))|0;
-  $1660 = $1659 << 14;
-  $1661 = $1659 >>> 18;
-  $1662 = $1660 | $1661;
-  $1663 = (($1662) + ($1610))|0;
-  $1664 = $1607 << 10;
-  $1665 = $1607 >>> 22;
-  $1666 = $1664 | $1665;
-  $1667 = $1649 & $1621;
-  $1668 = $1649 ^ -1;
-  $1669 = $1652 & $1668;
-  $1670 = $1667 | $1669;
-  $1671 = (($78) + 2053994217)|0;
-  $1672 = (($1671) + ($1596))|0;
-  $1673 = (($1672) + ($1670))|0;
-  $1674 = $1673 << 14;
-  $1675 = $1673 >>> 18;
-  $1676 = $1674 | $1675;
-  $1677 = (($1676) + ($1624))|0;
-  $1678 = $1621 << 10;
-  $1679 = $1621 >>> 22;
-  $1680 = $1678 | $1679;
-  $1681 = $1663 & $1666;
-  $1682 = $1666 ^ -1;
-  $1683 = $1635 & $1682;
-  $1684 = $1681 | $1683;
-  $1685 = (($168) + -1894007588)|0;
-  $1686 = (($1685) + ($1610))|0;
-  $1687 = (($1686) + ($1684))|0;
-  $1688 = $1687 << 15;
-  $1689 = $1687 >>> 17;
-  $1690 = $1688 | $1689;
-  $1691 = (($1690) + ($1638))|0;
-  $1692 = $1635 << 10;
-  $1693 = $1635 >>> 22;
-  $1694 = $1692 | $1693;
-  $1695 = $1677 & $1649;
-  $1696 = $1677 ^ -1;
-  $1697 = $1680 & $1696;
-  $1698 = $1695 | $1697;
-  $1699 = (($222) + 2053994217)|0;
-  $1700 = (($1699) + ($1624))|0;
-  $1701 = (($1700) + ($1698))|0;
-  $1702 = $1701 << 14;
-  $1703 = $1701 >>> 18;
-  $1704 = $1702 | $1703;
-  $1705 = (($1704) + ($1652))|0;
-  $1706 = $1649 << 10;
-  $1707 = $1649 >>> 22;
-  $1708 = $1706 | $1707;
-  $1709 = $1691 & $1694;
-  $1710 = $1694 ^ -1;
-  $1711 = $1663 & $1710;
-  $1712 = $1709 | $1711;
-  $1713 = (($240) + -1894007588)|0;
-  $1714 = (($1713) + ($1638))|0;
-  $1715 = (($1714) + ($1712))|0;
-  $1716 = $1715 << 9;
-  $1717 = $1715 >>> 23;
-  $1718 = $1716 | $1717;
-  $1719 = (($1718) + ($1666))|0;
-  $1720 = $1663 << 10;
-  $1721 = $1663 >>> 22;
-  $1722 = $1720 | $1721;
-  $1723 = $1705 & $1677;
-  $1724 = $1705 ^ -1;
-  $1725 = $1708 & $1724;
-  $1726 = $1723 | $1725;
-  $1727 = (($294) + 2053994217)|0;
-  $1728 = (($1727) + ($1652))|0;
-  $1729 = (($1728) + ($1726))|0;
-  $1730 = $1729 << 6;
-  $1731 = $1729 >>> 26;
-  $1732 = $1730 | $1731;
-  $1733 = (($1732) + ($1680))|0;
-  $1734 = $1677 << 10;
-  $1735 = $1677 >>> 22;
-  $1736 = $1734 | $1735;
-  $1737 = $1719 & $1722;
-  $1738 = $1722 ^ -1;
-  $1739 = $1691 & $1738;
-  $1740 = $1737 | $1739;
-  $1741 = (($96) + -1894007588)|0;
-  $1742 = (($1741) + ($1666))|0;
-  $1743 = (($1742) + ($1740))|0;
-  $1744 = $1743 << 8;
-  $1745 = $1743 >>> 24;
-  $1746 = $1744 | $1745;
-  $1747 = (($1746) + ($1694))|0;
-  $1748 = $1691 << 10;
-  $1749 = $1691 >>> 22;
-  $1750 = $1748 | $1749;
-  $1751 = $1733 & $1705;
-  $1752 = $1733 ^ -1;
-  $1753 = $1736 & $1752;
-  $1754 = $1751 | $1753;
-  $1755 = (($24) + 2053994217)|0;
-  $1756 = (($1755) + ($1680))|0;
-  $1757 = (($1756) + ($1754))|0;
-  $1758 = $1757 << 14;
-  $1759 = $1757 >>> 18;
-  $1760 = $1758 | $1759;
-  $1761 = (($1760) + ($1708))|0;
-  $1762 = $1705 << 10;
-  $1763 = $1705 >>> 22;
-  $1764 = $1762 | $1763;
-  $1765 = $1747 & $1750;
-  $1766 = $1750 ^ -1;
-  $1767 = $1719 & $1766;
-  $1768 = $1765 | $1767;
-  $1769 = (($258) + -1894007588)|0;
-  $1770 = (($1769) + ($1694))|0;
-  $1771 = (($1770) + ($1768))|0;
-  $1772 = $1771 << 9;
-  $1773 = $1771 >>> 23;
-  $1774 = $1772 | $1773;
-  $1775 = (($1774) + ($1722))|0;
-  $1776 = $1719 << 10;
-  $1777 = $1719 >>> 22;
-  $1778 = $1776 | $1777;
-  $1779 = $1761 & $1733;
-  $1780 = $1761 ^ -1;
-  $1781 = $1764 & $1780;
-  $1782 = $1779 | $1781;
-  $1783 = (($114) + 2053994217)|0;
-  $1784 = (($1783) + ($1708))|0;
-  $1785 = (($1784) + ($1782))|0;
-  $1786 = $1785 << 6;
-  $1787 = $1785 >>> 26;
-  $1788 = $1786 | $1787;
-  $1789 = (($1788) + ($1736))|0;
-  $1790 = $1733 << 10;
-  $1791 = $1733 >>> 22;
-  $1792 = $1790 | $1791;
-  $1793 = $1775 & $1778;
-  $1794 = $1778 ^ -1;
-  $1795 = $1747 & $1794;
-  $1796 = $1793 | $1795;
-  $1797 = (($78) + -1894007588)|0;
-  $1798 = (($1797) + ($1722))|0;
-  $1799 = (($1798) + ($1796))|0;
-  $1800 = $1799 << 14;
-  $1801 = $1799 >>> 18;
-  $1802 = $1800 | $1801;
-  $1803 = (($1802) + ($1750))|0;
-  $1804 = $1747 << 10;
-  $1805 = $1747 >>> 22;
-  $1806 = $1804 | $1805;
-  $1807 = $1789 & $1761;
-  $1808 = $1789 ^ -1;
-  $1809 = $1792 & $1808;
-  $1810 = $1807 | $1809;
-  $1811 = (($240) + 2053994217)|0;
-  $1812 = (($1811) + ($1736))|0;
-  $1813 = (($1812) + ($1810))|0;
-  $1814 = $1813 << 9;
-  $1815 = $1813 >>> 23;
-  $1816 = $1814 | $1815;
-  $1817 = (($1816) + ($1764))|0;
-  $1818 = $1761 << 10;
-  $1819 = $1761 >>> 22;
-  $1820 = $1818 | $1819;
-  $1821 = $1803 & $1806;
-  $1822 = $1806 ^ -1;
-  $1823 = $1775 & $1822;
-  $1824 = $1821 | $1823;
-  $1825 = (($150) + -1894007588)|0;
-  $1826 = (($1825) + ($1750))|0;
-  $1827 = (($1826) + ($1824))|0;
-  $1828 = $1827 << 5;
-  $1829 = $1827 >>> 27;
-  $1830 = $1828 | $1829;
-  $1831 = (($1830) + ($1778))|0;
-  $1832 = $1775 << 10;
-  $1833 = $1775 >>> 22;
-  $1834 = $1832 | $1833;
-  $1835 = $1817 & $1789;
-  $1836 = $1817 ^ -1;
-  $1837 = $1820 & $1836;
-  $1838 = $1835 | $1837;
-  $1839 = (($60) + 2053994217)|0;
-  $1840 = (($1839) + ($1764))|0;
-  $1841 = (($1840) + ($1838))|0;
-  $1842 = $1841 << 12;
-  $1843 = $1841 >>> 20;
-  $1844 = $1842 | $1843;
-  $1845 = (($1844) + ($1792))|0;
-  $1846 = $1789 << 10;
-  $1847 = $1789 >>> 22;
-  $1848 = $1846 | $1847;
-  $1849 = $1831 & $1834;
-  $1850 = $1834 ^ -1;
-  $1851 = $1803 & $1850;
-  $1852 = $1849 | $1851;
-  $1853 = (($294) + -1894007588)|0;
-  $1854 = (($1853) + ($1778))|0;
-  $1855 = (($1854) + ($1852))|0;
-  $1856 = $1855 << 6;
-  $1857 = $1855 >>> 26;
-  $1858 = $1856 | $1857;
-  $1859 = (($1858) + ($1806))|0;
-  $1860 = $1803 << 10;
-  $1861 = $1803 >>> 22;
-  $1862 = $1860 | $1861;
-  $1863 = $1845 & $1817;
-  $1864 = $1845 ^ -1;
-  $1865 = $1848 & $1864;
-  $1866 = $1863 | $1865;
-  $1867 = (($258) + 2053994217)|0;
-  $1868 = (($1867) + ($1792))|0;
-  $1869 = (($1868) + ($1866))|0;
-  $1870 = $1869 << 9;
-  $1871 = $1869 >>> 23;
-  $1872 = $1870 | $1871;
-  $1873 = (($1872) + ($1820))|0;
-  $1874 = $1817 << 10;
-  $1875 = $1817 >>> 22;
-  $1876 = $1874 | $1875;
-  $1877 = $1859 & $1862;
-  $1878 = $1862 ^ -1;
-  $1879 = $1831 & $1878;
-  $1880 = $1877 | $1879;
-  $1881 = (($276) + -1894007588)|0;
-  $1882 = (($1881) + ($1806))|0;
-  $1883 = (($1882) + ($1880))|0;
-  $1884 = $1883 << 8;
-  $1885 = $1883 >>> 24;
-  $1886 = $1884 | $1885;
-  $1887 = (($1886) + ($1834))|0;
-  $1888 = $1831 << 10;
-  $1889 = $1831 >>> 22;
-  $1890 = $1888 | $1889;
-  $1891 = $1873 & $1845;
-  $1892 = $1873 ^ -1;
-  $1893 = $1876 & $1892;
-  $1894 = $1891 | $1893;
-  $1895 = (($186) + 2053994217)|0;
-  $1896 = (($1895) + ($1820))|0;
-  $1897 = (($1896) + ($1894))|0;
-  $1898 = $1897 << 12;
-  $1899 = $1897 >>> 20;
-  $1900 = $1898 | $1899;
-  $1901 = (($1900) + ($1848))|0;
-  $1902 = $1845 << 10;
-  $1903 = $1845 >>> 22;
-  $1904 = $1902 | $1903;
-  $1905 = $1887 & $1890;
-  $1906 = $1890 ^ -1;
-  $1907 = $1859 & $1906;
-  $1908 = $1905 | $1907;
-  $1909 = (($114) + -1894007588)|0;
-  $1910 = (($1909) + ($1834))|0;
-  $1911 = (($1910) + ($1908))|0;
-  $1912 = $1911 << 6;
-  $1913 = $1911 >>> 26;
-  $1914 = $1912 | $1913;
-  $1915 = (($1914) + ($1862))|0;
-  $1916 = $1859 << 10;
-  $1917 = $1859 >>> 22;
-  $1918 = $1916 | $1917;
-  $1919 = $1901 & $1873;
-  $1920 = $1901 ^ -1;
-  $1921 = $1904 & $1920;
-  $1922 = $1919 | $1921;
-  $1923 = (($150) + 2053994217)|0;
-  $1924 = (($1923) + ($1848))|0;
-  $1925 = (($1924) + ($1922))|0;
-  $1926 = $1925 << 5;
-  $1927 = $1925 >>> 27;
-  $1928 = $1926 | $1927;
-  $1929 = (($1928) + ($1876))|0;
-  $1930 = $1873 << 10;
-  $1931 = $1873 >>> 22;
-  $1932 = $1930 | $1931;
-  $1933 = $1915 & $1918;
-  $1934 = $1918 ^ -1;
-  $1935 = $1887 & $1934;
-  $1936 = $1933 | $1935;
-  $1937 = (($132) + -1894007588)|0;
-  $1938 = (($1937) + ($1862))|0;
-  $1939 = (($1938) + ($1936))|0;
-  $1940 = $1939 << 5;
-  $1941 = $1939 >>> 27;
-  $1942 = $1940 | $1941;
-  $1943 = (($1942) + ($1890))|0;
-  $1944 = $1887 << 10;
-  $1945 = $1887 >>> 22;
-  $1946 = $1944 | $1945;
-  $1947 = $1929 & $1901;
-  $1948 = $1929 ^ -1;
-  $1949 = $1932 & $1948;
-  $1950 = $1947 | $1949;
-  $1951 = (($204) + 2053994217)|0;
-  $1952 = (($1951) + ($1876))|0;
-  $1953 = (($1952) + ($1950))|0;
-  $1954 = $1953 << 15;
-  $1955 = $1953 >>> 17;
-  $1956 = $1954 | $1955;
-  $1957 = (($1956) + ($1904))|0;
-  $1958 = $1901 << 10;
-  $1959 = $1901 >>> 22;
-  $1960 = $1958 | $1959;
-  $1961 = $1943 & $1946;
-  $1962 = $1946 ^ -1;
-  $1963 = $1915 & $1962;
-  $1964 = $1961 | $1963;
-  $1965 = (($60) + -1894007588)|0;
-  $1966 = (($1965) + ($1890))|0;
-  $1967 = (($1966) + ($1964))|0;
-  $1968 = $1967 << 12;
-  $1969 = $1967 >>> 20;
-  $1970 = $1968 | $1969;
-  $1971 = (($1970) + ($1918))|0;
-  $1972 = $1915 << 10;
-  $1973 = $1915 >>> 22;
-  $1974 = $1972 | $1973;
-  $1975 = $1957 & $1929;
-  $1976 = $1957 ^ -1;
-  $1977 = $1960 & $1976;
-  $1978 = $1975 | $1977;
-  $1979 = (($276) + 2053994217)|0;
-  $1980 = (($1979) + ($1904))|0;
-  $1981 = (($1980) + ($1978))|0;
-  $1982 = $1981 << 8;
-  $1983 = $1981 >>> 24;
-  $1984 = $1982 | $1983;
-  $1985 = (($1984) + ($1932))|0;
-  $1986 = $1929 << 10;
-  $1987 = $1929 >>> 22;
-  $1988 = $1986 | $1987;
-  $1989 = $1974 ^ -1;
-  $1990 = $1943 | $1989;
-  $1991 = $1971 ^ $1990;
-  $1992 = (($96) + -1454113458)|0;
-  $1993 = (($1992) + ($1918))|0;
-  $1994 = (($1993) + ($1991))|0;
-  $1995 = $1994 << 9;
-  $1996 = $1994 >>> 23;
-  $1997 = $1995 | $1996;
-  $1998 = (($1997) + ($1946))|0;
-  $1999 = $1943 << 10;
-  $2000 = $1943 >>> 22;
-  $2001 = $1999 | $2000;
-  $2002 = $1957 ^ $1988;
-  $2003 = $2002 ^ $1985;
-  $2004 = (($1932) + ($240))|0;
-  $2005 = (($2004) + ($2003))|0;
-  $2006 = $2005 << 8;
-  $2007 = $2005 >>> 24;
-  $2008 = $2006 | $2007;
-  $2009 = (($2008) + ($1960))|0;
-  $2010 = $1957 << 10;
-  $2011 = $1957 >>> 22;
-  $2012 = $2010 | $2011;
-  $2013 = $2001 ^ -1;
-  $2014 = $1971 | $2013;
-  $2015 = $1998 ^ $2014;
-  $2016 = (($24) + -1454113458)|0;
-  $2017 = (($2016) + ($1946))|0;
-  $2018 = (($2017) + ($2015))|0;
-  $2019 = $2018 << 15;
-  $2020 = $2018 >>> 17;
-  $2021 = $2019 | $2020;
-  $2022 = (($2021) + ($1974))|0;
-  $2023 = $1971 << 10;
-  $2024 = $1971 >>> 22;
-  $2025 = $2023 | $2024;
-  $2026 = $1985 ^ $2012;
-  $2027 = $2026 ^ $2009;
-  $2028 = (($1960) + ($294))|0;
-  $2029 = (($2028) + ($2027))|0;
-  $2030 = $2029 << 5;
-  $2031 = $2029 >>> 27;
-  $2032 = $2030 | $2031;
-  $2033 = (($2032) + ($1988))|0;
-  $2034 = $1985 << 10;
-  $2035 = $1985 >>> 22;
-  $2036 = $2034 | $2035;
-  $2037 = $2025 ^ -1;
-  $2038 = $1998 | $2037;
-  $2039 = $2022 ^ $2038;
-  $2040 = (($114) + -1454113458)|0;
-  $2041 = (($2040) + ($1974))|0;
-  $2042 = (($2041) + ($2039))|0;
-  $2043 = $2042 << 5;
-  $2044 = $2042 >>> 27;
-  $2045 = $2043 | $2044;
-  $2046 = (($2045) + ($2001))|0;
-  $2047 = $1998 << 10;
-  $2048 = $1998 >>> 22;
-  $2049 = $2047 | $2048;
-  $2050 = $2009 ^ $2036;
-  $2051 = $2050 ^ $2033;
-  $2052 = (($1988) + ($204))|0;
-  $2053 = (($2052) + ($2051))|0;
-  $2054 = $2053 << 12;
-  $2055 = $2053 >>> 20;
-  $2056 = $2054 | $2055;
-  $2057 = (($2056) + ($2012))|0;
-  $2058 = $2009 << 10;
-  $2059 = $2009 >>> 22;
-  $2060 = $2058 | $2059;
-  $2061 = $2049 ^ -1;
-  $2062 = $2022 | $2061;
-  $2063 = $2046 ^ $2062;
-  $2064 = (($186) + -1454113458)|0;
-  $2065 = (($2064) + ($2001))|0;
-  $2066 = (($2065) + ($2063))|0;
-  $2067 = $2066 << 11;
-  $2068 = $2066 >>> 21;
-  $2069 = $2067 | $2068;
-  $2070 = (($2069) + ($2025))|0;
-  $2071 = $2022 << 10;
-  $2072 = $2022 >>> 22;
-  $2073 = $2071 | $2072;
-  $2074 = $2033 ^ $2060;
-  $2075 = $2074 ^ $2057;
-  $2076 = (($2012) + ($96))|0;
-  $2077 = (($2076) + ($2075))|0;
-  $2078 = $2077 << 9;
-  $2079 = $2077 >>> 23;
-  $2080 = $2078 | $2079;
-  $2081 = (($2080) + ($2036))|0;
-  $2082 = $2033 << 10;
-  $2083 = $2033 >>> 22;
-  $2084 = $2082 | $2083;
-  $2085 = $2073 ^ -1;
-  $2086 = $2046 | $2085;
-  $2087 = $2070 ^ $2086;
-  $2088 = (($150) + -1454113458)|0;
-  $2089 = (($2088) + ($2025))|0;
-  $2090 = (($2089) + ($2087))|0;
-  $2091 = $2090 << 6;
-  $2092 = $2090 >>> 26;
-  $2093 = $2091 | $2092;
-  $2094 = (($2093) + ($2049))|0;
-  $2095 = $2046 << 10;
-  $2096 = $2046 >>> 22;
-  $2097 = $2095 | $2096;
-  $2098 = $2057 ^ $2084;
-  $2099 = $2098 ^ $2081;
-  $2100 = (($2036) + ($42))|0;
-  $2101 = (($2100) + ($2099))|0;
-  $2102 = $2101 << 12;
-  $2103 = $2101 >>> 20;
-  $2104 = $2102 | $2103;
-  $2105 = (($2104) + ($2060))|0;
-  $2106 = $2057 << 10;
-  $2107 = $2057 >>> 22;
-  $2108 = $2106 | $2107;
-  $2109 = $2097 ^ -1;
-  $2110 = $2070 | $2109;
-  $2111 = $2094 ^ $2110;
-  $2112 = (($240) + -1454113458)|0;
-  $2113 = (($2112) + ($2049))|0;
-  $2114 = (($2113) + ($2111))|0;
-  $2115 = $2114 << 8;
-  $2116 = $2114 >>> 24;
-  $2117 = $2115 | $2116;
-  $2118 = (($2117) + ($2073))|0;
-  $2119 = $2070 << 10;
-  $2120 = $2070 >>> 22;
-  $2121 = $2119 | $2120;
-  $2122 = $2081 ^ $2108;
-  $2123 = $2122 ^ $2105;
-  $2124 = (($2060) + ($114))|0;
-  $2125 = (($2124) + ($2123))|0;
-  $2126 = $2125 << 5;
-  $2127 = $2125 >>> 27;
-  $2128 = $2126 | $2127;
-  $2129 = (($2128) + ($2084))|0;
-  $2130 = $2081 << 10;
-  $2131 = $2081 >>> 22;
-  $2132 = $2130 | $2131;
-  $2133 = $2121 ^ -1;
-  $2134 = $2094 | $2133;
-  $2135 = $2118 ^ $2134;
-  $2136 = (($60) + -1454113458)|0;
-  $2137 = (($2136) + ($2073))|0;
-  $2138 = (($2137) + ($2135))|0;
-  $2139 = $2138 << 13;
-  $2140 = $2138 >>> 19;
-  $2141 = $2139 | $2140;
-  $2142 = (($2141) + ($2097))|0;
-  $2143 = $2094 << 10;
-  $2144 = $2094 >>> 22;
-  $2145 = $2143 | $2144;
-  $2146 = $2105 ^ $2132;
-  $2147 = $2146 ^ $2129;
-  $2148 = (($2084) + ($168))|0;
-  $2149 = (($2148) + ($2147))|0;
-  $2150 = $2149 << 14;
-  $2151 = $2149 >>> 18;
-  $2152 = $2150 | $2151;
-  $2153 = (($2152) + ($2108))|0;
-  $2154 = $2105 << 10;
-  $2155 = $2105 >>> 22;
-  $2156 = $2154 | $2155;
-  $2157 = $2145 ^ -1;
-  $2158 = $2118 | $2157;
-  $2159 = $2142 ^ $2158;
-  $2160 = (($204) + -1454113458)|0;
-  $2161 = (($2160) + ($2097))|0;
-  $2162 = (($2161) + ($2159))|0;
-  $2163 = $2162 << 12;
-  $2164 = $2162 >>> 20;
-  $2165 = $2163 | $2164;
-  $2166 = (($2165) + ($2121))|0;
-  $2167 = $2118 << 10;
-  $2168 = $2118 >>> 22;
-  $2169 = $2167 | $2168;
-  $2170 = $2129 ^ $2156;
-  $2171 = $2170 ^ $2153;
-  $2172 = (($2108) + ($150))|0;
-  $2173 = (($2172) + ($2171))|0;
-  $2174 = $2173 << 6;
-  $2175 = $2173 >>> 26;
-  $2176 = $2174 | $2175;
-  $2177 = (($2176) + ($2132))|0;
-  $2178 = $2129 << 10;
-  $2179 = $2129 >>> 22;
-  $2180 = $2178 | $2179;
-  $2181 = $2169 ^ -1;
-  $2182 = $2142 | $2181;
-  $2183 = $2166 ^ $2182;
-  $2184 = (($276) + -1454113458)|0;
-  $2185 = (($2184) + ($2121))|0;
-  $2186 = (($2185) + ($2183))|0;
-  $2187 = $2186 << 5;
-  $2188 = $2186 >>> 27;
-  $2189 = $2187 | $2188;
-  $2190 = (($2189) + ($2145))|0;
-  $2191 = $2142 << 10;
-  $2192 = $2142 >>> 22;
-  $2193 = $2191 | $2192;
-  $2194 = $2153 ^ $2180;
-  $2195 = $2194 ^ $2177;
-  $2196 = (($2132) + ($132))|0;
-  $2197 = (($2196) + ($2195))|0;
-  $2198 = $2197 << 8;
-  $2199 = $2197 >>> 24;
-  $2200 = $2198 | $2199;
-  $2201 = (($2200) + ($2156))|0;
-  $2202 = $2153 << 10;
-  $2203 = $2153 >>> 22;
-  $2204 = $2202 | $2203;
-  $2205 = $2193 ^ -1;
-  $2206 = $2166 | $2205;
-  $2207 = $2190 ^ $2206;
-  $2208 = (($42) + -1454113458)|0;
-  $2209 = (($2208) + ($2145))|0;
-  $2210 = (($2209) + ($2207))|0;
-  $2211 = $2210 << 12;
-  $2212 = $2210 >>> 20;
-  $2213 = $2211 | $2212;
-  $2214 = (($2213) + ($2169))|0;
-  $2215 = $2166 << 10;
-  $2216 = $2166 >>> 22;
-  $2217 = $2215 | $2216;
-  $2218 = $2177 ^ $2204;
-  $2219 = $2218 ^ $2201;
-  $2220 = (($2156) + ($60))|0;
-  $2221 = (($2220) + ($2219))|0;
-  $2222 = $2221 << 13;
-  $2223 = $2221 >>> 19;
-  $2224 = $2222 | $2223;
-  $2225 = (($2224) + ($2180))|0;
-  $2226 = $2177 << 10;
-  $2227 = $2177 >>> 22;
-  $2228 = $2226 | $2227;
-  $2229 = $2217 ^ -1;
-  $2230 = $2190 | $2229;
-  $2231 = $2214 ^ $2230;
-  $2232 = (($78) + -1454113458)|0;
-  $2233 = (($2232) + ($2169))|0;
-  $2234 = (($2233) + ($2231))|0;
-  $2235 = $2234 << 13;
-  $2236 = $2234 >>> 19;
-  $2237 = $2235 | $2236;
-  $2238 = (($2237) + ($2193))|0;
-  $2239 = $2190 << 10;
-  $2240 = $2190 >>> 22;
-  $2241 = $2239 | $2240;
-  $2242 = $2201 ^ $2228;
-  $2243 = $2242 ^ $2225;
-  $2244 = (($2180) + ($258))|0;
-  $2245 = (($2244) + ($2243))|0;
-  $2246 = $2245 << 6;
-  $2247 = $2245 >>> 26;
-  $2248 = $2246 | $2247;
-  $2249 = (($2248) + ($2204))|0;
-  $2250 = $2201 << 10;
-  $2251 = $2201 >>> 22;
-  $2252 = $2250 | $2251;
-  $2253 = $2241 ^ -1;
-  $2254 = $2214 | $2253;
-  $2255 = $2238 ^ $2254;
-  $2256 = (($168) + -1454113458)|0;
-  $2257 = (($2256) + ($2193))|0;
-  $2258 = (($2257) + ($2255))|0;
-  $2259 = $2258 << 14;
-  $2260 = $2258 >>> 18;
-  $2261 = $2259 | $2260;
-  $2262 = (($2261) + ($2217))|0;
-  $2263 = $2214 << 10;
-  $2264 = $2214 >>> 22;
-  $2265 = $2263 | $2264;
-  $2266 = $2225 ^ $2252;
-  $2267 = $2266 ^ $2249;
-  $2268 = (($2204) + ($276))|0;
-  $2269 = (($2268) + ($2267))|0;
-  $2270 = $2269 << 5;
-  $2271 = $2269 >>> 27;
-  $2272 = $2270 | $2271;
-  $2273 = (($2272) + ($2228))|0;
-  $2274 = $2225 << 10;
-  $2275 = $2225 >>> 22;
-  $2276 = $2274 | $2275;
-  $2277 = $2265 ^ -1;
-  $2278 = $2238 | $2277;
-  $2279 = $2262 ^ $2278;
-  $2280 = (($222) + -1454113458)|0;
-  $2281 = (($2280) + ($2217))|0;
-  $2282 = (($2281) + ($2279))|0;
-  $2283 = $2282 << 11;
-  $2284 = $2282 >>> 21;
-  $2285 = $2283 | $2284;
-  $2286 = (($2285) + ($2241))|0;
-  $2287 = $2238 << 10;
-  $2288 = $2238 >>> 22;
-  $2289 = $2287 | $2288;
-  $2290 = $2249 ^ $2276;
-  $2291 = $2290 ^ $2273;
-  $2292 = (($2228) + ($24))|0;
-  $2293 = (($2292) + ($2291))|0;
-  $2294 = $2293 << 15;
-  $2295 = $2293 >>> 17;
-  $2296 = $2294 | $2295;
-  $2297 = (($2296) + ($2252))|0;
-  $2298 = $2249 << 10;
-  $2299 = $2249 >>> 22;
-  $2300 = $2298 | $2299;
-  $2301 = $2289 ^ -1;
-  $2302 = $2262 | $2301;
-  $2303 = $2286 ^ $2302;
-  $2304 = (($132) + -1454113458)|0;
-  $2305 = (($2304) + ($2241))|0;
-  $2306 = (($2305) + ($2303))|0;
-  $2307 = $2306 << 8;
-  $2308 = $2306 >>> 24;
-  $2309 = $2307 | $2308;
-  $2310 = (($2309) + ($2265))|0;
-  $2311 = $2262 << 10;
-  $2312 = $2262 >>> 22;
-  $2313 = $2311 | $2312;
-  $2314 = $2273 ^ $2300;
-  $2315 = $2314 ^ $2297;
-  $2316 = (($2252) + ($78))|0;
-  $2317 = (($2316) + ($2315))|0;
-  $2318 = $2317 << 13;
-  $2319 = $2317 >>> 19;
-  $2320 = $2318 | $2319;
-  $2321 = (($2320) + ($2276))|0;
-  $2322 = $2273 << 10;
-  $2323 = $2273 >>> 22;
-  $2324 = $2322 | $2323;
-  $2325 = $2313 ^ -1;
-  $2326 = $2286 | $2325;
-  $2327 = $2310 ^ $2326;
-  $2328 = (($294) + -1454113458)|0;
-  $2329 = (($2328) + ($2265))|0;
-  $2330 = (($2329) + ($2327))|0;
-  $2331 = $2330 << 5;
-  $2332 = $2330 >>> 27;
-  $2333 = $2331 | $2332;
-  $2334 = (($2333) + ($2289))|0;
-  $2335 = $2286 << 10;
-  $2336 = $2286 >>> 22;
-  $2337 = $2335 | $2336;
-  $2338 = $2297 ^ $2324;
-  $2339 = $2338 ^ $2321;
-  $2340 = (($2276) + ($186))|0;
-  $2341 = (($2340) + ($2339))|0;
-  $2342 = $2341 << 11;
-  $2343 = $2341 >>> 21;
-  $2344 = $2342 | $2343;
-  $2345 = (($2344) + ($2300))|0;
-  $2346 = $2297 << 10;
-  $2347 = $2297 >>> 22;
-  $2348 = $2346 | $2347;
-  $2349 = $2337 ^ -1;
-  $2350 = $2310 | $2349;
-  $2351 = $2334 ^ $2350;
-  $2352 = (($258) + -1454113458)|0;
-  $2353 = (($2352) + ($2289))|0;
-  $2354 = (($2353) + ($2351))|0;
-  $2355 = $2354 << 6;
-  $2356 = $2354 >>> 26;
-  $2357 = $2355 | $2356;
-  $2358 = $2310 << 10;
-  $2359 = $2310 >>> 22;
-  $2360 = $2358 | $2359;
-  $2361 = $2321 ^ $2348;
-  $2362 = $2361 ^ $2345;
-  $2363 = (($2300) + ($222))|0;
-  $2364 = (($2363) + ($2362))|0;
-  $2365 = $2364 << 11;
-  $2366 = $2364 >>> 21;
-  $2367 = $2365 | $2366;
-  $2368 = $2321 << 10;
-  $2369 = $2321 >>> 22;
-  $2370 = $2368 | $2369;
-  $2371 = (($2370) + ($296))|0;
-  $2372 = (($2371) + ($2334))|0;
-  $2373 = (($2348) + ($297))|0;
-  $2374 = (($2373) + ($2360))|0;
-  HEAP32[$4>>2] = $2374;
-  $2375 = (($2324) + ($298))|0;
-  $2376 = (($2375) + ($2337))|0;
-  HEAP32[$5>>2] = $2376;
-  $2377 = (($2313) + ($299))|0;
-  $2378 = (($2377) + ($2324))|0;
-  $2379 = (($2378) + ($2367))|0;
-  HEAP32[$6>>2] = $2379;
-  $2380 = (($2313) + ($295))|0;
-  $2381 = (($2380) + ($2345))|0;
-  $2382 = (($2381) + ($2357))|0;
-  HEAP32[$7>>2] = $2382;
-  HEAP32[$3>>2] = $2372;
-  $2383 = ((($$0)) + 64|0);
-  $2384 = (($$05) + -1)|0;
-  $2385 = ($2384|0)==(0);
-  if ($2385) {
-   break;
-  } else {
-   $$0 = $2383;$$05 = $2384;
-  }
- }
- return 124;
-}
-function __gcry_rmd160_init($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 160|0);
- HEAP32[$1>>2] = 1732584193;
- $2 = ((($0)) + 164|0);
- HEAP32[$2>>2] = -271733879;
- $3 = ((($0)) + 168|0);
- HEAP32[$3>>2] = -1732584194;
- $4 = ((($0)) + 172|0);
- HEAP32[$4>>2] = 271733878;
- $5 = ((($0)) + 176|0);
- HEAP32[$5>>2] = -1009589776;
- $6 = ((($0)) + 128|0);
- $7 = ((($0)) + 148|0);
- 
;HEAP32[$6>>2]=0|0;HEAP32[$6+4>>2]=0|0;HEAP32[$6+8>>2]=0|0;HEAP32[$6+12>>2]=0|0;HEAP32[$6+16>>2]=0|0;
- HEAP32[$7>>2] = 64;
- $8 = ((($0)) + 152|0);
- HEAP32[$8>>2] = 76;
- return;
-}
-function __gcry_rmd160_mixblock($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- (_transform($0,$1,1)|0);
- $2 = ((($0)) + 160|0);
- $3 = HEAP32[$2>>2]|0;
- HEAP32[$1>>2] = $3;
- $4 = ((($0)) + 164|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ((($1)) + 4|0);
- HEAP32[$6>>2] = $5;
- $7 = ((($0)) + 168|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($1)) + 8|0);
- HEAP32[$9>>2] = $8;
- $10 = ((($0)) + 172|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($1)) + 12|0);
- HEAP32[$12>>2] = $11;
- $13 = ((($0)) + 176|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ((($1)) + 16|0);
- HEAP32[$15>>2] = $14;
- return;
-}
-function __gcry_rmd160_hash_buffer($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $3 = sp;
- $4 = ((($3)) + 160|0);
- HEAP32[$4>>2] = 1732584193;
- $5 = ((($3)) + 164|0);
- HEAP32[$5>>2] = -271733879;
- $6 = ((($3)) + 168|0);
- HEAP32[$6>>2] = -1732584194;
- $7 = ((($3)) + 172|0);
- HEAP32[$7>>2] = 271733878;
- $8 = ((($3)) + 176|0);
- HEAP32[$8>>2] = -1009589776;
- $9 = ((($3)) + 128|0);
- $10 = ((($3)) + 148|0);
- 
;HEAP32[$9>>2]=0|0;HEAP32[$9+4>>2]=0|0;HEAP32[$9+8>>2]=0|0;HEAP32[$9+12>>2]=0|0;HEAP32[$9+16>>2]=0|0;
- HEAP32[$10>>2] = 64;
- $11 = ((($3)) + 152|0);
- HEAP32[$11>>2] = 76;
- __gcry_md_block_write($3,$1,$2);
- _rmd160_final($3);
- dest=$0; src=$3; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- STACKTOP = sp;return;
-}
-function __gcry_rsa_pkcs1_encode_for_enc($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$091103$us = 0, $$091103$us$be = 0, $$093102$us = 0, $$093102$us$be = 0, 
$$096122 = 0, $$1 = 0, $$1100 = 0, $$1100$in = 0, $$194104$us = 0, $$2105$us = 
0, $$3$us = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 
0, $56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $7 = 0, $8 = 0, $9 = 0, 
$exitcond = 0, $or$cond = 0, $spec$select$us = 0, $spec$select101$us = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $6 = sp;
- $7 = (($1) + 7)|0;
- $8 = $7 >>> 3;
- HEAP32[$6>>2] = $8;
- $9 = (($3) + 7)|0;
- $10 = ($9>>>0)<=($8>>>0);
- $11 = ($8|0)!=(0);
- $or$cond = $11 & $10;
- if (!($or$cond)) {
-  $$1 = 66;
-  STACKTOP = sp;return ($$1|0);
- }
- $12 = (__gcry_malloc_secure($8)|0);
- $13 = ($12|0)==(0|0);
- if ($13) {
-  $14 = (_gpg_err_code_from_syserror()|0);
-  $$1 = $14;
-  STACKTOP = sp;return ($$1|0);
- }
- HEAP8[$12>>0] = 0;
- $15 = ((($12)) + 1|0);
- HEAP8[$15>>0] = 2;
- $16 = (-3 - ($3))|0;
- $17 = (($16) + ($8))|0;
- $18 = ($17|0)>(0);
- if (!($18)) {
-  __gcry_assert_failed(60590,60596,95,60609);
-  // unreachable;
- }
- $19 = ($4|0)==(0|0);
- if ($19) {
-  $28 = (__gcry_random_bytes_secure($17,1)|0);
-  $$091103$us = 0;$$093102$us = 0;
-  while(1) {
-   $46 = (($28) + ($$093102$us)|0);
-   $47 = HEAP8[$46>>0]|0;
-   $48 = ($47<<24>>24)==(0);
-   $49 = $48&1;
-   $spec$select$us = (($$091103$us) + ($49))|0;
-   $50 = (($$093102$us) + 1)|0;
-   $exitcond = ($50|0)==($17|0);
-   if ($exitcond) {
-    $51 = ($spec$select$us|0)==(0);
-    if ($51) {
-     break;
-    }
-    $29 = $spec$select$us >>> 7;
-    $30 = (($spec$select$us) + 3)|0;
-    $31 = (($30) + ($29))|0;
-    $32 = (__gcry_random_bytes_secure($31,1)|0);
-    $33 = ($31|0)==(0);
-    if (!($33)) {
-     $$194104$us = 0;$$2105$us = $31;
-     while(1) {
-      $34 = (($28) + ($$194104$us)|0);
-      $35 = HEAP8[$34>>0]|0;
-      $36 = ($35<<24>>24)==(0);
-      $37 = (($$2105$us) + -1)|0;
-      if ($36) {
-       $38 = (($32) + ($37)|0);
-       $39 = HEAP8[$38>>0]|0;
-       HEAP8[$34>>0] = $39;
-       $$3$us = $37;$41 = $39;
-      } else {
-       $$3$us = $$2105$us;$41 = $35;
-      }
-      $40 = ($41<<24>>24)!=(0);
-      $42 = $40&1;
-      $spec$select101$us = (($$194104$us) + ($42))|0;
-      $43 = ($spec$select101$us|0)<($17|0);
-      $44 = ($$3$us|0)!=(0);
-      $45 = $43 & $44;
-      if ($45) {
-       $$194104$us = $spec$select101$us;$$2105$us = $$3$us;
-      } else {
-       break;
-      }
-     }
-    }
-    __gcry_free($32);
-    $$091103$us$be = 0;$$093102$us$be = 0;
-   } else {
-    $$091103$us$be = $spec$select$us;$$093102$us$be = $50;
-   }
-   $$091103$us = $$091103$us$be;$$093102$us = $$093102$us$be;
-  }
-  $52 = ((($12)) + 2|0);
-  _memcpy(($52|0),($28|0),($17|0))|0;
-  __gcry_free($28);
-  $$1100$in = $17;
- } else {
-  $20 = ($17|0)==($5|0);
-  if (!($20)) {
-   __gcry_free($12);
-   $$1 = 45;
-   STACKTOP = sp;return ($$1|0);
-  }
-  $21 = ($5|0)==(0);
-  L33: do {
-   if (!($21)) {
-    $$096122 = 0;
-    while(1) {
-     $24 = (($4) + ($$096122)|0);
-     $25 = HEAP8[$24>>0]|0;
-     $26 = ($25<<24>>24)==(0);
-     $23 = (($$096122) + 1)|0;
-     if ($26) {
-      break;
-     }
-     $22 = ($23>>>0)<($5>>>0);
-     if ($22) {
-      $$096122 = $23;
-     } else {
-      break L33;
-     }
-    }
-    __gcry_free($12);
-    $$1 = 45;
-    STACKTOP = sp;return ($$1|0);
-   }
-  } while(0);
-  $27 = ((($12)) + 2|0);
-  _memcpy(($27|0),($4|0),($5|0))|0;
-  $$1100$in = $5;
- }
- $$1100 = (($$1100$in) + 2)|0;
- $53 = (($$1100$in) + 3)|0;
- $54 = (($12) + ($$1100)|0);
- HEAP8[$54>>0] = 0;
- $55 = (($12) + ($53)|0);
- _memcpy(($55|0),($2|0),($3|0))|0;
- $56 = (($53) + ($3))|0;
- $57 = ($56|0)==($8|0);
- if (!($57)) {
-  __gcry_assert_failed(60640,60596,153,60609);
-  // unreachable;
- }
- $58 = (__gcry_mpi_scan($0,5,$12,$8,$6)|0);
- $59 = ($58|0)==(0);
- if ($59) {
-  $60 = (__gcry_get_debug_flag(1)|0);
-  $61 = ($60|0)==(0);
-  if (!($61)) {
-   $62 = HEAP32[$0>>2]|0;
-   __gcry_log_printmpi(60652,$62);
-  }
- }
- __gcry_free($12);
- $$1 = $58;
- STACKTOP = sp;return ($$1|0);
-}
-function __gcry_rsa_pkcs1_decode_for_enc($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$lcssa = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$store$select = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = (($2) + 7)|0;
- $6 = $5 >>> 3;
- HEAP32[$0>>2] = 0;
- $7 = (__gcry_malloc_secure($6)|0);
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $9 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $9;
-  STACKTOP = sp;return ($$0|0);
- }
- $10 = (__gcry_mpi_print(5,$7,$6,$4,$3)|0);
- $11 = ($10|0)==(0);
- if (!($11)) {
-  __gcry_free($7);
-  $12 = $10 & 65535;
-  $$0 = $12;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = HEAP32[$4>>2]|0;
- $14 = ($13>>>0)<(4);
- if ($14) {
-  __gcry_free($7);
-  $$0 = 155;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = HEAP8[$7>>0]|0;
- $16 = ($15<<24>>24)==(0);
- $spec$store$select = $16&1;
- $17 = $16 ? 2 : 1;
- HEAP32[$4>>2] = $17;
- $18 = (($7) + ($spec$store$select)|0);
- $19 = HEAP8[$18>>0]|0;
- $20 = ($19<<24>>24)==(2);
- if (!($20)) {
-  __gcry_free($7);
-  $$0 = 155;
-  STACKTOP = sp;return ($$0|0);
- }
- $21 = ($17>>>0)<($13>>>0);
- L17: do {
-  if ($21) {
-   $23 = $17;
-   while(1) {
-    $22 = (($7) + ($23)|0);
-    $24 = HEAP8[$22>>0]|0;
-    $25 = ($24<<24>>24)==(0);
-    if ($25) {
-     $$lcssa = $23;
-     break L17;
-    }
-    $26 = (($23) + 1)|0;
-    HEAP32[$4>>2] = $26;
-    $27 = ($26>>>0)<($13>>>0);
-    if ($27) {
-     $23 = $26;
-    } else {
-     $$lcssa = $26;
-     break;
-    }
-   }
-  } else {
-   $$lcssa = $17;
-  }
- } while(0);
- $28 = (($$lcssa) + 1)|0;
- $29 = ($13>>>0)>($28>>>0);
- if (!($29)) {
-  __gcry_free($7);
-  $$0 = 155;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP32[$4>>2] = $28;
- $30 = (($7) + ($28)|0);
- $31 = (($13) - ($28))|0;
- _memmove(($7|0),($30|0),($31|0))|0;
- HEAP32[$0>>2] = $7;
- HEAP32[$1>>2] = $31;
- $32 = (__gcry_get_debug_flag(1)|0);
- $33 = ($32|0)==(0);
- if ($33) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $34 = HEAP32[$0>>2]|0;
- $35 = HEAP32[$1>>2]|0;
- __gcry_log_printhex(60685,$34,$35);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_rsa_pkcs1_encode_for_sig($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $5 = sp;
- $6 = sp + 104|0;
- $7 = sp + 100|0;
- $8 = (($1) + 7)|0;
- $9 = $8 >>> 3;
- HEAP32[$6>>2] = $9;
- HEAP32[$7>>2] = 100;
- $10 = (__gcry_md_get_algo_dlen($4)|0);
- $11 = (__gcry_md_algo_info($4,10,$5,$7)|0);
- $12 = ($11|0)==(0);
- if (!($12)) {
-  $$0 = 69;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = ($10|0)==($3|0);
- if (!($13)) {
-  $$0 = 70;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = ($3|0)==(0);
- if ($14) {
-  $$0 = 66;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = HEAP32[$7>>2]|0;
- $16 = (($3) + 4)|0;
- $17 = (($16) + ($15))|0;
- $18 = ($17>>>0)>($9>>>0);
- if ($18) {
-  $$0 = 66;
-  STACKTOP = sp;return ($$0|0);
- }
- $19 = (__gcry_malloc($9)|0);
- $20 = ($19|0)==(0|0);
- if ($20) {
-  $21 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $21;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP8[$19>>0] = 0;
- $22 = ((($19)) + 1|0);
- HEAP8[$22>>0] = 1;
- $23 = (($9) - ($3))|0;
- $24 = HEAP32[$7>>2]|0;
- $25 = (($23) - ($24))|0;
- $26 = (($25) + -3)|0;
- $27 = ($26|0)>(1);
- if (!($27)) {
-  __gcry_assert_failed(60739,60596,303,60745);
-  // unreachable;
- }
- $28 = ((($19)) + 2|0);
- _memset(($28|0),-1,($26|0))|0;
- $29 = (($25) + -1)|0;
- $30 = (($19) + ($29)|0);
- HEAP8[$30>>0] = 0;
- $31 = (($19) + ($25)|0);
- _memcpy(($31|0),($5|0),($24|0))|0;
- $32 = (($19) + ($23)|0);
- _memcpy(($32|0),($2|0),($3|0))|0;
- $33 = (__gcry_mpi_scan($0,5,$19,$9,$6)|0);
- $34 = ($33|0)==(0);
- if ($34) {
-  $35 = (__gcry_get_debug_flag(1)|0);
-  $36 = ($35|0)==(0);
-  if (!($36)) {
-   $37 = HEAP32[$0>>2]|0;
-   __gcry_log_printmpi(60776,$37);
-  }
- }
- __gcry_free($19);
- $$0 = $33;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_rsa_pkcs1_encode_raw_for_sig($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$040 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = (($1) + 7)|0;
- $6 = $5 >>> 3;
- HEAP32[$4>>2] = $6;
- $7 = ($3|0)==(0);
- $8 = (($3) + 4)|0;
- $9 = ($8>>>0)>($6>>>0);
- $or$cond = $7 | $9;
- if ($or$cond) {
-  $$0 = 66;
-  STACKTOP = sp;return ($$0|0);
- }
- $10 = (__gcry_malloc($6)|0);
- $11 = ($10|0)==(0|0);
- if ($11) {
-  $12 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $12;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP8[$10>>0] = 0;
- $13 = ((($10)) + 1|0);
- HEAP8[$13>>0] = 1;
- $14 = (($6) - ($3))|0;
- $15 = (($14) + -3)|0;
- $16 = ($15|0)>(1);
- if (!($16)) {
-  __gcry_assert_failed(60739,60596,368,60809);
-  // unreachable;
- }
- $17 = ((($10)) + 2|0);
- _memset(($17|0),-1,($15|0))|0;
- $18 = (($14) + -1)|0;
- $19 = (($10) + ($18)|0);
- HEAP8[$19>>0] = 0;
- $20 = (($10) + ($14)|0);
- _memcpy(($20|0),($2|0),($3|0))|0;
- $21 = (__gcry_mpi_scan($0,5,$10,$6,$4)|0);
- $22 = ($21|0)==(0);
- if ($22) {
-  $24 = (__gcry_get_debug_flag(1)|0);
-  $25 = ($24|0)==(0);
-  if ($25) {
-   $$040 = 0;
-  } else {
-   $26 = HEAP32[$0>>2]|0;
-   __gcry_log_printmpi(60776,$26);
-   $$040 = 0;
-  }
- } else {
-  $23 = $21 & 65535;
-  $$040 = $23;
- }
- __gcry_free($10);
- $$0 = $$040;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_rsa_oaep_encode($0,$1,$2,$3,$4,$5,$6,$7,$8) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- $8 = $8|0;
- var $$0110 = 0, $$0110120 = 0, $$0110122 = 0, $$0113121 = 0, $$1111119 = 0, 
$$1114118 = 0, $$2 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $9 = 0, $exitcond = 0, $exitcond126 = 0;
- var $or$cond = 0, $or$cond4 = 0, $spec$select = 0, $spec$select115 = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- $9 = (($1) + 7)|0;
- $10 = $9 >>> 3;
- HEAP32[$0>>2] = 0;
- $11 = ($5|0)!=(0|0);
- $12 = ($6|0)!=(0);
- $or$cond = $11 & $12;
- $spec$select = $or$cond ? $6 : 0;
- $spec$select115 = $or$cond ? $5 : 73338;
- $13 = (__gcry_md_get_algo_dlen($2)|0);
- $14 = $13 << 1;
- $15 = (($10) + -2)|0;
- $16 = (($15) - ($14))|0;
- $17 = ($16>>>0)>=($4>>>0);
- $18 = ($10|0)!=(0);
- $or$cond4 = $18 & $17;
- if (!($or$cond4)) {
-  $$2 = 66;
-  return ($$2|0);
- }
- $19 = (__gcry_calloc_secure(1,$10)|0);
- $20 = ($19|0)==(0|0);
- if ($20) {
-  $21 = (_gpg_err_code_from_syserror()|0);
-  $$2 = $21;
-  return ($$2|0);
- }
- $22 = ((($19)) + 1|0);
- $23 = (($22) + ($13)|0);
- __gcry_md_hash_buffer($2,$23,$spec$select115,$spec$select);
- $24 = (($10) - ($4))|0;
- $25 = (($24) + -1)|0;
- $26 = (($19) + ($25)|0);
- HEAP8[$26>>0] = 1;
- $27 = (($19) + ($24)|0);
- _memcpy(($27|0),($3|0),($4|0))|0;
- $28 = ($7|0)==(0|0);
- do {
-  if ($28) {
-   __gcry_randomize($22,$13,1);
-  } else {
-   $29 = ($13|0)==($8|0);
-   if ($29) {
-    _memcpy(($22|0),($7|0),($8|0))|0;
-    break;
-   }
-   __gcry_free($19);
-   $$2 = 45;
-   return ($$2|0);
-  }
- } while(0);
- $30 = (($10) - ($13))|0;
- $31 = (($30) + -1)|0;
- $32 = (__gcry_malloc_secure($31)|0);
- $33 = ($32|0)==(0|0);
- if ($33) {
-  $34 = (_gpg_err_code_from_syserror()|0);
-  __gcry_free($19);
-  $$2 = $34;
-  return ($$2|0);
- }
- $35 = (_mgf1($32,$31,$22,$13,$2)|0);
- $36 = ($35|0)==(0);
- if (!($36)) {
-  __gcry_free($32);
-  __gcry_free($19);
-  $$2 = $35;
-  return ($$2|0);
- }
- $$0110120 = (($13) + 1)|0;
- $37 = ($$0110120>>>0)<($10>>>0);
- if ($37) {
-  $$0110122 = $$0110120;$$0113121 = $32;
-  while(1) {
-   $38 = ((($$0113121)) + 1|0);
-   $39 = HEAP8[$$0113121>>0]|0;
-   $40 = (($19) + ($$0110122)|0);
-   $41 = HEAP8[$40>>0]|0;
-   $42 = $41 ^ $39;
-   HEAP8[$40>>0] = $42;
-   $$0110 = (($$0110122) + 1)|0;
-   $exitcond126 = ($$0110|0)==($10|0);
-   if ($exitcond126) {
-    break;
-   } else {
-    $$0110122 = $$0110;$$0113121 = $38;
-   }
-  }
- }
- __gcry_free($32);
- $43 = (__gcry_malloc_secure($13)|0);
- $44 = ($43|0)==(0|0);
- if ($44) {
-  $45 = (_gpg_err_code_from_syserror()|0);
-  __gcry_free($19);
-  $$2 = $45;
-  return ($$2|0);
- }
- $46 = (_mgf1($43,$13,$23,$31,$2)|0);
- $47 = ($46|0)==(0);
- if (!($47)) {
-  __gcry_free($43);
-  __gcry_free($19);
-  $$2 = $46;
-  return ($$2|0);
- }
- $48 = ($$0110120>>>0)>(1);
- if ($48) {
-  $$1111119 = 1;$$1114118 = $43;
-  while(1) {
-   $49 = ((($$1114118)) + 1|0);
-   $50 = HEAP8[$$1114118>>0]|0;
-   $51 = (($19) + ($$1111119)|0);
-   $52 = HEAP8[$51>>0]|0;
-   $53 = $52 ^ $50;
-   HEAP8[$51>>0] = $53;
-   $54 = (($$1111119) + 1)|0;
-   $exitcond = ($54|0)==($$0110120|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$1111119 = $54;$$1114118 = $49;
-   }
-  }
- }
- __gcry_free($43);
- $55 = (__gcry_mpi_scan($0,5,$19,$10,0)|0);
- $56 = ($55|0)==(0);
- if ($56) {
-  $57 = (__gcry_get_debug_flag(1)|0);
-  $58 = ($57|0)==(0);
-  if (!($58)) {
-   $59 = HEAP32[$0>>2]|0;
-   __gcry_log_printmpi(60844,$59);
-  }
- }
- __gcry_free($19);
- $$2 = $55;
- return ($$2|0);
-}
-function _mgf1($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0 = 0, $$03740 = 0, $$03839 = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = sp + 4|0;
- $7 = (__gcry_md_open($5,$4,0)|0);
- $8 = ($7|0)==(0);
- if (!($8)) {
-  $$0 = $7;
-  STACKTOP = sp;return ($$0|0);
- }
- $9 = (__gcry_md_get_algo_dlen($4)|0);
- $10 = ($1|0)==(0);
- if (!($10)) {
-  $11 = ((($6)) + 1|0);
-  $12 = ((($6)) + 2|0);
-  $13 = ((($6)) + 3|0);
-  $$03740 = 0;$$03839 = 0;
-  while(1) {
-   $14 = ($$03839|0)==(0);
-   if (!($14)) {
-    $15 = HEAP32[$5>>2]|0;
-    __gcry_md_reset($15);
-   }
-   $16 = $$03839 >>> 24;
-   $17 = $16&255;
-   HEAP8[$6>>0] = $17;
-   $18 = $$03839 >>> 16;
-   $19 = $18&255;
-   HEAP8[$11>>0] = $19;
-   $20 = $$03839 >>> 8;
-   $21 = $20&255;
-   HEAP8[$12>>0] = $21;
-   $22 = $$03839&255;
-   HEAP8[$13>>0] = $22;
-   $23 = (($$03839) + 1)|0;
-   $24 = HEAP32[$5>>2]|0;
-   __gcry_md_write($24,$2,$3);
-   $25 = HEAP32[$5>>2]|0;
-   __gcry_md_write($25,$6,4);
-   $26 = HEAP32[$5>>2]|0;
-   $27 = (__gcry_md_read($26,0)|0);
-   $28 = (($1) - ($$03740))|0;
-   $29 = ($28>>>0)<($9>>>0);
-   $$ = $29 ? $28 : $9;
-   $30 = (($0) + ($$03740)|0);
-   _memcpy(($30|0),($27|0),($$|0))|0;
-   $31 = (($$) + ($$03740))|0;
-   $32 = ($31>>>0)<($1>>>0);
-   if ($32) {
-    $$03740 = $31;$$03839 = $23;
-   } else {
-    break;
-   }
-  }
- }
- $33 = HEAP32[$5>>2]|0;
- __gcry_md_close($33);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_rsa_oaep_decode($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0106 = 0, $$0122 = 0, $$1118 = 0, $$2$lcssa = 0, $$2115 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 
0, $62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, 
$exitcond = 0, $exitcond126 = 0, $narrow = 0, $narrow114 = 0, $or$cond = 0, 
$spec$select = 0, $spec$select109 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $7 = sp;
- HEAP32[$7>>2] = 0;
- $8 = (($2) + 7)|0;
- $9 = $8 >>> 3;
- HEAP32[$0>>2] = 0;
- $10 = ($5|0)!=(0|0);
- $11 = ($6|0)!=(0);
- $or$cond = $10 & $11;
- $12 = (__gcry_md_get_algo_dlen($3)|0);
- $13 = (__gcry_malloc($12)|0);
- $14 = ($13|0)==(0|0);
- if ($14) {
-  $15 = (_gpg_err_code_from_syserror()|0);
-  $$0106 = $15;
-  STACKTOP = sp;return ($$0106|0);
- }
- $spec$select109 = $or$cond ? $5 : 73338;
- $spec$select = $or$cond ? $6 : 0;
- __gcry_md_hash_buffer($3,$13,$spec$select109,$spec$select);
- $16 = (__gcry_mpi_to_octet_string($7,0,$4,$9)|0);
- $17 = ($16|0)==(0);
- if (!($17)) {
-  __gcry_free($13);
-  $$0106 = 155;
-  STACKTOP = sp;return ($$0106|0);
- }
- $18 = $12 << 1;
- $19 = (($18) + 2)|0;
- $20 = ($9>>>0)<($19>>>0);
- if ($20) {
-  $21 = HEAP32[$7>>2]|0;
-  __gcry_free($21);
-  __gcry_free($13);
-  $$0106 = 155;
-  STACKTOP = sp;return ($$0106|0);
- }
- $22 = (($9) + -1)|0;
- $23 = (__gcry_malloc_secure($22)|0);
- $24 = ($23|0)==(0|0);
- if ($24) {
-  $25 = (_gpg_err_code_from_syserror()|0);
-  $26 = HEAP32[$7>>2]|0;
-  __gcry_free($26);
-  __gcry_free($13);
-  $$0106 = $25;
-  STACKTOP = sp;return ($$0106|0);
- }
- $27 = (($23) + ($12)|0);
- $28 = HEAP32[$7>>2]|0;
- $29 = ((($28)) + 1|0);
- $30 = (($29) + ($12)|0);
- $31 = (($22) - ($12))|0;
- $32 = (_mgf1($23,$12,$30,$31,$3)|0);
- $33 = ($12|0)==(0);
- if (!($33)) {
-  $$0122 = 0;
-  while(1) {
-   $34 = (($29) + ($$0122)|0);
-   $35 = HEAP8[$34>>0]|0;
-   $36 = (($23) + ($$0122)|0);
-   $37 = HEAP8[$36>>0]|0;
-   $38 = $37 ^ $35;
-   HEAP8[$36>>0] = $38;
-   $39 = (($$0122) + 1)|0;
-   $exitcond126 = ($39|0)==($12|0);
-   if ($exitcond126) {
-    break;
-   } else {
-    $$0122 = $39;
-   }
-  }
- }
- $40 = (_mgf1($27,$31,$23,$12,$3)|0);
- $41 = $40 | $32;
- $42 = ($31|0)==(0);
- if (!($42)) {
-  $$1118 = 0;
-  while(1) {
-   $43 = (($30) + ($$1118)|0);
-   $44 = HEAP8[$43>>0]|0;
-   $45 = (($27) + ($$1118)|0);
-   $46 = HEAP8[$45>>0]|0;
-   $47 = $46 ^ $44;
-   HEAP8[$45>>0] = $47;
-   $48 = (($$1118) + 1)|0;
-   $exitcond = ($48|0)==($31|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$1118 = $48;
-   }
-  }
- }
- $49 = (_memcmp($13,$27,$12)|0);
- $50 = $41 | $49;
- $51 = ($50|0)!=(0);
- $52 = ($12>>>0)<($31>>>0);
- L27: do {
-  if ($52) {
-   $$2115 = $12;
-   while(1) {
-    $53 = (($27) + ($$2115)|0);
-    $54 = HEAP8[$53>>0]|0;
-    $55 = ($54<<24>>24)==(1);
-    if ($55) {
-     $$2$lcssa = $$2115;
-     break L27;
-    }
-    $56 = (($$2115) + 1)|0;
-    $57 = ($56>>>0)<($31>>>0);
-    if ($57) {
-     $$2115 = $56;
-    } else {
-     $$2$lcssa = $56;
-     break;
-    }
-   }
-  } else {
-   $$2$lcssa = $12;
-  }
- } while(0);
- $58 = ($$2$lcssa|0)==($31|0);
- $narrow = $51 | $58;
- $59 = HEAP32[$7>>2]|0;
- $60 = HEAP8[$59>>0]|0;
- $61 = ($60<<24>>24)!=(0);
- $narrow114 = $narrow | $61;
- __gcry_free($13);
- $62 = HEAP32[$7>>2]|0;
- __gcry_free($62);
- if ($narrow114) {
-  __gcry_free($23);
-  $$0106 = 155;
-  STACKTOP = sp;return ($$0106|0);
- }
- $63 = (($$2$lcssa) + 1)|0;
- $64 = (($27) + ($63)|0);
- $65 = (($31) - ($63))|0;
- _memmove(($23|0),($64|0),($65|0))|0;
- HEAP32[$0>>2] = $23;
- HEAP32[$1>>2] = $65;
- $66 = (__gcry_get_debug_flag(1)|0);
- $67 = ($66|0)==(0);
- if ($67) {
-  $$0106 = 0;
-  STACKTOP = sp;return ($$0106|0);
- }
- $68 = HEAP32[$0>>2]|0;
- $69 = HEAP32[$1>>2]|0;
- __gcry_log_printhex(60862,$68,$69);
- $$0106 = 0;
- STACKTOP = sp;return ($$0106|0);
-}
-function __gcry_rsa_pss_encode($0,$1,$2,$3,$4,$5,$6,$7) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- var $$0 = 0, $$0169$lcssa = 0, $$0169197 = 0, $$0170$lcssa = 0, $$0170196 = 
0, $$0176213 = 0, $$0177$lcssa = 0, $$0177206 = 0, $$0181$lcssa = 0, $$0181205 
= 0, $$0185212 = 0, $$0186187 = 0, $$0186188 = 0, $$1 = 0, $$1171 = 0, $$1178 = 
0, $$1182 = 0, $$2 = 0, $$2172 = 0, $$2179 = 0;
- var $$2183 = 0, $$3173194 = 0, $$3180202 = 0, $$3184201 = 0, $$3195 = 0, 
$$pre = 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 
0, $56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 
0, $76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $scevgep = 0, $scevgep224 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $8 = (($1) + 7)|0;
- $9 = $8 >>> 3;
- $10 = (__gcry_md_get_algo_dlen($2)|0);
- $11 = ($10|0)==(0);
- if ($11) {
-  __gcry_assert_failed(60901,60596,800,60906);
-  // unreachable;
- }
- $12 = (($10) + ($5))|0;
- $13 = (($12) + 8)|0;
- $14 = (($9) - ($10))|0;
- $15 = (($14) + -1)|0;
- $16 = (($13) + ($15))|0;
- $17 = (__gcry_malloc($16)|0);
- $18 = ($17|0)==(0|0);
- if ($18) {
-  $19 = (_gpg_err_code_from_syserror()|0);
-  $$0186187 = $19;
-  return ($$0186187|0);
- }
- $20 = ((($17)) + 8|0);
- $21 = (($20) + ($10)|0);
- $22 = (($21) + ($5)|0);
- $23 = ($10|0)==($4|0);
- do {
-  if ($23) {
-   _memcpy(($20|0),($3|0),($4|0))|0;
-   $24 = (($4) + ($5))|0;
-   $25 = (($24) + 2)|0;
-   $26 = ($9>>>0)<($25>>>0);
-   if ($26) {
-    $$0186188 = 66;
-   } else {
-    $27 = (__gcry_malloc($9)|0);
-    $28 = ($27|0)==(0|0);
-    if ($28) {
-     $29 = (_gpg_err_code_from_syserror()|0);
-     $$0186188 = $29;
-     break;
-    }
-    $30 = (($27) + ($9)|0);
-    $31 = ((($30)) + -1|0);
-    $32 = (0 - ($4))|0;
-    $33 = (($31) + ($32)|0);
-    $34 = ($5|0)==(0);
-    do {
-     if ($34) {
-      label = 15;
-     } else {
-      $35 = ($6|0)==(0|0);
-      if ($35) {
-       __gcry_randomize($21,$5,1);
-       label = 15;
-       break;
-      }
-      $36 = ($7|0)==($5|0);
-      if ($36) {
-       _memcpy(($21|0),($6|0),($5|0))|0;
-       label = 15;
-       break;
-      } else {
-       $$pre = $27;
-       $$0 = 45;$$pre$phiZ2D = $$pre;
-       break;
-      }
-     }
-    } while(0);
-    if ((label|0) == 15) {
-     $37 = $17;
-     $38 = $37;
-     
HEAP8[$38>>0]=0&255;HEAP8[$38+1>>0]=(0>>8)&255;HEAP8[$38+2>>0]=(0>>16)&255;HEAP8[$38+3>>0]=0>>24;
-     $39 = (($37) + 4)|0;
-     $40 = $39;
-     
HEAP8[$40>>0]=0&255;HEAP8[$40+1>>0]=(0>>8)&255;HEAP8[$40+2>>0]=(0>>16)&255;HEAP8[$40+3>>0]=0>>24;
-     __gcry_md_hash_buffer($2,$33,$17,$13);
-     $41 = (0 - ($5))|0;
-     $42 = (($33) + ($41)|0);
-     $43 = ((($42)) + -1|0);
-     $44 = $43;
-     $45 = $27;
-     $46 = (($44) - ($45))|0;
-     _memset(($27|0),0,($46|0))|0;
-     $47 = ((($43)) + 1|0);
-     HEAP8[$43>>0] = 1;
-     _memcpy(($47|0),($21|0),($5|0))|0;
-     (_mgf1($22,$15,$33,$4,$2)|0);
-     $48 = ($15|0)==(0);
-     if (!($48)) {
-      $$0176213 = $22;$$0185212 = 0;
-      while(1) {
-       $49 = HEAP8[$$0176213>>0]|0;
-       $50 = (($27) + ($$0185212)|0);
-       $51 = HEAP8[$50>>0]|0;
-       $52 = $51 ^ $49;
-       HEAP8[$50>>0] = $52;
-       $53 = (($$0185212) + 1)|0;
-       $54 = ((($$0176213)) + 1|0);
-       $exitcond = ($53|0)==($15|0);
-       if ($exitcond) {
-        break;
-       } else {
-        $$0176213 = $54;$$0185212 = $53;
-       }
-      }
-     }
-     $55 = $8 & -8;
-     $56 = (($55) - ($1))|0;
-     $57 = 255 >>> $56;
-     $58 = HEAP8[$27>>0]|0;
-     $59 = $58&255;
-     $60 = $57 & $59;
-     $61 = $60&255;
-     HEAP8[$27>>0] = $61;
-     $62 = (($9) + -1)|0;
-     $63 = (($27) + ($62)|0);
-     HEAP8[$63>>0] = -68;
-     $64 = (__gcry_mpi_scan($0,5,$27,$9,0)|0);
-     $65 = ($64|0)==(0);
-     if ($65) {
-      $66 = (__gcry_get_debug_flag(1)|0);
-      $67 = ($66|0)==(0);
-      if ($67) {
-       $$0 = 0;$$pre$phiZ2D = $45;
-      } else {
-       $68 = HEAP32[$0>>2]|0;
-       __gcry_log_printmpi(60927,$68);
-       $$0 = 0;$$pre$phiZ2D = $45;
-      }
-     } else {
-      $$0 = $64;$$pre$phiZ2D = $45;
-     }
-    }
-    $69 = $$pre$phiZ2D & 7;
-    $70 = ($69|0)!=(0);
-    $71 = ($9|0)!=(0);
-    $72 = $71 & $70;
-    if ($72) {
-     $$0177206 = $9;$$0181205 = $27;
-     while(1) {
-      HEAP8[$$0181205>>0] = 0;
-      $73 = ((($$0181205)) + 1|0);
-      $74 = (($$0177206) + -1)|0;
-      $75 = $73;
-      $76 = $75 & 7;
-      $77 = ($76|0)!=(0);
-      $78 = ($74|0)!=(0);
-      $79 = $78 & $77;
-      if ($79) {
-       $$0177206 = $74;$$0181205 = $73;
-      } else {
-       $$0177$lcssa = $74;$$0181$lcssa = $73;
-       break;
-      }
-     }
-    } else {
-     $$0177$lcssa = $9;$$0181$lcssa = $27;
-    }
-    $80 = ($$0177$lcssa>>>0)<(8);
-    if ($80) {
-     $$2179 = $$0177$lcssa;$$2183 = $$0181$lcssa;
-    } else {
-     $81 = (($$0177$lcssa) + -8)|0;
-     $82 = $81 & -8;
-     $83 = (($82) + 8)|0;
-     $$1178 = $$0177$lcssa;$$1182 = $$0181$lcssa;
-     while(1) {
-      $84 = $$1182;
-      $85 = $84;
-      HEAP32[$85>>2] = 0;
-      $86 = (($84) + 4)|0;
-      $87 = $86;
-      HEAP32[$87>>2] = 0;
-      $88 = (($$1178) + -8)|0;
-      $89 = ((($$1182)) + 8|0);
-      $90 = ($88>>>0)>(7);
-      if ($90) {
-       $$1178 = $88;$$1182 = $89;
-      } else {
-       break;
-      }
-     }
-     $91 = (($81) - ($82))|0;
-     $scevgep224 = (($$0181$lcssa) + ($83)|0);
-     $$2179 = $91;$$2183 = $scevgep224;
-    }
-    $92 = ($$2179|0)==(0);
-    if (!($92)) {
-     $$3180202 = $$2179;$$3184201 = $$2183;
-     while(1) {
-      HEAP8[$$3184201>>0] = 0;
-      $93 = ((($$3184201)) + 1|0);
-      $94 = (($$3180202) + -1)|0;
-      $95 = ($94|0)==(0);
-      if ($95) {
-       break;
-      } else {
-       $$3180202 = $94;$$3184201 = $93;
-      }
-     }
-    }
-    __gcry_free($27);
-    $$0186188 = $$0;
-   }
-  } else {
-   $$0186188 = 139;
-  }
- } while(0);
- $96 = $17;
- $97 = $96 & 7;
- $98 = ($97|0)!=(0);
- $99 = ($16|0)!=(0);
- $100 = $99 & $98;
- if ($100) {
-  $$0169197 = $16;$$0170196 = $17;
-  while(1) {
-   HEAP8[$$0170196>>0] = 0;
-   $101 = ((($$0170196)) + 1|0);
-   $102 = (($$0169197) + -1)|0;
-   $103 = $101;
-   $104 = $103 & 7;
-   $105 = ($104|0)!=(0);
-   $106 = ($102|0)!=(0);
-   $107 = $106 & $105;
-   if ($107) {
-    $$0169197 = $102;$$0170196 = $101;
-   } else {
-    $$0169$lcssa = $102;$$0170$lcssa = $101;
-    break;
-   }
-  }
- } else {
-  $$0169$lcssa = $16;$$0170$lcssa = $17;
- }
- $108 = ($$0169$lcssa>>>0)<(8);
- if ($108) {
-  $$2 = $$0169$lcssa;$$2172 = $$0170$lcssa;
- } else {
-  $109 = (($$0169$lcssa) + -8)|0;
-  $110 = $109 & -8;
-  $111 = (($110) + 8)|0;
-  $$1 = $$0169$lcssa;$$1171 = $$0170$lcssa;
-  while(1) {
-   $112 = $$1171;
-   $113 = $112;
-   HEAP32[$113>>2] = 0;
-   $114 = (($112) + 4)|0;
-   $115 = $114;
-   HEAP32[$115>>2] = 0;
-   $116 = (($$1) + -8)|0;
-   $117 = ((($$1171)) + 8|0);
-   $118 = ($116>>>0)>(7);
-   if ($118) {
-    $$1 = $116;$$1171 = $117;
-   } else {
-    break;
-   }
-  }
-  $119 = (($109) - ($110))|0;
-  $scevgep = (($$0170$lcssa) + ($111)|0);
-  $$2 = $119;$$2172 = $scevgep;
- }
- $120 = ($$2|0)==(0);
- if (!($120)) {
-  $$3173194 = $$2172;$$3195 = $$2;
-  while(1) {
-   HEAP8[$$3173194>>0] = 0;
-   $121 = ((($$3173194)) + 1|0);
-   $122 = (($$3195) + -1)|0;
-   $123 = ($122|0)==(0);
-   if ($123) {
-    break;
-   } else {
-    $$3173194 = $121;$$3195 = $122;
-   }
-  }
- }
- __gcry_free($17);
- $$0186187 = $$0186188;
- return ($$0186187|0);
-}
-function __gcry_rsa_pss_verify($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$0$ph = 0, $$0162$lcssa = 0, $$0162189 = 0, $$0163$lcssa = 0, 
$$0163188 = 0, $$0170215 = 0, $$0171$lcssa = 0, $$0171200 = 0, $$0175$lcssa = 
0, $$0175199 = 0, $$0179214 = 0, $$1 = 0, $$1164 = 0, $$1172 = 0, $$1176 = 0, 
$$1180$lcssa = 0, $$1180206 = 0, $$2 = 0, $$2165 = 0;
- var $$2173 = 0, $$2177 = 0, $$3166186 = 0, $$3174195 = 0, $$3178194 = 0, 
$$3187 = 0, $$pr = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 
0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, 
$19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $exitcond = 0, $scevgep = 0, $scevgep226 = 0, 
$spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- HEAP32[$5>>2] = 0;
- $6 = (($2) + 7)|0;
- $7 = $6 >>> 3;
- $8 = (__gcry_md_get_algo_dlen($3)|0);
- $9 = ($8|0)==(0);
- if ($9) {
-  __gcry_assert_failed(60901,60596,926,60944);
-  // unreachable;
- }
- $10 = (($8) + ($4))|0;
- $11 = (($10) + 8)|0;
- $12 = (($7) - ($8))|0;
- $13 = (($12) + -1)|0;
- $14 = ($11>>>0)<($13>>>0);
- $spec$select = $14 ? $13 : $11;
- $15 = (($spec$select) + ($8))|0;
- $16 = (__gcry_malloc($15)|0);
- $17 = ($16|0)!=(0|0);
- if ($17) {
-  $19 = (0 - ($8))|0;
-  $20 = (($16) + ($spec$select)|0);
-  $21 = (__gcry_mpi_to_octet_string(0,$20,$0,$8)|0);
-  $22 = ($21|0)==(0);
-  if ($22) {
-   $23 = (__gcry_mpi_to_octet_string($5,0,$1,$7)|0);
-   $24 = ($23|0)==(0);
-   if ($24) {
-    $25 = (($10) + 2)|0;
-    $26 = ($7>>>0)<($25>>>0);
-    if ($26) {
-     $$0$ph = 66;
-     label = 20;
-    } else {
-     $27 = HEAP32[$5>>2]|0;
-     $28 = (($7) + -1)|0;
-     $29 = (($27) + ($28)|0);
-     $30 = HEAP8[$29>>0]|0;
-     $31 = ($30<<24>>24)==(-68);
-     if ($31) {
-      $32 = (($27) + ($7)|0);
-      $33 = ((($32)) + -1|0);
-      $34 = (($33) + ($19)|0);
-      $35 = HEAP8[$27>>0]|0;
-      $36 = $35&255;
-      $37 = $6 & -8;
-      $38 = (($37) - ($2))|0;
-      $39 = 255 >>> $38;
-      $40 = -256 >> $38;
-      $41 = $40 & $36;
-      $42 = ($41|0)==(0);
-      if ($42) {
-       (_mgf1($16,$13,$34,$8,$3)|0);
-       $43 = ($13|0)==(0);
-       if (!($43)) {
-        $$0170215 = $16;$$0179214 = 0;
-        while(1) {
-         $44 = HEAP8[$$0170215>>0]|0;
-         $45 = HEAP32[$5>>2]|0;
-         $46 = (($45) + ($$0179214)|0);
-         $47 = HEAP8[$46>>0]|0;
-         $48 = $47 ^ $44;
-         HEAP8[$46>>0] = $48;
-         $49 = (($$0179214) + 1)|0;
-         $50 = ((($$0170215)) + 1|0);
-         $exitcond = ($49|0)==($13|0);
-         if ($exitcond) {
-          break;
-         } else {
-          $$0170215 = $50;$$0179214 = $49;
-         }
-        }
-       }
-       $51 = HEAP32[$5>>2]|0;
-       $52 = HEAP8[$51>>0]|0;
-       $53 = $52&255;
-       $54 = $39 & $53;
-       $55 = $54&255;
-       HEAP8[$51>>0] = $55;
-       $56 = (($12) - ($4))|0;
-       $57 = (($56) + -2)|0;
-       $58 = ($57|0)==(0);
-       L16: do {
-        if ($58) {
-         $$1180$lcssa = 0;
-        } else {
-         $59 = HEAP32[$5>>2]|0;
-         $$1180206 = 0;
-         while(1) {
-          $60 = (($59) + ($$1180206)|0);
-          $61 = HEAP8[$60>>0]|0;
-          $62 = ($61<<24>>24)==(0);
-          if (!($62)) {
-           $$1180$lcssa = $$1180206;
-           break L16;
-          }
-          $63 = (($$1180206) + 1)|0;
-          $64 = ($63>>>0)<($57>>>0);
-          if ($64) {
-           $$1180206 = $63;
-          } else {
-           $$1180$lcssa = $63;
-           break;
-          }
-         }
-        }
-       } while(0);
-       $65 = ($$1180$lcssa|0)==($57|0);
-       if ($65) {
-        $66 = HEAP32[$5>>2]|0;
-        $67 = (($66) + ($57)|0);
-        $68 = HEAP8[$67>>0]|0;
-        $69 = ($68<<24>>24)==(1);
-        if ($69) {
-         $70 = (($56) + -1)|0;
-         $71 = (($66) + ($70)|0);
-         $72 = $16;
-         $73 = $72;
-         
HEAP8[$73>>0]=0&255;HEAP8[$73+1>>0]=(0>>8)&255;HEAP8[$73+2>>0]=(0>>16)&255;HEAP8[$73+3>>0]=0>>24;
-         $74 = (($72) + 4)|0;
-         $75 = $74;
-         
HEAP8[$75>>0]=0&255;HEAP8[$75+1>>0]=(0>>8)&255;HEAP8[$75+2>>0]=(0>>16)&255;HEAP8[$75+3>>0]=0>>24;
-         $76 = ((($16)) + 8|0);
-         _memcpy(($76|0),($20|0),($8|0))|0;
-         $77 = (($76) + ($8)|0);
-         _memcpy(($77|0),($71|0),($4|0))|0;
-         __gcry_md_hash_buffer($3,$16,$16,$11);
-         $78 = (_memcmp($34,$16,$8)|0);
-         $79 = ($78|0)==(0);
-         $80 = $79 ? 0 : 8;
-         $$0$ph = $80;
-         label = 20;
-        } else {
-         $$0 = 8;$82 = $66;
-        }
-       } else {
-        $$0$ph = 8;
-        label = 20;
-       }
-      } else {
-       $$0$ph = 8;
-       label = 20;
-      }
-     } else {
-      $$0 = 8;$82 = $27;
-     }
-    }
-   } else {
-    $$0$ph = $23;
-    label = 20;
-   }
-  } else {
-   $$0$ph = $21;
-   label = 20;
-  }
- } else {
-  $18 = (_gpg_err_code_from_syserror()|0);
-  $$0$ph = $18;
-  label = 20;
- }
- if ((label|0) == 20) {
-  $$pr = HEAP32[$5>>2]|0;
-  $$0 = $$0$ph;$82 = $$pr;
- }
- $81 = ($82|0)==(0|0);
- if (!($81)) {
-  $83 = $82;
-  $84 = $83 & 7;
-  $85 = ($84|0)!=(0);
-  $86 = ($7|0)!=(0);
-  $87 = $86 & $85;
-  if ($87) {
-   $$0171200 = $7;$$0175199 = $82;
-   while(1) {
-    HEAP8[$$0175199>>0] = 0;
-    $88 = ((($$0175199)) + 1|0);
-    $89 = (($$0171200) + -1)|0;
-    $90 = $88;
-    $91 = $90 & 7;
-    $92 = ($91|0)!=(0);
-    $93 = ($89|0)!=(0);
-    $94 = $93 & $92;
-    if ($94) {
-     $$0171200 = $89;$$0175199 = $88;
-    } else {
-     $$0171$lcssa = $89;$$0175$lcssa = $88;
-     break;
-    }
-   }
-  } else {
-   $$0171$lcssa = $7;$$0175$lcssa = $82;
-  }
-  $95 = ($$0171$lcssa>>>0)<(8);
-  if ($95) {
-   $$2173 = $$0171$lcssa;$$2177 = $$0175$lcssa;
-  } else {
-   $96 = (($$0171$lcssa) + -8)|0;
-   $97 = $96 & -8;
-   $98 = (($97) + 8)|0;
-   $$1172 = $$0171$lcssa;$$1176 = $$0175$lcssa;
-   while(1) {
-    $99 = $$1176;
-    $100 = $99;
-    HEAP32[$100>>2] = 0;
-    $101 = (($99) + 4)|0;
-    $102 = $101;
-    HEAP32[$102>>2] = 0;
-    $103 = (($$1172) + -8)|0;
-    $104 = ((($$1176)) + 8|0);
-    $105 = ($103>>>0)>(7);
-    if ($105) {
-     $$1172 = $103;$$1176 = $104;
-    } else {
-     break;
-    }
-   }
-   $106 = (($96) - ($97))|0;
-   $scevgep226 = (($$0175$lcssa) + ($98)|0);
-   $$2173 = $106;$$2177 = $scevgep226;
-  }
-  $107 = ($$2173|0)==(0);
-  if (!($107)) {
-   $$3174195 = $$2173;$$3178194 = $$2177;
-   while(1) {
-    HEAP8[$$3178194>>0] = 0;
-    $108 = ((($$3178194)) + 1|0);
-    $109 = (($$3174195) + -1)|0;
-    $110 = ($109|0)==(0);
-    if ($110) {
-     break;
-    } else {
-     $$3174195 = $109;$$3178194 = $108;
-    }
-   }
-  }
-  $111 = HEAP32[$5>>2]|0;
-  __gcry_free($111);
- }
- if (!($17)) {
-  STACKTOP = sp;return ($$0|0);
- }
- $112 = $16;
- $113 = $112 & 7;
- $114 = ($113|0)!=(0);
- $115 = ($15|0)!=(0);
- $116 = $115 & $114;
- if ($116) {
-  $$0162189 = $15;$$0163188 = $16;
-  while(1) {
-   HEAP8[$$0163188>>0] = 0;
-   $117 = ((($$0163188)) + 1|0);
-   $118 = (($$0162189) + -1)|0;
-   $119 = $117;
-   $120 = $119 & 7;
-   $121 = ($120|0)!=(0);
-   $122 = ($118|0)!=(0);
-   $123 = $122 & $121;
-   if ($123) {
-    $$0162189 = $118;$$0163188 = $117;
-   } else {
-    $$0162$lcssa = $118;$$0163$lcssa = $117;
-    break;
-   }
-  }
- } else {
-  $$0162$lcssa = $15;$$0163$lcssa = $16;
- }
- $124 = ($$0162$lcssa>>>0)<(8);
- if ($124) {
-  $$2 = $$0162$lcssa;$$2165 = $$0163$lcssa;
- } else {
-  $125 = (($$0162$lcssa) + -8)|0;
-  $126 = $125 & -8;
-  $127 = (($126) + 8)|0;
-  $$1 = $$0162$lcssa;$$1164 = $$0163$lcssa;
-  while(1) {
-   $128 = $$1164;
-   $129 = $128;
-   HEAP32[$129>>2] = 0;
-   $130 = (($128) + 4)|0;
-   $131 = $130;
-   HEAP32[$131>>2] = 0;
-   $132 = (($$1) + -8)|0;
-   $133 = ((($$1164)) + 8|0);
-   $134 = ($132>>>0)>(7);
-   if ($134) {
-    $$1 = $132;$$1164 = $133;
-   } else {
-    break;
-   }
-  }
-  $135 = (($125) - ($126))|0;
-  $scevgep = (($$0163$lcssa) + ($127)|0);
-  $$2 = $135;$$2165 = $scevgep;
- }
- $136 = ($$2|0)==(0);
- if (!($136)) {
-  $$3166186 = $$2165;$$3187 = $$2;
-  while(1) {
-   HEAP8[$$3166186>>0] = 0;
-   $137 = ((($$3166186)) + 1|0);
-   $138 = (($$3187) + -1)|0;
-   $139 = ($138|0)==(0);
-   if ($139) {
-    break;
-   } else {
-    $$3166186 = $137;$$3187 = $138;
-   }
-  }
- }
- __gcry_free($16);
- STACKTOP = sp;return ($$0|0);
-}
-function _rsa_generate($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0130$i = 0, $$0131$i = 0, $$0131$us$i = 0, $$0133$i = 0, 
$$0133$us$i = 0, $$0141165$i = 0, $$0147$i = 0, $$0148$i = 0, $$0149$i = 0, 
$$041 = 0, $$1 = 0, $$1132$lcssa$i = 0, $$1134$lcssa$i = 0, $$1140$i = 0, 
$$1146$i = 0, $$142 = 0, $$2 = 0, $$2$i = 0, $$3$i = 0;
- var $$lobit = 0, $$phi$trans$insert = 0, $$phi$trans$insert$i = 0, 
$$phi$trans$insert171$i = 0, $$pre = 0, $$pre$i = 0, $$pre$phi54Z2D = 0, 
$$pre$phi56Z2D = 0, $$pre$phi58Z2D = 0, $$pre$phi60Z2D = 0, $$pre$phi62Z2D = 0, 
$$pre$phiZ2D = 0, $$pre172$i = 0, $$pre53 = 0, $$pre55 = 0, $$pre57 = 0, 
$$pre59 = 0, $$pre61 = 0, $10 = 0, $100 = 0;
- var $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, 
$115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0;
- var $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 
= 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0;
- var $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 
= 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0;
- var $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0;
- var $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 
= 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0;
- var $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, 
$199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, 
$205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0;
- var $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 
= 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 
= 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0;
- var $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 
= 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 
= 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0;
- var $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 
0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 
0, $37 = 0, $38 = 0, $39 = 0;
- var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, 
$or$cond$i = 0, $or$cond$i35 = 0, $or$cond151$not$i = 0, $or$cond152$i = 0, 
$or$cond154$i = 0, $spec$select$i = 0, $spec$select$i36 = 0, $vararg_buffer = 
0, $vararg_buffer1 = 0, $vararg_ptr10 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0;
- var $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(176|0);
- $vararg_buffer1 = sp + 64|0;
- $vararg_buffer = sp + 56|0;
- $2 = sp + 164|0;
- $3 = sp + 160|0;
- $4 = sp + 156|0;
- $5 = sp + 152|0;
- $6 = sp + 148|0;
- $7 = sp + 144|0;
- $8 = sp;
- $9 = sp + 140|0;
- $10 = sp + 136|0;
- $11 = sp + 112|0;
- $12 = sp + 104|0;
- $13 = sp + 100|0;
- HEAP32[$12>>2] = 0;
- HEAP32[$13>>2] = 0;
- 
;HEAP32[$11>>2]=0|0;HEAP32[$11+4>>2]=0|0;HEAP32[$11+8>>2]=0|0;HEAP32[$11+12>>2]=0|0;HEAP32[$11+16>>2]=0|0;HEAP32[$11+20>>2]=0|0;
- $14 = (__gcry_pk_util_get_nbits($0,$9)|0);
- $15 = ($14|0)==(0);
- if (!($15)) {
-  $$0 = $14;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = (__gcry_pk_util_get_rsa_use_e($0,$10)|0);
- $17 = ($16|0)==(0);
- if (!($17)) {
-  $$0 = $16;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = (__gcry_sexp_find_token($0,64705,0)|0);
- $19 = ($18|0)==(0|0);
- if (!($19)) {
-  $20 = (__gcry_pk_util_parse_flaglist($18,$12,0)|0);
-  __gcry_sexp_release($18);
-  $21 = ($20|0)==(0);
-  if (!($21)) {
-   $$0 = $20;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $22 = ($0|0)==(0|0);
- if ($22) {
-  label = 7;
- } else {
-  $23 = (__gcry_sexp_find_token($0,61911,0)|0);
-  $24 = ($23|0)==(0|0);
-  if ($24) {
-   label = 7;
-  } else {
-   $44 = $23;
-   label = 11;
-  }
- }
- do {
-  if ((label|0) == 7) {
-   $25 = (__gcry_sexp_find_token($0,61924,0)|0);
-   $26 = ($25|0)==(0|0);
-   if (!($26)) {
-    $27 = HEAP32[$12>>2]|0;
-    $28 = $27 | 64;
-    HEAP32[$12>>2] = $28;
-    __gcry_sexp_release($25);
-   }
-   $29 = HEAP32[$12>>2]|0;
-   $30 = $29 & 64;
-   $31 = ($30|0)==(0);
-   if ($31) {
-    $32 = (__gcry_fips_mode()|0);
-    $33 = ($32|0)==(0);
-    if ($33) {
-     $157 = HEAP32[$12>>2]|0;
-     $158 = $157 & 32;
-     $159 = ($158|0)==(0);
-     if ($159) {
-      $160 = (__gcry_sexp_find_token($0,66452,0)|0);
-      $161 = ($160|0)==(0|0);
-      if (!($161)) {
-       $162 = HEAP32[$12>>2]|0;
-       $163 = $162 | 32;
-       HEAP32[$12>>2] = $163;
-       __gcry_sexp_release($160);
-      }
-     }
-     $164 = HEAP32[$9>>2]|0;
-     $165 = HEAP32[$10>>2]|0;
-     $166 = HEAP32[$12>>2]|0;
-     $167 = $166 >>> 5;
-     $$lobit = $167 & 1;
-     $168 = (__gcry_fips_mode()|0);
-     $169 = ($168|0)==(0);
-     if (!($169)) {
-      $170 = ($164>>>0)>(1023);
-      $171 = ($$lobit|0)==(0);
-      $or$cond$i35 = $170 & $171;
-      if (!($or$cond$i35)) {
-       $$2 = 55;
-       break;
-      }
-     }
-     $172 = (2 - ($$lobit))|0;
-     $173 = $164 & 1;
-     $spec$select$i36 = (($173) + ($164))|0;
-     $174 = ($165|0)==(1);
-     $$0130$i = $174 ? 65537 : $165;
-     $175 = (__gcry_mpi_alloc(1)|0);
-     $176 = ($$0130$i|0)==(0);
-     if ($176) {
-      (__gcry_mpi_set_ui($175,41)|0);
-      $188 = (__gcry_mpi_new($spec$select$i36)|0);
-      $189 = $spec$select$i36 >>> 1;
-      $$0131$i = 0;$$0133$i = 0;
-      while(1) {
-       $190 = ($$0131$i|0)==(0|0);
-       if (!($190)) {
-        __gcry_mpi_release($$0131$i);
-       }
-       $191 = ($$0133$i|0)==(0|0);
-       if (!($191)) {
-        __gcry_mpi_release($$0133$i);
-       }
-       $192 = (__gcry_generate_secret_prime($189,$172,0,0)|0);
-       $193 = (__gcry_generate_secret_prime($189,$172,0,0)|0);
-       $194 = (__gcry_mpi_cmp($192,$193)|0);
-       $195 = ($194|0)>(0);
-       if ($195) {
-        __gcry_mpi_swap($192,$193);
-       }
-       __gcry_mpi_mul($188,$192,$193);
-       $196 = (__gcry_mpi_get_nbits($188)|0);
-       $197 = ($196|0)==($spec$select$i36|0);
-       if ($197) {
-        $$1132$lcssa$i = $192;$$1134$lcssa$i = $193;$$1140$i = 0;$214 = $188;
-        break;
-       } else {
-        $$0131$i = $192;$$0133$i = $193;
-       }
-      }
-     } else {
-      $177 = $$0130$i | 1;
-      (__gcry_mpi_set_ui($175,$177)|0);
-      $178 = (__gcry_mpi_new($spec$select$i36)|0);
-      $179 = $spec$select$i36 >>> 1;
-      $$0131$us$i = 0;$$0133$us$i = 0;
-      while(1) {
-       $180 = ($$0131$us$i|0)==(0|0);
-       if (!($180)) {
-        __gcry_mpi_release($$0131$us$i);
-       }
-       $181 = ($$0133$us$i|0)==(0|0);
-       if (!($181)) {
-        __gcry_mpi_release($$0133$us$i);
-       }
-       $182 = (__gcry_generate_secret_prime($179,$172,77,$175)|0);
-       $183 = (__gcry_generate_secret_prime($179,$172,77,$175)|0);
-       $184 = (__gcry_mpi_cmp($182,$183)|0);
-       $185 = ($184|0)>(0);
-       if ($185) {
-        __gcry_mpi_swap($182,$183);
-       }
-       __gcry_mpi_mul($178,$182,$183);
-       $186 = (__gcry_mpi_get_nbits($178)|0);
-       $187 = ($186|0)==($spec$select$i36|0);
-       if ($187) {
-        $$1132$lcssa$i = $182;$$1134$lcssa$i = $183;$$1140$i = 1;$214 = $178;
-        break;
-       } else {
-        $$0131$us$i = $182;$$0133$us$i = $183;
-       }
-      }
-     }
-     $198 = ((($$1132$lcssa$i)) + 4|0);
-     $199 = HEAP32[$198>>2]|0;
-     $200 = (__gcry_mpi_alloc_secure($199)|0);
-     $201 = HEAP32[$198>>2]|0;
-     $202 = (__gcry_mpi_alloc_secure($201)|0);
-     $203 = (__gcry_mpi_snew($spec$select$i36)|0);
-     $204 = (__gcry_mpi_snew($spec$select$i36)|0);
-     $205 = (__gcry_mpi_snew($spec$select$i36)|0);
-     __gcry_mpi_sub_ui($200,$$1132$lcssa$i,1);
-     __gcry_mpi_sub_ui($202,$$1134$lcssa$i,1);
-     __gcry_mpi_mul($203,$200,$202);
-     (__gcry_mpi_gcd($204,$200,$202)|0);
-     __gcry_mpi_fdiv_q($205,$203,$204);
-     $206 = (__gcry_mpi_gcd($200,$175,$203)|0);
-     $207 = ($206|0)==(0);
-     if ($207) {
-      if ($$1140$i) {
-       __gcry_bug(61969,287,62221);
-       // unreachable;
-      }
-      while(1) {
-       __gcry_mpi_add_ui($175,$175,2);
-       $208 = (__gcry_mpi_gcd($200,$175,$203)|0);
-       $209 = ($208|0)==(0);
-       if (!($209)) {
-        break;
-       }
-      }
-     }
-     $210 = (__gcry_mpi_snew($spec$select$i36)|0);
-     (__gcry_mpi_invm($210,$175,$205)|0);
-     $211 = (__gcry_mpi_snew($spec$select$i36)|0);
-     (__gcry_mpi_invm($211,$$1132$lcssa$i,$$1134$lcssa$i)|0);
-     $212 = (__gcry_get_debug_flag(1)|0);
-     $213 = ($212|0)==(0);
-     if (!($213)) {
-      __gcry_log_printmpi(62234,$$1132$lcssa$i);
-      __gcry_log_printmpi(62240,$$1134$lcssa$i);
-      __gcry_log_printmpi(62246,$203);
-      __gcry_log_printmpi(62252,$204);
-      __gcry_log_printmpi(62258,$205);
-      __gcry_log_printmpi(62264,$214);
-      __gcry_log_printmpi(62270,$175);
-      __gcry_log_printmpi(62276,$210);
-      __gcry_log_printmpi(62282,$211);
-     }
-     __gcry_mpi_release($200);
-     __gcry_mpi_release($202);
-     __gcry_mpi_release($203);
-     __gcry_mpi_release($205);
-     __gcry_mpi_release($204);
-     HEAP32[$11>>2] = $214;
-     $215 = ((($11)) + 4|0);
-     HEAP32[$215>>2] = $175;
-     $216 = ((($11)) + 12|0);
-     HEAP32[$216>>2] = $$1132$lcssa$i;
-     $217 = ((($11)) + 16|0);
-     HEAP32[$217>>2] = $$1134$lcssa$i;
-     $218 = ((($11)) + 8|0);
-     HEAP32[$218>>2] = $210;
-     $219 = ((($11)) + 20|0);
-     HEAP32[$219>>2] = $211;
-     $220 = (($spec$select$i36) + -64)|0;
-     $221 = (_test_keys($11,$220)|0);
-     $222 = ($221|0)==(0);
-     if ($222) {
-      $$pre$phi54Z2D = $215;$$pre$phi56Z2D = $218;$$pre$phi58Z2D = 
$216;$$pre$phi60Z2D = $217;$$pre$phi62Z2D = $219;$$pre$phiZ2D = $11;
-      label = 88;
-     } else {
-      $223 = HEAP32[$11>>2]|0;
-      __gcry_mpi_release($223);
-      HEAP32[$11>>2] = 0;
-      $224 = HEAP32[$215>>2]|0;
-      __gcry_mpi_release($224);
-      HEAP32[$215>>2] = 0;
-      $225 = HEAP32[$216>>2]|0;
-      __gcry_mpi_release($225);
-      HEAP32[$216>>2] = 0;
-      $226 = HEAP32[$217>>2]|0;
-      __gcry_mpi_release($226);
-      HEAP32[$217>>2] = 0;
-      $227 = HEAP32[$218>>2]|0;
-      __gcry_mpi_release($227);
-      HEAP32[$218>>2] = 0;
-      $228 = HEAP32[$219>>2]|0;
-      __gcry_mpi_release($228);
-      HEAP32[$219>>2] = 0;
-      __gcry_fips_signal_error(61969,334,62221,0,62154);
-      $$2 = 50;
-     }
-    } else {
-     $44 = 0;
-     label = 11;
-    }
-   } else {
-    $44 = 0;
-    label = 11;
-   }
-  }
- } while(0);
- if ((label|0) == 11) {
-  $34 = HEAP32[$9>>2]|0;
-  $35 = HEAP32[$10>>2]|0;
-  $36 = ($35|0)==(1);
-  $spec$select$i = $36 ? 65537 : $35;
-  $37 = ($34>>>0)<(1024);
-  $38 = $34 & 255;
-  $39 = ($38|0)!=(0);
-  $or$cond151$not$i = $37 | $39;
-  $40 = ($spec$select$i>>>0)<(3);
-  $or$cond152$i = $or$cond151$not$i | $40;
-  $41 = $spec$select$i & 1;
-  $42 = ($41|0)==(0);
-  $or$cond154$i = $or$cond152$i | $42;
-  if ($or$cond154$i) {
-   $$142 = 0;$$3$i = 55;
-  } else {
-   HEAP32[$2>>2] = 0;
-   HEAP32[$3>>2] = 0;
-   HEAP32[$4>>2] = 0;
-   HEAP32[$5>>2] = 0;
-   HEAP32[$6>>2] = 0;
-   HEAP32[$7>>2] = 0;
-   $43 = ($44|0)==(0|0);
-   L69: do {
-    if ($43) {
-     $45 = $34 >>> 1;
-     $46 = (__gcry_mpi_snew($45)|0);
-     __gcry_mpi_randomize($46,$45,2);
-     $47 = (($45) + -1)|0;
-     __gcry_mpi_set_highbit($46,$47);
-     $48 = (($45) + -2)|0;
-     __gcry_mpi_set_bit($46,$48);
-     $49 = (__gcry_mpi_get_nbits($46)|0);
-     $50 = ($49|0)==($45|0);
-     if (!($50)) {
-      __gcry_assert_failed(61933,61969,360,61975);
-      // unreachable;
-     }
-     HEAP32[$4>>2] = $46;
-     $51 = (__gcry_mpi_snew($45)|0);
-     $52 = (($45) + -100)|0;
-     $53 = 0;
-     while(1) {
-      __gcry_mpi_release($53);
-      $54 = (__gcry_mpi_snew($45)|0);
-      __gcry_mpi_randomize($54,$45,2);
-      __gcry_mpi_set_highbit($54,$47);
-      __gcry_mpi_set_bit($54,$48);
-      $55 = (__gcry_mpi_get_nbits($54)|0);
-      $56 = ($55|0)==($45|0);
-      if (!($56)) {
-       label = 17;
-       break;
-      }
-      HEAP32[$7>>2] = $54;
-      __gcry_mpi_sub($51,$46,$54);
-      $57 = (__gcry_mpi_get_nbits($51)|0);
-      $58 = ($57>>>0)>($52>>>0);
-      if ($58) {
-       break;
-      } else {
-       $53 = $54;
-      }
-     }
-     if ((label|0) == 17) {
-      __gcry_assert_failed(61933,61969,360,61975);
-      // unreachable;
-     }
-     __gcry_mpi_release($51);
-     $59 = (__gcry_mpi_snew(101)|0);
-     __gcry_mpi_randomize($59,101,2);
-     __gcry_mpi_set_highbit($59,100);
-     $60 = (__gcry_mpi_get_nbits($59)|0);
-     $61 = ($60|0)==(101);
-     if (!($61)) {
-      __gcry_assert_failed(61992,61969,375,62026);
-      // unreachable;
-     }
-     HEAP32[$2>>2] = $59;
-     $62 = (__gcry_mpi_snew(101)|0);
-     __gcry_mpi_randomize($62,101,2);
-     __gcry_mpi_set_highbit($62,100);
-     $63 = (__gcry_mpi_get_nbits($62)|0);
-     $64 = ($63|0)==(101);
-     if (!($64)) {
-      __gcry_assert_failed(61992,61969,375,62026);
-      // unreachable;
-     }
-     HEAP32[$3>>2] = $62;
-     $65 = (__gcry_mpi_snew(101)|0);
-     __gcry_mpi_randomize($65,101,2);
-     __gcry_mpi_set_highbit($65,100);
-     $66 = (__gcry_mpi_get_nbits($65)|0);
-     $67 = ($66|0)==(101);
-     if (!($67)) {
-      __gcry_assert_failed(61992,61969,375,62026);
-      // unreachable;
-     }
-     HEAP32[$5>>2] = $65;
-     $68 = (__gcry_mpi_snew(101)|0);
-     __gcry_mpi_randomize($68,101,2);
-     __gcry_mpi_set_highbit($68,100);
-     $69 = (__gcry_mpi_get_nbits($68)|0);
-     $70 = ($69|0)==(101);
-     if ($70) {
-      HEAP32[$6>>2] = $68;
-      label = 40;
-      break;
-     } else {
-      __gcry_assert_failed(61992,61969,375,62026);
-      // unreachable;
-     }
-    } else {
-     $71 = ((($8)) + 48|0);
-     $72 = $71;
-     $73 = $72;
-     HEAP32[$73>>2] = 0;
-     $74 = (($72) + 4)|0;
-     $75 = $74;
-     HEAP32[$75>>2] = 0;
-     HEAP32[$8>>2] = 62043;
-     $76 = ((($8)) + 8|0);
-     HEAP32[$76>>2] = 62047;
-     $77 = ((($8)) + 16|0);
-     HEAP32[$77>>2] = 62051;
-     $78 = ((($8)) + 24|0);
-     HEAP32[$78>>2] = 62054;
-     $79 = ((($8)) + 32|0);
-     HEAP32[$79>>2] = 62058;
-     $80 = ((($8)) + 40|0);
-     HEAP32[$80>>2] = 62062;
-     $81 = ((($8)) + 4|0);
-     HEAP32[$81>>2] = $2;
-     $82 = ((($8)) + 12|0);
-     HEAP32[$82>>2] = $3;
-     $83 = ((($8)) + 20|0);
-     HEAP32[$83>>2] = $4;
-     $84 = ((($8)) + 28|0);
-     HEAP32[$84>>2] = $5;
-     $85 = ((($8)) + 36|0);
-     HEAP32[$85>>2] = $6;
-     $86 = ((($8)) + 44|0);
-     HEAP32[$86>>2] = $7;
-     $$0141165$i = 0;$87 = 62043;
-     while(1) {
-      $88 = (__gcry_sexp_find_token($44,$87,0)|0);
-      $89 = ($88|0)==(0|0);
-      if (!($89)) {
-       $90 = (((($8) + ($$0141165$i<<3)|0)) + 4|0);
-       $91 = (__gcry_sexp_nth_mpi($88,1,5)|0);
-       $92 = HEAP32[$90>>2]|0;
-       HEAP32[$92>>2] = $91;
-       __gcry_sexp_release($88);
-      }
-      $93 = (($$0141165$i) + 1)|0;
-      $94 = (($8) + ($93<<3)|0);
-      $95 = HEAP32[$94>>2]|0;
-      $96 = ($95|0)==(0|0);
-      if ($96) {
-       break;
-      } else {
-       $$0141165$i = $93;$87 = $95;
-      }
-     }
-     $97 = HEAP32[$2>>2]|0;
-     $98 = ($97|0)==(0|0);
-     L99: do {
-      if (!($98)) {
-       $99 = 1;
-       while(1) {
-        $$phi$trans$insert$i = (((($8) + ($99<<3)|0)) + 4|0);
-        $$pre$i = HEAP32[$$phi$trans$insert$i>>2]|0;
-        $100 = HEAP32[$$pre$i>>2]|0;
-        $101 = ($100|0)==(0|0);
-        $102 = (($99) + 1)|0;
-        if ($101) {
-         break L99;
-        }
-        $$phi$trans$insert = (($8) + ($102<<3)|0);
-        $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-        $103 = ($$pre|0)==(0|0);
-        if ($103) {
-         break;
-        } else {
-         $99 = $102;
-        }
-       }
-       label = 40;
-       break L69;
-      }
-     } while(0);
-     __gcry_mpi_release($97);
-     $104 = 1;
-     while(1) {
-      $$phi$trans$insert171$i = (((($8) + ($104<<3)|0)) + 4|0);
-      $$pre172$i = HEAP32[$$phi$trans$insert171$i>>2]|0;
-      $105 = HEAP32[$$pre172$i>>2]|0;
-      __gcry_mpi_release($105);
-      $106 = (($104) + 1)|0;
-      $107 = (($8) + ($106<<3)|0);
-      $108 = HEAP32[$107>>2]|0;
-      $109 = ($108|0)==(0|0);
-      if ($109) {
-       break;
-      } else {
-       $104 = $106;
-      }
-     }
-     $$0147$i = 0;$$0148$i = 0;$$0149$i = 0;$$1146$i = 0;$$2$i = 128;
-    }
-   } while(0);
-   if ((label|0) == 40) {
-    $110 = (__gcry_mpi_alloc_set_ui($spec$select$i)|0);
-    $111 = HEAP32[$4>>2]|0;
-    $112 = HEAP32[$2>>2]|0;
-    $113 = HEAP32[$3>>2]|0;
-    $114 = (__gcry_derive_x931_prime($111,$112,$113,$110,0,0)|0);
-    $115 = HEAP32[$7>>2]|0;
-    $116 = HEAP32[$5>>2]|0;
-    $117 = HEAP32[$6>>2]|0;
-    $118 = (__gcry_derive_x931_prime($115,$116,$117,$110,0,0)|0);
-    $119 = HEAP32[$4>>2]|0;
-    __gcry_mpi_release($119);
-    HEAP32[$4>>2] = 0;
-    $120 = HEAP32[$2>>2]|0;
-    __gcry_mpi_release($120);
-    HEAP32[$2>>2] = 0;
-    $121 = HEAP32[$3>>2]|0;
-    __gcry_mpi_release($121);
-    HEAP32[$3>>2] = 0;
-    $122 = HEAP32[$7>>2]|0;
-    __gcry_mpi_release($122);
-    HEAP32[$7>>2] = 0;
-    $123 = HEAP32[$5>>2]|0;
-    __gcry_mpi_release($123);
-    HEAP32[$5>>2] = 0;
-    $124 = HEAP32[$6>>2]|0;
-    __gcry_mpi_release($124);
-    HEAP32[$6>>2] = 0;
-    $125 = ($114|0)!=(0|0);
-    $126 = ($118|0)!=(0|0);
-    $or$cond$i = $125 & $126;
-    if ($or$cond$i) {
-     $$0147$i = $114;$$0148$i = $118;$$0149$i = $110;$$1146$i = 1;$$2$i = 128;
-    } else {
-     __gcry_mpi_release($114);
-     __gcry_mpi_release($118);
-     __gcry_mpi_release($110);
-     $$0147$i = $114;$$0148$i = $118;$$0149$i = $110;$$1146$i = 0;$$2$i = 21;
-    }
-   }
-   if ($$1146$i) {
-    $127 = (__gcry_mpi_cmp($$0147$i,$$0148$i)|0);
-    $128 = ($127|0)>(0);
-    if ($128) {
-     __gcry_mpi_swap($$0147$i,$$0148$i);
-     $$041 = 1;
-    } else {
-     $$041 = 0;
-    }
-    $129 = (__gcry_mpi_new($34)|0);
-    __gcry_mpi_mul($129,$$0147$i,$$0148$i);
-    $130 = $34 >>> 1;
-    $131 = (__gcry_mpi_snew($130)|0);
-    $132 = (__gcry_mpi_snew($130)|0);
-    $133 = (__gcry_mpi_snew($34)|0);
-    __gcry_mpi_sub_ui($131,$$0147$i,1);
-    __gcry_mpi_sub_ui($132,$$0148$i,1);
-    __gcry_mpi_mul($133,$131,$132);
-    $134 = (__gcry_mpi_snew($34)|0);
-    $135 = (__gcry_mpi_gcd($134,$$0149$i,$133)|0);
-    $136 = ($135|0)==(0);
-    if ($136) {
-     __gcry_assert_failed(62065,61969,541,62099);
-     // unreachable;
-    }
-    (__gcry_mpi_gcd($134,$131,$132)|0);
-    __gcry_mpi_release($132);
-    __gcry_mpi_fdiv_q($131,$133,$134);
-    __gcry_mpi_release($133);
-    (__gcry_mpi_invm($134,$$0149$i,$131)|0);
-    (__gcry_mpi_invm($131,$$0147$i,$$0148$i)|0);
-    $137 = (__gcry_get_debug_flag(1)|0);
-    $138 = ($137|0)==(0);
-    if (!($138)) {
-     $139 = ($$041|0)==(0);
-     if (!($139)) {
-      __gcry_log_debug(62113,$vararg_buffer);
-     }
-     __gcry_log_printmpi(63829,$$0147$i);
-     __gcry_log_printmpi(62134,$$0148$i);
-     __gcry_log_printmpi(62138,$129);
-     __gcry_log_printmpi(62142,$$0149$i);
-     __gcry_log_printmpi(62146,$134);
-     __gcry_log_printmpi(62150,$131);
-    }
-    HEAP32[$11>>2] = $129;
-    $140 = ((($11)) + 4|0);
-    HEAP32[$140>>2] = $$0149$i;
-    $141 = ((($11)) + 12|0);
-    HEAP32[$141>>2] = $$0147$i;
-    $142 = ((($11)) + 16|0);
-    HEAP32[$142>>2] = $$0148$i;
-    $143 = ((($11)) + 8|0);
-    HEAP32[$143>>2] = $134;
-    $144 = ((($11)) + 20|0);
-    HEAP32[$144>>2] = $131;
-    $145 = (($34) + -64)|0;
-    $146 = (_test_keys($11,$145)|0);
-    $147 = ($146|0)==(0);
-    if ($147) {
-     $$142 = $$041;$$3$i = 0;
-    } else {
-     $148 = HEAP32[$11>>2]|0;
-     __gcry_mpi_release($148);
-     HEAP32[$11>>2] = 0;
-     $149 = HEAP32[$140>>2]|0;
-     __gcry_mpi_release($149);
-     HEAP32[$140>>2] = 0;
-     $150 = HEAP32[$141>>2]|0;
-     __gcry_mpi_release($150);
-     HEAP32[$141>>2] = 0;
-     $151 = HEAP32[$142>>2]|0;
-     __gcry_mpi_release($151);
-     HEAP32[$142>>2] = 0;
-     $152 = HEAP32[$143>>2]|0;
-     __gcry_mpi_release($152);
-     HEAP32[$143>>2] = 0;
-     $153 = HEAP32[$144>>2]|0;
-     __gcry_mpi_release($153);
-     HEAP32[$144>>2] = 0;
-     __gcry_fips_signal_error(61969,586,62099,0,62154);
-     $$142 = $$041;$$3$i = 50;
-    }
-   } else {
-    $$142 = 0;$$3$i = $$2$i;
-   }
-  }
-  __gcry_sexp_release($44);
-  $154 = ($$3$i|0)==(0);
-  $155 = ($$142|0)!=(0);
-  $or$cond = $155 & $154;
-  if ($or$cond) {
-   $156 = (__gcry_sexp_new($13,62192,0,1)|0);
-   $$1 = $156;
-  } else {
-   $$1 = $$3$i;
-  }
-  $229 = ($$1|0)==(0);
-  if ($229) {
-   $$pre53 = ((($11)) + 4|0);
-   $$pre55 = ((($11)) + 8|0);
-   $$pre57 = ((($11)) + 12|0);
-   $$pre59 = ((($11)) + 16|0);
-   $$pre61 = ((($11)) + 20|0);
-   $$pre$phi54Z2D = $$pre53;$$pre$phi56Z2D = $$pre55;$$pre$phi58Z2D = 
$$pre57;$$pre$phi60Z2D = $$pre59;$$pre$phi62Z2D = $$pre61;$$pre$phiZ2D = $11;
-   label = 88;
-  } else {
-   $$2 = $$1;
-  }
- }
- if ((label|0) == 88) {
-  $230 = HEAP32[$$pre$phiZ2D>>2]|0;
-  $231 = HEAP32[$$pre$phi54Z2D>>2]|0;
-  $232 = HEAP32[$$pre$phi56Z2D>>2]|0;
-  $233 = HEAP32[$$pre$phi58Z2D>>2]|0;
-  $234 = HEAP32[$$pre$phi60Z2D>>2]|0;
-  $235 = HEAP32[$$pre$phi62Z2D>>2]|0;
-  $236 = HEAP32[$13>>2]|0;
-  HEAP32[$vararg_buffer1>>2] = $230;
-  $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
-  HEAP32[$vararg_ptr3>>2] = $231;
-  $vararg_ptr4 = ((($vararg_buffer1)) + 8|0);
-  HEAP32[$vararg_ptr4>>2] = $230;
-  $vararg_ptr5 = ((($vararg_buffer1)) + 12|0);
-  HEAP32[$vararg_ptr5>>2] = $231;
-  $vararg_ptr6 = ((($vararg_buffer1)) + 16|0);
-  HEAP32[$vararg_ptr6>>2] = $232;
-  $vararg_ptr7 = ((($vararg_buffer1)) + 20|0);
-  HEAP32[$vararg_ptr7>>2] = $233;
-  $vararg_ptr8 = ((($vararg_buffer1)) + 24|0);
-  HEAP32[$vararg_ptr8>>2] = $234;
-  $vararg_ptr9 = ((($vararg_buffer1)) + 28|0);
-  HEAP32[$vararg_ptr9>>2] = $235;
-  $vararg_ptr10 = ((($vararg_buffer1)) + 32|0);
-  HEAP32[$vararg_ptr10>>2] = $236;
-  $237 = (__gcry_sexp_build($1,0,62288,$vararg_buffer1)|0);
-  $$2 = $237;
- }
- $238 = HEAP32[$11>>2]|0;
- __gcry_mpi_free($238);
- $239 = ((($11)) + 4|0);
- $240 = HEAP32[$239>>2]|0;
- __gcry_mpi_free($240);
- $241 = ((($11)) + 12|0);
- $242 = HEAP32[$241>>2]|0;
- __gcry_mpi_free($242);
- $243 = ((($11)) + 16|0);
- $244 = HEAP32[$243>>2]|0;
- __gcry_mpi_free($244);
- $245 = ((($11)) + 8|0);
- $246 = HEAP32[$245>>2]|0;
- __gcry_mpi_free($246);
- $247 = ((($11)) + 20|0);
- $248 = HEAP32[$247>>2]|0;
- __gcry_mpi_free($248);
- $249 = HEAP32[$13>>2]|0;
- __gcry_sexp_release($249);
- $$0 = $$2;
- STACKTOP = sp;return ($$0|0);
-}
-function _rsa_check_secret_key($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select = 0, $vararg_buffer = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
$vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer7 = sp + 32|0;
- $vararg_buffer = sp;
- $1 = sp + 40|0;
- 
;HEAP32[$1>>2]=0|0;HEAP32[$1+4>>2]=0|0;HEAP32[$1+8>>2]=0|0;HEAP32[$1+12>>2]=0|0;HEAP32[$1+16>>2]=0|0;HEAP32[$1+20>>2]=0|0;
- $2 = ((($1)) + 4|0);
- $3 = ((($1)) + 8|0);
- $4 = ((($1)) + 12|0);
- $5 = ((($1)) + 16|0);
- $6 = ((($1)) + 20|0);
- HEAP32[$vararg_buffer>>2] = $1;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $2;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $3;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $4;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $5;
- $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
- HEAP32[$vararg_ptr5>>2] = $6;
- $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
- HEAP32[$vararg_ptr6>>2] = 0;
- $7 = (__gcry_sexp_extract_param($0,0,60972,$vararg_buffer)|0);
- $8 = ($7|0)==(0);
- if ($8) {
-  $9 = HEAP32[$4>>2]|0;
-  $10 = ((($9)) + 4|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = $11 << 1;
-  $13 = (__gcry_mpi_alloc($12)|0);
-  $14 = HEAP32[$4>>2]|0;
-  $15 = HEAP32[$5>>2]|0;
-  __gcry_mpi_mul($13,$14,$15);
-  $16 = HEAP32[$1>>2]|0;
-  $17 = (__gcry_mpi_cmp($13,$16)|0);
-  __gcry_mpi_free($13);
-  $18 = ($17|0)==(0);
-  $spec$select = $18 ? 0 : 7;
-  $$0 = $spec$select;
- } else {
-  $$0 = $7;
- }
- $19 = HEAP32[$1>>2]|0;
- __gcry_mpi_release($19);
- $20 = HEAP32[$2>>2]|0;
- __gcry_mpi_release($20);
- $21 = HEAP32[$3>>2]|0;
- __gcry_mpi_release($21);
- $22 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($22);
- $23 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($23);
- $24 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($24);
- $25 = (__gcry_get_debug_flag(1)|0);
- $26 = ($25|0)==(0);
- if ($26) {
-  STACKTOP = sp;return ($$0|0);
- }
- $27 = (_gpg_strerror($$0)|0);
- HEAP32[$vararg_buffer7>>2] = $27;
- __gcry_log_debug(61889,$vararg_buffer7);
- STACKTOP = sp;return ($$0|0);
-}
-function _rsa_encrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$021 = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 
= 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 
= 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer3 = 0, 
$vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(96|0);
- $vararg_buffer10 = sp + 40|0;
- $vararg_buffer7 = sp + 32|0;
- $vararg_buffer3 = sp + 24|0;
- $vararg_buffer = sp + 8|0;
- $3 = sp + 56|0;
- $4 = sp + 48|0;
- $5 = sp;
- $6 = sp + 44|0;
- HEAP32[$4>>2] = 0;
- $7 = $5;
- $8 = $7;
- HEAP32[$8>>2] = 0;
- $9 = (($7) + 4)|0;
- $10 = $9;
- HEAP32[$10>>2] = 0;
- $11 = (__gcry_sexp_find_token($2,60983,1)|0);
- $12 = ($11|0)==(0|0);
- if ($12) {
-  $$0$i = 0;
- } else {
-  $13 = (__gcry_sexp_nth_mpi($11,1,5)|0);
-  __gcry_sexp_release($11);
-  $14 = ($13|0)==(0|0);
-  if ($14) {
-   $68 = 0;
-  } else {
-   $15 = (__gcry_mpi_get_nbits($13)|0);
-   $68 = $15;
-  }
-  __gcry_mpi_release($13);
-  $$0$i = $68;
- }
- __gcry_pk_util_init_encoding_ctx($3,0,$$0$i);
- $16 = (__gcry_pk_util_data_to_mpi($1,$4,$3)|0);
- $17 = ($16|0)==(0);
- do {
-  if ($17) {
-   $18 = (__gcry_get_debug_flag(1)|0);
-   $19 = ($18|0)==(0);
-   if (!($19)) {
-    $20 = HEAP32[$4>>2]|0;
-    __gcry_log_printmpi(61759,$20);
-   }
-   $21 = HEAP32[$4>>2]|0;
-   $22 = ($21|0)==(0|0);
-   if (!($22)) {
-    $23 = ((($21)) + 12|0);
-    $24 = HEAP32[$23>>2]|0;
-    $25 = $24 & 4;
-    $26 = ($25|0)==(0);
-    if (!($26)) {
-     $$021 = 0;$$1 = 79;
-     break;
-    }
-   }
-   $27 = ((($5)) + 4|0);
-   HEAP32[$vararg_buffer>>2] = $5;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $27;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = 0;
-   $28 = (__gcry_sexp_extract_param($2,0,60969,$vararg_buffer)|0);
-   $29 = ($28|0)==(0);
-   if ($29) {
-    $30 = (__gcry_get_debug_flag(1)|0);
-    $31 = ($30|0)==(0);
-    if (!($31)) {
-     $32 = HEAP32[$5>>2]|0;
-     __gcry_log_printmpi(61776,$32);
-     $33 = HEAP32[$27>>2]|0;
-     __gcry_log_printmpi(61793,$33);
-    }
-    $34 = (__gcry_mpi_new(0)|0);
-    $35 = HEAP32[$4>>2]|0;
-    $36 = ($34|0)==($35|0);
-    if ($36) {
-     $37 = ((($34)) + 4|0);
-     $38 = HEAP32[$37>>2]|0;
-     $39 = $38 << 1;
-     $40 = (__gcry_mpi_alloc($39)|0);
-     $41 = HEAP32[$27>>2]|0;
-     $42 = HEAP32[$5>>2]|0;
-     __gcry_mpi_powm($40,$34,$41,$42);
-     (__gcry_mpi_set($34,$40)|0);
-     __gcry_mpi_free($40);
-    } else {
-     $43 = HEAP32[$27>>2]|0;
-     $44 = HEAP32[$5>>2]|0;
-     __gcry_mpi_powm($34,$35,$43,$44);
-    }
-    $45 = (__gcry_get_debug_flag(1)|0);
-    $46 = ($45|0)==(0);
-    if (!($46)) {
-     __gcry_log_printmpi(61810,$34);
-    }
-    $47 = ((($3)) + 12|0);
-    $48 = HEAP32[$47>>2]|0;
-    $49 = $48 & 4;
-    $50 = ($49|0)==(0);
-    if ($50) {
-     HEAP32[$vararg_buffer7>>2] = $34;
-     $60 = (__gcry_sexp_build($0,0,61847,$vararg_buffer7)|0);
-     $$021 = $34;$$1 = $60;
-     break;
-    }
-    $51 = HEAP32[$5>>2]|0;
-    $52 = (__gcry_mpi_get_nbits($51)|0);
-    $53 = (($52) + 7)|0;
-    $54 = $53 >>> 3;
-    $55 = (__gcry_mpi_to_octet_string($6,0,$34,$54)|0);
-    $56 = ($55|0)==(0);
-    if ($56) {
-     $57 = HEAP32[$6>>2]|0;
-     HEAP32[$vararg_buffer3>>2] = $54;
-     $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-     HEAP32[$vararg_ptr6>>2] = $57;
-     $58 = (__gcry_sexp_build($0,0,61827,$vararg_buffer3)|0);
-     $59 = HEAP32[$6>>2]|0;
-     __gcry_free($59);
-     $$0 = $58;
-    } else {
-     $$0 = $55;
-    }
-    $$021 = $34;$$1 = $$0;
-   } else {
-    $$021 = 0;$$1 = $28;
-   }
-  } else {
-   $$021 = 0;$$1 = $16;
-  }
- } while(0);
- __gcry_mpi_release($$021);
- $61 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($61);
- $62 = ((($5)) + 4|0);
- $63 = HEAP32[$62>>2]|0;
- __gcry_mpi_release($63);
- $64 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($64);
- __gcry_pk_util_free_encoding_ctx($3);
- $65 = (__gcry_get_debug_flag(1)|0);
- $66 = ($65|0)==(0);
- if ($66) {
-  STACKTOP = sp;return ($$1|0);
- }
- $67 = (_gpg_strerror($$1)|0);
- HEAP32[$vararg_buffer10>>2] = $67;
- __gcry_log_debug(61867,$vararg_buffer10);
- STACKTOP = sp;return ($$1|0);
-}
-function _rsa_decrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$i = 0, $$053 = 0, $$054 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, 
$103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, 
$110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0;
- var $115 = 0, $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer15 = 0;
- var $vararg_buffer19 = 0, $vararg_buffer2 = 0, $vararg_buffer22 = 0, 
$vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr18 = 0, 
$vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, 
$vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(160|0);
- $vararg_buffer22 = sp + 64|0;
- $vararg_buffer19 = sp + 56|0;
- $vararg_buffer15 = sp + 48|0;
- $vararg_buffer11 = sp + 40|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 112|0;
- $4 = sp + 108|0;
- $5 = sp + 104|0;
- $6 = sp + 80|0;
- $7 = sp + 72|0;
- $8 = sp + 68|0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- 
;HEAP32[$6>>2]=0|0;HEAP32[$6+4>>2]=0|0;HEAP32[$6+8>>2]=0|0;HEAP32[$6+12>>2]=0|0;HEAP32[$6+16>>2]=0|0;HEAP32[$6+20>>2]=0|0;
- HEAP32[$7>>2] = 0;
- HEAP32[$8>>2] = 0;
- $9 = (__gcry_sexp_find_token($2,60983,1)|0);
- $10 = ($9|0)==(0|0);
- if ($10) {
-  $$0$i = 0;
- } else {
-  $11 = (__gcry_sexp_nth_mpi($9,1,5)|0);
-  __gcry_sexp_release($9);
-  $12 = ($11|0)==(0|0);
-  if ($12) {
-   $116 = 0;
-  } else {
-   $13 = (__gcry_mpi_get_nbits($11)|0);
-   $116 = $13;
-  }
-  __gcry_mpi_release($11);
-  $$0$i = $116;
- }
- __gcry_pk_util_init_encoding_ctx($3,1,$$0$i);
- $14 = (__gcry_pk_util_preparse_encval($1,6464,$4,$3)|0);
- $15 = ($14|0)==(0);
- L7: do {
-  if ($15) {
-   $16 = HEAP32[$4>>2]|0;
-   HEAP32[$vararg_buffer>>2] = $5;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 0;
-   $17 = (__gcry_sexp_extract_param($16,0,60979,$vararg_buffer)|0);
-   $18 = ($17|0)==(0);
-   if ($18) {
-    $19 = (__gcry_get_debug_flag(1)|0);
-    $20 = ($19|0)==(0);
-    if (!($20)) {
-     $21 = HEAP32[$5>>2]|0;
-     __gcry_log_printmpi(61587,$21);
-    }
-    $22 = HEAP32[$5>>2]|0;
-    $23 = ($22|0)==(0|0);
-    if (!($23)) {
-     $24 = ((($22)) + 12|0);
-     $25 = HEAP32[$24>>2]|0;
-     $26 = $25 & 4;
-     $27 = ($26|0)==(0);
-     if (!($27)) {
-      $$053 = 0;$$054 = 79;
-      break;
-     }
-    }
-    $28 = ((($6)) + 4|0);
-    $29 = ((($6)) + 8|0);
-    $30 = ((($6)) + 12|0);
-    $31 = ((($6)) + 16|0);
-    $32 = ((($6)) + 20|0);
-    HEAP32[$vararg_buffer2>>2] = $6;
-    $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-    HEAP32[$vararg_ptr5>>2] = $28;
-    $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-    HEAP32[$vararg_ptr6>>2] = $29;
-    $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-    HEAP32[$vararg_ptr7>>2] = $30;
-    $vararg_ptr8 = ((($vararg_buffer2)) + 16|0);
-    HEAP32[$vararg_ptr8>>2] = $31;
-    $vararg_ptr9 = ((($vararg_buffer2)) + 20|0);
-    HEAP32[$vararg_ptr9>>2] = $32;
-    $vararg_ptr10 = ((($vararg_buffer2)) + 24|0);
-    HEAP32[$vararg_ptr10>>2] = 0;
-    $33 = (__gcry_sexp_extract_param($2,0,61404,$vararg_buffer2)|0);
-    $34 = ($33|0)==(0);
-    if ($34) {
-     $35 = (__gcry_get_debug_flag(1)|0);
-     $36 = ($35|0)==(0);
-     if (!($36)) {
-      $37 = HEAP32[$6>>2]|0;
-      __gcry_log_printmpi(61604,$37);
-      $38 = HEAP32[$28>>2]|0;
-      __gcry_log_printmpi(61621,$38);
-      $39 = (__gcry_fips_mode()|0);
-      $40 = ($39|0)==(0);
-      if ($40) {
-       $41 = HEAP32[$29>>2]|0;
-       __gcry_log_printmpi(61638,$41);
-       $42 = HEAP32[$30>>2]|0;
-       __gcry_log_printmpi(61655,$42);
-       $43 = HEAP32[$31>>2]|0;
-       __gcry_log_printmpi(61672,$43);
-       $44 = HEAP32[$32>>2]|0;
-       __gcry_log_printmpi(61689,$44);
-      }
-     }
-     $45 = HEAP32[$5>>2]|0;
-     __gcry_mpi_normalize($45);
-     $46 = HEAP32[$5>>2]|0;
-     $47 = HEAP32[$6>>2]|0;
-     __gcry_mpi_fdiv_r($46,$46,$47);
-     $48 = ((($3)) + 4|0);
-     $49 = HEAP32[$48>>2]|0;
-     $50 = (__gcry_mpi_snew($49)|0);
-     $51 = ((($3)) + 12|0);
-     $52 = HEAP32[$51>>2]|0;
-     $53 = $52 & 1;
-     $54 = ($53|0)==(0);
-     if ($54) {
-      $55 = HEAP32[$48>>2]|0;
-      $56 = (__gcry_mpi_snew($55)|0);
-      $57 = HEAP32[$48>>2]|0;
-      $58 = (__gcry_mpi_snew($57)|0);
-      $59 = HEAP32[$48>>2]|0;
-      $60 = (__gcry_mpi_snew($59)|0);
-      while(1) {
-       $61 = HEAP32[$48>>2]|0;
-       __gcry_mpi_randomize($56,$61,0);
-       $62 = HEAP32[$6>>2]|0;
-       __gcry_mpi_mod($56,$56,$62);
-       $63 = HEAP32[$6>>2]|0;
-       $64 = (__gcry_mpi_invm($58,$56,$63)|0);
-       $65 = ($64|0)==(0);
-       if (!($65)) {
-        break;
-       }
-      }
-      $66 = HEAP32[$28>>2]|0;
-      $67 = HEAP32[$6>>2]|0;
-      __gcry_mpi_powm($60,$56,$66,$67);
-      $68 = HEAP32[$5>>2]|0;
-      $69 = HEAP32[$6>>2]|0;
-      __gcry_mpi_mulm($60,$60,$68,$69);
-      _secret($50,$60,$6);
-      __gcry_mpi_release($60);
-      $70 = HEAP32[$6>>2]|0;
-      __gcry_mpi_mulm($50,$50,$58,$70);
-      __gcry_mpi_release($56);
-      __gcry_mpi_release($58);
-     } else {
-      $71 = HEAP32[$5>>2]|0;
-      _secret($50,$71,$6);
-     }
-     $72 = (__gcry_get_debug_flag(1)|0);
-     $73 = ($72|0)==(0);
-     if (!($73)) {
-      __gcry_log_printmpi(61706,$50);
-     }
-     $74 = ((($3)) + 8|0);
-     $75 = HEAP32[$74>>2]|0;
-     switch ($75|0) {
-     case 1:  {
-      $76 = HEAP32[$48>>2]|0;
-      $77 = (__gcry_rsa_pkcs1_decode_for_enc($7,$8,$76,$50)|0);
-      __gcry_mpi_free($50);
-      $78 = ($77|0)==(0);
-      if (!($78)) {
-       $$053 = 0;$$054 = $77;
-       break L7;
-      }
-      $79 = HEAP32[$8>>2]|0;
-      $80 = HEAP32[$7>>2]|0;
-      HEAP32[$vararg_buffer11>>2] = $79;
-      $vararg_ptr14 = ((($vararg_buffer11)) + 4|0);
-      HEAP32[$vararg_ptr14>>2] = $80;
-      $81 = (__gcry_sexp_build($0,0,61723,$vararg_buffer11)|0);
-      $$053 = 0;$$054 = $81;
-      break L7;
-      break;
-     }
-     case 3:  {
-      $82 = HEAP32[$48>>2]|0;
-      $83 = ((($3)) + 16|0);
-      $84 = HEAP32[$83>>2]|0;
-      $85 = ((($3)) + 20|0);
-      $86 = HEAP32[$85>>2]|0;
-      $87 = ((($3)) + 24|0);
-      $88 = HEAP32[$87>>2]|0;
-      $89 = (__gcry_rsa_oaep_decode($7,$8,$82,$84,$50,$86,$88)|0);
-      __gcry_mpi_free($50);
-      $90 = ($89|0)==(0);
-      if (!($90)) {
-       $$053 = 0;$$054 = $89;
-       break L7;
-      }
-      $91 = HEAP32[$8>>2]|0;
-      $92 = HEAP32[$7>>2]|0;
-      HEAP32[$vararg_buffer15>>2] = $91;
-      $vararg_ptr18 = ((($vararg_buffer15)) + 4|0);
-      HEAP32[$vararg_ptr18>>2] = $92;
-      $93 = (__gcry_sexp_build($0,0,61723,$vararg_buffer15)|0);
-      $$053 = 0;$$054 = $93;
-      break L7;
-      break;
-     }
-     default: {
-      $94 = HEAP32[$51>>2]|0;
-      $95 = $94 & 8;
-      $96 = ($95|0)==(0);
-      $97 = $96 ? 65600 : 61734;
-      HEAP32[$vararg_buffer19>>2] = $50;
-      $98 = (__gcry_sexp_build($0,0,$97,$vararg_buffer19)|0);
-      $$053 = $50;$$054 = $98;
-      break L7;
-     }
-     }
-    } else {
-     $$053 = 0;$$054 = $33;
-    }
-   } else {
-    $$053 = 0;$$054 = $17;
-   }
-  } else {
-   $$053 = 0;$$054 = $14;
-  }
- } while(0);
- $99 = HEAP32[$7>>2]|0;
- __gcry_free($99);
- __gcry_mpi_release($$053);
- $100 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($100);
- $101 = ((($6)) + 4|0);
- $102 = HEAP32[$101>>2]|0;
- __gcry_mpi_release($102);
- $103 = ((($6)) + 8|0);
- $104 = HEAP32[$103>>2]|0;
- __gcry_mpi_release($104);
- $105 = ((($6)) + 12|0);
- $106 = HEAP32[$105>>2]|0;
- __gcry_mpi_release($106);
- $107 = ((($6)) + 16|0);
- $108 = HEAP32[$107>>2]|0;
- __gcry_mpi_release($108);
- $109 = ((($6)) + 20|0);
- $110 = HEAP32[$109>>2]|0;
- __gcry_mpi_release($110);
- $111 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($111);
- __gcry_mpi_release(0);
- __gcry_mpi_release(0);
- __gcry_mpi_release(0);
- $112 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($112);
- __gcry_pk_util_free_encoding_ctx($3);
- $113 = (__gcry_get_debug_flag(1)|0);
- $114 = ($113|0)==(0);
- if ($114) {
-  STACKTOP = sp;return ($$054|0);
- }
- $115 = (_gpg_strerror($$054)|0);
- HEAP32[$vararg_buffer22>>2] = $115;
- __gcry_log_debug(61737,$vararg_buffer22);
- STACKTOP = sp;return ($$054|0);
-}
-function _rsa_sign($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$021 = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 
= 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer11 = 0, $vararg_buffer14 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 
0;
- var $vararg_ptr10 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $vararg_buffer14 = sp + 48|0;
- $vararg_buffer11 = sp + 40|0;
- $vararg_buffer7 = sp + 32|0;
- $vararg_buffer = sp;
- $3 = sp + 88|0;
- $4 = sp + 80|0;
- $5 = sp + 56|0;
- $6 = sp + 52|0;
- HEAP32[$4>>2] = 0;
- 
;HEAP32[$5>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;HEAP32[$5+12>>2]=0|0;HEAP32[$5+16>>2]=0|0;HEAP32[$5+20>>2]=0|0;
- $7 = (__gcry_sexp_find_token($2,60983,1)|0);
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $$0$i = 0;
- } else {
-  $9 = (__gcry_sexp_nth_mpi($7,1,5)|0);
-  __gcry_sexp_release($7);
-  $10 = ($9|0)==(0|0);
-  if ($10) {
-   $73 = 0;
-  } else {
-   $11 = (__gcry_mpi_get_nbits($9)|0);
-   $73 = $11;
-  }
-  __gcry_mpi_release($9);
-  $$0$i = $73;
- }
- __gcry_pk_util_init_encoding_ctx($3,2,$$0$i);
- $12 = (__gcry_pk_util_data_to_mpi($1,$4,$3)|0);
- $13 = ($12|0)==(0);
- do {
-  if ($13) {
-   $14 = (__gcry_get_debug_flag(1)|0);
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $16 = HEAP32[$4>>2]|0;
-    __gcry_log_printmpi(61388,$16);
-   }
-   $17 = HEAP32[$4>>2]|0;
-   $18 = ($17|0)==(0|0);
-   if (!($18)) {
-    $19 = ((($17)) + 12|0);
-    $20 = HEAP32[$19>>2]|0;
-    $21 = $20 & 4;
-    $22 = ($21|0)==(0);
-    if (!($22)) {
-     $$021 = 0;$$1 = 79;
-     break;
-    }
-   }
-   $23 = ((($5)) + 4|0);
-   $24 = ((($5)) + 8|0);
-   $25 = ((($5)) + 12|0);
-   $26 = ((($5)) + 16|0);
-   $27 = ((($5)) + 20|0);
-   HEAP32[$vararg_buffer>>2] = $5;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $23;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = $24;
-   $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-   HEAP32[$vararg_ptr3>>2] = $25;
-   $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-   HEAP32[$vararg_ptr4>>2] = $26;
-   $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-   HEAP32[$vararg_ptr5>>2] = $27;
-   $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
-   HEAP32[$vararg_ptr6>>2] = 0;
-   $28 = (__gcry_sexp_extract_param($2,0,61404,$vararg_buffer)|0);
-   $29 = ($28|0)==(0);
-   if ($29) {
-    $30 = (__gcry_get_debug_flag(1)|0);
-    $31 = ($30|0)==(0);
-    if (!($31)) {
-     $32 = HEAP32[$5>>2]|0;
-     __gcry_log_printmpi(61414,$32);
-     $33 = HEAP32[$23>>2]|0;
-     __gcry_log_printmpi(61430,$33);
-     $34 = (__gcry_fips_mode()|0);
-     $35 = ($34|0)==(0);
-     if ($35) {
-      $36 = HEAP32[$24>>2]|0;
-      __gcry_log_printmpi(61446,$36);
-      $37 = HEAP32[$25>>2]|0;
-      __gcry_log_printmpi(61462,$37);
-      $38 = HEAP32[$26>>2]|0;
-      __gcry_log_printmpi(61478,$38);
-      $39 = HEAP32[$27>>2]|0;
-      __gcry_log_printmpi(61494,$39);
-     }
-    }
-    $40 = (__gcry_mpi_new(0)|0);
-    $41 = HEAP32[$4>>2]|0;
-    _secret($40,$41,$5);
-    $42 = (__gcry_get_debug_flag(1)|0);
-    $43 = ($42|0)==(0);
-    if (!($43)) {
-     __gcry_log_printmpi(61510,$40);
-    }
-    $44 = ((($3)) + 12|0);
-    $45 = HEAP32[$44>>2]|0;
-    $46 = $45 & 4;
-    $47 = ($46|0)==(0);
-    if ($47) {
-     HEAP32[$vararg_buffer11>>2] = $40;
-     $57 = (__gcry_sexp_build($0,0,61546,$vararg_buffer11)|0);
-     $$021 = $40;$$1 = $57;
-     break;
-    }
-    $48 = HEAP32[$5>>2]|0;
-    $49 = (__gcry_mpi_get_nbits($48)|0);
-    $50 = (($49) + 7)|0;
-    $51 = $50 >>> 3;
-    $52 = (__gcry_mpi_to_octet_string($6,0,$40,$51)|0);
-    $53 = ($52|0)==(0);
-    if ($53) {
-     $54 = HEAP32[$6>>2]|0;
-     HEAP32[$vararg_buffer7>>2] = $51;
-     $vararg_ptr10 = ((($vararg_buffer7)) + 4|0);
-     HEAP32[$vararg_ptr10>>2] = $54;
-     $55 = (__gcry_sexp_build($0,0,61526,$vararg_buffer7)|0);
-     $56 = HEAP32[$6>>2]|0;
-     __gcry_free($56);
-     $$0 = $55;
-    } else {
-     $$0 = $52;
-    }
-    $$021 = $40;$$1 = $$0;
-   } else {
-    $$021 = 0;$$1 = $28;
-   }
-  } else {
-   $$021 = 0;$$1 = $12;
-  }
- } while(0);
- __gcry_mpi_release($$021);
- $58 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($58);
- $59 = ((($5)) + 4|0);
- $60 = HEAP32[$59>>2]|0;
- __gcry_mpi_release($60);
- $61 = ((($5)) + 8|0);
- $62 = HEAP32[$61>>2]|0;
- __gcry_mpi_release($62);
- $63 = ((($5)) + 12|0);
- $64 = HEAP32[$63>>2]|0;
- __gcry_mpi_release($64);
- $65 = ((($5)) + 16|0);
- $66 = HEAP32[$65>>2]|0;
- __gcry_mpi_release($66);
- $67 = ((($5)) + 20|0);
- $68 = HEAP32[$67>>2]|0;
- __gcry_mpi_release($68);
- $69 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($69);
- __gcry_pk_util_free_encoding_ctx($3);
- $70 = (__gcry_get_debug_flag(1)|0);
- $71 = ($70|0)==(0);
- if ($71) {
-  STACKTOP = sp;return ($$1|0);
- }
- $72 = (_gpg_strerror($$1)|0);
- HEAP32[$vararg_buffer14>>2] = $72;
- __gcry_log_debug(61566,$vararg_buffer14);
- STACKTOP = sp;return ($$1|0);
-}
-function _rsa_verify($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$018 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0;
- var $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(96|0);
- $vararg_buffer7 = sp + 32|0;
- $vararg_buffer2 = sp + 16|0;
- $vararg_buffer = sp + 8|0;
- $3 = sp + 48|0;
- $4 = sp + 44|0;
- $5 = sp + 40|0;
- $6 = sp + 36|0;
- $7 = sp;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$6>>2] = 0;
- $8 = $7;
- $9 = $8;
- HEAP32[$9>>2] = 0;
- $10 = (($8) + 4)|0;
- $11 = $10;
- HEAP32[$11>>2] = 0;
- $12 = (__gcry_sexp_find_token($2,60983,1)|0);
- $13 = ($12|0)==(0|0);
- if ($13) {
-  $$0$i = 0;
- } else {
-  $14 = (__gcry_sexp_nth_mpi($12,1,5)|0);
-  __gcry_sexp_release($12);
-  $15 = ($14|0)==(0|0);
-  if ($15) {
-   $75 = 0;
-  } else {
-   $16 = (__gcry_mpi_get_nbits($14)|0);
-   $75 = $16;
-  }
-  __gcry_mpi_release($14);
-  $$0$i = $75;
- }
- __gcry_pk_util_init_encoding_ctx($3,3,$$0$i);
- $17 = (__gcry_pk_util_data_to_mpi($1,$6,$3)|0);
- $18 = ($17|0)==(0);
- do {
-  if ($18) {
-   $19 = (__gcry_get_debug_flag(1)|0);
-   $20 = ($19|0)==(0);
-   if (!($20)) {
-    $21 = HEAP32[$6>>2]|0;
-    __gcry_log_printmpi(61287,$21);
-   }
-   $22 = HEAP32[$6>>2]|0;
-   $23 = ($22|0)==(0|0);
-   if (!($23)) {
-    $24 = ((($22)) + 12|0);
-    $25 = HEAP32[$24>>2]|0;
-    $26 = $25 & 4;
-    $27 = ($26|0)==(0);
-    if (!($27)) {
-     $$0 = 0;$$018 = 79;
-     break;
-    }
-   }
-   $28 = (__gcry_pk_util_preparse_sigval($0,6464,$4,0)|0);
-   $29 = ($28|0)==(0);
-   if ($29) {
-    $30 = HEAP32[$4>>2]|0;
-    HEAP32[$vararg_buffer>>2] = $5;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 0;
-    $31 = (__gcry_sexp_extract_param($30,0,60981,$vararg_buffer)|0);
-    $32 = ($31|0)==(0);
-    if ($32) {
-     $33 = (__gcry_get_debug_flag(1)|0);
-     $34 = ($33|0)==(0);
-     if (!($34)) {
-      $35 = HEAP32[$5>>2]|0;
-      __gcry_log_printmpi(61303,$35);
-     }
-     $36 = ((($7)) + 4|0);
-     HEAP32[$vararg_buffer2>>2] = $7;
-     $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-     HEAP32[$vararg_ptr5>>2] = $36;
-     $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-     HEAP32[$vararg_ptr6>>2] = 0;
-     $37 = (__gcry_sexp_extract_param($2,0,60969,$vararg_buffer2)|0);
-     $38 = ($37|0)==(0);
-     if ($38) {
-      $39 = (__gcry_get_debug_flag(1)|0);
-      $40 = ($39|0)==(0);
-      if (!($40)) {
-       $41 = HEAP32[$7>>2]|0;
-       __gcry_log_printmpi(61319,$41);
-       $42 = HEAP32[$36>>2]|0;
-       __gcry_log_printmpi(61335,$42);
-      }
-      $43 = (__gcry_mpi_new(0)|0);
-      $44 = HEAP32[$5>>2]|0;
-      $45 = ($43|0)==($44|0);
-      if ($45) {
-       $46 = ((($43)) + 4|0);
-       $47 = HEAP32[$46>>2]|0;
-       $48 = $47 << 1;
-       $49 = (__gcry_mpi_alloc($48)|0);
-       $50 = HEAP32[$36>>2]|0;
-       $51 = HEAP32[$7>>2]|0;
-       __gcry_mpi_powm($49,$43,$50,$51);
-       (__gcry_mpi_set($43,$49)|0);
-       __gcry_mpi_free($49);
-      } else {
-       $52 = HEAP32[$36>>2]|0;
-       $53 = HEAP32[$7>>2]|0;
-       __gcry_mpi_powm($43,$44,$52,$53);
-      }
-      $54 = (__gcry_get_debug_flag(1)|0);
-      $55 = ($54|0)==(0);
-      if (!($55)) {
-       __gcry_log_printmpi(61351,$43);
-      }
-      $56 = ((($3)) + 32|0);
-      $57 = HEAP32[$56>>2]|0;
-      $58 = ($57|0)==(0|0);
-      if ($58) {
-       $60 = HEAP32[$6>>2]|0;
-       $61 = (__gcry_mpi_cmp($43,$60)|0);
-       $62 = ($61|0)==(0);
-       $63 = $62 ? 0 : 8;
-       $$0 = $43;$$018 = $63;
-       break;
-      } else {
-       $59 = (FUNCTION_TABLE_iii[$57 & 127]($3,$43)|0);
-       $$0 = $43;$$018 = $59;
-       break;
-      }
-     } else {
-      $$0 = 0;$$018 = $37;
-     }
-    } else {
-     $$0 = 0;$$018 = $31;
-    }
-   } else {
-    $$0 = 0;$$018 = $28;
-   }
-  } else {
-   $$0 = 0;$$018 = $17;
-  }
- } while(0);
- __gcry_mpi_release($$0);
- $64 = HEAP32[$7>>2]|0;
- __gcry_mpi_release($64);
- $65 = ((($7)) + 4|0);
- $66 = HEAP32[$65>>2]|0;
- __gcry_mpi_release($66);
- $67 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($67);
- $68 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($68);
- $69 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($69);
- __gcry_pk_util_free_encoding_ctx($3);
- $70 = (__gcry_get_debug_flag(1)|0);
- $71 = ($70|0)==(0);
- if ($71) {
-  STACKTOP = sp;return ($$018|0);
- }
- $72 = ($$018|0)==(0);
- if ($72) {
-  $74 = 65003;
- } else {
-  $73 = (_gpg_strerror($$018)|0);
-  $74 = $73;
- }
- HEAP32[$vararg_buffer7>>2] = $74;
- __gcry_log_debug(61367,$vararg_buffer7);
- STACKTOP = sp;return ($$018|0);
-}
-function _rsa_get_nbits($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = (__gcry_sexp_find_token($0,60983,1)|0);
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $3 = (__gcry_sexp_nth_mpi($1,1,5)|0);
- __gcry_sexp_release($1);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $6 = 0;
- } else {
-  $5 = (__gcry_mpi_get_nbits($3)|0);
-  $6 = $5;
- }
- __gcry_mpi_release($3);
- $$0 = $6;
- return ($$0|0);
-}
-function _run_selftests_1209($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i$i = 0, $$011$i$i = 0, $$016$i = 0, $$017$i = 0, $$018$i = 
0, $$020$i = 0, $$032$i$i = 0, $$033$i$i = 0, $$034$i$i = 0, $$1$i$i = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0;
- var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $9 = 0, $cond = 0, $spec$select = 0, $spec$select7 = 0, $vararg_buffer 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer = sp;
- $3 = sp + 32|0;
- $4 = sp + 28|0;
- $5 = sp + 24|0;
- $6 = sp + 20|0;
- $7 = sp + 16|0;
- $8 = sp + 12|0;
- $9 = sp + 8|0;
- $10 = sp + 4|0;
- $cond = ($0|0)==(1);
- if (!($cond)) {
-  $$0 = 4;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP32[$9>>2] = 0;
- HEAP32[$10>>2] = 0;
- $11 = (__gcry_sexp_sscan($9,0,6480,1029)|0);
- $12 = ($11|0)==(0);
- do {
-  if ($12) {
-   $13 = (__gcry_sexp_sscan($10,0,7520,316)|0);
-   $14 = ($13|0)==(0);
-   if ($14) {
-    $16 = HEAP32[$9>>2]|0;
-    $17 = (__gcry_pk_testkey($16)|0);
-    $18 = ($17|0)==(0);
-    if (!($18)) {
-     $19 = (_gpg_strerror($17)|0);
-     $$016$i = $19;$$017$i = 61251;
-     label = 28;
-     break;
-    }
-    $20 = HEAP32[$10>>2]|0;
-    $21 = HEAP32[$9>>2]|0;
-    HEAP32[$6>>2] = 0;
-    HEAP32[$7>>2] = 0;
-    HEAP32[$8>>2] = 0;
-    $22 = (__gcry_sexp_sscan($6,0,7840,75)|0);
-    $23 = ($22|0)==(0);
-    if ($23) {
-     $24 = (__gcry_sexp_sscan($7,0,7920,75)|0);
-     $25 = ($24|0)==(0);
-     if ($25) {
-      $26 = HEAP32[$6>>2]|0;
-      $27 = (__gcry_pk_sign($8,$26,$21)|0);
-      $28 = ($27|0)==(0);
-      if ($28) {
-       $29 = HEAP32[$8>>2]|0;
-       $30 = HEAP32[$6>>2]|0;
-       $31 = (__gcry_pk_verify($29,$30,$20)|0);
-       $32 = ($31|0)==(0);
-       if ($32) {
-        $33 = HEAP32[$8>>2]|0;
-        $34 = HEAP32[$7>>2]|0;
-        $35 = (__gcry_pk_verify($33,$34,$20)|0);
-        $36 = $35 & 65535;
-        $37 = ($36|0)==(8);
-        $spec$select = $37 ? 0 : 60985;
-        $$011$i$i = $spec$select;
-       } else {
-        $$011$i$i = 61050;
-       }
-      } else {
-       $$011$i$i = 61035;
-      }
-     } else {
-      $$011$i$i = 61012;
-     }
-    } else {
-     $$011$i$i = 61012;
-    }
-    $38 = HEAP32[$8>>2]|0;
-    __gcry_sexp_release($38);
-    $39 = HEAP32[$7>>2]|0;
-    __gcry_sexp_release($39);
-    $40 = HEAP32[$6>>2]|0;
-    __gcry_sexp_release($40);
-    $41 = ($$011$i$i|0)==(0|0);
-    if ($41) {
-     $42 = HEAP32[$10>>2]|0;
-     $43 = HEAP32[$9>>2]|0;
-     HEAP32[$3>>2] = 0;
-     HEAP32[$4>>2] = 0;
-     HEAP32[$5>>2] = 0;
-     $44 = (__gcry_mpi_new(1000)|0);
-     __gcry_mpi_randomize($44,1000,0);
-     HEAP32[$vararg_buffer>>2] = $44;
-     $45 = (__gcry_sexp_build($3,0,61064,$vararg_buffer)|0);
-     $46 = ($45|0)==(0);
-     if ($46) {
-      $47 = HEAP32[$3>>2]|0;
-      $48 = (__gcry_pk_encrypt($4,$47,$42)|0);
-      $49 = ($48|0)==(0);
-      if ($49) {
-       $50 = HEAP32[$4>>2]|0;
-       $51 = (__gcry_sexp_find_token($50,61094,0)|0);
-       $52 = ($51|0)==(0|0);
-       if ($52) {
-        $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61136;$$1$i$i = 0;
-       } else {
-        $53 = (__gcry_sexp_find_token($51,61102,0)|0);
-        __gcry_sexp_release($51);
-        $54 = ($53|0)==(0|0);
-        if ($54) {
-         $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61136;$$1$i$i = 0;
-        } else {
-         $55 = (__gcry_sexp_find_token($53,60979,0)|0);
-         __gcry_sexp_release($53);
-         $56 = ($55|0)==(0|0);
-         if ($56) {
-          $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61136;$$1$i$i = 0;
-         } else {
-          $57 = (__gcry_sexp_nth_mpi($55,1,0)|0);
-          __gcry_sexp_release($55);
-          $58 = ($57|0)==(0|0);
-          if ($58) {
-           $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61136;$$1$i$i = 0;
-          } else {
-           $59 = (__gcry_mpi_cmp($44,$57)|0);
-           $60 = ($59|0)==(0);
-           if ($60) {
-            $$0$i$i = 0;$$033$i$i = $57;$$034$i$i = 61169;$$1$i$i = 0;
-           } else {
-            $61 = HEAP32[$4>>2]|0;
-            $62 = (__gcry_pk_decrypt($5,$61,$43)|0);
-            $63 = ($62|0)==(0);
-            if ($63) {
-             $64 = HEAP32[$5>>2]|0;
-             $65 = (__gcry_sexp_find_token($64,61106,0)|0);
-             $66 = ($65|0)==(0|0);
-             if ($66) {
-              $68 = HEAP32[$5>>2]|0;
-              $69 = (__gcry_sexp_nth_mpi($68,0,5)|0);
-              $$032$i$i = $69;
-             } else {
-              $67 = (__gcry_sexp_nth_mpi($65,1,5)|0);
-              $$032$i$i = $67;
-             }
-             $70 = ($$032$i$i|0)==(0|0);
-             if ($70) {
-              $$0$i$i = $65;$$033$i$i = $57;$$034$i$i = 61213;$$1$i$i = 0;
-             } else {
-              $71 = (__gcry_mpi_cmp($44,$$032$i$i)|0);
-              $72 = ($71|0)==(0);
-              $spec$select7 = $72 ? 0 : 61112;
-              $$0$i$i = $65;$$033$i$i = $57;$$034$i$i = $spec$select7;$$1$i$i 
= $$032$i$i;
-             }
-            } else {
-             $$0$i$i = 0;$$033$i$i = $57;$$034$i$i = 61198;$$1$i$i = 0;
-            }
-           }
-          }
-         }
-        }
-       }
-      } else {
-       $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61121;$$1$i$i = 0;
-      }
-     } else {
-      $$0$i$i = 0;$$033$i$i = 0;$$034$i$i = 61012;$$1$i$i = 0;
-     }
-     __gcry_sexp_release($$0$i$i);
-     __gcry_mpi_release($$1$i$i);
-     $73 = HEAP32[$5>>2]|0;
-     __gcry_sexp_release($73);
-     __gcry_mpi_release($$033$i$i);
-     $74 = HEAP32[$4>>2]|0;
-     __gcry_sexp_release($74);
-     $75 = HEAP32[$3>>2]|0;
-     __gcry_sexp_release($75);
-     __gcry_mpi_release($44);
-     $76 = ($$034$i$i|0)==(0|0);
-     if ($76) {
-      $77 = HEAP32[$10>>2]|0;
-      __gcry_sexp_release($77);
-      $78 = HEAP32[$9>>2]|0;
-      __gcry_sexp_release($78);
-      $$018$i = 0;
-     } else {
-      $$016$i = $$034$i$i;$$017$i = 61272;
-      label = 28;
-     }
-    } else {
-     $$016$i = $$011$i$i;$$017$i = 61267;
-     label = 28;
-    }
-   } else {
-    $$020$i = $13;
-    label = 4;
-   }
-  } else {
-   $$020$i = $11;
-   label = 4;
-  }
- } while(0);
- if ((label|0) == 4) {
-  $15 = (_gpg_strerror($$020$i)|0);
-  $$016$i = $15;$$017$i = 61243;
-  label = 28;
- }
- if ((label|0) == 28) {
-  $79 = HEAP32[$10>>2]|0;
-  __gcry_sexp_release($79);
-  $80 = HEAP32[$9>>2]|0;
-  __gcry_sexp_release($80);
-  $81 = ($2|0)==(0|0);
-  if ($81) {
-   $$018$i = 50;
-  } else {
-   FUNCTION_TABLE_viiii[$2 & 63](61280,1,$$017$i,$$016$i);
-   $$018$i = 50;
-  }
- }
- $$0 = $$018$i;
- STACKTOP = sp;return ($$0|0);
-}
-function _compute_keygrip($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- $3 = (__gcry_sexp_find_token($1,60983,1)|0);
- $4 = ($3|0)==(0|0);
- do {
-  if ($4) {
-   $$0 = 68;
-  } else {
-   $5 = (__gcry_sexp_nth_data($3,1,$2)|0);
-   $6 = ($5|0)==(0|0);
-   if ($6) {
-    __gcry_sexp_release($3);
-    $$0 = 68;
-    break;
-   } else {
-    $7 = HEAP32[$2>>2]|0;
-    __gcry_md_write($0,$5,$7);
-    __gcry_sexp_release($3);
-    $$0 = 0;
-    break;
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$0|0);
-}
-function _secret($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0;
- var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_normalize($1);
- $3 = ((($2)) + 12|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)==(0|0);
- if (!($5)) {
-  $6 = ((($2)) + 16|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = ($7|0)==(0|0);
-  if (!($8)) {
-   $9 = ((($2)) + 20|0);
-   $10 = HEAP32[$9>>2]|0;
-   $11 = ($10|0)==(0|0);
-   if (!($11)) {
-    $15 = HEAP32[$2>>2]|0;
-    $16 = ((($15)) + 4|0);
-    $17 = HEAP32[$16>>2]|0;
-    $18 = (($17) + 1)|0;
-    $19 = (__gcry_mpi_alloc_secure($18)|0);
-    $20 = HEAP32[$2>>2]|0;
-    $21 = ((($20)) + 4|0);
-    $22 = HEAP32[$21>>2]|0;
-    $23 = (($22) + 1)|0;
-    $24 = (__gcry_mpi_alloc_secure($23)|0);
-    $25 = HEAP32[$2>>2]|0;
-    $26 = ((($25)) + 4|0);
-    $27 = HEAP32[$26>>2]|0;
-    $28 = (($27) + 1)|0;
-    $29 = (__gcry_mpi_alloc_secure($28)|0);
-    $30 = HEAP32[$3>>2]|0;
-    __gcry_mpi_sub_ui($29,$30,1);
-    $31 = ((($2)) + 8|0);
-    $32 = HEAP32[$31>>2]|0;
-    __gcry_mpi_fdiv_r($29,$32,$29);
-    $33 = HEAP32[$3>>2]|0;
-    __gcry_mpi_powm($19,$1,$29,$33);
-    $34 = HEAP32[$6>>2]|0;
-    __gcry_mpi_sub_ui($29,$34,1);
-    $35 = HEAP32[$31>>2]|0;
-    __gcry_mpi_fdiv_r($29,$35,$29);
-    $36 = HEAP32[$6>>2]|0;
-    __gcry_mpi_powm($24,$1,$29,$36);
-    __gcry_mpi_sub($29,$24,$19);
-    $37 = ((($29)) + 8|0);
-    $38 = HEAP32[$37>>2]|0;
-    $39 = ($38|0)==(0);
-    if (!($39)) {
-     $40 = HEAP32[$6>>2]|0;
-     __gcry_mpi_add($29,$29,$40);
-    }
-    $41 = HEAP32[$9>>2]|0;
-    $42 = HEAP32[$6>>2]|0;
-    __gcry_mpi_mulm($29,$41,$29,$42);
-    $43 = HEAP32[$3>>2]|0;
-    __gcry_mpi_mul($29,$29,$43);
-    __gcry_mpi_add($0,$19,$29);
-    __gcry_mpi_free($29);
-    __gcry_mpi_free($19);
-    __gcry_mpi_free($24);
-    return;
-   }
-  }
- }
- $12 = ((($2)) + 8|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = HEAP32[$2>>2]|0;
- __gcry_mpi_powm($0,$1,$13,$14);
- return;
-}
-function _test_keys($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_new($1)|0);
- $3 = (__gcry_mpi_new($1)|0);
- $4 = (__gcry_mpi_new($1)|0);
- $5 = (__gcry_mpi_new($1)|0);
- $6 = HEAP32[$0>>2]|0;
- $7 = ((($0)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- __gcry_mpi_randomize($2,$1,0);
- $9 = ($3|0)==($2|0);
- if ($9) {
-  $10 = ((($2)) + 4|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = $11 << 1;
-  $13 = (__gcry_mpi_alloc($12)|0);
-  $14 = $8;
-  $15 = $6;
-  __gcry_mpi_powm($13,$2,$14,$15);
-  (__gcry_mpi_set($2,$13)|0);
-  __gcry_mpi_free($13);
- } else {
-  $16 = $8;
-  $17 = $6;
-  __gcry_mpi_powm($3,$2,$16,$17);
- }
- $18 = (__gcry_mpi_cmp($3,$2)|0);
- $19 = ($18|0)==(0);
- if ($19) {
-  $$0 = -1;
- } else {
-  _secret($4,$3,$0);
-  $20 = (__gcry_mpi_cmp($4,$2)|0);
-  $21 = ($20|0)==(0);
-  if ($21) {
-   __gcry_mpi_randomize($2,$1,0);
-   _secret($5,$2,$0);
-   $22 = ($4|0)==($5|0);
-   if ($22) {
-    $23 = ((($4)) + 4|0);
-    $24 = HEAP32[$23>>2]|0;
-    $25 = $24 << 1;
-    $26 = (__gcry_mpi_alloc($25)|0);
-    $27 = $8;
-    $28 = $6;
-    __gcry_mpi_powm($26,$4,$27,$28);
-    (__gcry_mpi_set($4,$26)|0);
-    __gcry_mpi_free($26);
-   } else {
-    $29 = $8;
-    $30 = $6;
-    __gcry_mpi_powm($4,$5,$29,$30);
-   }
-   $31 = (__gcry_mpi_cmp($4,$2)|0);
-   $32 = ($31|0)==(0);
-   if ($32) {
-    __gcry_mpi_add_ui($5,$5,1);
-    if ($22) {
-     $33 = ((($4)) + 4|0);
-     $34 = HEAP32[$33>>2]|0;
-     $35 = $34 << 1;
-     $36 = (__gcry_mpi_alloc($35)|0);
-     $37 = $8;
-     $38 = $6;
-     __gcry_mpi_powm($36,$4,$37,$38);
-     (__gcry_mpi_set($4,$36)|0);
-     __gcry_mpi_free($36);
-    } else {
-     $39 = $8;
-     $40 = $6;
-     __gcry_mpi_powm($4,$5,$39,$40);
-    }
-    $41 = (__gcry_mpi_cmp($4,$2)|0);
-    $42 = ($41|0)==(0);
-    $spec$select = $42 << 31 >> 31;
-    $$0 = $spec$select;
-   } else {
-    $$0 = -1;
-   }
-  } else {
-   $$0 = -1;
-  }
- }
- __gcry_mpi_release($5);
- __gcry_mpi_release($4);
- __gcry_mpi_release($3);
- __gcry_mpi_release($2);
- return ($$0|0);
-}
-function _check_exponent($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_sub_ui($1,$1,1);
- $2 = (__gcry_mpi_alloc_like($1)|0);
- $3 = (__gcry_mpi_gcd($2,$0,$1)|0);
- $4 = ($3|0)==(0);
- $5 = $4&1;
- __gcry_mpi_release($2);
- __gcry_mpi_add_ui($1,$1,1);
- return ($5|0);
-}
-function _sha1_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- HEAP32[$2>>2] = 1732584193;
- $3 = ((($0)) + 164|0);
- HEAP32[$3>>2] = -271733879;
- $4 = ((($0)) + 168|0);
- HEAP32[$4>>2] = -1732584194;
- $5 = ((($0)) + 172|0);
- HEAP32[$5>>2] = 271733878;
- $6 = ((($0)) + 176|0);
- HEAP32[$6>>2] = -1009589776;
- $7 = ((($0)) + 128|0);
- $8 = ((($0)) + 148|0);
- 
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;HEAP32[$7+16>>2]=0|0;
- HEAP32[$8>>2] = 64;
- $9 = ((($0)) + 152|0);
- HEAP32[$9>>2] = 78;
- return;
-}
-function _sha1_final($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 
0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, 
$2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $spec$select = 0, dest = 0, label = 
0, sp = 0, stop = 0;
- sp = STACKTOP;
- __gcry_md_block_write($0,0,0);
- $1 = ((($0)) + 128|0);
- $2 = $1;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = $4 << 6;
- $9 = (_bitshift64Lshr(($4|0),($7|0),26)|0);
- $10 = tempRet0;
- $11 = $9 & 536870848;
- $12 = $4 >>> 26;
- $13 = $11 | $12;
- $14 = ((($0)) + 144|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (($8) + ($15))|0;
- $17 = ($16>>>0)<($8>>>0);
- $18 = $17&1;
- $spec$select = (($13) + ($18))|0;
- $19 = $16 << 3;
- $20 = $spec$select << 3;
- $21 = $16 >>> 29;
- $22 = $20 | $21;
- $23 = ($15|0)<(56);
- $24 = (($15) + 1)|0;
- HEAP32[$14>>2] = $24;
- $25 = (($0) + ($15)|0);
- HEAP8[$25>>0] = -128;
- $26 = HEAP32[$14>>2]|0;
- if ($23) {
-  $27 = ($26|0)<(56);
-  if ($27) {
-   $29 = $26;
-   while(1) {
-    $28 = (($29) + 1)|0;
-    HEAP32[$14>>2] = $28;
-    $30 = (($0) + ($29)|0);
-    HEAP8[$30>>0] = 0;
-    $31 = HEAP32[$14>>2]|0;
-    $32 = ($31|0)<(56);
-    if ($32) {
-     $29 = $31;
-    } else {
-     break;
-    }
-   }
-  }
- } else {
-  $33 = ($26|0)<(64);
-  if ($33) {
-   $35 = $26;
-   while(1) {
-    $34 = (($35) + 1)|0;
-    HEAP32[$14>>2] = $34;
-    $36 = (($0) + ($35)|0);
-    HEAP8[$36>>0] = 0;
-    $37 = HEAP32[$14>>2]|0;
-    $38 = ($37|0)<(64);
-    if ($38) {
-     $35 = $37;
-    } else {
-     break;
-    }
-   }
-  }
-  __gcry_md_block_write($0,0,0);
-  dest=$0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- }
- $39 = ((($0)) + 56|0);
- $40 = $spec$select >>> 21;
- $41 = $40&255;
- HEAP8[$39>>0] = $41;
- $42 = $spec$select >>> 13;
- $43 = $42&255;
- $44 = ((($0)) + 57|0);
- HEAP8[$44>>0] = $43;
- $45 = $spec$select >>> 5;
- $46 = $45&255;
- $47 = ((($0)) + 58|0);
- HEAP8[$47>>0] = $46;
- $48 = $22&255;
- $49 = ((($0)) + 59|0);
- HEAP8[$49>>0] = $48;
- $50 = ((($0)) + 60|0);
- $51 = $16 >>> 21;
- $52 = $51&255;
- HEAP8[$50>>0] = $52;
- $53 = $16 >>> 13;
- $54 = $53&255;
- $55 = ((($0)) + 61|0);
- HEAP8[$55>>0] = $54;
- $56 = $16 >>> 5;
- $57 = $56&255;
- $58 = ((($0)) + 62|0);
- HEAP8[$58>>0] = $57;
- $59 = $19&255;
- $60 = ((($0)) + 63|0);
- HEAP8[$60>>0] = $59;
- (_transform_1319($0,$0,1)|0);
- ___gcry_burn_stack(104);
- $61 = ((($0)) + 160|0);
- $62 = HEAP32[$61>>2]|0;
- $63 = $62 >>> 24;
- $64 = $63&255;
- HEAP8[$0>>0] = $64;
- $65 = $62 >>> 16;
- $66 = $65&255;
- $67 = ((($0)) + 1|0);
- HEAP8[$67>>0] = $66;
- $68 = $62 >>> 8;
- $69 = $68&255;
- $70 = ((($0)) + 2|0);
- HEAP8[$70>>0] = $69;
- $71 = $62&255;
- $72 = ((($0)) + 3|0);
- HEAP8[$72>>0] = $71;
- $73 = ((($0)) + 4|0);
- $74 = ((($0)) + 164|0);
- $75 = HEAP32[$74>>2]|0;
- $76 = $75 >>> 24;
- $77 = $76&255;
- HEAP8[$73>>0] = $77;
- $78 = $75 >>> 16;
- $79 = $78&255;
- $80 = ((($0)) + 5|0);
- HEAP8[$80>>0] = $79;
- $81 = $75 >>> 8;
- $82 = $81&255;
- $83 = ((($0)) + 6|0);
- HEAP8[$83>>0] = $82;
- $84 = $75&255;
- $85 = ((($0)) + 7|0);
- HEAP8[$85>>0] = $84;
- $86 = ((($0)) + 8|0);
- $87 = ((($0)) + 168|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $88 >>> 24;
- $90 = $89&255;
- HEAP8[$86>>0] = $90;
- $91 = $88 >>> 16;
- $92 = $91&255;
- $93 = ((($0)) + 9|0);
- HEAP8[$93>>0] = $92;
- $94 = $88 >>> 8;
- $95 = $94&255;
- $96 = ((($0)) + 10|0);
- HEAP8[$96>>0] = $95;
- $97 = $88&255;
- $98 = ((($0)) + 11|0);
- HEAP8[$98>>0] = $97;
- $99 = ((($0)) + 12|0);
- $100 = ((($0)) + 172|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $101 >>> 24;
- $103 = $102&255;
- HEAP8[$99>>0] = $103;
- $104 = $101 >>> 16;
- $105 = $104&255;
- $106 = ((($0)) + 13|0);
- HEAP8[$106>>0] = $105;
- $107 = $101 >>> 8;
- $108 = $107&255;
- $109 = ((($0)) + 14|0);
- HEAP8[$109>>0] = $108;
- $110 = $101&255;
- $111 = ((($0)) + 15|0);
- HEAP8[$111>>0] = $110;
- $112 = ((($0)) + 16|0);
- $113 = ((($0)) + 176|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $114 >>> 24;
- $116 = $115&255;
- HEAP8[$112>>0] = $116;
- $117 = $114 >>> 16;
- $118 = $117&255;
- $119 = ((($0)) + 17|0);
- HEAP8[$119>>0] = $118;
- $120 = $114 >>> 8;
- $121 = $120&255;
- $122 = ((($0)) + 18|0);
- HEAP8[$122>>0] = $121;
- $123 = $114&255;
- $124 = ((($0)) + 19|0);
- HEAP8[$124>>0] = $123;
- return;
-}
-function _sha1_read($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function _run_selftests_1309($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$011$i = 0, $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0, $cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $cond = ($0|0)==(2);
- if (!($cond)) {
-  $$0 = 5;
-  return ($$0|0);
- }
- $3 = (__gcry_hash_selftest_check_one(2,0,62920,3,62440,20)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $5 = ($1|0)==(0);
-  if ($5) {
-   $$0 = 0;
-   return ($$0|0);
-  }
-  $6 = (__gcry_hash_selftest_check_one(2,0,62624,56,62461,20)|0);
-  $7 = ($6|0)==(0|0);
-  if ($7) {
-   $8 = (__gcry_hash_selftest_check_one(2,1,0,0,62482,20)|0);
-   $9 = ($8|0)==(0|0);
-   if ($9) {
-    $$0 = 0;
-    return ($$0|0);
-   } else {
-    $$0$i = $8;$$011$i = 63209;
-   }
-  } else {
-   $$0$i = $6;$$011$i = 63197;
-  }
- } else {
-  $$0$i = $3;$$011$i = 63184;
- }
- $10 = ($2|0)==(0|0);
- if ($10) {
-  $$0 = 50;
-  return ($$0|0);
- }
- FUNCTION_TABLE_viiii[$2 & 63](63225,2,$$011$i,$$0$i);
- $$0 = 50;
- return ($$0|0);
-}
-function _transform_1319($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$08 = 0, $$pre = 0, $$pre10 = 0, $$pre11 = 0, $$pre12 = 0, 
$$pre9 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, 
$1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0;
- var $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 
0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, 
$1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0;
- var $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 
0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, 
$1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0;
- var $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 
0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, 
$106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0;
- var $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 
0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, 
$1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0;
- var $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 
0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, 
$1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0;
- var $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 
0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, 
$1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0;
- var $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 
0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, 
$1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0;
- var $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 
0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, 
$115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0;
- var $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 
0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, 
$1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0;
- var $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 
0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, 
$1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0;
- var $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 
0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, 
$1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0;
- var $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 
0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, 
$1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0;
- var $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 
0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, 
$124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0;
- var $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0, $1250 = 
0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, 
$1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0;
- var $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 
0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, 
$1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0;
- var $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 
0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, 
$1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0;
- var $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0, 
$1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, 
$1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0;
- var $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0, $1322 = 
0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, 
$133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0;
- var $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0, $134 = 0, $1340 = 
0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, 
$1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0;
- var $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0, $1358 = 0, $1359 = 
0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, 
$1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0;
- var $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0, $1376 = 0, $1377 = 
0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, 
$1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0;
- var $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0, $1394 = 0, $1395 = 
0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, 
$1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0;
- var $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0, $1411 = 0, $1412 = 
0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, 
$142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0;
- var $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0, $143 = 0, $1430 = 
0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, 
$1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0;
- var $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0, $1448 = 0, $1449 = 
0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, 
$1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0;
- var $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0, $1466 = 0, $1467 = 
0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, 
$1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0;
- var $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0, $1484 = 0, $1485 = 
0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, 
$1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0;
- var $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0, $1501 = 0, $1502 = 0, 
$1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, 
$151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0;
- var $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0, $152 = 0, $1520 = 
0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, 
$1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0;
- var $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0, $1538 = 0, $1539 = 
0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, 
$1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0;
- var $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0, $1556 = 0, $1557 = 
0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, 
$1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0;
- var $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0, $1574 = 0, $1575 = 
0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, 
$1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0;
- var $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0, $1592 = 0, $1593 = 
0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, 
$160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0;
- var $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0, $161 = 0, $1610 = 
0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, 
$1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0;
- var $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0, $1628 = 0, $1629 = 
0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, 
$1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0;
- var $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0, $1646 = 0, $1647 = 
0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, 
$1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0;
- var $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0, $1664 = 0, $1665 = 
0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, 
$1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0;
- var $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0, $1682 = 0, $1683 = 
0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, 
$1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0;
- var $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0, $170 = 0, $1700 = 0, 
$1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, 
$1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $172 = 0;
- var $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 
= 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0;
- var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, 
$198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, 
$205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0;
- var $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 
= 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 
= 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0;
- var $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 
= 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 
= 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0;
- var $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 
= 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0;
- var $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 
= 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0;
- var $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, 
$289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, 
$296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0;
- var $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 
= 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 
= 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0;
- var $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 
= 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 
= 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0;
- var $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 
= 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 
= 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0;
- var $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 
= 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 
= 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0;
- var $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, 
$379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, 
$386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0;
- var $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, 
$397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, 
$403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0;
- var $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 
= 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 
= 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0;
- var $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 
= 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 
= 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0;
- var $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 
= 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 
= 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0;
- var $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, 
$469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, 
$476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0;
- var $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, 
$487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, 
$494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0;
- var $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 
0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 
0, $512 = 0, $513 = 0, $514 = 0, $515 = 0;
- var $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 
= 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 
= 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0;
- var $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 
= 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 
= 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0;
- var $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, 
$559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, 
$566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0;
- var $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, 
$577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, 
$584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0;
- var $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 
= 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 
0, $602 = 0, $603 = 0, $604 = 0, $605 = 0;
- var $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 
= 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 
= 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0;
- var $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 
= 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 
= 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0;
- var $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, 
$649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, 
$656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0;
- var $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, 
$667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, 
$674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0;
- var $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 
= 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 
= 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0;
- var $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 
0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 
0, $710 = 0, $711 = 0, $712 = 0, $713 = 0;
- var $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 
= 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 
= 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0;
- var $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, 
$739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, 
$746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0;
- var $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, 
$757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, 
$764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0;
- var $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 
= 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 
= 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0;
- var $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 
= 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 
0, $800 = 0, $801 = 0, $802 = 0, $803 = 0;
- var $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 
= 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 
= 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0;
- var $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, 
$829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, 
$836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0;
- var $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, 
$847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, 
$854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0;
- var $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 
= 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 
= 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0;
- var $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 
= 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 
= 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0;
- var $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 
0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 
0, $909 = 0, $91 = 0, $910 = 0, $911 = 0;
- var $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, 
$919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, 
$926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0;
- var $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, 
$937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, 
$944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0;
- var $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 
= 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 
= 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0;
- var $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 
= 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 
= 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0;
- var $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 
= 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 160|0);
- $4 = ((($0)) + 164|0);
- $5 = ((($0)) + 168|0);
- $6 = ((($0)) + 172|0);
- $7 = ((($0)) + 176|0);
- $$pre = HEAP32[$3>>2]|0;
- $$pre9 = HEAP32[$4>>2]|0;
- $$pre10 = HEAP32[$5>>2]|0;
- $$pre11 = HEAP32[$6>>2]|0;
- $$pre12 = HEAP32[$7>>2]|0;
- $$0 = $1;$$08 = $2;$13 = $$pre11;$14 = $$pre10;$16 = $$pre9;$37 = $$pre12;$9 
= $$pre;
- while(1) {
-  $8 = $9 << 5;
-  $10 = $9 >>> 27;
-  $11 = $8 | $10;
-  $12 = $13 ^ $14;
-  $15 = $12 & $16;
-  $17 = $15 ^ $13;
-  $18 = HEAP8[$$0>>0]|0;
-  $19 = $18&255;
-  $20 = $19 << 24;
-  $21 = ((($$0)) + 1|0);
-  $22 = HEAP8[$21>>0]|0;
-  $23 = $22&255;
-  $24 = $23 << 16;
-  $25 = $24 | $20;
-  $26 = ((($$0)) + 2|0);
-  $27 = HEAP8[$26>>0]|0;
-  $28 = $27&255;
-  $29 = $28 << 8;
-  $30 = $25 | $29;
-  $31 = ((($$0)) + 3|0);
-  $32 = HEAP8[$31>>0]|0;
-  $33 = $32&255;
-  $34 = $30 | $33;
-  $35 = (($11) + 1518500249)|0;
-  $36 = (($35) + ($37))|0;
-  $38 = (($36) + ($17))|0;
-  $39 = (($38) + ($34))|0;
-  $40 = $16 << 30;
-  $41 = $16 >>> 2;
-  $42 = $40 | $41;
-  $43 = $39 << 5;
-  $44 = $39 >>> 27;
-  $45 = $43 | $44;
-  $46 = $42 ^ $14;
-  $47 = $46 & $9;
-  $48 = $47 ^ $14;
-  $49 = ((($$0)) + 4|0);
-  $50 = HEAP8[$49>>0]|0;
-  $51 = $50&255;
-  $52 = $51 << 24;
-  $53 = ((($$0)) + 5|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = $54&255;
-  $56 = $55 << 16;
-  $57 = $56 | $52;
-  $58 = ((($$0)) + 6|0);
-  $59 = HEAP8[$58>>0]|0;
-  $60 = $59&255;
-  $61 = $60 << 8;
-  $62 = $57 | $61;
-  $63 = ((($$0)) + 7|0);
-  $64 = HEAP8[$63>>0]|0;
-  $65 = $64&255;
-  $66 = $62 | $65;
-  $67 = (($13) + 1518500249)|0;
-  $68 = (($67) + ($48))|0;
-  $69 = (($68) + ($45))|0;
-  $70 = (($69) + ($66))|0;
-  $71 = $9 << 30;
-  $72 = $9 >>> 2;
-  $73 = $71 | $72;
-  $74 = $70 << 5;
-  $75 = $70 >>> 27;
-  $76 = $74 | $75;
-  $77 = $42 ^ $73;
-  $78 = $39 & $77;
-  $79 = $78 ^ $42;
-  $80 = ((($$0)) + 8|0);
-  $81 = HEAP8[$80>>0]|0;
-  $82 = $81&255;
-  $83 = $82 << 24;
-  $84 = ((($$0)) + 9|0);
-  $85 = HEAP8[$84>>0]|0;
-  $86 = $85&255;
-  $87 = $86 << 16;
-  $88 = $87 | $83;
-  $89 = ((($$0)) + 10|0);
-  $90 = HEAP8[$89>>0]|0;
-  $91 = $90&255;
-  $92 = $91 << 8;
-  $93 = $88 | $92;
-  $94 = ((($$0)) + 11|0);
-  $95 = HEAP8[$94>>0]|0;
-  $96 = $95&255;
-  $97 = $93 | $96;
-  $98 = (($14) + 1518500249)|0;
-  $99 = (($98) + ($79))|0;
-  $100 = (($99) + ($76))|0;
-  $101 = (($100) + ($97))|0;
-  $102 = $39 << 30;
-  $103 = $39 >>> 2;
-  $104 = $102 | $103;
-  $105 = $101 << 5;
-  $106 = $101 >>> 27;
-  $107 = $105 | $106;
-  $108 = $104 ^ $73;
-  $109 = $70 & $108;
-  $110 = $109 ^ $73;
-  $111 = ((($$0)) + 12|0);
-  $112 = HEAP8[$111>>0]|0;
-  $113 = $112&255;
-  $114 = $113 << 24;
-  $115 = ((($$0)) + 13|0);
-  $116 = HEAP8[$115>>0]|0;
-  $117 = $116&255;
-  $118 = $117 << 16;
-  $119 = $118 | $114;
-  $120 = ((($$0)) + 14|0);
-  $121 = HEAP8[$120>>0]|0;
-  $122 = $121&255;
-  $123 = $122 << 8;
-  $124 = $119 | $123;
-  $125 = ((($$0)) + 15|0);
-  $126 = HEAP8[$125>>0]|0;
-  $127 = $126&255;
-  $128 = $124 | $127;
-  $129 = (($42) + 1518500249)|0;
-  $130 = (($129) + ($110))|0;
-  $131 = (($130) + ($128))|0;
-  $132 = (($131) + ($107))|0;
-  $133 = $70 << 30;
-  $134 = $70 >>> 2;
-  $135 = $133 | $134;
-  $136 = $132 << 5;
-  $137 = $132 >>> 27;
-  $138 = $136 | $137;
-  $139 = $135 ^ $104;
-  $140 = $101 & $139;
-  $141 = $140 ^ $104;
-  $142 = ((($$0)) + 16|0);
-  $143 = HEAP8[$142>>0]|0;
-  $144 = $143&255;
-  $145 = $144 << 24;
-  $146 = ((($$0)) + 17|0);
-  $147 = HEAP8[$146>>0]|0;
-  $148 = $147&255;
-  $149 = $148 << 16;
-  $150 = $149 | $145;
-  $151 = ((($$0)) + 18|0);
-  $152 = HEAP8[$151>>0]|0;
-  $153 = $152&255;
-  $154 = $153 << 8;
-  $155 = $150 | $154;
-  $156 = ((($$0)) + 19|0);
-  $157 = HEAP8[$156>>0]|0;
-  $158 = $157&255;
-  $159 = $155 | $158;
-  $160 = (($73) + 1518500249)|0;
-  $161 = (($160) + ($141))|0;
-  $162 = (($161) + ($159))|0;
-  $163 = (($162) + ($138))|0;
-  $164 = $101 << 30;
-  $165 = $101 >>> 2;
-  $166 = $164 | $165;
-  $167 = $163 << 5;
-  $168 = $163 >>> 27;
-  $169 = $167 | $168;
-  $170 = $166 ^ $135;
-  $171 = $132 & $170;
-  $172 = $171 ^ $135;
-  $173 = ((($$0)) + 20|0);
-  $174 = HEAP8[$173>>0]|0;
-  $175 = $174&255;
-  $176 = $175 << 24;
-  $177 = ((($$0)) + 21|0);
-  $178 = HEAP8[$177>>0]|0;
-  $179 = $178&255;
-  $180 = $179 << 16;
-  $181 = $180 | $176;
-  $182 = ((($$0)) + 22|0);
-  $183 = HEAP8[$182>>0]|0;
-  $184 = $183&255;
-  $185 = $184 << 8;
-  $186 = $181 | $185;
-  $187 = ((($$0)) + 23|0);
-  $188 = HEAP8[$187>>0]|0;
-  $189 = $188&255;
-  $190 = $186 | $189;
-  $191 = (($104) + 1518500249)|0;
-  $192 = (($191) + ($172))|0;
-  $193 = (($192) + ($190))|0;
-  $194 = (($193) + ($169))|0;
-  $195 = $132 << 30;
-  $196 = $132 >>> 2;
-  $197 = $195 | $196;
-  $198 = $194 << 5;
-  $199 = $194 >>> 27;
-  $200 = $198 | $199;
-  $201 = $197 ^ $166;
-  $202 = $163 & $201;
-  $203 = $202 ^ $166;
-  $204 = ((($$0)) + 24|0);
-  $205 = HEAP8[$204>>0]|0;
-  $206 = $205&255;
-  $207 = $206 << 24;
-  $208 = ((($$0)) + 25|0);
-  $209 = HEAP8[$208>>0]|0;
-  $210 = $209&255;
-  $211 = $210 << 16;
-  $212 = $211 | $207;
-  $213 = ((($$0)) + 26|0);
-  $214 = HEAP8[$213>>0]|0;
-  $215 = $214&255;
-  $216 = $215 << 8;
-  $217 = $212 | $216;
-  $218 = ((($$0)) + 27|0);
-  $219 = HEAP8[$218>>0]|0;
-  $220 = $219&255;
-  $221 = $217 | $220;
-  $222 = (($135) + 1518500249)|0;
-  $223 = (($222) + ($203))|0;
-  $224 = (($223) + ($221))|0;
-  $225 = (($224) + ($200))|0;
-  $226 = $163 << 30;
-  $227 = $163 >>> 2;
-  $228 = $226 | $227;
-  $229 = $225 << 5;
-  $230 = $225 >>> 27;
-  $231 = $229 | $230;
-  $232 = $228 ^ $197;
-  $233 = $194 & $232;
-  $234 = $233 ^ $197;
-  $235 = ((($$0)) + 28|0);
-  $236 = HEAP8[$235>>0]|0;
-  $237 = $236&255;
-  $238 = $237 << 24;
-  $239 = ((($$0)) + 29|0);
-  $240 = HEAP8[$239>>0]|0;
-  $241 = $240&255;
-  $242 = $241 << 16;
-  $243 = $242 | $238;
-  $244 = ((($$0)) + 30|0);
-  $245 = HEAP8[$244>>0]|0;
-  $246 = $245&255;
-  $247 = $246 << 8;
-  $248 = $243 | $247;
-  $249 = ((($$0)) + 31|0);
-  $250 = HEAP8[$249>>0]|0;
-  $251 = $250&255;
-  $252 = $248 | $251;
-  $253 = (($166) + 1518500249)|0;
-  $254 = (($253) + ($234))|0;
-  $255 = (($254) + ($252))|0;
-  $256 = (($255) + ($231))|0;
-  $257 = $194 << 30;
-  $258 = $194 >>> 2;
-  $259 = $257 | $258;
-  $260 = $256 << 5;
-  $261 = $256 >>> 27;
-  $262 = $260 | $261;
-  $263 = $259 ^ $228;
-  $264 = $225 & $263;
-  $265 = $264 ^ $228;
-  $266 = ((($$0)) + 32|0);
-  $267 = HEAP8[$266>>0]|0;
-  $268 = $267&255;
-  $269 = $268 << 24;
-  $270 = ((($$0)) + 33|0);
-  $271 = HEAP8[$270>>0]|0;
-  $272 = $271&255;
-  $273 = $272 << 16;
-  $274 = $273 | $269;
-  $275 = ((($$0)) + 34|0);
-  $276 = HEAP8[$275>>0]|0;
-  $277 = $276&255;
-  $278 = $277 << 8;
-  $279 = $274 | $278;
-  $280 = ((($$0)) + 35|0);
-  $281 = HEAP8[$280>>0]|0;
-  $282 = $281&255;
-  $283 = $279 | $282;
-  $284 = (($197) + 1518500249)|0;
-  $285 = (($284) + ($265))|0;
-  $286 = (($285) + ($283))|0;
-  $287 = (($286) + ($262))|0;
-  $288 = $225 << 30;
-  $289 = $225 >>> 2;
-  $290 = $288 | $289;
-  $291 = $287 << 5;
-  $292 = $287 >>> 27;
-  $293 = $291 | $292;
-  $294 = $290 ^ $259;
-  $295 = $256 & $294;
-  $296 = $295 ^ $259;
-  $297 = ((($$0)) + 36|0);
-  $298 = HEAP8[$297>>0]|0;
-  $299 = $298&255;
-  $300 = $299 << 24;
-  $301 = ((($$0)) + 37|0);
-  $302 = HEAP8[$301>>0]|0;
-  $303 = $302&255;
-  $304 = $303 << 16;
-  $305 = $304 | $300;
-  $306 = ((($$0)) + 38|0);
-  $307 = HEAP8[$306>>0]|0;
-  $308 = $307&255;
-  $309 = $308 << 8;
-  $310 = $305 | $309;
-  $311 = ((($$0)) + 39|0);
-  $312 = HEAP8[$311>>0]|0;
-  $313 = $312&255;
-  $314 = $310 | $313;
-  $315 = (($228) + 1518500249)|0;
-  $316 = (($315) + ($296))|0;
-  $317 = (($316) + ($314))|0;
-  $318 = (($317) + ($293))|0;
-  $319 = $256 << 30;
-  $320 = $256 >>> 2;
-  $321 = $319 | $320;
-  $322 = $318 << 5;
-  $323 = $318 >>> 27;
-  $324 = $322 | $323;
-  $325 = $321 ^ $290;
-  $326 = $287 & $325;
-  $327 = $326 ^ $290;
-  $328 = ((($$0)) + 40|0);
-  $329 = HEAP8[$328>>0]|0;
-  $330 = $329&255;
-  $331 = $330 << 24;
-  $332 = ((($$0)) + 41|0);
-  $333 = HEAP8[$332>>0]|0;
-  $334 = $333&255;
-  $335 = $334 << 16;
-  $336 = $335 | $331;
-  $337 = ((($$0)) + 42|0);
-  $338 = HEAP8[$337>>0]|0;
-  $339 = $338&255;
-  $340 = $339 << 8;
-  $341 = $336 | $340;
-  $342 = ((($$0)) + 43|0);
-  $343 = HEAP8[$342>>0]|0;
-  $344 = $343&255;
-  $345 = $341 | $344;
-  $346 = (($259) + 1518500249)|0;
-  $347 = (($346) + ($327))|0;
-  $348 = (($347) + ($345))|0;
-  $349 = (($348) + ($324))|0;
-  $350 = $287 << 30;
-  $351 = $287 >>> 2;
-  $352 = $350 | $351;
-  $353 = $349 << 5;
-  $354 = $349 >>> 27;
-  $355 = $353 | $354;
-  $356 = $352 ^ $321;
-  $357 = $318 & $356;
-  $358 = $357 ^ $321;
-  $359 = ((($$0)) + 44|0);
-  $360 = HEAP8[$359>>0]|0;
-  $361 = $360&255;
-  $362 = $361 << 24;
-  $363 = ((($$0)) + 45|0);
-  $364 = HEAP8[$363>>0]|0;
-  $365 = $364&255;
-  $366 = $365 << 16;
-  $367 = $366 | $362;
-  $368 = ((($$0)) + 46|0);
-  $369 = HEAP8[$368>>0]|0;
-  $370 = $369&255;
-  $371 = $370 << 8;
-  $372 = $367 | $371;
-  $373 = ((($$0)) + 47|0);
-  $374 = HEAP8[$373>>0]|0;
-  $375 = $374&255;
-  $376 = $372 | $375;
-  $377 = (($290) + 1518500249)|0;
-  $378 = (($377) + ($358))|0;
-  $379 = (($378) + ($376))|0;
-  $380 = (($379) + ($355))|0;
-  $381 = $318 << 30;
-  $382 = $318 >>> 2;
-  $383 = $381 | $382;
-  $384 = $380 << 5;
-  $385 = $380 >>> 27;
-  $386 = $384 | $385;
-  $387 = $383 ^ $352;
-  $388 = $349 & $387;
-  $389 = $388 ^ $352;
-  $390 = ((($$0)) + 48|0);
-  $391 = HEAP8[$390>>0]|0;
-  $392 = $391&255;
-  $393 = $392 << 24;
-  $394 = ((($$0)) + 49|0);
-  $395 = HEAP8[$394>>0]|0;
-  $396 = $395&255;
-  $397 = $396 << 16;
-  $398 = $397 | $393;
-  $399 = ((($$0)) + 50|0);
-  $400 = HEAP8[$399>>0]|0;
-  $401 = $400&255;
-  $402 = $401 << 8;
-  $403 = $398 | $402;
-  $404 = ((($$0)) + 51|0);
-  $405 = HEAP8[$404>>0]|0;
-  $406 = $405&255;
-  $407 = $403 | $406;
-  $408 = (($321) + 1518500249)|0;
-  $409 = (($408) + ($389))|0;
-  $410 = (($409) + ($407))|0;
-  $411 = (($410) + ($386))|0;
-  $412 = $349 << 30;
-  $413 = $349 >>> 2;
-  $414 = $412 | $413;
-  $415 = $411 << 5;
-  $416 = $411 >>> 27;
-  $417 = $415 | $416;
-  $418 = $414 ^ $383;
-  $419 = $380 & $418;
-  $420 = $419 ^ $383;
-  $421 = ((($$0)) + 52|0);
-  $422 = HEAP8[$421>>0]|0;
-  $423 = $422&255;
-  $424 = $423 << 24;
-  $425 = ((($$0)) + 53|0);
-  $426 = HEAP8[$425>>0]|0;
-  $427 = $426&255;
-  $428 = $427 << 16;
-  $429 = $428 | $424;
-  $430 = ((($$0)) + 54|0);
-  $431 = HEAP8[$430>>0]|0;
-  $432 = $431&255;
-  $433 = $432 << 8;
-  $434 = $429 | $433;
-  $435 = ((($$0)) + 55|0);
-  $436 = HEAP8[$435>>0]|0;
-  $437 = $436&255;
-  $438 = $434 | $437;
-  $439 = (($352) + 1518500249)|0;
-  $440 = (($439) + ($420))|0;
-  $441 = (($440) + ($438))|0;
-  $442 = (($441) + ($417))|0;
-  $443 = $380 << 30;
-  $444 = $380 >>> 2;
-  $445 = $443 | $444;
-  $446 = $442 << 5;
-  $447 = $442 >>> 27;
-  $448 = $446 | $447;
-  $449 = $445 ^ $414;
-  $450 = $411 & $449;
-  $451 = $450 ^ $414;
-  $452 = ((($$0)) + 56|0);
-  $453 = HEAP8[$452>>0]|0;
-  $454 = $453&255;
-  $455 = $454 << 24;
-  $456 = ((($$0)) + 57|0);
-  $457 = HEAP8[$456>>0]|0;
-  $458 = $457&255;
-  $459 = $458 << 16;
-  $460 = $459 | $455;
-  $461 = ((($$0)) + 58|0);
-  $462 = HEAP8[$461>>0]|0;
-  $463 = $462&255;
-  $464 = $463 << 8;
-  $465 = $460 | $464;
-  $466 = ((($$0)) + 59|0);
-  $467 = HEAP8[$466>>0]|0;
-  $468 = $467&255;
-  $469 = $465 | $468;
-  $470 = (($383) + 1518500249)|0;
-  $471 = (($470) + ($451))|0;
-  $472 = (($471) + ($469))|0;
-  $473 = (($472) + ($448))|0;
-  $474 = $411 << 30;
-  $475 = $411 >>> 2;
-  $476 = $474 | $475;
-  $477 = $473 << 5;
-  $478 = $473 >>> 27;
-  $479 = $477 | $478;
-  $480 = $476 ^ $445;
-  $481 = $442 & $480;
-  $482 = $481 ^ $445;
-  $483 = ((($$0)) + 60|0);
-  $484 = HEAP8[$483>>0]|0;
-  $485 = $484&255;
-  $486 = $485 << 24;
-  $487 = ((($$0)) + 61|0);
-  $488 = HEAP8[$487>>0]|0;
-  $489 = $488&255;
-  $490 = $489 << 16;
-  $491 = $490 | $486;
-  $492 = ((($$0)) + 62|0);
-  $493 = HEAP8[$492>>0]|0;
-  $494 = $493&255;
-  $495 = $494 << 8;
-  $496 = $491 | $495;
-  $497 = ((($$0)) + 63|0);
-  $498 = HEAP8[$497>>0]|0;
-  $499 = $498&255;
-  $500 = $496 | $499;
-  $501 = (($414) + 1518500249)|0;
-  $502 = (($501) + ($482))|0;
-  $503 = (($502) + ($500))|0;
-  $504 = (($503) + ($479))|0;
-  $505 = $442 << 30;
-  $506 = $442 >>> 2;
-  $507 = $505 | $506;
-  $508 = $504 << 5;
-  $509 = $504 >>> 27;
-  $510 = $508 | $509;
-  $511 = $507 ^ $476;
-  $512 = $473 & $511;
-  $513 = $512 ^ $476;
-  $514 = $97 ^ $34;
-  $515 = $514 ^ $283;
-  $516 = $515 ^ $438;
-  $517 = $516 << 1;
-  $518 = $516 >>> 31;
-  $519 = $517 | $518;
-  $520 = (($445) + 1518500249)|0;
-  $521 = (($520) + ($519))|0;
-  $522 = (($521) + ($513))|0;
-  $523 = (($522) + ($510))|0;
-  $524 = $473 << 30;
-  $525 = $473 >>> 2;
-  $526 = $524 | $525;
-  $527 = $523 << 5;
-  $528 = $523 >>> 27;
-  $529 = $527 | $528;
-  $530 = $526 ^ $507;
-  $531 = $504 & $530;
-  $532 = $531 ^ $507;
-  $533 = $128 ^ $66;
-  $534 = $533 ^ $314;
-  $535 = $534 ^ $469;
-  $536 = $535 << 1;
-  $537 = $535 >>> 31;
-  $538 = $536 | $537;
-  $539 = (($476) + 1518500249)|0;
-  $540 = (($539) + ($538))|0;
-  $541 = (($540) + ($532))|0;
-  $542 = (($541) + ($529))|0;
-  $543 = $504 << 30;
-  $544 = $504 >>> 2;
-  $545 = $543 | $544;
-  $546 = $542 << 5;
-  $547 = $542 >>> 27;
-  $548 = $546 | $547;
-  $549 = $545 ^ $526;
-  $550 = $523 & $549;
-  $551 = $550 ^ $526;
-  $552 = $159 ^ $97;
-  $553 = $552 ^ $345;
-  $554 = $553 ^ $500;
-  $555 = $554 << 1;
-  $556 = $554 >>> 31;
-  $557 = $555 | $556;
-  $558 = (($507) + 1518500249)|0;
-  $559 = (($558) + ($557))|0;
-  $560 = (($559) + ($551))|0;
-  $561 = (($560) + ($548))|0;
-  $562 = $523 << 30;
-  $563 = $523 >>> 2;
-  $564 = $562 | $563;
-  $565 = $561 << 5;
-  $566 = $561 >>> 27;
-  $567 = $565 | $566;
-  $568 = $564 ^ $545;
-  $569 = $542 & $568;
-  $570 = $569 ^ $545;
-  $571 = $190 ^ $128;
-  $572 = $571 ^ $376;
-  $573 = $572 ^ $519;
-  $574 = $573 << 1;
-  $575 = $573 >>> 31;
-  $576 = $574 | $575;
-  $577 = (($576) + 1518500249)|0;
-  $578 = (($577) + ($526))|0;
-  $579 = (($578) + ($570))|0;
-  $580 = (($579) + ($567))|0;
-  $581 = $542 << 30;
-  $582 = $542 >>> 2;
-  $583 = $581 | $582;
-  $584 = $580 << 5;
-  $585 = $580 >>> 27;
-  $586 = $584 | $585;
-  $587 = $583 ^ $564;
-  $588 = $587 ^ $561;
-  $589 = $221 ^ $159;
-  $590 = $589 ^ $407;
-  $591 = $590 ^ $538;
-  $592 = $591 << 1;
-  $593 = $591 >>> 31;
-  $594 = $592 | $593;
-  $595 = (($594) + 1859775393)|0;
-  $596 = (($595) + ($545))|0;
-  $597 = (($596) + ($588))|0;
-  $598 = (($597) + ($586))|0;
-  $599 = $561 << 30;
-  $600 = $561 >>> 2;
-  $601 = $599 | $600;
-  $602 = $598 << 5;
-  $603 = $598 >>> 27;
-  $604 = $602 | $603;
-  $605 = $601 ^ $583;
-  $606 = $605 ^ $580;
-  $607 = $252 ^ $190;
-  $608 = $607 ^ $438;
-  $609 = $608 ^ $557;
-  $610 = $609 << 1;
-  $611 = $609 >>> 31;
-  $612 = $610 | $611;
-  $613 = (($612) + 1859775393)|0;
-  $614 = (($613) + ($564))|0;
-  $615 = (($614) + ($606))|0;
-  $616 = (($615) + ($604))|0;
-  $617 = $580 << 30;
-  $618 = $580 >>> 2;
-  $619 = $617 | $618;
-  $620 = $616 << 5;
-  $621 = $616 >>> 27;
-  $622 = $620 | $621;
-  $623 = $619 ^ $601;
-  $624 = $623 ^ $598;
-  $625 = $283 ^ $221;
-  $626 = $625 ^ $469;
-  $627 = $626 ^ $576;
-  $628 = $627 << 1;
-  $629 = $627 >>> 31;
-  $630 = $628 | $629;
-  $631 = (($630) + 1859775393)|0;
-  $632 = (($631) + ($583))|0;
-  $633 = (($632) + ($624))|0;
-  $634 = (($633) + ($622))|0;
-  $635 = $598 << 30;
-  $636 = $598 >>> 2;
-  $637 = $635 | $636;
-  $638 = $634 << 5;
-  $639 = $634 >>> 27;
-  $640 = $638 | $639;
-  $641 = $637 ^ $619;
-  $642 = $641 ^ $616;
-  $643 = $314 ^ $252;
-  $644 = $643 ^ $500;
-  $645 = $644 ^ $594;
-  $646 = $645 << 1;
-  $647 = $645 >>> 31;
-  $648 = $646 | $647;
-  $649 = (($648) + 1859775393)|0;
-  $650 = (($649) + ($601))|0;
-  $651 = (($650) + ($642))|0;
-  $652 = (($651) + ($640))|0;
-  $653 = $616 << 30;
-  $654 = $616 >>> 2;
-  $655 = $653 | $654;
-  $656 = $652 << 5;
-  $657 = $652 >>> 27;
-  $658 = $656 | $657;
-  $659 = $655 ^ $637;
-  $660 = $659 ^ $634;
-  $661 = $345 ^ $283;
-  $662 = $661 ^ $519;
-  $663 = $662 ^ $612;
-  $664 = $663 << 1;
-  $665 = $663 >>> 31;
-  $666 = $664 | $665;
-  $667 = (($666) + 1859775393)|0;
-  $668 = (($667) + ($619))|0;
-  $669 = (($668) + ($660))|0;
-  $670 = (($669) + ($658))|0;
-  $671 = $634 << 30;
-  $672 = $634 >>> 2;
-  $673 = $671 | $672;
-  $674 = $670 << 5;
-  $675 = $670 >>> 27;
-  $676 = $674 | $675;
-  $677 = $673 ^ $655;
-  $678 = $677 ^ $652;
-  $679 = $376 ^ $314;
-  $680 = $679 ^ $538;
-  $681 = $680 ^ $630;
-  $682 = $681 << 1;
-  $683 = $681 >>> 31;
-  $684 = $682 | $683;
-  $685 = (($684) + 1859775393)|0;
-  $686 = (($685) + ($637))|0;
-  $687 = (($686) + ($678))|0;
-  $688 = (($687) + ($676))|0;
-  $689 = $652 << 30;
-  $690 = $652 >>> 2;
-  $691 = $689 | $690;
-  $692 = $688 << 5;
-  $693 = $688 >>> 27;
-  $694 = $692 | $693;
-  $695 = $691 ^ $673;
-  $696 = $695 ^ $670;
-  $697 = $407 ^ $345;
-  $698 = $697 ^ $557;
-  $699 = $698 ^ $648;
-  $700 = $699 << 1;
-  $701 = $699 >>> 31;
-  $702 = $700 | $701;
-  $703 = (($702) + 1859775393)|0;
-  $704 = (($703) + ($655))|0;
-  $705 = (($704) + ($696))|0;
-  $706 = (($705) + ($694))|0;
-  $707 = $670 << 30;
-  $708 = $670 >>> 2;
-  $709 = $707 | $708;
-  $710 = $706 << 5;
-  $711 = $706 >>> 27;
-  $712 = $710 | $711;
-  $713 = $709 ^ $691;
-  $714 = $713 ^ $688;
-  $715 = $438 ^ $376;
-  $716 = $715 ^ $576;
-  $717 = $716 ^ $666;
-  $718 = $717 << 1;
-  $719 = $717 >>> 31;
-  $720 = $718 | $719;
-  $721 = (($720) + 1859775393)|0;
-  $722 = (($721) + ($673))|0;
-  $723 = (($722) + ($714))|0;
-  $724 = (($723) + ($712))|0;
-  $725 = $688 << 30;
-  $726 = $688 >>> 2;
-  $727 = $725 | $726;
-  $728 = $724 << 5;
-  $729 = $724 >>> 27;
-  $730 = $728 | $729;
-  $731 = $727 ^ $709;
-  $732 = $731 ^ $706;
-  $733 = $469 ^ $407;
-  $734 = $733 ^ $594;
-  $735 = $734 ^ $684;
-  $736 = $735 << 1;
-  $737 = $735 >>> 31;
-  $738 = $736 | $737;
-  $739 = (($738) + 1859775393)|0;
-  $740 = (($739) + ($691))|0;
-  $741 = (($740) + ($732))|0;
-  $742 = (($741) + ($730))|0;
-  $743 = $706 << 30;
-  $744 = $706 >>> 2;
-  $745 = $743 | $744;
-  $746 = $742 << 5;
-  $747 = $742 >>> 27;
-  $748 = $746 | $747;
-  $749 = $745 ^ $727;
-  $750 = $749 ^ $724;
-  $751 = $500 ^ $438;
-  $752 = $751 ^ $612;
-  $753 = $752 ^ $702;
-  $754 = $753 << 1;
-  $755 = $753 >>> 31;
-  $756 = $754 | $755;
-  $757 = (($756) + 1859775393)|0;
-  $758 = (($757) + ($709))|0;
-  $759 = (($758) + ($750))|0;
-  $760 = (($759) + ($748))|0;
-  $761 = $724 << 30;
-  $762 = $724 >>> 2;
-  $763 = $761 | $762;
-  $764 = $760 << 5;
-  $765 = $760 >>> 27;
-  $766 = $764 | $765;
-  $767 = $763 ^ $745;
-  $768 = $767 ^ $742;
-  $769 = $469 ^ $519;
-  $770 = $769 ^ $630;
-  $771 = $770 ^ $720;
-  $772 = $771 << 1;
-  $773 = $771 >>> 31;
-  $774 = $772 | $773;
-  $775 = (($774) + 1859775393)|0;
-  $776 = (($775) + ($727))|0;
-  $777 = (($776) + ($768))|0;
-  $778 = (($777) + ($766))|0;
-  $779 = $742 << 30;
-  $780 = $742 >>> 2;
-  $781 = $779 | $780;
-  $782 = $778 << 5;
-  $783 = $778 >>> 27;
-  $784 = $782 | $783;
-  $785 = $781 ^ $763;
-  $786 = $785 ^ $760;
-  $787 = $500 ^ $538;
-  $788 = $787 ^ $648;
-  $789 = $788 ^ $738;
-  $790 = $789 << 1;
-  $791 = $789 >>> 31;
-  $792 = $790 | $791;
-  $793 = (($792) + 1859775393)|0;
-  $794 = (($793) + ($745))|0;
-  $795 = (($794) + ($786))|0;
-  $796 = (($795) + ($784))|0;
-  $797 = $760 << 30;
-  $798 = $760 >>> 2;
-  $799 = $797 | $798;
-  $800 = $796 << 5;
-  $801 = $796 >>> 27;
-  $802 = $800 | $801;
-  $803 = $799 ^ $781;
-  $804 = $803 ^ $778;
-  $805 = $557 ^ $519;
-  $806 = $805 ^ $666;
-  $807 = $806 ^ $756;
-  $808 = $807 << 1;
-  $809 = $807 >>> 31;
-  $810 = $808 | $809;
-  $811 = (($810) + 1859775393)|0;
-  $812 = (($811) + ($763))|0;
-  $813 = (($812) + ($804))|0;
-  $814 = (($813) + ($802))|0;
-  $815 = $778 << 30;
-  $816 = $778 >>> 2;
-  $817 = $815 | $816;
-  $818 = $814 << 5;
-  $819 = $814 >>> 27;
-  $820 = $818 | $819;
-  $821 = $817 ^ $799;
-  $822 = $821 ^ $796;
-  $823 = $538 ^ $576;
-  $824 = $823 ^ $684;
-  $825 = $824 ^ $774;
-  $826 = $825 << 1;
-  $827 = $825 >>> 31;
-  $828 = $826 | $827;
-  $829 = (($828) + 1859775393)|0;
-  $830 = (($829) + ($781))|0;
-  $831 = (($830) + ($822))|0;
-  $832 = (($831) + ($820))|0;
-  $833 = $796 << 30;
-  $834 = $796 >>> 2;
-  $835 = $833 | $834;
-  $836 = $832 << 5;
-  $837 = $832 >>> 27;
-  $838 = $836 | $837;
-  $839 = $835 ^ $817;
-  $840 = $839 ^ $814;
-  $841 = $557 ^ $594;
-  $842 = $841 ^ $702;
-  $843 = $842 ^ $792;
-  $844 = $843 << 1;
-  $845 = $843 >>> 31;
-  $846 = $844 | $845;
-  $847 = (($846) + 1859775393)|0;
-  $848 = (($847) + ($799))|0;
-  $849 = (($848) + ($840))|0;
-  $850 = (($849) + ($838))|0;
-  $851 = $814 << 30;
-  $852 = $814 >>> 2;
-  $853 = $851 | $852;
-  $854 = $850 << 5;
-  $855 = $850 >>> 27;
-  $856 = $854 | $855;
-  $857 = $853 ^ $835;
-  $858 = $857 ^ $832;
-  $859 = $612 ^ $576;
-  $860 = $859 ^ $720;
-  $861 = $860 ^ $810;
-  $862 = $861 << 1;
-  $863 = $861 >>> 31;
-  $864 = $862 | $863;
-  $865 = (($864) + 1859775393)|0;
-  $866 = (($865) + ($817))|0;
-  $867 = (($866) + ($858))|0;
-  $868 = (($867) + ($856))|0;
-  $869 = $832 << 30;
-  $870 = $832 >>> 2;
-  $871 = $869 | $870;
-  $872 = $868 << 5;
-  $873 = $868 >>> 27;
-  $874 = $872 | $873;
-  $875 = $871 ^ $853;
-  $876 = $875 ^ $850;
-  $877 = $594 ^ $630;
-  $878 = $877 ^ $738;
-  $879 = $878 ^ $828;
-  $880 = $879 << 1;
-  $881 = $879 >>> 31;
-  $882 = $880 | $881;
-  $883 = (($882) + 1859775393)|0;
-  $884 = (($883) + ($835))|0;
-  $885 = (($884) + ($876))|0;
-  $886 = (($885) + ($874))|0;
-  $887 = $850 << 30;
-  $888 = $850 >>> 2;
-  $889 = $887 | $888;
-  $890 = $886 << 5;
-  $891 = $886 >>> 27;
-  $892 = $890 | $891;
-  $893 = $889 ^ $871;
-  $894 = $893 ^ $868;
-  $895 = $612 ^ $648;
-  $896 = $895 ^ $756;
-  $897 = $896 ^ $846;
-  $898 = $897 << 1;
-  $899 = $897 >>> 31;
-  $900 = $898 | $899;
-  $901 = (($900) + 1859775393)|0;
-  $902 = (($901) + ($853))|0;
-  $903 = (($902) + ($894))|0;
-  $904 = (($903) + ($892))|0;
-  $905 = $868 << 30;
-  $906 = $868 >>> 2;
-  $907 = $905 | $906;
-  $908 = $904 << 5;
-  $909 = $904 >>> 27;
-  $910 = $908 | $909;
-  $911 = $907 ^ $889;
-  $912 = $911 ^ $886;
-  $913 = $666 ^ $630;
-  $914 = $913 ^ $774;
-  $915 = $914 ^ $864;
-  $916 = $915 << 1;
-  $917 = $915 >>> 31;
-  $918 = $916 | $917;
-  $919 = (($918) + 1859775393)|0;
-  $920 = (($919) + ($871))|0;
-  $921 = (($920) + ($912))|0;
-  $922 = (($921) + ($910))|0;
-  $923 = $886 << 30;
-  $924 = $886 >>> 2;
-  $925 = $923 | $924;
-  $926 = $922 << 5;
-  $927 = $922 >>> 27;
-  $928 = $926 | $927;
-  $929 = $925 ^ $907;
-  $930 = $929 ^ $904;
-  $931 = $648 ^ $684;
-  $932 = $931 ^ $792;
-  $933 = $932 ^ $882;
-  $934 = $933 << 1;
-  $935 = $933 >>> 31;
-  $936 = $934 | $935;
-  $937 = (($936) + 1859775393)|0;
-  $938 = (($937) + ($889))|0;
-  $939 = (($938) + ($930))|0;
-  $940 = (($939) + ($928))|0;
-  $941 = $904 << 30;
-  $942 = $904 >>> 2;
-  $943 = $941 | $942;
-  $944 = $940 << 5;
-  $945 = $940 >>> 27;
-  $946 = $944 | $945;
-  $947 = $922 & $943;
-  $948 = $922 | $943;
-  $949 = $948 & $925;
-  $950 = $949 | $947;
-  $951 = $666 ^ $702;
-  $952 = $951 ^ $810;
-  $953 = $952 ^ $900;
-  $954 = $953 << 1;
-  $955 = $953 >>> 31;
-  $956 = $954 | $955;
-  $957 = (($956) + -1894007588)|0;
-  $958 = (($957) + ($907))|0;
-  $959 = (($958) + ($950))|0;
-  $960 = (($959) + ($946))|0;
-  $961 = $922 << 30;
-  $962 = $922 >>> 2;
-  $963 = $961 | $962;
-  $964 = $960 << 5;
-  $965 = $960 >>> 27;
-  $966 = $964 | $965;
-  $967 = $940 & $963;
-  $968 = $940 | $963;
-  $969 = $968 & $943;
-  $970 = $969 | $967;
-  $971 = $720 ^ $684;
-  $972 = $971 ^ $828;
-  $973 = $972 ^ $918;
-  $974 = $973 << 1;
-  $975 = $973 >>> 31;
-  $976 = $974 | $975;
-  $977 = (($976) + -1894007588)|0;
-  $978 = (($977) + ($925))|0;
-  $979 = (($978) + ($970))|0;
-  $980 = (($979) + ($966))|0;
-  $981 = $940 << 30;
-  $982 = $940 >>> 2;
-  $983 = $981 | $982;
-  $984 = $980 << 5;
-  $985 = $980 >>> 27;
-  $986 = $984 | $985;
-  $987 = $960 & $983;
-  $988 = $960 | $983;
-  $989 = $988 & $963;
-  $990 = $989 | $987;
-  $991 = $702 ^ $738;
-  $992 = $991 ^ $846;
-  $993 = $992 ^ $936;
-  $994 = $993 << 1;
-  $995 = $993 >>> 31;
-  $996 = $994 | $995;
-  $997 = (($996) + -1894007588)|0;
-  $998 = (($997) + ($943))|0;
-  $999 = (($998) + ($990))|0;
-  $1000 = (($999) + ($986))|0;
-  $1001 = $960 << 30;
-  $1002 = $960 >>> 2;
-  $1003 = $1001 | $1002;
-  $1004 = $1000 << 5;
-  $1005 = $1000 >>> 27;
-  $1006 = $1004 | $1005;
-  $1007 = $980 & $1003;
-  $1008 = $980 | $1003;
-  $1009 = $1008 & $983;
-  $1010 = $1009 | $1007;
-  $1011 = $720 ^ $756;
-  $1012 = $1011 ^ $864;
-  $1013 = $1012 ^ $956;
-  $1014 = $1013 << 1;
-  $1015 = $1013 >>> 31;
-  $1016 = $1014 | $1015;
-  $1017 = (($1016) + -1894007588)|0;
-  $1018 = (($1017) + ($963))|0;
-  $1019 = (($1018) + ($1010))|0;
-  $1020 = (($1019) + ($1006))|0;
-  $1021 = $980 << 30;
-  $1022 = $980 >>> 2;
-  $1023 = $1021 | $1022;
-  $1024 = $1020 << 5;
-  $1025 = $1020 >>> 27;
-  $1026 = $1024 | $1025;
-  $1027 = $1000 & $1023;
-  $1028 = $1000 | $1023;
-  $1029 = $1028 & $1003;
-  $1030 = $1029 | $1027;
-  $1031 = $774 ^ $738;
-  $1032 = $1031 ^ $882;
-  $1033 = $1032 ^ $976;
-  $1034 = $1033 << 1;
-  $1035 = $1033 >>> 31;
-  $1036 = $1034 | $1035;
-  $1037 = (($1036) + -1894007588)|0;
-  $1038 = (($1037) + ($983))|0;
-  $1039 = (($1038) + ($1030))|0;
-  $1040 = (($1039) + ($1026))|0;
-  $1041 = $1000 << 30;
-  $1042 = $1000 >>> 2;
-  $1043 = $1041 | $1042;
-  $1044 = $1040 << 5;
-  $1045 = $1040 >>> 27;
-  $1046 = $1044 | $1045;
-  $1047 = $1020 & $1043;
-  $1048 = $1020 | $1043;
-  $1049 = $1048 & $1023;
-  $1050 = $1049 | $1047;
-  $1051 = $756 ^ $792;
-  $1052 = $1051 ^ $900;
-  $1053 = $1052 ^ $996;
-  $1054 = $1053 << 1;
-  $1055 = $1053 >>> 31;
-  $1056 = $1054 | $1055;
-  $1057 = (($1056) + -1894007588)|0;
-  $1058 = (($1057) + ($1003))|0;
-  $1059 = (($1058) + ($1050))|0;
-  $1060 = (($1059) + ($1046))|0;
-  $1061 = $1020 << 30;
-  $1062 = $1020 >>> 2;
-  $1063 = $1061 | $1062;
-  $1064 = $1060 << 5;
-  $1065 = $1060 >>> 27;
-  $1066 = $1064 | $1065;
-  $1067 = $1040 & $1063;
-  $1068 = $1040 | $1063;
-  $1069 = $1068 & $1043;
-  $1070 = $1069 | $1067;
-  $1071 = $774 ^ $810;
-  $1072 = $1071 ^ $918;
-  $1073 = $1072 ^ $1016;
-  $1074 = $1073 << 1;
-  $1075 = $1073 >>> 31;
-  $1076 = $1074 | $1075;
-  $1077 = (($1076) + -1894007588)|0;
-  $1078 = (($1077) + ($1023))|0;
-  $1079 = (($1078) + ($1070))|0;
-  $1080 = (($1079) + ($1066))|0;
-  $1081 = $1040 << 30;
-  $1082 = $1040 >>> 2;
-  $1083 = $1081 | $1082;
-  $1084 = $1080 << 5;
-  $1085 = $1080 >>> 27;
-  $1086 = $1084 | $1085;
-  $1087 = $1060 & $1083;
-  $1088 = $1060 | $1083;
-  $1089 = $1088 & $1063;
-  $1090 = $1089 | $1087;
-  $1091 = $828 ^ $792;
-  $1092 = $1091 ^ $936;
-  $1093 = $1092 ^ $1036;
-  $1094 = $1093 << 1;
-  $1095 = $1093 >>> 31;
-  $1096 = $1094 | $1095;
-  $1097 = (($1096) + -1894007588)|0;
-  $1098 = (($1097) + ($1043))|0;
-  $1099 = (($1098) + ($1090))|0;
-  $1100 = (($1099) + ($1086))|0;
-  $1101 = $1060 << 30;
-  $1102 = $1060 >>> 2;
-  $1103 = $1101 | $1102;
-  $1104 = $1100 << 5;
-  $1105 = $1100 >>> 27;
-  $1106 = $1104 | $1105;
-  $1107 = $1080 & $1103;
-  $1108 = $1080 | $1103;
-  $1109 = $1108 & $1083;
-  $1110 = $1109 | $1107;
-  $1111 = $810 ^ $846;
-  $1112 = $1111 ^ $956;
-  $1113 = $1112 ^ $1056;
-  $1114 = $1113 << 1;
-  $1115 = $1113 >>> 31;
-  $1116 = $1114 | $1115;
-  $1117 = (($1116) + -1894007588)|0;
-  $1118 = (($1117) + ($1063))|0;
-  $1119 = (($1118) + ($1110))|0;
-  $1120 = (($1119) + ($1106))|0;
-  $1121 = $1080 << 30;
-  $1122 = $1080 >>> 2;
-  $1123 = $1121 | $1122;
-  $1124 = $1120 << 5;
-  $1125 = $1120 >>> 27;
-  $1126 = $1124 | $1125;
-  $1127 = $1100 & $1123;
-  $1128 = $1100 | $1123;
-  $1129 = $1128 & $1103;
-  $1130 = $1129 | $1127;
-  $1131 = $828 ^ $864;
-  $1132 = $1131 ^ $976;
-  $1133 = $1132 ^ $1076;
-  $1134 = $1133 << 1;
-  $1135 = $1133 >>> 31;
-  $1136 = $1134 | $1135;
-  $1137 = (($1136) + -1894007588)|0;
-  $1138 = (($1137) + ($1083))|0;
-  $1139 = (($1138) + ($1130))|0;
-  $1140 = (($1139) + ($1126))|0;
-  $1141 = $1100 << 30;
-  $1142 = $1100 >>> 2;
-  $1143 = $1141 | $1142;
-  $1144 = $1140 << 5;
-  $1145 = $1140 >>> 27;
-  $1146 = $1144 | $1145;
-  $1147 = $1120 & $1143;
-  $1148 = $1120 | $1143;
-  $1149 = $1148 & $1123;
-  $1150 = $1149 | $1147;
-  $1151 = $882 ^ $846;
-  $1152 = $1151 ^ $996;
-  $1153 = $1152 ^ $1096;
-  $1154 = $1153 << 1;
-  $1155 = $1153 >>> 31;
-  $1156 = $1154 | $1155;
-  $1157 = (($1156) + -1894007588)|0;
-  $1158 = (($1157) + ($1103))|0;
-  $1159 = (($1158) + ($1150))|0;
-  $1160 = (($1159) + ($1146))|0;
-  $1161 = $1120 << 30;
-  $1162 = $1120 >>> 2;
-  $1163 = $1161 | $1162;
-  $1164 = $1160 << 5;
-  $1165 = $1160 >>> 27;
-  $1166 = $1164 | $1165;
-  $1167 = $1140 & $1163;
-  $1168 = $1140 | $1163;
-  $1169 = $1168 & $1143;
-  $1170 = $1169 | $1167;
-  $1171 = $864 ^ $900;
-  $1172 = $1171 ^ $1016;
-  $1173 = $1172 ^ $1116;
-  $1174 = $1173 << 1;
-  $1175 = $1173 >>> 31;
-  $1176 = $1174 | $1175;
-  $1177 = (($1176) + -1894007588)|0;
-  $1178 = (($1177) + ($1123))|0;
-  $1179 = (($1178) + ($1170))|0;
-  $1180 = (($1179) + ($1166))|0;
-  $1181 = $1140 << 30;
-  $1182 = $1140 >>> 2;
-  $1183 = $1181 | $1182;
-  $1184 = $1180 << 5;
-  $1185 = $1180 >>> 27;
-  $1186 = $1184 | $1185;
-  $1187 = $1160 & $1183;
-  $1188 = $1160 | $1183;
-  $1189 = $1188 & $1163;
-  $1190 = $1189 | $1187;
-  $1191 = $882 ^ $918;
-  $1192 = $1191 ^ $1036;
-  $1193 = $1192 ^ $1136;
-  $1194 = $1193 << 1;
-  $1195 = $1193 >>> 31;
-  $1196 = $1194 | $1195;
-  $1197 = (($1196) + -1894007588)|0;
-  $1198 = (($1197) + ($1143))|0;
-  $1199 = (($1198) + ($1190))|0;
-  $1200 = (($1199) + ($1186))|0;
-  $1201 = $1160 << 30;
-  $1202 = $1160 >>> 2;
-  $1203 = $1201 | $1202;
-  $1204 = $1200 << 5;
-  $1205 = $1200 >>> 27;
-  $1206 = $1204 | $1205;
-  $1207 = $1180 & $1203;
-  $1208 = $1180 | $1203;
-  $1209 = $1208 & $1183;
-  $1210 = $1209 | $1207;
-  $1211 = $936 ^ $900;
-  $1212 = $1211 ^ $1056;
-  $1213 = $1212 ^ $1156;
-  $1214 = $1213 << 1;
-  $1215 = $1213 >>> 31;
-  $1216 = $1214 | $1215;
-  $1217 = (($1216) + -1894007588)|0;
-  $1218 = (($1217) + ($1163))|0;
-  $1219 = (($1218) + ($1210))|0;
-  $1220 = (($1219) + ($1206))|0;
-  $1221 = $1180 << 30;
-  $1222 = $1180 >>> 2;
-  $1223 = $1221 | $1222;
-  $1224 = $1220 << 5;
-  $1225 = $1220 >>> 27;
-  $1226 = $1224 | $1225;
-  $1227 = $1200 & $1223;
-  $1228 = $1200 | $1223;
-  $1229 = $1228 & $1203;
-  $1230 = $1229 | $1227;
-  $1231 = $918 ^ $956;
-  $1232 = $1231 ^ $1076;
-  $1233 = $1232 ^ $1176;
-  $1234 = $1233 << 1;
-  $1235 = $1233 >>> 31;
-  $1236 = $1234 | $1235;
-  $1237 = (($1236) + -1894007588)|0;
-  $1238 = (($1237) + ($1183))|0;
-  $1239 = (($1238) + ($1230))|0;
-  $1240 = (($1239) + ($1226))|0;
-  $1241 = $1200 << 30;
-  $1242 = $1200 >>> 2;
-  $1243 = $1241 | $1242;
-  $1244 = $1240 << 5;
-  $1245 = $1240 >>> 27;
-  $1246 = $1244 | $1245;
-  $1247 = $1220 & $1243;
-  $1248 = $1220 | $1243;
-  $1249 = $1248 & $1223;
-  $1250 = $1249 | $1247;
-  $1251 = $936 ^ $976;
-  $1252 = $1251 ^ $1096;
-  $1253 = $1252 ^ $1196;
-  $1254 = $1253 << 1;
-  $1255 = $1253 >>> 31;
-  $1256 = $1254 | $1255;
-  $1257 = (($1256) + -1894007588)|0;
-  $1258 = (($1257) + ($1203))|0;
-  $1259 = (($1258) + ($1250))|0;
-  $1260 = (($1259) + ($1246))|0;
-  $1261 = $1220 << 30;
-  $1262 = $1220 >>> 2;
-  $1263 = $1261 | $1262;
-  $1264 = $1260 << 5;
-  $1265 = $1260 >>> 27;
-  $1266 = $1264 | $1265;
-  $1267 = $1240 & $1263;
-  $1268 = $1240 | $1263;
-  $1269 = $1268 & $1243;
-  $1270 = $1269 | $1267;
-  $1271 = $996 ^ $956;
-  $1272 = $1271 ^ $1116;
-  $1273 = $1272 ^ $1216;
-  $1274 = $1273 << 1;
-  $1275 = $1273 >>> 31;
-  $1276 = $1274 | $1275;
-  $1277 = (($1276) + -1894007588)|0;
-  $1278 = (($1277) + ($1223))|0;
-  $1279 = (($1278) + ($1270))|0;
-  $1280 = (($1279) + ($1266))|0;
-  $1281 = $1240 << 30;
-  $1282 = $1240 >>> 2;
-  $1283 = $1281 | $1282;
-  $1284 = $1280 << 5;
-  $1285 = $1280 >>> 27;
-  $1286 = $1284 | $1285;
-  $1287 = $1260 & $1283;
-  $1288 = $1260 | $1283;
-  $1289 = $1288 & $1263;
-  $1290 = $1289 | $1287;
-  $1291 = $976 ^ $1016;
-  $1292 = $1291 ^ $1136;
-  $1293 = $1292 ^ $1236;
-  $1294 = $1293 << 1;
-  $1295 = $1293 >>> 31;
-  $1296 = $1294 | $1295;
-  $1297 = (($1296) + -1894007588)|0;
-  $1298 = (($1297) + ($1243))|0;
-  $1299 = (($1298) + ($1290))|0;
-  $1300 = (($1299) + ($1286))|0;
-  $1301 = $1260 << 30;
-  $1302 = $1260 >>> 2;
-  $1303 = $1301 | $1302;
-  $1304 = $1300 << 5;
-  $1305 = $1300 >>> 27;
-  $1306 = $1304 | $1305;
-  $1307 = $1280 & $1303;
-  $1308 = $1280 | $1303;
-  $1309 = $1308 & $1283;
-  $1310 = $1309 | $1307;
-  $1311 = $996 ^ $1036;
-  $1312 = $1311 ^ $1156;
-  $1313 = $1312 ^ $1256;
-  $1314 = $1313 << 1;
-  $1315 = $1313 >>> 31;
-  $1316 = $1314 | $1315;
-  $1317 = (($1316) + -1894007588)|0;
-  $1318 = (($1317) + ($1263))|0;
-  $1319 = (($1318) + ($1310))|0;
-  $1320 = (($1319) + ($1306))|0;
-  $1321 = $1280 << 30;
-  $1322 = $1280 >>> 2;
-  $1323 = $1321 | $1322;
-  $1324 = $1320 << 5;
-  $1325 = $1320 >>> 27;
-  $1326 = $1324 | $1325;
-  $1327 = $1300 & $1323;
-  $1328 = $1300 | $1323;
-  $1329 = $1328 & $1303;
-  $1330 = $1329 | $1327;
-  $1331 = $1056 ^ $1016;
-  $1332 = $1331 ^ $1176;
-  $1333 = $1332 ^ $1276;
-  $1334 = $1333 << 1;
-  $1335 = $1333 >>> 31;
-  $1336 = $1334 | $1335;
-  $1337 = (($1336) + -1894007588)|0;
-  $1338 = (($1337) + ($1283))|0;
-  $1339 = (($1338) + ($1330))|0;
-  $1340 = (($1339) + ($1326))|0;
-  $1341 = $1300 << 30;
-  $1342 = $1300 >>> 2;
-  $1343 = $1341 | $1342;
-  $1344 = $1340 << 5;
-  $1345 = $1340 >>> 27;
-  $1346 = $1344 | $1345;
-  $1347 = $1343 ^ $1323;
-  $1348 = $1347 ^ $1320;
-  $1349 = $1036 ^ $1076;
-  $1350 = $1349 ^ $1196;
-  $1351 = $1350 ^ $1296;
-  $1352 = $1351 << 1;
-  $1353 = $1351 >>> 31;
-  $1354 = $1352 | $1353;
-  $1355 = (($1354) + -899497514)|0;
-  $1356 = (($1355) + ($1303))|0;
-  $1357 = (($1356) + ($1348))|0;
-  $1358 = (($1357) + ($1346))|0;
-  $1359 = $1320 << 30;
-  $1360 = $1320 >>> 2;
-  $1361 = $1359 | $1360;
-  $1362 = $1358 << 5;
-  $1363 = $1358 >>> 27;
-  $1364 = $1362 | $1363;
-  $1365 = $1361 ^ $1343;
-  $1366 = $1365 ^ $1340;
-  $1367 = $1056 ^ $1096;
-  $1368 = $1367 ^ $1216;
-  $1369 = $1368 ^ $1316;
-  $1370 = $1369 << 1;
-  $1371 = $1369 >>> 31;
-  $1372 = $1370 | $1371;
-  $1373 = (($1372) + -899497514)|0;
-  $1374 = (($1373) + ($1323))|0;
-  $1375 = (($1374) + ($1366))|0;
-  $1376 = (($1375) + ($1364))|0;
-  $1377 = $1340 << 30;
-  $1378 = $1340 >>> 2;
-  $1379 = $1377 | $1378;
-  $1380 = $1376 << 5;
-  $1381 = $1376 >>> 27;
-  $1382 = $1380 | $1381;
-  $1383 = $1379 ^ $1361;
-  $1384 = $1383 ^ $1358;
-  $1385 = $1116 ^ $1076;
-  $1386 = $1385 ^ $1236;
-  $1387 = $1386 ^ $1336;
-  $1388 = $1387 << 1;
-  $1389 = $1387 >>> 31;
-  $1390 = $1388 | $1389;
-  $1391 = (($1390) + -899497514)|0;
-  $1392 = (($1391) + ($1343))|0;
-  $1393 = (($1392) + ($1384))|0;
-  $1394 = (($1393) + ($1382))|0;
-  $1395 = $1358 << 30;
-  $1396 = $1358 >>> 2;
-  $1397 = $1395 | $1396;
-  $1398 = $1394 << 5;
-  $1399 = $1394 >>> 27;
-  $1400 = $1398 | $1399;
-  $1401 = $1397 ^ $1379;
-  $1402 = $1401 ^ $1376;
-  $1403 = $1096 ^ $1136;
-  $1404 = $1403 ^ $1256;
-  $1405 = $1404 ^ $1354;
-  $1406 = $1405 << 1;
-  $1407 = $1405 >>> 31;
-  $1408 = $1406 | $1407;
-  $1409 = (($1408) + -899497514)|0;
-  $1410 = (($1409) + ($1361))|0;
-  $1411 = (($1410) + ($1402))|0;
-  $1412 = (($1411) + ($1400))|0;
-  $1413 = $1376 << 30;
-  $1414 = $1376 >>> 2;
-  $1415 = $1413 | $1414;
-  $1416 = $1412 << 5;
-  $1417 = $1412 >>> 27;
-  $1418 = $1416 | $1417;
-  $1419 = $1415 ^ $1397;
-  $1420 = $1419 ^ $1394;
-  $1421 = $1116 ^ $1156;
-  $1422 = $1421 ^ $1276;
-  $1423 = $1422 ^ $1372;
-  $1424 = $1423 << 1;
-  $1425 = $1423 >>> 31;
-  $1426 = $1424 | $1425;
-  $1427 = (($1426) + -899497514)|0;
-  $1428 = (($1427) + ($1379))|0;
-  $1429 = (($1428) + ($1420))|0;
-  $1430 = (($1429) + ($1418))|0;
-  $1431 = $1394 << 30;
-  $1432 = $1394 >>> 2;
-  $1433 = $1431 | $1432;
-  $1434 = $1430 << 5;
-  $1435 = $1430 >>> 27;
-  $1436 = $1434 | $1435;
-  $1437 = $1433 ^ $1415;
-  $1438 = $1437 ^ $1412;
-  $1439 = $1176 ^ $1136;
-  $1440 = $1439 ^ $1296;
-  $1441 = $1440 ^ $1390;
-  $1442 = $1441 << 1;
-  $1443 = $1441 >>> 31;
-  $1444 = $1442 | $1443;
-  $1445 = (($1444) + -899497514)|0;
-  $1446 = (($1445) + ($1397))|0;
-  $1447 = (($1446) + ($1438))|0;
-  $1448 = (($1447) + ($1436))|0;
-  $1449 = $1412 << 30;
-  $1450 = $1412 >>> 2;
-  $1451 = $1449 | $1450;
-  $1452 = $1448 << 5;
-  $1453 = $1448 >>> 27;
-  $1454 = $1452 | $1453;
-  $1455 = $1451 ^ $1433;
-  $1456 = $1455 ^ $1430;
-  $1457 = $1156 ^ $1196;
-  $1458 = $1457 ^ $1316;
-  $1459 = $1458 ^ $1408;
-  $1460 = $1459 << 1;
-  $1461 = $1459 >>> 31;
-  $1462 = $1460 | $1461;
-  $1463 = (($1462) + -899497514)|0;
-  $1464 = (($1463) + ($1415))|0;
-  $1465 = (($1464) + ($1456))|0;
-  $1466 = (($1465) + ($1454))|0;
-  $1467 = $1430 << 30;
-  $1468 = $1430 >>> 2;
-  $1469 = $1467 | $1468;
-  $1470 = $1466 << 5;
-  $1471 = $1466 >>> 27;
-  $1472 = $1470 | $1471;
-  $1473 = $1469 ^ $1451;
-  $1474 = $1473 ^ $1448;
-  $1475 = $1176 ^ $1216;
-  $1476 = $1475 ^ $1336;
-  $1477 = $1476 ^ $1426;
-  $1478 = $1477 << 1;
-  $1479 = $1477 >>> 31;
-  $1480 = $1478 | $1479;
-  $1481 = (($1480) + -899497514)|0;
-  $1482 = (($1481) + ($1433))|0;
-  $1483 = (($1482) + ($1474))|0;
-  $1484 = (($1483) + ($1472))|0;
-  $1485 = $1448 << 30;
-  $1486 = $1448 >>> 2;
-  $1487 = $1485 | $1486;
-  $1488 = $1484 << 5;
-  $1489 = $1484 >>> 27;
-  $1490 = $1488 | $1489;
-  $1491 = $1487 ^ $1469;
-  $1492 = $1491 ^ $1466;
-  $1493 = $1236 ^ $1196;
-  $1494 = $1493 ^ $1354;
-  $1495 = $1494 ^ $1444;
-  $1496 = $1495 << 1;
-  $1497 = $1495 >>> 31;
-  $1498 = $1496 | $1497;
-  $1499 = (($1498) + -899497514)|0;
-  $1500 = (($1499) + ($1451))|0;
-  $1501 = (($1500) + ($1492))|0;
-  $1502 = (($1501) + ($1490))|0;
-  $1503 = $1466 << 30;
-  $1504 = $1466 >>> 2;
-  $1505 = $1503 | $1504;
-  $1506 = $1502 << 5;
-  $1507 = $1502 >>> 27;
-  $1508 = $1506 | $1507;
-  $1509 = $1505 ^ $1487;
-  $1510 = $1509 ^ $1484;
-  $1511 = $1216 ^ $1256;
-  $1512 = $1511 ^ $1372;
-  $1513 = $1512 ^ $1462;
-  $1514 = $1513 << 1;
-  $1515 = $1513 >>> 31;
-  $1516 = $1514 | $1515;
-  $1517 = (($1516) + -899497514)|0;
-  $1518 = (($1517) + ($1469))|0;
-  $1519 = (($1518) + ($1510))|0;
-  $1520 = (($1519) + ($1508))|0;
-  $1521 = $1484 << 30;
-  $1522 = $1484 >>> 2;
-  $1523 = $1521 | $1522;
-  $1524 = $1520 << 5;
-  $1525 = $1520 >>> 27;
-  $1526 = $1524 | $1525;
-  $1527 = $1523 ^ $1505;
-  $1528 = $1527 ^ $1502;
-  $1529 = $1236 ^ $1276;
-  $1530 = $1529 ^ $1390;
-  $1531 = $1530 ^ $1480;
-  $1532 = $1531 << 1;
-  $1533 = $1531 >>> 31;
-  $1534 = $1532 | $1533;
-  $1535 = (($1534) + -899497514)|0;
-  $1536 = (($1535) + ($1487))|0;
-  $1537 = (($1536) + ($1528))|0;
-  $1538 = (($1537) + ($1526))|0;
-  $1539 = $1502 << 30;
-  $1540 = $1502 >>> 2;
-  $1541 = $1539 | $1540;
-  $1542 = $1538 << 5;
-  $1543 = $1538 >>> 27;
-  $1544 = $1542 | $1543;
-  $1545 = $1541 ^ $1523;
-  $1546 = $1545 ^ $1520;
-  $1547 = $1296 ^ $1256;
-  $1548 = $1547 ^ $1408;
-  $1549 = $1548 ^ $1498;
-  $1550 = $1549 << 1;
-  $1551 = $1549 >>> 31;
-  $1552 = $1550 | $1551;
-  $1553 = (($1552) + -899497514)|0;
-  $1554 = (($1553) + ($1505))|0;
-  $1555 = (($1554) + ($1546))|0;
-  $1556 = (($1555) + ($1544))|0;
-  $1557 = $1520 << 30;
-  $1558 = $1520 >>> 2;
-  $1559 = $1557 | $1558;
-  $1560 = $1556 << 5;
-  $1561 = $1556 >>> 27;
-  $1562 = $1560 | $1561;
-  $1563 = $1559 ^ $1541;
-  $1564 = $1563 ^ $1538;
-  $1565 = $1276 ^ $1316;
-  $1566 = $1565 ^ $1426;
-  $1567 = $1566 ^ $1516;
-  $1568 = $1567 << 1;
-  $1569 = $1567 >>> 31;
-  $1570 = $1568 | $1569;
-  $1571 = (($1570) + -899497514)|0;
-  $1572 = (($1571) + ($1523))|0;
-  $1573 = (($1572) + ($1564))|0;
-  $1574 = (($1573) + ($1562))|0;
-  $1575 = $1538 << 30;
-  $1576 = $1538 >>> 2;
-  $1577 = $1575 | $1576;
-  $1578 = $1574 << 5;
-  $1579 = $1574 >>> 27;
-  $1580 = $1578 | $1579;
-  $1581 = $1577 ^ $1559;
-  $1582 = $1581 ^ $1556;
-  $1583 = $1296 ^ $1336;
-  $1584 = $1583 ^ $1444;
-  $1585 = $1584 ^ $1534;
-  $1586 = $1585 << 1;
-  $1587 = $1585 >>> 31;
-  $1588 = $1586 | $1587;
-  $1589 = (($1588) + -899497514)|0;
-  $1590 = (($1589) + ($1541))|0;
-  $1591 = (($1590) + ($1582))|0;
-  $1592 = (($1591) + ($1580))|0;
-  $1593 = $1556 << 30;
-  $1594 = $1556 >>> 2;
-  $1595 = $1593 | $1594;
-  $1596 = $1592 << 5;
-  $1597 = $1592 >>> 27;
-  $1598 = $1596 | $1597;
-  $1599 = $1595 ^ $1577;
-  $1600 = $1599 ^ $1574;
-  $1601 = $1354 ^ $1316;
-  $1602 = $1601 ^ $1462;
-  $1603 = $1602 ^ $1552;
-  $1604 = $1603 << 1;
-  $1605 = $1603 >>> 31;
-  $1606 = $1604 | $1605;
-  $1607 = (($1606) + -899497514)|0;
-  $1608 = (($1607) + ($1559))|0;
-  $1609 = (($1608) + ($1600))|0;
-  $1610 = (($1609) + ($1598))|0;
-  $1611 = $1574 << 30;
-  $1612 = $1574 >>> 2;
-  $1613 = $1611 | $1612;
-  $1614 = $1610 << 5;
-  $1615 = $1610 >>> 27;
-  $1616 = $1614 | $1615;
-  $1617 = $1613 ^ $1595;
-  $1618 = $1617 ^ $1592;
-  $1619 = $1336 ^ $1372;
-  $1620 = $1619 ^ $1480;
-  $1621 = $1620 ^ $1570;
-  $1622 = $1621 << 1;
-  $1623 = $1621 >>> 31;
-  $1624 = $1622 | $1623;
-  $1625 = (($1624) + -899497514)|0;
-  $1626 = (($1625) + ($1577))|0;
-  $1627 = (($1626) + ($1618))|0;
-  $1628 = (($1627) + ($1616))|0;
-  $1629 = $1592 << 30;
-  $1630 = $1592 >>> 2;
-  $1631 = $1629 | $1630;
-  $1632 = $1628 << 5;
-  $1633 = $1628 >>> 27;
-  $1634 = $1632 | $1633;
-  $1635 = $1631 ^ $1613;
-  $1636 = $1635 ^ $1610;
-  $1637 = $1354 ^ $1390;
-  $1638 = $1637 ^ $1498;
-  $1639 = $1638 ^ $1588;
-  $1640 = $1639 << 1;
-  $1641 = $1639 >>> 31;
-  $1642 = $1640 | $1641;
-  $1643 = (($1642) + -899497514)|0;
-  $1644 = (($1643) + ($1595))|0;
-  $1645 = (($1644) + ($1636))|0;
-  $1646 = (($1645) + ($1634))|0;
-  $1647 = $1610 << 30;
-  $1648 = $1610 >>> 2;
-  $1649 = $1647 | $1648;
-  $1650 = $1646 << 5;
-  $1651 = $1646 >>> 27;
-  $1652 = $1650 | $1651;
-  $1653 = $1649 ^ $1631;
-  $1654 = $1653 ^ $1628;
-  $1655 = $1408 ^ $1372;
-  $1656 = $1655 ^ $1516;
-  $1657 = $1656 ^ $1606;
-  $1658 = $1657 << 1;
-  $1659 = $1657 >>> 31;
-  $1660 = $1658 | $1659;
-  $1661 = (($1660) + -899497514)|0;
-  $1662 = (($1661) + ($1613))|0;
-  $1663 = (($1662) + ($1654))|0;
-  $1664 = (($1663) + ($1652))|0;
-  $1665 = $1628 << 30;
-  $1666 = $1628 >>> 2;
-  $1667 = $1665 | $1666;
-  $1668 = $1664 << 5;
-  $1669 = $1664 >>> 27;
-  $1670 = $1668 | $1669;
-  $1671 = $1667 ^ $1649;
-  $1672 = $1671 ^ $1646;
-  $1673 = $1390 ^ $1426;
-  $1674 = $1673 ^ $1534;
-  $1675 = $1674 ^ $1624;
-  $1676 = $1675 << 1;
-  $1677 = $1675 >>> 31;
-  $1678 = $1676 | $1677;
-  $1679 = (($1678) + -899497514)|0;
-  $1680 = (($1679) + ($1631))|0;
-  $1681 = (($1680) + ($1672))|0;
-  $1682 = (($1681) + ($1670))|0;
-  $1683 = $1646 << 30;
-  $1684 = $1646 >>> 2;
-  $1685 = $1683 | $1684;
-  $1686 = $1682 << 5;
-  $1687 = $1682 >>> 27;
-  $1688 = $1686 | $1687;
-  $1689 = $1685 ^ $1667;
-  $1690 = $1689 ^ $1664;
-  $1691 = $1408 ^ $1444;
-  $1692 = $1691 ^ $1552;
-  $1693 = $1692 ^ $1642;
-  $1694 = $1693 << 1;
-  $1695 = $1693 >>> 31;
-  $1696 = $1694 | $1695;
-  $1697 = $1664 << 30;
-  $1698 = $1664 >>> 2;
-  $1699 = $1697 | $1698;
-  $1700 = (($9) + -899497514)|0;
-  $1701 = (($1700) + ($1696))|0;
-  $1702 = (($1701) + ($1649))|0;
-  $1703 = (($1702) + ($1690))|0;
-  $1704 = (($1703) + ($1688))|0;
-  HEAP32[$3>>2] = $1704;
-  $1705 = (($1682) + ($16))|0;
-  HEAP32[$4>>2] = $1705;
-  $1706 = (($1699) + ($14))|0;
-  HEAP32[$5>>2] = $1706;
-  $1707 = (($1685) + ($13))|0;
-  HEAP32[$6>>2] = $1707;
-  $1708 = (($1667) + ($37))|0;
-  HEAP32[$7>>2] = $1708;
-  $1709 = ((($$0)) + 64|0);
-  $1710 = (($$08) + -1)|0;
-  $1711 = ($1710|0)==(0);
-  if ($1711) {
-   break;
-  } else {
-   $$0 = $1709;$$08 = $1710;$13 = $1707;$14 = $1706;$16 = $1705;$37 = $1708;$9 
= $1704;
-  }
- }
- return 104;
-}
-function __gcry_sha1_hash_buffer($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $3 = sp;
- $4 = ((($3)) + 160|0);
- HEAP32[$4>>2] = 1732584193;
- $5 = ((($3)) + 164|0);
- HEAP32[$5>>2] = -271733879;
- $6 = ((($3)) + 168|0);
- HEAP32[$6>>2] = -1732584194;
- $7 = ((($3)) + 172|0);
- HEAP32[$7>>2] = 271733878;
- $8 = ((($3)) + 176|0);
- HEAP32[$8>>2] = -1009589776;
- $9 = ((($3)) + 128|0);
- $10 = ((($3)) + 148|0);
- 
;HEAP32[$9>>2]=0|0;HEAP32[$9+4>>2]=0|0;HEAP32[$9+8>>2]=0|0;HEAP32[$9+12>>2]=0|0;HEAP32[$9+16>>2]=0|0;
- HEAP32[$10>>2] = 64;
- $11 = ((($3)) + 152|0);
- HEAP32[$11>>2] = 78;
- __gcry_md_block_write($3,$1,$2);
- _sha1_final($3);
- dest=$0; src=$3; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- STACKTOP = sp;return;
-}
-function __gcry_sha1_hash_buffers($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$067 = 0, $$08 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $3 = sp;
- $4 = ((($3)) + 160|0);
- HEAP32[$4>>2] = 1732584193;
- $5 = ((($3)) + 164|0);
- HEAP32[$5>>2] = -271733879;
- $6 = ((($3)) + 168|0);
- HEAP32[$6>>2] = -1732584194;
- $7 = ((($3)) + 172|0);
- HEAP32[$7>>2] = 271733878;
- $8 = ((($3)) + 176|0);
- HEAP32[$8>>2] = -1009589776;
- $9 = ((($3)) + 128|0);
- $10 = ((($3)) + 148|0);
- 
;HEAP32[$9>>2]=0|0;HEAP32[$9+4>>2]=0|0;HEAP32[$9+8>>2]=0|0;HEAP32[$9+12>>2]=0|0;HEAP32[$9+16>>2]=0|0;
- HEAP32[$10>>2] = 64;
- $11 = ((($3)) + 152|0);
- HEAP32[$11>>2] = 78;
- $12 = ($2|0)>(0);
- if (!($12)) {
-  _sha1_final($3);
-  dest=$0; src=$3; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  STACKTOP = sp;return;
- }
- $$067 = $1;$$08 = $2;
- while(1) {
-  $13 = ((($$067)) + 12|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = ((($$067)) + 4|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = (($14) + ($16)|0);
-  $18 = ((($$067)) + 8|0);
-  $19 = HEAP32[$18>>2]|0;
-  __gcry_md_block_write($3,$17,$19);
-  $20 = ((($$067)) + 16|0);
-  $21 = (($$08) + -1)|0;
-  $22 = ($$08|0)>(1);
-  if ($22) {
-   $$067 = $20;$$08 = $21;
-  } else {
-   break;
-  }
- }
- _sha1_final($3);
- dest=$0; src=$3; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- STACKTOP = sp;return;
-}
-function _sha224_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- HEAP32[$2>>2] = -1056596264;
- $3 = ((($0)) + 164|0);
- HEAP32[$3>>2] = 914150663;
- $4 = ((($0)) + 168|0);
- HEAP32[$4>>2] = 812702999;
- $5 = ((($0)) + 172|0);
- HEAP32[$5>>2] = -150054599;
- $6 = ((($0)) + 176|0);
- HEAP32[$6>>2] = -4191439;
- $7 = ((($0)) + 180|0);
- HEAP32[$7>>2] = 1750603025;
- $8 = ((($0)) + 184|0);
- HEAP32[$8>>2] = 1694076839;
- $9 = ((($0)) + 188|0);
- HEAP32[$9>>2] = -1090891868;
- $10 = ((($0)) + 128|0);
- $11 = ((($0)) + 148|0);
- 
;HEAP32[$10>>2]=0|0;HEAP32[$10+4>>2]=0|0;HEAP32[$10+8>>2]=0|0;HEAP32[$10+12>>2]=0|0;HEAP32[$10+16>>2]=0|0;
- HEAP32[$11>>2] = 64;
- $12 = ((($0)) + 152|0);
- HEAP32[$12>>2] = 79;
- return;
-}
-function _sha256_final($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 
0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 
= 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0;
- var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $spec$select = 0, dest = 0, label = 0, sp = 0, 
stop = 0;
- sp = STACKTOP;
- __gcry_md_block_write($0,0,0);
- $1 = ((($0)) + 128|0);
- $2 = $1;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = $4 << 6;
- $9 = (_bitshift64Lshr(($4|0),($7|0),26)|0);
- $10 = tempRet0;
- $11 = $9 & 536870848;
- $12 = $4 >>> 26;
- $13 = $11 | $12;
- $14 = ((($0)) + 144|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (($8) + ($15))|0;
- $17 = ($16>>>0)<($8>>>0);
- $18 = $17&1;
- $spec$select = (($13) + ($18))|0;
- $19 = $16 << 3;
- $20 = $spec$select << 3;
- $21 = $16 >>> 29;
- $22 = $20 | $21;
- $23 = ($15|0)<(56);
- $24 = (($15) + 1)|0;
- HEAP32[$14>>2] = $24;
- $25 = (($0) + ($15)|0);
- HEAP8[$25>>0] = -128;
- $26 = HEAP32[$14>>2]|0;
- if ($23) {
-  $27 = ($26|0)<(56);
-  if ($27) {
-   $29 = $26;
-   while(1) {
-    $28 = (($29) + 1)|0;
-    HEAP32[$14>>2] = $28;
-    $30 = (($0) + ($29)|0);
-    HEAP8[$30>>0] = 0;
-    $31 = HEAP32[$14>>2]|0;
-    $32 = ($31|0)<(56);
-    if ($32) {
-     $29 = $31;
-    } else {
-     break;
-    }
-   }
-  }
- } else {
-  $33 = ($26|0)<(64);
-  if ($33) {
-   $35 = $26;
-   while(1) {
-    $34 = (($35) + 1)|0;
-    HEAP32[$14>>2] = $34;
-    $36 = (($0) + ($35)|0);
-    HEAP8[$36>>0] = 0;
-    $37 = HEAP32[$14>>2]|0;
-    $38 = ($37|0)<(64);
-    if ($38) {
-     $35 = $37;
-    } else {
-     break;
-    }
-   }
-  }
-  __gcry_md_block_write($0,0,0);
-  dest=$0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- }
- $39 = ((($0)) + 56|0);
- $40 = $spec$select >>> 21;
- $41 = $40&255;
- HEAP8[$39>>0] = $41;
- $42 = $spec$select >>> 13;
- $43 = $42&255;
- $44 = ((($0)) + 57|0);
- HEAP8[$44>>0] = $43;
- $45 = $spec$select >>> 5;
- $46 = $45&255;
- $47 = ((($0)) + 58|0);
- HEAP8[$47>>0] = $46;
- $48 = $22&255;
- $49 = ((($0)) + 59|0);
- HEAP8[$49>>0] = $48;
- $50 = ((($0)) + 60|0);
- $51 = $16 >>> 21;
- $52 = $51&255;
- HEAP8[$50>>0] = $52;
- $53 = $16 >>> 13;
- $54 = $53&255;
- $55 = ((($0)) + 61|0);
- HEAP8[$55>>0] = $54;
- $56 = $16 >>> 5;
- $57 = $56&255;
- $58 = ((($0)) + 62|0);
- HEAP8[$58>>0] = $57;
- $59 = $19&255;
- $60 = ((($0)) + 63|0);
- HEAP8[$60>>0] = $59;
- (_transform_1345($0,$0,1)|0);
- ___gcry_burn_stack(328);
- $61 = ((($0)) + 160|0);
- $62 = HEAP32[$61>>2]|0;
- $63 = $62 >>> 24;
- $64 = $63&255;
- HEAP8[$0>>0] = $64;
- $65 = $62 >>> 16;
- $66 = $65&255;
- $67 = ((($0)) + 1|0);
- HEAP8[$67>>0] = $66;
- $68 = $62 >>> 8;
- $69 = $68&255;
- $70 = ((($0)) + 2|0);
- HEAP8[$70>>0] = $69;
- $71 = $62&255;
- $72 = ((($0)) + 3|0);
- HEAP8[$72>>0] = $71;
- $73 = ((($0)) + 4|0);
- $74 = ((($0)) + 164|0);
- $75 = HEAP32[$74>>2]|0;
- $76 = $75 >>> 24;
- $77 = $76&255;
- HEAP8[$73>>0] = $77;
- $78 = $75 >>> 16;
- $79 = $78&255;
- $80 = ((($0)) + 5|0);
- HEAP8[$80>>0] = $79;
- $81 = $75 >>> 8;
- $82 = $81&255;
- $83 = ((($0)) + 6|0);
- HEAP8[$83>>0] = $82;
- $84 = $75&255;
- $85 = ((($0)) + 7|0);
- HEAP8[$85>>0] = $84;
- $86 = ((($0)) + 8|0);
- $87 = ((($0)) + 168|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $88 >>> 24;
- $90 = $89&255;
- HEAP8[$86>>0] = $90;
- $91 = $88 >>> 16;
- $92 = $91&255;
- $93 = ((($0)) + 9|0);
- HEAP8[$93>>0] = $92;
- $94 = $88 >>> 8;
- $95 = $94&255;
- $96 = ((($0)) + 10|0);
- HEAP8[$96>>0] = $95;
- $97 = $88&255;
- $98 = ((($0)) + 11|0);
- HEAP8[$98>>0] = $97;
- $99 = ((($0)) + 12|0);
- $100 = ((($0)) + 172|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $101 >>> 24;
- $103 = $102&255;
- HEAP8[$99>>0] = $103;
- $104 = $101 >>> 16;
- $105 = $104&255;
- $106 = ((($0)) + 13|0);
- HEAP8[$106>>0] = $105;
- $107 = $101 >>> 8;
- $108 = $107&255;
- $109 = ((($0)) + 14|0);
- HEAP8[$109>>0] = $108;
- $110 = $101&255;
- $111 = ((($0)) + 15|0);
- HEAP8[$111>>0] = $110;
- $112 = ((($0)) + 16|0);
- $113 = ((($0)) + 176|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $114 >>> 24;
- $116 = $115&255;
- HEAP8[$112>>0] = $116;
- $117 = $114 >>> 16;
- $118 = $117&255;
- $119 = ((($0)) + 17|0);
- HEAP8[$119>>0] = $118;
- $120 = $114 >>> 8;
- $121 = $120&255;
- $122 = ((($0)) + 18|0);
- HEAP8[$122>>0] = $121;
- $123 = $114&255;
- $124 = ((($0)) + 19|0);
- HEAP8[$124>>0] = $123;
- $125 = ((($0)) + 20|0);
- $126 = ((($0)) + 180|0);
- $127 = HEAP32[$126>>2]|0;
- $128 = $127 >>> 24;
- $129 = $128&255;
- HEAP8[$125>>0] = $129;
- $130 = $127 >>> 16;
- $131 = $130&255;
- $132 = ((($0)) + 21|0);
- HEAP8[$132>>0] = $131;
- $133 = $127 >>> 8;
- $134 = $133&255;
- $135 = ((($0)) + 22|0);
- HEAP8[$135>>0] = $134;
- $136 = $127&255;
- $137 = ((($0)) + 23|0);
- HEAP8[$137>>0] = $136;
- $138 = ((($0)) + 24|0);
- $139 = ((($0)) + 184|0);
- $140 = HEAP32[$139>>2]|0;
- $141 = $140 >>> 24;
- $142 = $141&255;
- HEAP8[$138>>0] = $142;
- $143 = $140 >>> 16;
- $144 = $143&255;
- $145 = ((($0)) + 25|0);
- HEAP8[$145>>0] = $144;
- $146 = $140 >>> 8;
- $147 = $146&255;
- $148 = ((($0)) + 26|0);
- HEAP8[$148>>0] = $147;
- $149 = $140&255;
- $150 = ((($0)) + 27|0);
- HEAP8[$150>>0] = $149;
- $151 = ((($0)) + 28|0);
- $152 = ((($0)) + 188|0);
- $153 = HEAP32[$152>>2]|0;
- $154 = $153 >>> 24;
- $155 = $154&255;
- HEAP8[$151>>0] = $155;
- $156 = $153 >>> 16;
- $157 = $156&255;
- $158 = ((($0)) + 29|0);
- HEAP8[$158>>0] = $157;
- $159 = $153 >>> 8;
- $160 = $159&255;
- $161 = ((($0)) + 30|0);
- HEAP8[$161>>0] = $160;
- $162 = $153&255;
- $163 = ((($0)) + 31|0);
- HEAP8[$163>>0] = $162;
- return;
-}
-function _sha256_read($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function _run_selftests_1332($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$0$i7 = 0, $$011$i = 0, $$011$i6 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- switch ($0|0) {
- case 11:  {
-  $3 = (__gcry_hash_selftest_check_one(11,0,62920,3,62595,28)|0);
-  $4 = ($3|0)==(0|0);
-  if ($4) {
-   $5 = ($1|0)==(0);
-   if ($5) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $6 = (__gcry_hash_selftest_check_one(11,0,62624,56,62681,28)|0);
-   $7 = ($6|0)==(0|0);
-   if ($7) {
-    $8 = (__gcry_hash_selftest_check_one(11,1,0,0,62710,28)|0);
-    $9 = ($8|0)==(0|0);
-    if ($9) {
-     $$0 = 0;
-     return ($$0|0);
-    } else {
-     $$0$i = $8;$$011$i = 63209;
-    }
-   } else {
-    $$0$i = $6;$$011$i = 63197;
-   }
-  } else {
-   $$0$i = $3;$$011$i = 63184;
-  }
-  $10 = ($2|0)==(0|0);
-  if ($10) {
-   $$0 = 50;
-   return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](63225,11,$$011$i,$$0$i);
-  $$0 = 50;
-  return ($$0|0);
-  break;
- }
- case 8:  {
-  $11 = (__gcry_hash_selftest_check_one(8,0,62920,3,62739,32)|0);
-  $12 = ($11|0)==(0|0);
-  if ($12) {
-   $13 = ($1|0)==(0);
-   if ($13) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $14 = (__gcry_hash_selftest_check_one(8,0,62624,56,62772,32)|0);
-   $15 = ($14|0)==(0|0);
-   if ($15) {
-    $16 = (__gcry_hash_selftest_check_one(8,1,0,0,62805,32)|0);
-    $17 = ($16|0)==(0|0);
-    if ($17) {
-     $$0 = 0;
-     return ($$0|0);
-    } else {
-     $$0$i7 = $16;$$011$i6 = 63209;
-    }
-   } else {
-    $$0$i7 = $14;$$011$i6 = 63197;
-   }
-  } else {
-   $$0$i7 = $11;$$011$i6 = 63184;
-  }
-  $18 = ($2|0)==(0|0);
-  if ($18) {
-   $$0 = 50;
-   return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](63225,8,$$011$i6,$$0$i7);
-  $$0 = 50;
-  return ($$0|0);
-  break;
- }
- default: {
-  $$0 = 5;
-  return ($$0|0);
- }
- }
- return (0)|0;
-}
-function _transform_1345($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$01858$i = 0, $$01867$i = 0, $$01876$i = 0, $$01885$i = 0, 
$$01894$i = 0, $$01903$i = 0, $$01912$i = 0, $$01921$i = 0, $$08 = 0, $$110$i = 
0, $$29$i = 0, $$pre = 0, $$pre23 = 0, $$pre24 = 0, $$pre25 = 0, $$pre26 = 0, 
$$pre27 = 0, $$pre28 = 0, $$pre29 = 0;
- var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0;
- var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 
= 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0;
- var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 
= 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 
= 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0;
- var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 
= 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 
= 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0;
- var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, 
$179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, 
$186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0;
- var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, 
$197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, 
$204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0;
- var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 
= 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 
= 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0;
- var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 
= 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 
= 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0;
- var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 
= 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 
= 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0;
- var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 
= 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 
= 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0;
- var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, 
$288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, 
$295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0;
- var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 
0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 
0, $313 = 0, $314 = 0, $315 = 0, $316 = 0;
- var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0;
- var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 
= 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0;
- var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 
= 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0;
- var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, 
$378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, 
$385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0;
- var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 
= 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 
0, $403 = 0, $404 = 0, $405 = 0, $406 = 0;
- var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 
= 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0;
- var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 
= 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0;
- var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 
= 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0;
- var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, 
$468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, 
$475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0;
- var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 
= 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 
= 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0;
- var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 
0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 
0, $511 = 0, $512 = 0, $513 = 0, $514 = 0;
- var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 
= 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0;
- var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 
= 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0;
- var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, 
$558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, 
$565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0;
- var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 
= 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 
= 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0;
- var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 
= 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 
0, $601 = 0, $602 = 0, $603 = 0, $604 = 0;
- var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 
= 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 
= 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0;
- var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 
= 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 
= 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0;
- var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, 
$648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, 
$655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0;
- var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 
= 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 
= 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0;
- var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 
= 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 
= 0, $692 = 0, $693 = 0, $694 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(256|0);
- $3 = sp;
- $4 = ((($0)) + 160|0);
- $5 = ((($0)) + 164|0);
- $6 = ((($0)) + 168|0);
- $7 = ((($0)) + 172|0);
- $8 = ((($0)) + 176|0);
- $9 = ((($0)) + 180|0);
- $10 = ((($0)) + 184|0);
- $11 = ((($0)) + 188|0);
- $12 = ((($3)) + 4|0);
- $13 = ((($3)) + 8|0);
- $14 = ((($3)) + 12|0);
- $15 = ((($3)) + 16|0);
- $16 = ((($3)) + 20|0);
- $17 = ((($3)) + 24|0);
- $18 = ((($3)) + 28|0);
- $19 = ((($3)) + 32|0);
- $20 = ((($3)) + 36|0);
- $21 = ((($3)) + 40|0);
- $22 = ((($3)) + 44|0);
- $23 = ((($3)) + 48|0);
- $24 = ((($3)) + 52|0);
- $25 = ((($3)) + 56|0);
- $26 = ((($3)) + 60|0);
- $$pre = HEAP32[$4>>2]|0;
- $$pre23 = HEAP32[$5>>2]|0;
- $$pre24 = HEAP32[$6>>2]|0;
- $$pre25 = HEAP32[$7>>2]|0;
- $$pre26 = HEAP32[$8>>2]|0;
- $$pre27 = HEAP32[$9>>2]|0;
- $$pre28 = HEAP32[$10>>2]|0;
- $$pre29 = HEAP32[$11>>2]|0;
- $$0 = $1;$$08 = $2;$677 = $$pre;$679 = $$pre23;$681 = $$pre24;$683 = 
$$pre25;$685 = $$pre26;$687 = $$pre27;$689 = $$pre28;$691 = $$pre29;
- while(1) {
-  $27 = HEAP8[$$0>>0]|0;
-  $28 = $27&255;
-  $29 = $28 << 24;
-  $30 = ((($$0)) + 1|0);
-  $31 = HEAP8[$30>>0]|0;
-  $32 = $31&255;
-  $33 = $32 << 16;
-  $34 = $33 | $29;
-  $35 = ((($$0)) + 2|0);
-  $36 = HEAP8[$35>>0]|0;
-  $37 = $36&255;
-  $38 = $37 << 8;
-  $39 = $34 | $38;
-  $40 = ((($$0)) + 3|0);
-  $41 = HEAP8[$40>>0]|0;
-  $42 = $41&255;
-  $43 = $39 | $42;
-  HEAP32[$3>>2] = $43;
-  $44 = ((($$0)) + 4|0);
-  $45 = HEAP8[$44>>0]|0;
-  $46 = $45&255;
-  $47 = $46 << 24;
-  $48 = ((($$0)) + 5|0);
-  $49 = HEAP8[$48>>0]|0;
-  $50 = $49&255;
-  $51 = $50 << 16;
-  $52 = $51 | $47;
-  $53 = ((($$0)) + 6|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = $54&255;
-  $56 = $55 << 8;
-  $57 = $52 | $56;
-  $58 = ((($$0)) + 7|0);
-  $59 = HEAP8[$58>>0]|0;
-  $60 = $59&255;
-  $61 = $57 | $60;
-  HEAP32[$12>>2] = $61;
-  $62 = ((($$0)) + 8|0);
-  $63 = HEAP8[$62>>0]|0;
-  $64 = $63&255;
-  $65 = $64 << 24;
-  $66 = ((($$0)) + 9|0);
-  $67 = HEAP8[$66>>0]|0;
-  $68 = $67&255;
-  $69 = $68 << 16;
-  $70 = $69 | $65;
-  $71 = ((($$0)) + 10|0);
-  $72 = HEAP8[$71>>0]|0;
-  $73 = $72&255;
-  $74 = $73 << 8;
-  $75 = $70 | $74;
-  $76 = ((($$0)) + 11|0);
-  $77 = HEAP8[$76>>0]|0;
-  $78 = $77&255;
-  $79 = $75 | $78;
-  HEAP32[$13>>2] = $79;
-  $80 = ((($$0)) + 12|0);
-  $81 = HEAP8[$80>>0]|0;
-  $82 = $81&255;
-  $83 = $82 << 24;
-  $84 = ((($$0)) + 13|0);
-  $85 = HEAP8[$84>>0]|0;
-  $86 = $85&255;
-  $87 = $86 << 16;
-  $88 = $87 | $83;
-  $89 = ((($$0)) + 14|0);
-  $90 = HEAP8[$89>>0]|0;
-  $91 = $90&255;
-  $92 = $91 << 8;
-  $93 = $88 | $92;
-  $94 = ((($$0)) + 15|0);
-  $95 = HEAP8[$94>>0]|0;
-  $96 = $95&255;
-  $97 = $93 | $96;
-  HEAP32[$14>>2] = $97;
-  $98 = ((($$0)) + 16|0);
-  $99 = HEAP8[$98>>0]|0;
-  $100 = $99&255;
-  $101 = $100 << 24;
-  $102 = ((($$0)) + 17|0);
-  $103 = HEAP8[$102>>0]|0;
-  $104 = $103&255;
-  $105 = $104 << 16;
-  $106 = $105 | $101;
-  $107 = ((($$0)) + 18|0);
-  $108 = HEAP8[$107>>0]|0;
-  $109 = $108&255;
-  $110 = $109 << 8;
-  $111 = $106 | $110;
-  $112 = ((($$0)) + 19|0);
-  $113 = HEAP8[$112>>0]|0;
-  $114 = $113&255;
-  $115 = $111 | $114;
-  HEAP32[$15>>2] = $115;
-  $116 = ((($$0)) + 20|0);
-  $117 = HEAP8[$116>>0]|0;
-  $118 = $117&255;
-  $119 = $118 << 24;
-  $120 = ((($$0)) + 21|0);
-  $121 = HEAP8[$120>>0]|0;
-  $122 = $121&255;
-  $123 = $122 << 16;
-  $124 = $123 | $119;
-  $125 = ((($$0)) + 22|0);
-  $126 = HEAP8[$125>>0]|0;
-  $127 = $126&255;
-  $128 = $127 << 8;
-  $129 = $124 | $128;
-  $130 = ((($$0)) + 23|0);
-  $131 = HEAP8[$130>>0]|0;
-  $132 = $131&255;
-  $133 = $129 | $132;
-  HEAP32[$16>>2] = $133;
-  $134 = ((($$0)) + 24|0);
-  $135 = HEAP8[$134>>0]|0;
-  $136 = $135&255;
-  $137 = $136 << 24;
-  $138 = ((($$0)) + 25|0);
-  $139 = HEAP8[$138>>0]|0;
-  $140 = $139&255;
-  $141 = $140 << 16;
-  $142 = $141 | $137;
-  $143 = ((($$0)) + 26|0);
-  $144 = HEAP8[$143>>0]|0;
-  $145 = $144&255;
-  $146 = $145 << 8;
-  $147 = $142 | $146;
-  $148 = ((($$0)) + 27|0);
-  $149 = HEAP8[$148>>0]|0;
-  $150 = $149&255;
-  $151 = $147 | $150;
-  HEAP32[$17>>2] = $151;
-  $152 = ((($$0)) + 28|0);
-  $153 = HEAP8[$152>>0]|0;
-  $154 = $153&255;
-  $155 = $154 << 24;
-  $156 = ((($$0)) + 29|0);
-  $157 = HEAP8[$156>>0]|0;
-  $158 = $157&255;
-  $159 = $158 << 16;
-  $160 = $159 | $155;
-  $161 = ((($$0)) + 30|0);
-  $162 = HEAP8[$161>>0]|0;
-  $163 = $162&255;
-  $164 = $163 << 8;
-  $165 = $160 | $164;
-  $166 = ((($$0)) + 31|0);
-  $167 = HEAP8[$166>>0]|0;
-  $168 = $167&255;
-  $169 = $165 | $168;
-  HEAP32[$18>>2] = $169;
-  $170 = ((($$0)) + 32|0);
-  $171 = HEAP8[$170>>0]|0;
-  $172 = $171&255;
-  $173 = $172 << 24;
-  $174 = ((($$0)) + 33|0);
-  $175 = HEAP8[$174>>0]|0;
-  $176 = $175&255;
-  $177 = $176 << 16;
-  $178 = $177 | $173;
-  $179 = ((($$0)) + 34|0);
-  $180 = HEAP8[$179>>0]|0;
-  $181 = $180&255;
-  $182 = $181 << 8;
-  $183 = $178 | $182;
-  $184 = ((($$0)) + 35|0);
-  $185 = HEAP8[$184>>0]|0;
-  $186 = $185&255;
-  $187 = $183 | $186;
-  HEAP32[$19>>2] = $187;
-  $188 = ((($$0)) + 36|0);
-  $189 = HEAP8[$188>>0]|0;
-  $190 = $189&255;
-  $191 = $190 << 24;
-  $192 = ((($$0)) + 37|0);
-  $193 = HEAP8[$192>>0]|0;
-  $194 = $193&255;
-  $195 = $194 << 16;
-  $196 = $195 | $191;
-  $197 = ((($$0)) + 38|0);
-  $198 = HEAP8[$197>>0]|0;
-  $199 = $198&255;
-  $200 = $199 << 8;
-  $201 = $196 | $200;
-  $202 = ((($$0)) + 39|0);
-  $203 = HEAP8[$202>>0]|0;
-  $204 = $203&255;
-  $205 = $201 | $204;
-  HEAP32[$20>>2] = $205;
-  $206 = ((($$0)) + 40|0);
-  $207 = HEAP8[$206>>0]|0;
-  $208 = $207&255;
-  $209 = $208 << 24;
-  $210 = ((($$0)) + 41|0);
-  $211 = HEAP8[$210>>0]|0;
-  $212 = $211&255;
-  $213 = $212 << 16;
-  $214 = $213 | $209;
-  $215 = ((($$0)) + 42|0);
-  $216 = HEAP8[$215>>0]|0;
-  $217 = $216&255;
-  $218 = $217 << 8;
-  $219 = $214 | $218;
-  $220 = ((($$0)) + 43|0);
-  $221 = HEAP8[$220>>0]|0;
-  $222 = $221&255;
-  $223 = $219 | $222;
-  HEAP32[$21>>2] = $223;
-  $224 = ((($$0)) + 44|0);
-  $225 = HEAP8[$224>>0]|0;
-  $226 = $225&255;
-  $227 = $226 << 24;
-  $228 = ((($$0)) + 45|0);
-  $229 = HEAP8[$228>>0]|0;
-  $230 = $229&255;
-  $231 = $230 << 16;
-  $232 = $231 | $227;
-  $233 = ((($$0)) + 46|0);
-  $234 = HEAP8[$233>>0]|0;
-  $235 = $234&255;
-  $236 = $235 << 8;
-  $237 = $232 | $236;
-  $238 = ((($$0)) + 47|0);
-  $239 = HEAP8[$238>>0]|0;
-  $240 = $239&255;
-  $241 = $237 | $240;
-  HEAP32[$22>>2] = $241;
-  $242 = ((($$0)) + 48|0);
-  $243 = HEAP8[$242>>0]|0;
-  $244 = $243&255;
-  $245 = $244 << 24;
-  $246 = ((($$0)) + 49|0);
-  $247 = HEAP8[$246>>0]|0;
-  $248 = $247&255;
-  $249 = $248 << 16;
-  $250 = $249 | $245;
-  $251 = ((($$0)) + 50|0);
-  $252 = HEAP8[$251>>0]|0;
-  $253 = $252&255;
-  $254 = $253 << 8;
-  $255 = $250 | $254;
-  $256 = ((($$0)) + 51|0);
-  $257 = HEAP8[$256>>0]|0;
-  $258 = $257&255;
-  $259 = $255 | $258;
-  HEAP32[$23>>2] = $259;
-  $260 = ((($$0)) + 52|0);
-  $261 = HEAP8[$260>>0]|0;
-  $262 = $261&255;
-  $263 = $262 << 24;
-  $264 = ((($$0)) + 53|0);
-  $265 = HEAP8[$264>>0]|0;
-  $266 = $265&255;
-  $267 = $266 << 16;
-  $268 = $267 | $263;
-  $269 = ((($$0)) + 54|0);
-  $270 = HEAP8[$269>>0]|0;
-  $271 = $270&255;
-  $272 = $271 << 8;
-  $273 = $268 | $272;
-  $274 = ((($$0)) + 55|0);
-  $275 = HEAP8[$274>>0]|0;
-  $276 = $275&255;
-  $277 = $273 | $276;
-  HEAP32[$24>>2] = $277;
-  $278 = ((($$0)) + 56|0);
-  $279 = HEAP8[$278>>0]|0;
-  $280 = $279&255;
-  $281 = $280 << 24;
-  $282 = ((($$0)) + 57|0);
-  $283 = HEAP8[$282>>0]|0;
-  $284 = $283&255;
-  $285 = $284 << 16;
-  $286 = $285 | $281;
-  $287 = ((($$0)) + 58|0);
-  $288 = HEAP8[$287>>0]|0;
-  $289 = $288&255;
-  $290 = $289 << 8;
-  $291 = $286 | $290;
-  $292 = ((($$0)) + 59|0);
-  $293 = HEAP8[$292>>0]|0;
-  $294 = $293&255;
-  $295 = $291 | $294;
-  HEAP32[$25>>2] = $295;
-  $296 = ((($$0)) + 60|0);
-  $297 = HEAP8[$296>>0]|0;
-  $298 = $297&255;
-  $299 = $298 << 24;
-  $300 = ((($$0)) + 61|0);
-  $301 = HEAP8[$300>>0]|0;
-  $302 = $301&255;
-  $303 = $302 << 16;
-  $304 = $303 | $299;
-  $305 = ((($$0)) + 62|0);
-  $306 = HEAP8[$305>>0]|0;
-  $307 = $306&255;
-  $308 = $307 << 8;
-  $309 = $304 | $308;
-  $310 = ((($$0)) + 63|0);
-  $311 = HEAP8[$310>>0]|0;
-  $312 = $311&255;
-  $313 = $309 | $312;
-  HEAP32[$26>>2] = $313;
-  $$110$i = 16;$342 = $43;
-  while(1) {
-   $314 = (($$110$i) + -2)|0;
-   $315 = (($3) + ($314<<2)|0);
-   $316 = HEAP32[$315>>2]|0;
-   $317 = $316 >>> 17;
-   $318 = $316 << 15;
-   $319 = $317 | $318;
-   $320 = $316 >>> 19;
-   $321 = $316 << 13;
-   $322 = $320 | $321;
-   $323 = $316 >>> 10;
-   $324 = $322 ^ $323;
-   $325 = $324 ^ $319;
-   $326 = (($$110$i) + -7)|0;
-   $327 = (($3) + ($326<<2)|0);
-   $328 = HEAP32[$327>>2]|0;
-   $329 = (($$110$i) + -15)|0;
-   $330 = (($3) + ($329<<2)|0);
-   $331 = HEAP32[$330>>2]|0;
-   $332 = $331 >>> 7;
-   $333 = $331 << 25;
-   $334 = $332 | $333;
-   $335 = $331 >>> 18;
-   $336 = $331 << 14;
-   $337 = $335 | $336;
-   $338 = $331 >>> 3;
-   $339 = $337 ^ $338;
-   $340 = $339 ^ $334;
-   $341 = (($328) + ($342))|0;
-   $343 = (($341) + ($325))|0;
-   $344 = (($343) + ($340))|0;
-   $345 = (($3) + ($$110$i<<2)|0);
-   HEAP32[$345>>2] = $344;
-   $346 = (($$110$i) + 1)|0;
-   $exitcond$i = ($346|0)==(64);
-   if ($exitcond$i) {
-    break;
-   } else {
-    $$110$i = $346;$342 = $331;
-   }
-  }
-  $$01858$i = $677;$$01867$i = $679;$$01876$i = $691;$$01885$i = 
$689;$$01894$i = $687;$$01903$i = $685;$$01912$i = $683;$$01921$i = $681;$$29$i 
= 0;
-  while(1) {
-   $347 = $$01903$i >>> 6;
-   $348 = $$01903$i << 26;
-   $349 = $347 | $348;
-   $350 = $$01903$i >>> 11;
-   $351 = $$01903$i << 21;
-   $352 = $350 | $351;
-   $353 = $349 ^ $352;
-   $354 = $$01903$i >>> 25;
-   $355 = $$01903$i << 7;
-   $356 = $354 | $355;
-   $357 = $353 ^ $356;
-   $358 = $$01894$i ^ $$01885$i;
-   $359 = $358 & $$01903$i;
-   $360 = $359 ^ $$01885$i;
-   $361 = (15440 + ($$29$i<<2)|0);
-   $362 = HEAP32[$361>>2]|0;
-   $363 = (($3) + ($$29$i<<2)|0);
-   $364 = HEAP32[$363>>2]|0;
-   $365 = (($360) + ($$01876$i))|0;
-   $366 = (($365) + ($362))|0;
-   $367 = (($366) + ($357))|0;
-   $368 = (($367) + ($364))|0;
-   $369 = $$01858$i >>> 2;
-   $370 = $$01858$i << 30;
-   $371 = $369 | $370;
-   $372 = $$01858$i >>> 13;
-   $373 = $$01858$i << 19;
-   $374 = $372 | $373;
-   $375 = $371 ^ $374;
-   $376 = $$01858$i >>> 22;
-   $377 = $$01858$i << 10;
-   $378 = $376 | $377;
-   $379 = $375 ^ $378;
-   $380 = $$01867$i & $$01858$i;
-   $381 = $$01867$i | $$01858$i;
-   $382 = $$01921$i & $381;
-   $383 = $382 | $380;
-   $384 = (($383) + ($379))|0;
-   $385 = (($368) + ($$01912$i))|0;
-   $386 = (($384) + ($368))|0;
-   $387 = $385 >>> 6;
-   $388 = $385 << 26;
-   $389 = $387 | $388;
-   $390 = $385 >>> 11;
-   $391 = $385 << 21;
-   $392 = $390 | $391;
-   $393 = $389 ^ $392;
-   $394 = $385 >>> 25;
-   $395 = $385 << 7;
-   $396 = $394 | $395;
-   $397 = $393 ^ $396;
-   $398 = $$01903$i ^ $$01894$i;
-   $399 = $385 & $398;
-   $400 = $399 ^ $$01894$i;
-   $401 = $$29$i | 1;
-   $402 = (15440 + ($401<<2)|0);
-   $403 = HEAP32[$402>>2]|0;
-   $404 = (($3) + ($401<<2)|0);
-   $405 = HEAP32[$404>>2]|0;
-   $406 = (($403) + ($$01885$i))|0;
-   $407 = (($406) + ($405))|0;
-   $408 = (($407) + ($400))|0;
-   $409 = (($408) + ($397))|0;
-   $410 = $386 >>> 2;
-   $411 = $386 << 30;
-   $412 = $410 | $411;
-   $413 = $386 >>> 13;
-   $414 = $386 << 19;
-   $415 = $413 | $414;
-   $416 = $412 ^ $415;
-   $417 = $386 >>> 22;
-   $418 = $386 << 10;
-   $419 = $417 | $418;
-   $420 = $416 ^ $419;
-   $421 = $386 & $$01858$i;
-   $422 = $386 | $$01858$i;
-   $423 = $422 & $$01867$i;
-   $424 = $423 | $421;
-   $425 = (($420) + ($424))|0;
-   $426 = (($409) + ($$01921$i))|0;
-   $427 = (($425) + ($409))|0;
-   $428 = $426 >>> 6;
-   $429 = $426 << 26;
-   $430 = $428 | $429;
-   $431 = $426 >>> 11;
-   $432 = $426 << 21;
-   $433 = $431 | $432;
-   $434 = $430 ^ $433;
-   $435 = $426 >>> 25;
-   $436 = $426 << 7;
-   $437 = $435 | $436;
-   $438 = $434 ^ $437;
-   $439 = $385 ^ $$01903$i;
-   $440 = $426 & $439;
-   $441 = $440 ^ $$01903$i;
-   $442 = $$29$i | 2;
-   $443 = (15440 + ($442<<2)|0);
-   $444 = HEAP32[$443>>2]|0;
-   $445 = (($3) + ($442<<2)|0);
-   $446 = HEAP32[$445>>2]|0;
-   $447 = (($444) + ($$01894$i))|0;
-   $448 = (($447) + ($446))|0;
-   $449 = (($448) + ($441))|0;
-   $450 = (($449) + ($438))|0;
-   $451 = $427 >>> 2;
-   $452 = $427 << 30;
-   $453 = $451 | $452;
-   $454 = $427 >>> 13;
-   $455 = $427 << 19;
-   $456 = $454 | $455;
-   $457 = $453 ^ $456;
-   $458 = $427 >>> 22;
-   $459 = $427 << 10;
-   $460 = $458 | $459;
-   $461 = $457 ^ $460;
-   $462 = $427 & $386;
-   $463 = $427 | $386;
-   $464 = $463 & $$01858$i;
-   $465 = $464 | $462;
-   $466 = (($461) + ($465))|0;
-   $467 = (($450) + ($$01867$i))|0;
-   $468 = (($466) + ($450))|0;
-   $469 = $467 >>> 6;
-   $470 = $467 << 26;
-   $471 = $469 | $470;
-   $472 = $467 >>> 11;
-   $473 = $467 << 21;
-   $474 = $472 | $473;
-   $475 = $471 ^ $474;
-   $476 = $467 >>> 25;
-   $477 = $467 << 7;
-   $478 = $476 | $477;
-   $479 = $475 ^ $478;
-   $480 = $426 ^ $385;
-   $481 = $467 & $480;
-   $482 = $481 ^ $385;
-   $483 = $$29$i | 3;
-   $484 = (15440 + ($483<<2)|0);
-   $485 = HEAP32[$484>>2]|0;
-   $486 = (($3) + ($483<<2)|0);
-   $487 = HEAP32[$486>>2]|0;
-   $488 = (($485) + ($$01903$i))|0;
-   $489 = (($488) + ($487))|0;
-   $490 = (($489) + ($482))|0;
-   $491 = (($490) + ($479))|0;
-   $492 = $468 >>> 2;
-   $493 = $468 << 30;
-   $494 = $492 | $493;
-   $495 = $468 >>> 13;
-   $496 = $468 << 19;
-   $497 = $495 | $496;
-   $498 = $494 ^ $497;
-   $499 = $468 >>> 22;
-   $500 = $468 << 10;
-   $501 = $499 | $500;
-   $502 = $498 ^ $501;
-   $503 = $468 & $427;
-   $504 = $468 | $427;
-   $505 = $504 & $386;
-   $506 = $505 | $503;
-   $507 = (($502) + ($506))|0;
-   $508 = (($491) + ($$01858$i))|0;
-   $509 = (($507) + ($491))|0;
-   $510 = $508 >>> 6;
-   $511 = $508 << 26;
-   $512 = $510 | $511;
-   $513 = $508 >>> 11;
-   $514 = $508 << 21;
-   $515 = $513 | $514;
-   $516 = $512 ^ $515;
-   $517 = $508 >>> 25;
-   $518 = $508 << 7;
-   $519 = $517 | $518;
-   $520 = $516 ^ $519;
-   $521 = $467 ^ $426;
-   $522 = $508 & $521;
-   $523 = $522 ^ $426;
-   $524 = $$29$i | 4;
-   $525 = (15440 + ($524<<2)|0);
-   $526 = HEAP32[$525>>2]|0;
-   $527 = (($3) + ($524<<2)|0);
-   $528 = HEAP32[$527>>2]|0;
-   $529 = (($526) + ($385))|0;
-   $530 = (($529) + ($528))|0;
-   $531 = (($530) + ($523))|0;
-   $532 = (($531) + ($520))|0;
-   $533 = $509 >>> 2;
-   $534 = $509 << 30;
-   $535 = $533 | $534;
-   $536 = $509 >>> 13;
-   $537 = $509 << 19;
-   $538 = $536 | $537;
-   $539 = $535 ^ $538;
-   $540 = $509 >>> 22;
-   $541 = $509 << 10;
-   $542 = $540 | $541;
-   $543 = $539 ^ $542;
-   $544 = $509 & $468;
-   $545 = $509 | $468;
-   $546 = $545 & $427;
-   $547 = $546 | $544;
-   $548 = (($543) + ($547))|0;
-   $549 = (($532) + ($386))|0;
-   $550 = (($548) + ($532))|0;
-   $551 = $549 >>> 6;
-   $552 = $549 << 26;
-   $553 = $551 | $552;
-   $554 = $549 >>> 11;
-   $555 = $549 << 21;
-   $556 = $554 | $555;
-   $557 = $553 ^ $556;
-   $558 = $549 >>> 25;
-   $559 = $549 << 7;
-   $560 = $558 | $559;
-   $561 = $557 ^ $560;
-   $562 = $508 ^ $467;
-   $563 = $549 & $562;
-   $564 = $563 ^ $467;
-   $565 = $$29$i | 5;
-   $566 = (15440 + ($565<<2)|0);
-   $567 = HEAP32[$566>>2]|0;
-   $568 = (($3) + ($565<<2)|0);
-   $569 = HEAP32[$568>>2]|0;
-   $570 = (($569) + ($567))|0;
-   $571 = (($570) + ($426))|0;
-   $572 = (($571) + ($564))|0;
-   $573 = (($572) + ($561))|0;
-   $574 = $550 >>> 2;
-   $575 = $550 << 30;
-   $576 = $574 | $575;
-   $577 = $550 >>> 13;
-   $578 = $550 << 19;
-   $579 = $577 | $578;
-   $580 = $576 ^ $579;
-   $581 = $550 >>> 22;
-   $582 = $550 << 10;
-   $583 = $581 | $582;
-   $584 = $580 ^ $583;
-   $585 = $550 & $509;
-   $586 = $550 | $509;
-   $587 = $586 & $468;
-   $588 = $587 | $585;
-   $589 = (($584) + ($588))|0;
-   $590 = (($573) + ($427))|0;
-   $591 = (($589) + ($573))|0;
-   $592 = $590 >>> 6;
-   $593 = $590 << 26;
-   $594 = $592 | $593;
-   $595 = $590 >>> 11;
-   $596 = $590 << 21;
-   $597 = $595 | $596;
-   $598 = $594 ^ $597;
-   $599 = $590 >>> 25;
-   $600 = $590 << 7;
-   $601 = $599 | $600;
-   $602 = $598 ^ $601;
-   $603 = $549 ^ $508;
-   $604 = $590 & $603;
-   $605 = $604 ^ $508;
-   $606 = $$29$i | 6;
-   $607 = (15440 + ($606<<2)|0);
-   $608 = HEAP32[$607>>2]|0;
-   $609 = (($3) + ($606<<2)|0);
-   $610 = HEAP32[$609>>2]|0;
-   $611 = (($610) + ($608))|0;
-   $612 = (($611) + ($467))|0;
-   $613 = (($612) + ($605))|0;
-   $614 = (($613) + ($602))|0;
-   $615 = $591 >>> 2;
-   $616 = $591 << 30;
-   $617 = $615 | $616;
-   $618 = $591 >>> 13;
-   $619 = $591 << 19;
-   $620 = $618 | $619;
-   $621 = $617 ^ $620;
-   $622 = $591 >>> 22;
-   $623 = $591 << 10;
-   $624 = $622 | $623;
-   $625 = $621 ^ $624;
-   $626 = $591 & $550;
-   $627 = $591 | $550;
-   $628 = $627 & $509;
-   $629 = $628 | $626;
-   $630 = (($625) + ($629))|0;
-   $631 = (($614) + ($468))|0;
-   $632 = (($630) + ($614))|0;
-   $633 = $631 >>> 6;
-   $634 = $631 << 26;
-   $635 = $633 | $634;
-   $636 = $631 >>> 11;
-   $637 = $631 << 21;
-   $638 = $636 | $637;
-   $639 = $635 ^ $638;
-   $640 = $631 >>> 25;
-   $641 = $631 << 7;
-   $642 = $640 | $641;
-   $643 = $639 ^ $642;
-   $644 = $590 ^ $549;
-   $645 = $631 & $644;
-   $646 = $645 ^ $549;
-   $647 = $$29$i | 7;
-   $648 = (15440 + ($647<<2)|0);
-   $649 = HEAP32[$648>>2]|0;
-   $650 = (($3) + ($647<<2)|0);
-   $651 = HEAP32[$650>>2]|0;
-   $652 = (($651) + ($649))|0;
-   $653 = (($652) + ($508))|0;
-   $654 = (($653) + ($646))|0;
-   $655 = (($654) + ($643))|0;
-   $656 = $632 >>> 2;
-   $657 = $632 << 30;
-   $658 = $656 | $657;
-   $659 = $632 >>> 13;
-   $660 = $632 << 19;
-   $661 = $659 | $660;
-   $662 = $658 ^ $661;
-   $663 = $632 >>> 22;
-   $664 = $632 << 10;
-   $665 = $663 | $664;
-   $666 = $662 ^ $665;
-   $667 = $632 & $591;
-   $668 = $632 | $591;
-   $669 = $668 & $550;
-   $670 = $669 | $667;
-   $671 = (($666) + ($670))|0;
-   $672 = (($655) + ($509))|0;
-   $673 = (($671) + ($655))|0;
-   $674 = (($$29$i) + 8)|0;
-   $675 = ($674>>>0)<(64);
-   if ($675) {
-    $$01858$i = $673;$$01867$i = $632;$$01876$i = $549;$$01885$i = 
$590;$$01894$i = $631;$$01903$i = $672;$$01912$i = $550;$$01921$i = $591;$$29$i 
= $674;
-   } else {
-    break;
-   }
-  }
-  $676 = (($673) + ($677))|0;
-  HEAP32[$4>>2] = $676;
-  $678 = (($632) + ($679))|0;
-  HEAP32[$5>>2] = $678;
-  $680 = (($591) + ($681))|0;
-  HEAP32[$6>>2] = $680;
-  $682 = (($550) + ($683))|0;
-  HEAP32[$7>>2] = $682;
-  $684 = (($672) + ($685))|0;
-  HEAP32[$8>>2] = $684;
-  $686 = (($631) + ($687))|0;
-  HEAP32[$9>>2] = $686;
-  $688 = (($590) + ($689))|0;
-  HEAP32[$10>>2] = $688;
-  $690 = (($549) + ($691))|0;
-  HEAP32[$11>>2] = $690;
-  $692 = ((($$0)) + 64|0);
-  $693 = (($$08) + -1)|0;
-  $694 = ($693|0)==(0);
-  if ($694) {
-   break;
-  } else {
-   $$0 = $692;$$08 = $693;$677 = $676;$679 = $678;$681 = $680;$683 = $682;$685 
= $684;$687 = $686;$689 = $688;$691 = $690;
-  }
- }
- STACKTOP = sp;return 328;
-}
-function _sha256_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- HEAP32[$2>>2] = 1779033703;
- $3 = ((($0)) + 164|0);
- HEAP32[$3>>2] = -1150833019;
- $4 = ((($0)) + 168|0);
- HEAP32[$4>>2] = 1013904242;
- $5 = ((($0)) + 172|0);
- HEAP32[$5>>2] = -1521486534;
- $6 = ((($0)) + 176|0);
- HEAP32[$6>>2] = 1359893119;
- $7 = ((($0)) + 180|0);
- HEAP32[$7>>2] = -1694144372;
- $8 = ((($0)) + 184|0);
- HEAP32[$8>>2] = 528734635;
- $9 = ((($0)) + 188|0);
- HEAP32[$9>>2] = 1541459225;
- $10 = ((($0)) + 128|0);
- $11 = ((($0)) + 148|0);
- 
;HEAP32[$10>>2]=0|0;HEAP32[$10+4>>2]=0|0;HEAP32[$10+8>>2]=0|0;HEAP32[$10+12>>2]=0|0;HEAP32[$10+16>>2]=0|0;
- HEAP32[$11>>2] = 64;
- $12 = ((($0)) + 152|0);
- HEAP32[$12>>2] = 79;
- return;
-}
-function _sha512_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- $3 = $2;
- $4 = $3;
- HEAP32[$4>>2] = -205731576;
- $5 = (($3) + 4)|0;
- $6 = $5;
- HEAP32[$6>>2] = 1779033703;
- $7 = ((($0)) + 168|0);
- $8 = $7;
- $9 = $8;
- HEAP32[$9>>2] = -2067093701;
- $10 = (($8) + 4)|0;
- $11 = $10;
- HEAP32[$11>>2] = -1150833019;
- $12 = ((($0)) + 176|0);
- $13 = $12;
- $14 = $13;
- HEAP32[$14>>2] = -23791573;
- $15 = (($13) + 4)|0;
- $16 = $15;
- HEAP32[$16>>2] = 1013904242;
- $17 = ((($0)) + 184|0);
- $18 = $17;
- $19 = $18;
- HEAP32[$19>>2] = 1595750129;
- $20 = (($18) + 4)|0;
- $21 = $20;
- HEAP32[$21>>2] = -1521486534;
- $22 = ((($0)) + 192|0);
- $23 = $22;
- $24 = $23;
- HEAP32[$24>>2] = -1377402159;
- $25 = (($23) + 4)|0;
- $26 = $25;
- HEAP32[$26>>2] = 1359893119;
- $27 = ((($0)) + 200|0);
- $28 = $27;
- $29 = $28;
- HEAP32[$29>>2] = 725511199;
- $30 = (($28) + 4)|0;
- $31 = $30;
- HEAP32[$31>>2] = -1694144372;
- $32 = ((($0)) + 208|0);
- $33 = $32;
- $34 = $33;
- HEAP32[$34>>2] = -79577749;
- $35 = (($33) + 4)|0;
- $36 = $35;
- HEAP32[$36>>2] = 528734635;
- $37 = ((($0)) + 216|0);
- $38 = $37;
- $39 = $38;
- HEAP32[$39>>2] = 327033209;
- $40 = (($38) + 4)|0;
- $41 = $40;
- HEAP32[$41>>2] = 1541459225;
- $42 = ((($0)) + 128|0);
- $43 = ((($0)) + 148|0);
- 
;HEAP32[$42>>2]=0|0;HEAP32[$42+4>>2]=0|0;HEAP32[$42+8>>2]=0|0;HEAP32[$42+12>>2]=0|0;HEAP32[$42+16>>2]=0|0;
- HEAP32[$43>>2] = 128;
- $44 = ((($0)) + 152|0);
- HEAP32[$44>>2] = 80;
- return;
-}
-function _sha512_final($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 
0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 
= 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0;
- var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 
= 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0;
- var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, 
$178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, 
$185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0;
- var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 
= 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 
0, $203 = 0, $204 = 0, $205 = 0, $206 = 0;
- var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0;
- var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 
= 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0;
- var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 
= 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0;
- var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, 
$268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, 
$275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0;
- var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 
= 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 
= 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0;
- var $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 
0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 
0, $311 = 0, $312 = 0, $313 = 0, $314 = 0;
- var $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 
= 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 
= 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0;
- var $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 
= 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 
= 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0;
- var $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, 
$358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, 
$365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0;
- var $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 
= 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 
= 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0;
- var $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 
= 0, $395 = 0, $396 = 0, $397 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, dest = 0, label = 0, sp = 0;
- var stop = 0;
- sp = STACKTOP;
- __gcry_md_block_write($0,0,0);
- $1 = ((($0)) + 128|0);
- $2 = $1;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($0)) + 136|0);
- $9 = $8;
- $10 = $9;
- $11 = HEAP32[$10>>2]|0;
- $12 = (($9) + 4)|0;
- $13 = $12;
- $14 = HEAP32[$13>>2]|0;
- $15 = (_bitshift64Shl(($4|0),($7|0),7)|0);
- $16 = tempRet0;
- $17 = (_bitshift64Shl(($11|0),($14|0),7)|0);
- $18 = tempRet0;
- $19 = (_bitshift64Lshr(($4|0),($7|0),57)|0);
- $20 = tempRet0;
- $21 = $17 | $19;
- $22 = $18 | $20;
- $23 = ((($0)) + 144|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = ($24|0)<(0);
- $26 = $25 << 31 >> 31;
- $27 = (_i64Add(($15|0),($16|0),($24|0),($26|0))|0);
- $28 = tempRet0;
- $29 = ($28>>>0)<($16>>>0);
- $30 = ($27>>>0)<($15>>>0);
- $31 = ($28|0)==($16|0);
- $32 = $31 & $30;
- $33 = $29 | $32;
- $34 = $33&1;
- $35 = (_i64Add(($21|0),($22|0),($34|0),0)|0);
- $36 = tempRet0;
- $37 = (_bitshift64Shl(($35|0),($36|0),3)|0);
- $38 = tempRet0;
- $39 = (_bitshift64Lshr(($27|0),($28|0),61)|0);
- $40 = tempRet0;
- $41 = $37 | $39;
- $38 | $40;
- $42 = ($24|0)<(112);
- $43 = (($24) + 1)|0;
- HEAP32[$23>>2] = $43;
- $44 = (($0) + ($24)|0);
- HEAP8[$44>>0] = -128;
- $45 = HEAP32[$23>>2]|0;
- if ($42) {
-  $46 = ($45|0)<(112);
-  if ($46) {
-   $48 = $45;
-   while(1) {
-    $47 = (($48) + 1)|0;
-    HEAP32[$23>>2] = $47;
-    $49 = (($0) + ($48)|0);
-    HEAP8[$49>>0] = 0;
-    $50 = HEAP32[$23>>2]|0;
-    $51 = ($50|0)<(112);
-    if ($51) {
-     $48 = $50;
-    } else {
-     break;
-    }
-   }
-  }
- } else {
-  $52 = ($45|0)<(128);
-  if ($52) {
-   $54 = $45;
-   while(1) {
-    $53 = (($54) + 1)|0;
-    HEAP32[$23>>2] = $53;
-    $55 = (($0) + ($54)|0);
-    HEAP8[$55>>0] = 0;
-    $56 = HEAP32[$23>>2]|0;
-    $57 = ($56|0)<(128);
-    if ($57) {
-     $54 = $56;
-    } else {
-     break;
-    }
-   }
-  }
-  __gcry_md_block_write($0,0,0);
-  dest=$0; stop=dest+112|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- }
- $58 = ((($0)) + 112|0);
- $59 = (_bitshift64Lshr(($35|0),($36|0),53)|0);
- $60 = tempRet0;
- $61 = $59&255;
- HEAP8[$58>>0] = $61;
- $62 = (_bitshift64Lshr(($35|0),($36|0),45)|0);
- $63 = tempRet0;
- $64 = $62&255;
- $65 = ((($0)) + 113|0);
- HEAP8[$65>>0] = $64;
- $66 = (_bitshift64Lshr(($35|0),($36|0),37)|0);
- $67 = tempRet0;
- $68 = $66&255;
- $69 = ((($0)) + 114|0);
- HEAP8[$69>>0] = $68;
- $70 = (_bitshift64Lshr(($35|0),($36|0),29)|0);
- $71 = tempRet0;
- $72 = $70&255;
- $73 = ((($0)) + 115|0);
- HEAP8[$73>>0] = $72;
- $74 = (_bitshift64Lshr(($35|0),($36|0),21)|0);
- $75 = tempRet0;
- $76 = $74&255;
- $77 = ((($0)) + 116|0);
- HEAP8[$77>>0] = $76;
- $78 = (_bitshift64Lshr(($35|0),($36|0),13)|0);
- $79 = tempRet0;
- $80 = $78&255;
- $81 = ((($0)) + 117|0);
- HEAP8[$81>>0] = $80;
- $82 = (_bitshift64Lshr(($35|0),($36|0),5)|0);
- $83 = tempRet0;
- $84 = $82&255;
- $85 = ((($0)) + 118|0);
- HEAP8[$85>>0] = $84;
- $86 = $41&255;
- $87 = ((($0)) + 119|0);
- HEAP8[$87>>0] = $86;
- $88 = ((($0)) + 120|0);
- $89 = (_bitshift64Lshr(($27|0),($28|0),53)|0);
- $90 = tempRet0;
- $91 = $89&255;
- HEAP8[$88>>0] = $91;
- $92 = (_bitshift64Lshr(($27|0),($28|0),45)|0);
- $93 = tempRet0;
- $94 = $92&255;
- $95 = ((($0)) + 121|0);
- HEAP8[$95>>0] = $94;
- $96 = (_bitshift64Lshr(($27|0),($28|0),37)|0);
- $97 = tempRet0;
- $98 = $96&255;
- $99 = ((($0)) + 122|0);
- HEAP8[$99>>0] = $98;
- $100 = (_bitshift64Lshr(($27|0),($28|0),29)|0);
- $101 = tempRet0;
- $102 = $100&255;
- $103 = ((($0)) + 123|0);
- HEAP8[$103>>0] = $102;
- $104 = (_bitshift64Lshr(($27|0),($28|0),21)|0);
- $105 = tempRet0;
- $106 = $104&255;
- $107 = ((($0)) + 124|0);
- HEAP8[$107>>0] = $106;
- $108 = (_bitshift64Lshr(($27|0),($28|0),13)|0);
- $109 = tempRet0;
- $110 = $108&255;
- $111 = ((($0)) + 125|0);
- HEAP8[$111>>0] = $110;
- $112 = (_bitshift64Lshr(($27|0),($28|0),5)|0);
- $113 = tempRet0;
- $114 = $112&255;
- $115 = ((($0)) + 126|0);
- HEAP8[$115>>0] = $114;
- $116 = $27&255;
- $117 = ($116 << 3)&255;
- $118 = ((($0)) + 127|0);
- HEAP8[$118>>0] = $117;
- (_transform_1368($0,$0,1)|0);
- ___gcry_burn_stack(220);
- $119 = ((($0)) + 160|0);
- $120 = $119;
- $121 = $120;
- $122 = HEAP32[$121>>2]|0;
- $123 = (($120) + 4)|0;
- $124 = $123;
- $125 = HEAP32[$124>>2]|0;
- $126 = (_bitshift64Lshr(($122|0),($125|0),56)|0);
- $127 = tempRet0;
- $128 = $126&255;
- HEAP8[$0>>0] = $128;
- $129 = (_bitshift64Lshr(($122|0),($125|0),48)|0);
- $130 = tempRet0;
- $131 = $129&255;
- $132 = ((($0)) + 1|0);
- HEAP8[$132>>0] = $131;
- $133 = (_bitshift64Lshr(($122|0),($125|0),40)|0);
- $134 = tempRet0;
- $135 = $133&255;
- $136 = ((($0)) + 2|0);
- HEAP8[$136>>0] = $135;
- $137 = $125&255;
- $138 = ((($0)) + 3|0);
- HEAP8[$138>>0] = $137;
- $139 = (_bitshift64Lshr(($122|0),($125|0),24)|0);
- $140 = tempRet0;
- $141 = $139&255;
- $142 = ((($0)) + 4|0);
- HEAP8[$142>>0] = $141;
- $143 = (_bitshift64Lshr(($122|0),($125|0),16)|0);
- $144 = tempRet0;
- $145 = $143&255;
- $146 = ((($0)) + 5|0);
- HEAP8[$146>>0] = $145;
- $147 = (_bitshift64Lshr(($122|0),($125|0),8)|0);
- $148 = tempRet0;
- $149 = $147&255;
- $150 = ((($0)) + 6|0);
- HEAP8[$150>>0] = $149;
- $151 = $122&255;
- $152 = ((($0)) + 7|0);
- HEAP8[$152>>0] = $151;
- $153 = ((($0)) + 8|0);
- $154 = ((($0)) + 168|0);
- $155 = $154;
- $156 = $155;
- $157 = HEAP32[$156>>2]|0;
- $158 = (($155) + 4)|0;
- $159 = $158;
- $160 = HEAP32[$159>>2]|0;
- $161 = (_bitshift64Lshr(($157|0),($160|0),56)|0);
- $162 = tempRet0;
- $163 = $161&255;
- HEAP8[$153>>0] = $163;
- $164 = (_bitshift64Lshr(($157|0),($160|0),48)|0);
- $165 = tempRet0;
- $166 = $164&255;
- $167 = ((($0)) + 9|0);
- HEAP8[$167>>0] = $166;
- $168 = (_bitshift64Lshr(($157|0),($160|0),40)|0);
- $169 = tempRet0;
- $170 = $168&255;
- $171 = ((($0)) + 10|0);
- HEAP8[$171>>0] = $170;
- $172 = $160&255;
- $173 = ((($0)) + 11|0);
- HEAP8[$173>>0] = $172;
- $174 = (_bitshift64Lshr(($157|0),($160|0),24)|0);
- $175 = tempRet0;
- $176 = $174&255;
- $177 = ((($0)) + 12|0);
- HEAP8[$177>>0] = $176;
- $178 = (_bitshift64Lshr(($157|0),($160|0),16)|0);
- $179 = tempRet0;
- $180 = $178&255;
- $181 = ((($0)) + 13|0);
- HEAP8[$181>>0] = $180;
- $182 = (_bitshift64Lshr(($157|0),($160|0),8)|0);
- $183 = tempRet0;
- $184 = $182&255;
- $185 = ((($0)) + 14|0);
- HEAP8[$185>>0] = $184;
- $186 = $157&255;
- $187 = ((($0)) + 15|0);
- HEAP8[$187>>0] = $186;
- $188 = ((($0)) + 16|0);
- $189 = ((($0)) + 176|0);
- $190 = $189;
- $191 = $190;
- $192 = HEAP32[$191>>2]|0;
- $193 = (($190) + 4)|0;
- $194 = $193;
- $195 = HEAP32[$194>>2]|0;
- $196 = (_bitshift64Lshr(($192|0),($195|0),56)|0);
- $197 = tempRet0;
- $198 = $196&255;
- HEAP8[$188>>0] = $198;
- $199 = (_bitshift64Lshr(($192|0),($195|0),48)|0);
- $200 = tempRet0;
- $201 = $199&255;
- $202 = ((($0)) + 17|0);
- HEAP8[$202>>0] = $201;
- $203 = (_bitshift64Lshr(($192|0),($195|0),40)|0);
- $204 = tempRet0;
- $205 = $203&255;
- $206 = ((($0)) + 18|0);
- HEAP8[$206>>0] = $205;
- $207 = $195&255;
- $208 = ((($0)) + 19|0);
- HEAP8[$208>>0] = $207;
- $209 = (_bitshift64Lshr(($192|0),($195|0),24)|0);
- $210 = tempRet0;
- $211 = $209&255;
- $212 = ((($0)) + 20|0);
- HEAP8[$212>>0] = $211;
- $213 = (_bitshift64Lshr(($192|0),($195|0),16)|0);
- $214 = tempRet0;
- $215 = $213&255;
- $216 = ((($0)) + 21|0);
- HEAP8[$216>>0] = $215;
- $217 = (_bitshift64Lshr(($192|0),($195|0),8)|0);
- $218 = tempRet0;
- $219 = $217&255;
- $220 = ((($0)) + 22|0);
- HEAP8[$220>>0] = $219;
- $221 = $192&255;
- $222 = ((($0)) + 23|0);
- HEAP8[$222>>0] = $221;
- $223 = ((($0)) + 24|0);
- $224 = ((($0)) + 184|0);
- $225 = $224;
- $226 = $225;
- $227 = HEAP32[$226>>2]|0;
- $228 = (($225) + 4)|0;
- $229 = $228;
- $230 = HEAP32[$229>>2]|0;
- $231 = (_bitshift64Lshr(($227|0),($230|0),56)|0);
- $232 = tempRet0;
- $233 = $231&255;
- HEAP8[$223>>0] = $233;
- $234 = (_bitshift64Lshr(($227|0),($230|0),48)|0);
- $235 = tempRet0;
- $236 = $234&255;
- $237 = ((($0)) + 25|0);
- HEAP8[$237>>0] = $236;
- $238 = (_bitshift64Lshr(($227|0),($230|0),40)|0);
- $239 = tempRet0;
- $240 = $238&255;
- $241 = ((($0)) + 26|0);
- HEAP8[$241>>0] = $240;
- $242 = $230&255;
- $243 = ((($0)) + 27|0);
- HEAP8[$243>>0] = $242;
- $244 = (_bitshift64Lshr(($227|0),($230|0),24)|0);
- $245 = tempRet0;
- $246 = $244&255;
- $247 = ((($0)) + 28|0);
- HEAP8[$247>>0] = $246;
- $248 = (_bitshift64Lshr(($227|0),($230|0),16)|0);
- $249 = tempRet0;
- $250 = $248&255;
- $251 = ((($0)) + 29|0);
- HEAP8[$251>>0] = $250;
- $252 = (_bitshift64Lshr(($227|0),($230|0),8)|0);
- $253 = tempRet0;
- $254 = $252&255;
- $255 = ((($0)) + 30|0);
- HEAP8[$255>>0] = $254;
- $256 = $227&255;
- $257 = ((($0)) + 31|0);
- HEAP8[$257>>0] = $256;
- $258 = ((($0)) + 32|0);
- $259 = ((($0)) + 192|0);
- $260 = $259;
- $261 = $260;
- $262 = HEAP32[$261>>2]|0;
- $263 = (($260) + 4)|0;
- $264 = $263;
- $265 = HEAP32[$264>>2]|0;
- $266 = (_bitshift64Lshr(($262|0),($265|0),56)|0);
- $267 = tempRet0;
- $268 = $266&255;
- HEAP8[$258>>0] = $268;
- $269 = (_bitshift64Lshr(($262|0),($265|0),48)|0);
- $270 = tempRet0;
- $271 = $269&255;
- $272 = ((($0)) + 33|0);
- HEAP8[$272>>0] = $271;
- $273 = (_bitshift64Lshr(($262|0),($265|0),40)|0);
- $274 = tempRet0;
- $275 = $273&255;
- $276 = ((($0)) + 34|0);
- HEAP8[$276>>0] = $275;
- $277 = $265&255;
- $278 = ((($0)) + 35|0);
- HEAP8[$278>>0] = $277;
- $279 = (_bitshift64Lshr(($262|0),($265|0),24)|0);
- $280 = tempRet0;
- $281 = $279&255;
- $282 = ((($0)) + 36|0);
- HEAP8[$282>>0] = $281;
- $283 = (_bitshift64Lshr(($262|0),($265|0),16)|0);
- $284 = tempRet0;
- $285 = $283&255;
- $286 = ((($0)) + 37|0);
- HEAP8[$286>>0] = $285;
- $287 = (_bitshift64Lshr(($262|0),($265|0),8)|0);
- $288 = tempRet0;
- $289 = $287&255;
- $290 = ((($0)) + 38|0);
- HEAP8[$290>>0] = $289;
- $291 = $262&255;
- $292 = ((($0)) + 39|0);
- HEAP8[$292>>0] = $291;
- $293 = ((($0)) + 40|0);
- $294 = ((($0)) + 200|0);
- $295 = $294;
- $296 = $295;
- $297 = HEAP32[$296>>2]|0;
- $298 = (($295) + 4)|0;
- $299 = $298;
- $300 = HEAP32[$299>>2]|0;
- $301 = (_bitshift64Lshr(($297|0),($300|0),56)|0);
- $302 = tempRet0;
- $303 = $301&255;
- HEAP8[$293>>0] = $303;
- $304 = (_bitshift64Lshr(($297|0),($300|0),48)|0);
- $305 = tempRet0;
- $306 = $304&255;
- $307 = ((($0)) + 41|0);
- HEAP8[$307>>0] = $306;
- $308 = (_bitshift64Lshr(($297|0),($300|0),40)|0);
- $309 = tempRet0;
- $310 = $308&255;
- $311 = ((($0)) + 42|0);
- HEAP8[$311>>0] = $310;
- $312 = $300&255;
- $313 = ((($0)) + 43|0);
- HEAP8[$313>>0] = $312;
- $314 = (_bitshift64Lshr(($297|0),($300|0),24)|0);
- $315 = tempRet0;
- $316 = $314&255;
- $317 = ((($0)) + 44|0);
- HEAP8[$317>>0] = $316;
- $318 = (_bitshift64Lshr(($297|0),($300|0),16)|0);
- $319 = tempRet0;
- $320 = $318&255;
- $321 = ((($0)) + 45|0);
- HEAP8[$321>>0] = $320;
- $322 = (_bitshift64Lshr(($297|0),($300|0),8)|0);
- $323 = tempRet0;
- $324 = $322&255;
- $325 = ((($0)) + 46|0);
- HEAP8[$325>>0] = $324;
- $326 = $297&255;
- $327 = ((($0)) + 47|0);
- HEAP8[$327>>0] = $326;
- $328 = ((($0)) + 48|0);
- $329 = ((($0)) + 208|0);
- $330 = $329;
- $331 = $330;
- $332 = HEAP32[$331>>2]|0;
- $333 = (($330) + 4)|0;
- $334 = $333;
- $335 = HEAP32[$334>>2]|0;
- $336 = (_bitshift64Lshr(($332|0),($335|0),56)|0);
- $337 = tempRet0;
- $338 = $336&255;
- HEAP8[$328>>0] = $338;
- $339 = (_bitshift64Lshr(($332|0),($335|0),48)|0);
- $340 = tempRet0;
- $341 = $339&255;
- $342 = ((($0)) + 49|0);
- HEAP8[$342>>0] = $341;
- $343 = (_bitshift64Lshr(($332|0),($335|0),40)|0);
- $344 = tempRet0;
- $345 = $343&255;
- $346 = ((($0)) + 50|0);
- HEAP8[$346>>0] = $345;
- $347 = $335&255;
- $348 = ((($0)) + 51|0);
- HEAP8[$348>>0] = $347;
- $349 = (_bitshift64Lshr(($332|0),($335|0),24)|0);
- $350 = tempRet0;
- $351 = $349&255;
- $352 = ((($0)) + 52|0);
- HEAP8[$352>>0] = $351;
- $353 = (_bitshift64Lshr(($332|0),($335|0),16)|0);
- $354 = tempRet0;
- $355 = $353&255;
- $356 = ((($0)) + 53|0);
- HEAP8[$356>>0] = $355;
- $357 = (_bitshift64Lshr(($332|0),($335|0),8)|0);
- $358 = tempRet0;
- $359 = $357&255;
- $360 = ((($0)) + 54|0);
- HEAP8[$360>>0] = $359;
- $361 = $332&255;
- $362 = ((($0)) + 55|0);
- HEAP8[$362>>0] = $361;
- $363 = ((($0)) + 56|0);
- $364 = ((($0)) + 216|0);
- $365 = $364;
- $366 = $365;
- $367 = HEAP32[$366>>2]|0;
- $368 = (($365) + 4)|0;
- $369 = $368;
- $370 = HEAP32[$369>>2]|0;
- $371 = (_bitshift64Lshr(($367|0),($370|0),56)|0);
- $372 = tempRet0;
- $373 = $371&255;
- HEAP8[$363>>0] = $373;
- $374 = (_bitshift64Lshr(($367|0),($370|0),48)|0);
- $375 = tempRet0;
- $376 = $374&255;
- $377 = ((($0)) + 57|0);
- HEAP8[$377>>0] = $376;
- $378 = (_bitshift64Lshr(($367|0),($370|0),40)|0);
- $379 = tempRet0;
- $380 = $378&255;
- $381 = ((($0)) + 58|0);
- HEAP8[$381>>0] = $380;
- $382 = $370&255;
- $383 = ((($0)) + 59|0);
- HEAP8[$383>>0] = $382;
- $384 = (_bitshift64Lshr(($367|0),($370|0),24)|0);
- $385 = tempRet0;
- $386 = $384&255;
- $387 = ((($0)) + 60|0);
- HEAP8[$387>>0] = $386;
- $388 = (_bitshift64Lshr(($367|0),($370|0),16)|0);
- $389 = tempRet0;
- $390 = $388&255;
- $391 = ((($0)) + 61|0);
- HEAP8[$391>>0] = $390;
- $392 = (_bitshift64Lshr(($367|0),($370|0),8)|0);
- $393 = tempRet0;
- $394 = $392&255;
- $395 = ((($0)) + 62|0);
- HEAP8[$395>>0] = $394;
- $396 = $367&255;
- $397 = ((($0)) + 63|0);
- HEAP8[$397>>0] = $396;
- return;
-}
-function _sha512_read($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function _run_selftests_1355($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$i = 0, $$0$i7 = 0, $$011$i = 0, $$011$i6 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- switch ($0|0) {
- case 9:  {
-  $3 = (__gcry_hash_selftest_check_one(9,0,62920,3,62924,48)|0);
-  $4 = ($3|0)==(0|0);
-  if ($4) {
-   $5 = ($1|0)==(0);
-   if ($5) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $6 = (__gcry_hash_selftest_check_one(9,0,62973,112,63086,48)|0);
-   $7 = ($6|0)==(0|0);
-   if ($7) {
-    $8 = (__gcry_hash_selftest_check_one(9,1,0,0,63135,48)|0);
-    $9 = ($8|0)==(0|0);
-    if ($9) {
-     $$0 = 0;
-     return ($$0|0);
-    } else {
-     $$0$i = $8;$$011$i = 63209;
-    }
-   } else {
-    $$0$i = $6;$$011$i = 63197;
-   }
-  } else {
-   $$0$i = $3;$$011$i = 63184;
-  }
-  $10 = ($2|0)==(0|0);
-  if ($10) {
-   $$0 = 50;
-   return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](63225,9,$$011$i,$$0$i);
-  $$0 = 50;
-  return ($$0|0);
-  break;
- }
- case 10:  {
-  $11 = (__gcry_hash_selftest_check_one(10,0,62920,3,63232,64)|0);
-  $12 = ($11|0)==(0|0);
-  if ($12) {
-   $13 = ($1|0)==(0);
-   if ($13) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $14 = (__gcry_hash_selftest_check_one(10,0,62973,112,63297,64)|0);
-   $15 = ($14|0)==(0|0);
-   if ($15) {
-    $16 = (__gcry_hash_selftest_check_one(10,1,0,0,63362,64)|0);
-    $17 = ($16|0)==(0|0);
-    if ($17) {
-     $$0 = 0;
-     return ($$0|0);
-    } else {
-     $$0$i7 = $16;$$011$i6 = 63209;
-    }
-   } else {
-    $$0$i7 = $14;$$011$i6 = 63197;
-   }
-  } else {
-   $$0$i7 = $11;$$011$i6 = 63184;
-  }
-  $18 = ($2|0)==(0|0);
-  if ($18) {
-   $$0 = 50;
-   return ($$0|0);
-  }
-  FUNCTION_TABLE_viiii[$2 & 63](63225,10,$$011$i6,$$0$i7);
-  $$0 = 50;
-  return ($$0|0);
-  break;
- }
- default: {
-  $$0 = 5;
-  return ($$0|0);
- }
- }
- return (0)|0;
-}
-function _transform_1368($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$051156$i = 0, $$08 = 0, $$151221$i = 0, $10 = 0, $100 = 0, 
$1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, 
$1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0;
- var $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 
0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, 
$1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0;
- var $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 
0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, 
$1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0;
- var $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 
0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, 
$1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0;
- var $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 
0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, 
$1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0;
- var $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 
0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, 
$1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0;
- var $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 
0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, 
$1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0;
- var $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 
0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, 
$1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0;
- var $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 
0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, 
$1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0;
- var $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 
0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, 
$1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0;
- var $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 
0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, 
$1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0;
- var $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 
0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, 
$1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0;
- var $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 
0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, 
$1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0;
- var $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 
0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, 
$1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0;
- var $1248 = 0, $1249 = 0, $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 
0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, 
$1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0;
- var $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 
0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, 
$1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0;
- var $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 
0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, 
$1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0;
- var $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 
0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, 
$1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0;
- var $132 = 0, $1320 = 0, $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 
0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, 
$1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0;
- var $1338 = 0, $1339 = 0, $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 
0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, 
$1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0;
- var $1356 = 0, $1357 = 0, $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 
0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, 
$1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0;
- var $1374 = 0, $1375 = 0, $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 
0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, 
$1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0;
- var $1392 = 0, $1393 = 0, $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 
0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, 
$1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0;
- var $141 = 0, $1410 = 0, $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 
0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, 
$1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0;
- var $1428 = 0, $1429 = 0, $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 
0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, 
$1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0;
- var $1446 = 0, $1447 = 0, $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 
0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, 
$1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0;
- var $1464 = 0, $1465 = 0, $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 
0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, 
$1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0;
- var $1482 = 0, $1483 = 0, $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 
0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, 
$1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0;
- var $150 = 0, $1500 = 0, $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 
0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, 
$1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0;
- var $1518 = 0, $1519 = 0, $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 
0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, 
$1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0;
- var $1536 = 0, $1537 = 0, $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 
0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, 
$1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0;
- var $1554 = 0, $1555 = 0, $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 
0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, 
$1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0;
- var $1572 = 0, $1573 = 0, $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 
0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, 
$1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0;
- var $1590 = 0, $1591 = 0, $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 
0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, 
$1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0;
- var $1608 = 0, $1609 = 0, $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 
0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, 
$1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0;
- var $1626 = 0, $1627 = 0, $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 
0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, 
$1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0;
- var $1644 = 0, $1645 = 0, $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 
0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, 
$1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0;
- var $1662 = 0, $1663 = 0, $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 
0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, 
$1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0;
- var $1680 = 0, $1681 = 0, $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 
0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, 
$1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0;
- var $1699 = 0, $17 = 0, $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, 
$1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, 
$1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0;
- var $1716 = 0, $1717 = 0, $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 
0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, 
$1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0;
- var $1734 = 0, $1735 = 0, $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 
0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, 
$1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0;
- var $1752 = 0, $1753 = 0, $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 
0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, 
$1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0;
- var $1770 = 0, $1771 = 0, $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 
0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, 
$1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0;
- var $1789 = 0, $179 = 0, $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 
0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, 
$1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0;
- var $1806 = 0, $1807 = 0, $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 
0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, 
$1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0;
- var $1824 = 0, $1825 = 0, $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 
0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, 
$1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0;
- var $1842 = 0, $1843 = 0, $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 
0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, 
$1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0;
- var $1860 = 0, $1861 = 0, $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 
0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, 
$1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0;
- var $1879 = 0, $188 = 0, $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 
0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, 
$1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0;
- var $1897 = 0, $1898 = 0, $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, 
$1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, 
$1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0;
- var $1914 = 0, $1915 = 0, $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 
0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, 
$1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0;
- var $1932 = 0, $1933 = 0, $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 
0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, 
$1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0;
- var $1950 = 0, $1951 = 0, $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 
0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, 
$1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0;
- var $1969 = 0, $197 = 0, $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 
0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, 
$1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0;
- var $1987 = 0, $1988 = 0, $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 
0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, 
$20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0;
- var $2004 = 0, $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 
0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, 
$2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0;
- var $2022 = 0, $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 
0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, 
$2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0;
- var $2040 = 0, $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 
0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, 
$2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0;
- var $2059 = 0, $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 
0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, 
$2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0;
- var $2077 = 0, $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 
0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, 
$209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0;
- var $2095 = 0, $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, 
$2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, 
$2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0;
- var $2112 = 0, $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 
0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, 
$2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0;
- var $2130 = 0, $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 
0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, 
$2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0;
- var $2149 = 0, $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 
0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, 
$2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0;
- var $2167 = 0, $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 
0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, 
$218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0;
- var $2185 = 0, $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 
0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, 
$2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0;
- var $2202 = 0, $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 
0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, 
$2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0;
- var $2220 = 0, $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 
0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, 
$2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0;
- var $2239 = 0, $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 
0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, 
$2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0;
- var $2257 = 0, $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 
0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, 
$227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0;
- var $2275 = 0, $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 
0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, 
$2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0;
- var $2293 = 0, $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 
0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, 
$2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0;
- var $2310 = 0, $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 
0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, 
$2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0;
- var $2329 = 0, $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 
0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, 
$2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0;
- var $2347 = 0, $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 
0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, 
$236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0;
- var $2365 = 0, $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 
0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, 
$2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0;
- var $2383 = 0, $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 
0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, 
$2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0;
- var $2400 = 0, $2401 = 0, $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 
0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, 
$2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0;
- var $2419 = 0, $242 = 0, $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 
0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, 
$2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0;
- var $2437 = 0, $2438 = 0, $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 
0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, 
$245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0;
- var $2455 = 0, $2456 = 0, $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 
0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, 
$2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0;
- var $2473 = 0, $2474 = 0, $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 
0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, 
$2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0;
- var $2491 = 0, $2492 = 0, $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 
0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, 
$2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0;
- var $2509 = 0, $251 = 0, $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 
0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, 
$2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0;
- var $2527 = 0, $2528 = 0, $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 
0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, 
$254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0;
- var $2545 = 0, $2546 = 0, $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 
0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, 
$2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0;
- var $2563 = 0, $2564 = 0, $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 
0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, 
$2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0;
- var $2581 = 0, $2582 = 0, $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 
0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, 
$2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0;
- var $26 = 0, $260 = 0, $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, 
$2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, 
$2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0;
- var $2617 = 0, $2618 = 0, $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 
0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, 
$263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0;
- var $2635 = 0, $2636 = 0, $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 
0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, 
$2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0;
- var $2653 = 0, $2654 = 0, $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 
0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, 
$2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0;
- var $2671 = 0, $2672 = 0, $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 
0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, 
$2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0;
- var $269 = 0, $2690 = 0, $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 
0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, 
$2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0;
- var $2707 = 0, $2708 = 0, $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 
0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, 
$272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0;
- var $2725 = 0, $2726 = 0, $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 
0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, 
$2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0;
- var $2743 = 0, $2744 = 0, $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 
0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, 
$2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0;
- var $2761 = 0, $2762 = 0, $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 
0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, 
$2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0;
- var $278 = 0, $2780 = 0, $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 
0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, 
$2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0;
- var $2798 = 0, $2799 = 0, $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, 
$2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, 
$281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0;
- var $2815 = 0, $2816 = 0, $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 
0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, 
$2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0;
- var $2833 = 0, $2834 = 0, $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 
0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, 
$2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0;
- var $2851 = 0, $2852 = 0, $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 
0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, 
$2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0;
- var $287 = 0, $2870 = 0, $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 
0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, 
$2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0;
- var $2888 = 0, $2889 = 0, $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 
0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, 
$290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0;
- var $2905 = 0, $2906 = 0, $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 
0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, 
$2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0;
- var $2923 = 0, $2924 = 0, $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 
0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, 
$2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0;
- var $2941 = 0, $2942 = 0, $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 
0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, 
$2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0;
- var $296 = 0, $2960 = 0, $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 
0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, 
$2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0;
- var $2978 = 0, $2979 = 0, $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 
0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, 
$2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0;
- var $2996 = 0, $2997 = 0, $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, 
$3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, 
$3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0;
- var $3012 = 0, $3013 = 0, $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 
0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, 
$3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0;
- var $3030 = 0, $3031 = 0, $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 
0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, 
$3043 = 0, $3044 = 0, $3045 = 0, $3046 = 0, $3047 = 0, $3048 = 0;
- var $3049 = 0, $305 = 0, $3050 = 0, $3051 = 0, $3052 = 0, $3053 = 0, $3054 = 
0, $3055 = 0, $3056 = 0, $3057 = 0, $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, 
$3061 = 0, $3062 = 0, $3063 = 0, $3064 = 0, $3065 = 0, $3066 = 0;
- var $3067 = 0, $3068 = 0, $3069 = 0, $307 = 0, $3070 = 0, $3071 = 0, $3072 = 
0, $3073 = 0, $3074 = 0, $3075 = 0, $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, 
$308 = 0, $3080 = 0, $3081 = 0, $3082 = 0, $3083 = 0, $3084 = 0;
- var $3085 = 0, $3086 = 0, $3087 = 0, $3088 = 0, $3089 = 0, $309 = 0, $3090 = 
0, $3091 = 0, $3092 = 0, $3093 = 0, $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, 
$3098 = 0, $3099 = 0, $31 = 0, $310 = 0, $3100 = 0, $3101 = 0;
- var $3102 = 0, $3103 = 0, $3104 = 0, $3105 = 0, $3106 = 0, $3107 = 0, $3108 = 
0, $3109 = 0, $311 = 0, $3110 = 0, $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, 
$3115 = 0, $3116 = 0, $3117 = 0, $3118 = 0, $3119 = 0, $312 = 0;
- var $3120 = 0, $3121 = 0, $3122 = 0, $3123 = 0, $3124 = 0, $3125 = 0, $3126 = 
0, $3127 = 0, $3128 = 0, $3129 = 0, $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, 
$3133 = 0, $3134 = 0, $3135 = 0, $3136 = 0, $3137 = 0, $3138 = 0;
- var $3139 = 0, $314 = 0, $3140 = 0, $3141 = 0, $3142 = 0, $3143 = 0, $3144 = 
0, $3145 = 0, $3146 = 0, $3147 = 0, $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, 
$3151 = 0, $3152 = 0, $3153 = 0, $3154 = 0, $3155 = 0, $3156 = 0;
- var $3157 = 0, $3158 = 0, $3159 = 0, $316 = 0, $3160 = 0, $3161 = 0, $3162 = 
0, $3163 = 0, $3164 = 0, $3165 = 0, $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, 
$317 = 0, $3170 = 0, $3171 = 0, $3172 = 0, $3173 = 0, $3174 = 0;
- var $3175 = 0, $3176 = 0, $3177 = 0, $3178 = 0, $3179 = 0, $318 = 0, $3180 = 
0, $3181 = 0, $3182 = 0, $3183 = 0, $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, 
$3188 = 0, $3189 = 0, $319 = 0, $3190 = 0, $3191 = 0, $3192 = 0;
- var $3193 = 0, $3194 = 0, $3195 = 0, $3196 = 0, $3197 = 0, $3198 = 0, $3199 = 
0, $32 = 0, $320 = 0, $3200 = 0, $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, 
$3205 = 0, $3206 = 0, $3207 = 0, $3208 = 0, $3209 = 0, $321 = 0;
- var $3210 = 0, $3211 = 0, $3212 = 0, $3213 = 0, $3214 = 0, $3215 = 0, $3216 = 
0, $3217 = 0, $3218 = 0, $3219 = 0, $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, 
$3223 = 0, $3224 = 0, $3225 = 0, $3226 = 0, $3227 = 0, $3228 = 0;
- var $3229 = 0, $323 = 0, $3230 = 0, $3231 = 0, $3232 = 0, $3233 = 0, $3234 = 
0, $3235 = 0, $3236 = 0, $3237 = 0, $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, 
$3241 = 0, $3242 = 0, $3243 = 0, $3244 = 0, $3245 = 0, $3246 = 0;
- var $3247 = 0, $3248 = 0, $3249 = 0, $325 = 0, $3250 = 0, $3251 = 0, $3252 = 
0, $3253 = 0, $3254 = 0, $3255 = 0, $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, 
$326 = 0, $3260 = 0, $3261 = 0, $3262 = 0, $3263 = 0, $3264 = 0;
- var $3265 = 0, $3266 = 0, $3267 = 0, $3268 = 0, $3269 = 0, $327 = 0, $3270 = 
0, $3271 = 0, $3272 = 0, $3273 = 0, $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, 
$3278 = 0, $3279 = 0, $328 = 0, $3280 = 0, $3281 = 0, $3282 = 0;
- var $3283 = 0, $3284 = 0, $3285 = 0, $3286 = 0, $3287 = 0, $3288 = 0, $3289 = 
0, $329 = 0, $3290 = 0, $3291 = 0, $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, 
$3296 = 0, $3297 = 0, $3298 = 0, $3299 = 0, $33 = 0, $330 = 0;
- var $3300 = 0, $3301 = 0, $3302 = 0, $3303 = 0, $3304 = 0, $3305 = 0, $3306 = 
0, $3307 = 0, $3308 = 0, $3309 = 0, $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, 
$3313 = 0, $3314 = 0, $3315 = 0, $3316 = 0, $3317 = 0, $3318 = 0;
- var $3319 = 0, $332 = 0, $3320 = 0, $3321 = 0, $3322 = 0, $3323 = 0, $3324 = 
0, $3325 = 0, $3326 = 0, $3327 = 0, $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, 
$3331 = 0, $3332 = 0, $3333 = 0, $3334 = 0, $3335 = 0, $3336 = 0;
- var $3337 = 0, $3338 = 0, $3339 = 0, $334 = 0, $3340 = 0, $3341 = 0, $3342 = 
0, $3343 = 0, $3344 = 0, $3345 = 0, $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, 
$335 = 0, $3350 = 0, $3351 = 0, $3352 = 0, $3353 = 0, $3354 = 0;
- var $3355 = 0, $3356 = 0, $3357 = 0, $3358 = 0, $3359 = 0, $336 = 0, $3360 = 
0, $3361 = 0, $3362 = 0, $3363 = 0, $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, 
$3368 = 0, $3369 = 0, $337 = 0, $3370 = 0, $3371 = 0, $3372 = 0;
- var $3373 = 0, $3374 = 0, $3375 = 0, $3376 = 0, $3377 = 0, $3378 = 0, $3379 = 
0, $338 = 0, $3380 = 0, $3381 = 0, $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, 
$3386 = 0, $3387 = 0, $3388 = 0, $3389 = 0, $339 = 0, $3390 = 0;
- var $3391 = 0, $3392 = 0, $3393 = 0, $3394 = 0, $3395 = 0, $3396 = 0, $3397 = 
0, $3398 = 0, $3399 = 0, $34 = 0, $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, 
$3403 = 0, $3404 = 0, $3405 = 0, $3406 = 0, $3407 = 0, $3408 = 0;
- var $3409 = 0, $341 = 0, $3410 = 0, $3411 = 0, $3412 = 0, $3413 = 0, $3414 = 
0, $3415 = 0, $3416 = 0, $3417 = 0, $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, 
$3421 = 0, $3422 = 0, $3423 = 0, $3424 = 0, $3425 = 0, $3426 = 0;
- var $3427 = 0, $3428 = 0, $3429 = 0, $343 = 0, $3430 = 0, $3431 = 0, $3432 = 
0, $3433 = 0, $3434 = 0, $3435 = 0, $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, 
$344 = 0, $3440 = 0, $3441 = 0, $3442 = 0, $3443 = 0, $3444 = 0;
- var $3445 = 0, $3446 = 0, $3447 = 0, $3448 = 0, $3449 = 0, $345 = 0, $3450 = 
0, $3451 = 0, $3452 = 0, $3453 = 0, $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, 
$3458 = 0, $3459 = 0, $346 = 0, $3460 = 0, $3461 = 0, $3462 = 0;
- var $3463 = 0, $3464 = 0, $3465 = 0, $3466 = 0, $3467 = 0, $3468 = 0, $3469 = 
0, $347 = 0, $3470 = 0, $3471 = 0, $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, 
$3476 = 0, $3477 = 0, $3478 = 0, $3479 = 0, $348 = 0, $3480 = 0;
- var $3481 = 0, $3482 = 0, $3483 = 0, $3484 = 0, $3485 = 0, $3486 = 0, $3487 = 
0, $3488 = 0, $3489 = 0, $349 = 0, $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, 
$3494 = 0, $3495 = 0, $3496 = 0, $3497 = 0, $3498 = 0, $3499 = 0;
- var $35 = 0, $350 = 0, $3500 = 0, $3501 = 0, $3502 = 0, $3503 = 0, $3504 = 0, 
$3505 = 0, $3506 = 0, $3507 = 0, $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, 
$3511 = 0, $3512 = 0, $3513 = 0, $3514 = 0, $3515 = 0, $3516 = 0;
- var $3517 = 0, $3518 = 0, $3519 = 0, $352 = 0, $3520 = 0, $3521 = 0, $3522 = 
0, $3523 = 0, $3524 = 0, $3525 = 0, $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, 
$353 = 0, $3530 = 0, $3531 = 0, $3532 = 0, $3533 = 0, $3534 = 0;
- var $3535 = 0, $3536 = 0, $3537 = 0, $3538 = 0, $3539 = 0, $354 = 0, $3540 = 
0, $3541 = 0, $3542 = 0, $3543 = 0, $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, 
$3548 = 0, $3549 = 0, $355 = 0, $3550 = 0, $3551 = 0, $3552 = 0;
- var $3553 = 0, $3554 = 0, $3555 = 0, $3556 = 0, $3557 = 0, $3558 = 0, $3559 = 
0, $356 = 0, $3560 = 0, $3561 = 0, $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, 
$3566 = 0, $3567 = 0, $3568 = 0, $3569 = 0, $357 = 0, $3570 = 0;
- var $3571 = 0, $3572 = 0, $3573 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, 
$361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, 
$369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0;
- var $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 
= 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 
= 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0;
- var $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, 
$398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, 
$404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0;
- var $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 
= 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 
= 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0;
- var $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 
= 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 
= 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0;
- var $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 
= 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 
= 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0;
- var $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 
= 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 
= 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0;
- var $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, 
$488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, 
$495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0;
- var $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 
0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 
0, $513 = 0, $514 = 0, $515 = 0, $516 = 0;
- var $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 
= 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 
= 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0;
- var $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 
= 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 
= 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0;
- var $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 
= 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 
= 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0;
- var $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, 
$578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, 
$585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0;
- var $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 
= 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 
0, $603 = 0, $604 = 0, $605 = 0, $606 = 0;
- var $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 
= 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 
= 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0;
- var $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 
= 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 
= 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0;
- var $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 
= 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 
= 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0;
- var $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, 
$668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, 
$675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0;
- var $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 
= 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 
= 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0;
- var $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 
0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 
0, $711 = 0, $712 = 0, $713 = 0, $714 = 0;
- var $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 
= 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 
= 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0;
- var $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 
= 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 
= 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0;
- var $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, 
$758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, 
$765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0;
- var $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 
= 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 
= 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0;
- var $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 
= 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 
0, $801 = 0, $802 = 0, $803 = 0, $804 = 0;
- var $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 
= 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 
= 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0;
- var $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 
= 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 
= 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0;
- var $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, 
$848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, 
$855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0;
- var $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 
= 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 
= 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0;
- var $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 
= 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 
= 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0;
- var $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 
0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 
0, $91 = 0, $910 = 0, $911 = 0, $912 = 0;
- var $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 
= 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 
= 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0;
- var $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, 
$938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, 
$945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0;
- var $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 
= 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 
= 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0;
- var $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 
= 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 
= 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0;
- var $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 
= 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, 
$exitcond$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $3 = sp;
- $4 = ((($0)) + 160|0);
- $5 = ((($0)) + 168|0);
- $6 = ((($0)) + 176|0);
- $7 = ((($0)) + 184|0);
- $8 = ((($0)) + 192|0);
- $9 = ((($0)) + 200|0);
- $10 = ((($0)) + 208|0);
- $11 = ((($0)) + 216|0);
- $12 = ((($3)) + 112|0);
- $13 = ((($3)) + 72|0);
- $14 = ((($3)) + 8|0);
- $15 = ((($3)) + 120|0);
- $16 = ((($3)) + 80|0);
- $17 = ((($3)) + 16|0);
- $18 = ((($3)) + 88|0);
- $19 = ((($3)) + 24|0);
- $20 = ((($3)) + 96|0);
- $21 = ((($3)) + 32|0);
- $22 = ((($3)) + 104|0);
- $23 = ((($3)) + 40|0);
- $24 = ((($3)) + 48|0);
- $25 = ((($3)) + 56|0);
- $26 = ((($3)) + 64|0);
- $27 = $4;
- $28 = $27;
- $29 = HEAP32[$28>>2]|0;
- $30 = (($27) + 4)|0;
- $31 = $30;
- $32 = HEAP32[$31>>2]|0;
- $33 = $5;
- $34 = $33;
- $35 = HEAP32[$34>>2]|0;
- $36 = (($33) + 4)|0;
- $37 = $36;
- $38 = HEAP32[$37>>2]|0;
- $39 = $6;
- $40 = $39;
- $41 = HEAP32[$40>>2]|0;
- $42 = (($39) + 4)|0;
- $43 = $42;
- $44 = HEAP32[$43>>2]|0;
- $45 = $7;
- $46 = $45;
- $47 = HEAP32[$46>>2]|0;
- $48 = (($45) + 4)|0;
- $49 = $48;
- $50 = HEAP32[$49>>2]|0;
- $51 = $8;
- $52 = $51;
- $53 = HEAP32[$52>>2]|0;
- $54 = (($51) + 4)|0;
- $55 = $54;
- $56 = HEAP32[$55>>2]|0;
- $57 = $9;
- $58 = $57;
- $59 = HEAP32[$58>>2]|0;
- $60 = (($57) + 4)|0;
- $61 = $60;
- $62 = HEAP32[$61>>2]|0;
- $63 = $10;
- $64 = $63;
- $65 = HEAP32[$64>>2]|0;
- $66 = (($63) + 4)|0;
- $67 = $66;
- $68 = HEAP32[$67>>2]|0;
- $69 = $11;
- $70 = $69;
- $71 = HEAP32[$70>>2]|0;
- $72 = (($69) + 4)|0;
- $73 = $72;
- $74 = HEAP32[$73>>2]|0;
- $$0 = $1;$$08 = $2;$3501 = $29;$3502 = $32;$3513 = $35;$3514 = $38;$3521 = 
$41;$3522 = $44;$3529 = $47;$3530 = $50;$3537 = $53;$3538 = $56;$3547 = 
$59;$3548 = $62;$3555 = $65;$3556 = $68;$3563 = $71;$3564 = $74;
- while(1) {
-  $$051156$i = 0;
-  while(1) {
-   $75 = $$051156$i << 3;
-   $76 = (($$0) + ($75)|0);
-   $77 = HEAP8[$76>>0]|0;
-   $78 = $77&255;
-   $79 = (_bitshift64Shl(($78|0),0,56)|0);
-   $80 = tempRet0;
-   $81 = ((($76)) + 1|0);
-   $82 = HEAP8[$81>>0]|0;
-   $83 = $82&255;
-   $84 = (_bitshift64Shl(($83|0),0,48)|0);
-   $85 = tempRet0;
-   $86 = $84 | $79;
-   $87 = $85 | $80;
-   $88 = ((($76)) + 2|0);
-   $89 = HEAP8[$88>>0]|0;
-   $90 = $89&255;
-   $91 = (_bitshift64Shl(($90|0),0,40)|0);
-   $92 = tempRet0;
-   $93 = $86 | $91;
-   $94 = $87 | $92;
-   $95 = ((($76)) + 3|0);
-   $96 = HEAP8[$95>>0]|0;
-   $97 = $96&255;
-   $98 = $94 | $97;
-   $99 = ((($76)) + 4|0);
-   $100 = HEAP8[$99>>0]|0;
-   $101 = $100&255;
-   $102 = (_bitshift64Shl(($101|0),0,24)|0);
-   $103 = tempRet0;
-   $104 = $93 | $102;
-   $105 = $98 | $103;
-   $106 = ((($76)) + 5|0);
-   $107 = HEAP8[$106>>0]|0;
-   $108 = $107&255;
-   $109 = (_bitshift64Shl(($108|0),0,16)|0);
-   $110 = tempRet0;
-   $111 = $104 | $109;
-   $112 = $105 | $110;
-   $113 = ((($76)) + 6|0);
-   $114 = HEAP8[$113>>0]|0;
-   $115 = $114&255;
-   $116 = (_bitshift64Shl(($115|0),0,8)|0);
-   $117 = tempRet0;
-   $118 = $111 | $116;
-   $119 = $112 | $117;
-   $120 = ((($76)) + 7|0);
-   $121 = HEAP8[$120>>0]|0;
-   $122 = $121&255;
-   $123 = $118 | $122;
-   $124 = (($3) + ($$051156$i<<3)|0);
-   $125 = $124;
-   $126 = $125;
-   HEAP32[$126>>2] = $123;
-   $127 = (($125) + 4)|0;
-   $128 = $127;
-   HEAP32[$128>>2] = $119;
-   $129 = (($$051156$i) + 1)|0;
-   $exitcond$i = ($129|0)==(16);
-   if ($exitcond$i) {
-    break;
-   } else {
-    $$051156$i = $129;
-   }
-  }
-  $130 = $3;
-  $131 = $130;
-  $132 = HEAP32[$131>>2]|0;
-  $133 = (($130) + 4)|0;
-  $134 = $133;
-  $135 = HEAP32[$134>>2]|0;
-  $136 = $12;
-  $137 = $136;
-  $138 = HEAP32[$137>>2]|0;
-  $139 = (($136) + 4)|0;
-  $140 = $139;
-  $141 = HEAP32[$140>>2]|0;
-  $142 = $13;
-  $143 = $142;
-  $144 = HEAP32[$143>>2]|0;
-  $145 = (($142) + 4)|0;
-  $146 = $145;
-  $147 = HEAP32[$146>>2]|0;
-  $148 = $14;
-  $149 = $148;
-  $150 = HEAP32[$149>>2]|0;
-  $151 = (($148) + 4)|0;
-  $152 = $151;
-  $153 = HEAP32[$152>>2]|0;
-  $154 = $15;
-  $155 = $154;
-  $156 = HEAP32[$155>>2]|0;
-  $157 = (($154) + 4)|0;
-  $158 = $157;
-  $159 = HEAP32[$158>>2]|0;
-  $160 = $16;
-  $161 = $160;
-  $162 = HEAP32[$161>>2]|0;
-  $163 = (($160) + 4)|0;
-  $164 = $163;
-  $165 = HEAP32[$164>>2]|0;
-  $166 = $17;
-  $167 = $166;
-  $168 = HEAP32[$167>>2]|0;
-  $169 = (($166) + 4)|0;
-  $170 = $169;
-  $171 = HEAP32[$170>>2]|0;
-  $172 = $18;
-  $173 = $172;
-  $174 = HEAP32[$173>>2]|0;
-  $175 = (($172) + 4)|0;
-  $176 = $175;
-  $177 = HEAP32[$176>>2]|0;
-  $178 = $19;
-  $179 = $178;
-  $180 = HEAP32[$179>>2]|0;
-  $181 = (($178) + 4)|0;
-  $182 = $181;
-  $183 = HEAP32[$182>>2]|0;
-  $184 = $20;
-  $185 = $184;
-  $186 = HEAP32[$185>>2]|0;
-  $187 = (($184) + 4)|0;
-  $188 = $187;
-  $189 = HEAP32[$188>>2]|0;
-  $190 = $21;
-  $191 = $190;
-  $192 = HEAP32[$191>>2]|0;
-  $193 = (($190) + 4)|0;
-  $194 = $193;
-  $195 = HEAP32[$194>>2]|0;
-  $196 = $22;
-  $197 = $196;
-  $198 = HEAP32[$197>>2]|0;
-  $199 = (($196) + 4)|0;
-  $200 = $199;
-  $201 = HEAP32[$200>>2]|0;
-  $202 = $23;
-  $203 = $202;
-  $204 = HEAP32[$203>>2]|0;
-  $205 = (($202) + 4)|0;
-  $206 = $205;
-  $207 = HEAP32[$206>>2]|0;
-  $208 = $24;
-  $209 = $208;
-  $210 = HEAP32[$209>>2]|0;
-  $211 = (($208) + 4)|0;
-  $212 = $211;
-  $213 = HEAP32[$212>>2]|0;
-  $214 = $25;
-  $215 = $214;
-  $216 = HEAP32[$215>>2]|0;
-  $217 = (($214) + 4)|0;
-  $218 = $217;
-  $219 = HEAP32[$218>>2]|0;
-  $220 = $26;
-  $221 = $220;
-  $222 = HEAP32[$221>>2]|0;
-  $223 = (($220) + 4)|0;
-  $224 = $223;
-  $225 = HEAP32[$224>>2]|0;
-  $$151221$i = 0;$1077 = $216;$1078 = $219;$1203 = $222;$1204 = $225;$226 = 
$3537;$227 = $3538;$251 = $3547;$253 = $3548;$257 = $3555;$259 = $3556;$269 = 
$3563;$270 = $3564;$271 = $132;$272 = $135;$281 = $138;$282 = $141;$301 = 
$150;$302 = $153;$321 = $144;$322 = $147;$329 = $3501;$330 = $3502;$354 = 
$3521;$355 = $3513;$357 = $3522;$358 = $3514;$367 = $3529;$368 = $3530;$419 = 
$156;$420 = $159;$439 = $168;$440 = $171;$459 = $162;$460 = $165;$567 = 
$180;$568 = $183;$587 = $174;$588 = $177 [...]
-  while(1) {
-   $228 = (_bitshift64Lshr(($226|0),($227|0),14)|0);
-   $229 = tempRet0;
-   $230 = (_bitshift64Shl(($226|0),($227|0),50)|0);
-   $231 = tempRet0;
-   $232 = $230 | $228;
-   $233 = $231 | $229;
-   $234 = (_bitshift64Lshr(($226|0),($227|0),18)|0);
-   $235 = tempRet0;
-   $236 = (_bitshift64Shl(($226|0),($227|0),46)|0);
-   $237 = tempRet0;
-   $238 = $236 | $234;
-   $239 = $237 | $235;
-   $240 = $232 ^ $238;
-   $241 = $233 ^ $239;
-   $242 = (_bitshift64Lshr(($226|0),($227|0),41)|0);
-   $243 = tempRet0;
-   $244 = (_bitshift64Shl(($226|0),($227|0),23)|0);
-   $245 = tempRet0;
-   $246 = $244 | $242;
-   $247 = $245 | $243;
-   $248 = $240 ^ $246;
-   $249 = $241 ^ $247;
-   $250 = $226 & $251;
-   $252 = $227 & $253;
-   $254 = $226 ^ -1;
-   $255 = $227 ^ -1;
-   $256 = $257 & $254;
-   $258 = $259 & $255;
-   $260 = $256 ^ $250;
-   $261 = $258 ^ $252;
-   $262 = (8128 + ($$151221$i<<3)|0);
-   $263 = $262;
-   $264 = $263;
-   $265 = HEAP32[$264>>2]|0;
-   $266 = (($263) + 4)|0;
-   $267 = $266;
-   $268 = HEAP32[$267>>2]|0;
-   $273 = (_i64Add(($269|0),($270|0),($271|0),($272|0))|0);
-   $274 = tempRet0;
-   $275 = (_i64Add(($273|0),($274|0),($265|0),($268|0))|0);
-   $276 = tempRet0;
-   $277 = (_i64Add(($275|0),($276|0),($260|0),($261|0))|0);
-   $278 = tempRet0;
-   $279 = (_i64Add(($277|0),($278|0),($248|0),($249|0))|0);
-   $280 = tempRet0;
-   $283 = (_bitshift64Lshr(($281|0),($282|0),19)|0);
-   $284 = tempRet0;
-   $285 = (_bitshift64Shl(($281|0),($282|0),45)|0);
-   $286 = tempRet0;
-   $287 = $285 | $283;
-   $288 = $286 | $284;
-   $289 = (_bitshift64Lshr(($281|0),($282|0),61)|0);
-   $290 = tempRet0;
-   $291 = (_bitshift64Shl(($281|0),($282|0),3)|0);
-   $292 = tempRet0;
-   $293 = $291 | $289;
-   $294 = $292 | $290;
-   $295 = (_bitshift64Lshr(($281|0),($282|0),6)|0);
-   $296 = tempRet0;
-   $297 = $293 ^ $295;
-   $298 = $294 ^ $296;
-   $299 = $297 ^ $287;
-   $300 = $298 ^ $288;
-   $303 = (_bitshift64Lshr(($301|0),($302|0),1)|0);
-   $304 = tempRet0;
-   $305 = (_bitshift64Shl(($301|0),($302|0),63)|0);
-   $306 = tempRet0;
-   $307 = $305 | $303;
-   $308 = $306 | $304;
-   $309 = (_bitshift64Lshr(($301|0),($302|0),8)|0);
-   $310 = tempRet0;
-   $311 = (_bitshift64Shl(($301|0),($302|0),56)|0);
-   $312 = tempRet0;
-   $313 = $311 | $309;
-   $314 = $312 | $310;
-   $315 = (_bitshift64Lshr(($301|0),($302|0),7)|0);
-   $316 = tempRet0;
-   $317 = $313 ^ $315;
-   $318 = $314 ^ $316;
-   $319 = $317 ^ $307;
-   $320 = $318 ^ $308;
-   $323 = (_i64Add(($271|0),($272|0),($321|0),($322|0))|0);
-   $324 = tempRet0;
-   $325 = (_i64Add(($323|0),($324|0),($319|0),($320|0))|0);
-   $326 = tempRet0;
-   $327 = (_i64Add(($325|0),($326|0),($299|0),($300|0))|0);
-   $328 = tempRet0;
-   $331 = (_bitshift64Lshr(($329|0),($330|0),28)|0);
-   $332 = tempRet0;
-   $333 = (_bitshift64Shl(($329|0),($330|0),36)|0);
-   $334 = tempRet0;
-   $335 = $333 | $331;
-   $336 = $334 | $332;
-   $337 = (_bitshift64Lshr(($329|0),($330|0),34)|0);
-   $338 = tempRet0;
-   $339 = (_bitshift64Shl(($329|0),($330|0),30)|0);
-   $340 = tempRet0;
-   $341 = $339 | $337;
-   $342 = $340 | $338;
-   $343 = $335 ^ $341;
-   $344 = $336 ^ $342;
-   $345 = (_bitshift64Lshr(($329|0),($330|0),39)|0);
-   $346 = tempRet0;
-   $347 = (_bitshift64Shl(($329|0),($330|0),25)|0);
-   $348 = tempRet0;
-   $349 = $347 | $345;
-   $350 = $348 | $346;
-   $351 = $343 ^ $349;
-   $352 = $344 ^ $350;
-   $353 = $354 ^ $355;
-   $356 = $357 ^ $358;
-   $359 = $353 & $329;
-   $360 = $356 & $330;
-   $361 = $354 & $355;
-   $362 = $357 & $358;
-   $363 = $359 ^ $361;
-   $364 = $360 ^ $362;
-   $365 = (_i64Add(($363|0),($364|0),($351|0),($352|0))|0);
-   $366 = tempRet0;
-   $369 = (_i64Add(($279|0),($280|0),($367|0),($368|0))|0);
-   $370 = tempRet0;
-   $371 = (_i64Add(($365|0),($366|0),($279|0),($280|0))|0);
-   $372 = tempRet0;
-   $373 = (_bitshift64Lshr(($369|0),($370|0),14)|0);
-   $374 = tempRet0;
-   $375 = (_bitshift64Shl(($369|0),($370|0),50)|0);
-   $376 = tempRet0;
-   $377 = $375 | $373;
-   $378 = $376 | $374;
-   $379 = (_bitshift64Lshr(($369|0),($370|0),18)|0);
-   $380 = tempRet0;
-   $381 = (_bitshift64Shl(($369|0),($370|0),46)|0);
-   $382 = tempRet0;
-   $383 = $381 | $379;
-   $384 = $382 | $380;
-   $385 = $377 ^ $383;
-   $386 = $378 ^ $384;
-   $387 = (_bitshift64Lshr(($369|0),($370|0),41)|0);
-   $388 = tempRet0;
-   $389 = (_bitshift64Shl(($369|0),($370|0),23)|0);
-   $390 = tempRet0;
-   $391 = $389 | $387;
-   $392 = $390 | $388;
-   $393 = $385 ^ $391;
-   $394 = $386 ^ $392;
-   $395 = $369 & $226;
-   $396 = $370 & $227;
-   $397 = $369 ^ -1;
-   $398 = $370 ^ -1;
-   $399 = $251 & $397;
-   $400 = $253 & $398;
-   $401 = $399 ^ $395;
-   $402 = $400 ^ $396;
-   $403 = $$151221$i | 1;
-   $404 = (8128 + ($403<<3)|0);
-   $405 = $404;
-   $406 = $405;
-   $407 = HEAP32[$406>>2]|0;
-   $408 = (($405) + 4)|0;
-   $409 = $408;
-   $410 = HEAP32[$409>>2]|0;
-   $411 = (_i64Add(($257|0),($259|0),($301|0),($302|0))|0);
-   $412 = tempRet0;
-   $413 = (_i64Add(($411|0),($412|0),($407|0),($410|0))|0);
-   $414 = tempRet0;
-   $415 = (_i64Add(($413|0),($414|0),($401|0),($402|0))|0);
-   $416 = tempRet0;
-   $417 = (_i64Add(($415|0),($416|0),($393|0),($394|0))|0);
-   $418 = tempRet0;
-   $421 = (_bitshift64Lshr(($419|0),($420|0),19)|0);
-   $422 = tempRet0;
-   $423 = (_bitshift64Shl(($419|0),($420|0),45)|0);
-   $424 = tempRet0;
-   $425 = $423 | $421;
-   $426 = $424 | $422;
-   $427 = (_bitshift64Lshr(($419|0),($420|0),61)|0);
-   $428 = tempRet0;
-   $429 = (_bitshift64Shl(($419|0),($420|0),3)|0);
-   $430 = tempRet0;
-   $431 = $429 | $427;
-   $432 = $430 | $428;
-   $433 = (_bitshift64Lshr(($419|0),($420|0),6)|0);
-   $434 = tempRet0;
-   $435 = $431 ^ $433;
-   $436 = $432 ^ $434;
-   $437 = $435 ^ $425;
-   $438 = $436 ^ $426;
-   $441 = (_bitshift64Lshr(($439|0),($440|0),1)|0);
-   $442 = tempRet0;
-   $443 = (_bitshift64Shl(($439|0),($440|0),63)|0);
-   $444 = tempRet0;
-   $445 = $443 | $441;
-   $446 = $444 | $442;
-   $447 = (_bitshift64Lshr(($439|0),($440|0),8)|0);
-   $448 = tempRet0;
-   $449 = (_bitshift64Shl(($439|0),($440|0),56)|0);
-   $450 = tempRet0;
-   $451 = $449 | $447;
-   $452 = $450 | $448;
-   $453 = (_bitshift64Lshr(($439|0),($440|0),7)|0);
-   $454 = tempRet0;
-   $455 = $451 ^ $453;
-   $456 = $452 ^ $454;
-   $457 = $455 ^ $445;
-   $458 = $456 ^ $446;
-   $461 = (_i64Add(($301|0),($302|0),($459|0),($460|0))|0);
-   $462 = tempRet0;
-   $463 = (_i64Add(($461|0),($462|0),($457|0),($458|0))|0);
-   $464 = tempRet0;
-   $465 = (_i64Add(($463|0),($464|0),($437|0),($438|0))|0);
-   $466 = tempRet0;
-   $467 = (_bitshift64Lshr(($371|0),($372|0),28)|0);
-   $468 = tempRet0;
-   $469 = (_bitshift64Shl(($371|0),($372|0),36)|0);
-   $470 = tempRet0;
-   $471 = $469 | $467;
-   $472 = $470 | $468;
-   $473 = (_bitshift64Lshr(($371|0),($372|0),34)|0);
-   $474 = tempRet0;
-   $475 = (_bitshift64Shl(($371|0),($372|0),30)|0);
-   $476 = tempRet0;
-   $477 = $475 | $473;
-   $478 = $476 | $474;
-   $479 = $471 ^ $477;
-   $480 = $472 ^ $478;
-   $481 = (_bitshift64Lshr(($371|0),($372|0),39)|0);
-   $482 = tempRet0;
-   $483 = (_bitshift64Shl(($371|0),($372|0),25)|0);
-   $484 = tempRet0;
-   $485 = $483 | $481;
-   $486 = $484 | $482;
-   $487 = $479 ^ $485;
-   $488 = $480 ^ $486;
-   $489 = $355 ^ $329;
-   $490 = $358 ^ $330;
-   $491 = $371 & $489;
-   $492 = $372 & $490;
-   $493 = $355 & $329;
-   $494 = $358 & $330;
-   $495 = $491 ^ $493;
-   $496 = $492 ^ $494;
-   $497 = (_i64Add(($487|0),($488|0),($495|0),($496|0))|0);
-   $498 = tempRet0;
-   $499 = (_i64Add(($417|0),($418|0),($354|0),($357|0))|0);
-   $500 = tempRet0;
-   $501 = (_i64Add(($497|0),($498|0),($417|0),($418|0))|0);
-   $502 = tempRet0;
-   $503 = (_bitshift64Lshr(($499|0),($500|0),14)|0);
-   $504 = tempRet0;
-   $505 = (_bitshift64Shl(($499|0),($500|0),50)|0);
-   $506 = tempRet0;
-   $507 = $505 | $503;
-   $508 = $506 | $504;
-   $509 = (_bitshift64Lshr(($499|0),($500|0),18)|0);
-   $510 = tempRet0;
-   $511 = (_bitshift64Shl(($499|0),($500|0),46)|0);
-   $512 = tempRet0;
-   $513 = $511 | $509;
-   $514 = $512 | $510;
-   $515 = $507 ^ $513;
-   $516 = $508 ^ $514;
-   $517 = (_bitshift64Lshr(($499|0),($500|0),41)|0);
-   $518 = tempRet0;
-   $519 = (_bitshift64Shl(($499|0),($500|0),23)|0);
-   $520 = tempRet0;
-   $521 = $519 | $517;
-   $522 = $520 | $518;
-   $523 = $515 ^ $521;
-   $524 = $516 ^ $522;
-   $525 = $499 & $369;
-   $526 = $500 & $370;
-   $527 = $499 ^ -1;
-   $528 = $500 ^ -1;
-   $529 = $226 & $527;
-   $530 = $227 & $528;
-   $531 = $529 ^ $525;
-   $532 = $530 ^ $526;
-   $533 = $$151221$i | 2;
-   $534 = (8128 + ($533<<3)|0);
-   $535 = $534;
-   $536 = $535;
-   $537 = HEAP32[$536>>2]|0;
-   $538 = (($535) + 4)|0;
-   $539 = $538;
-   $540 = HEAP32[$539>>2]|0;
-   $541 = (_i64Add(($251|0),($253|0),($439|0),($440|0))|0);
-   $542 = tempRet0;
-   $543 = (_i64Add(($541|0),($542|0),($537|0),($540|0))|0);
-   $544 = tempRet0;
-   $545 = (_i64Add(($543|0),($544|0),($531|0),($532|0))|0);
-   $546 = tempRet0;
-   $547 = (_i64Add(($545|0),($546|0),($523|0),($524|0))|0);
-   $548 = tempRet0;
-   $549 = (_bitshift64Lshr(($327|0),($328|0),19)|0);
-   $550 = tempRet0;
-   $551 = (_bitshift64Shl(($327|0),($328|0),45)|0);
-   $552 = tempRet0;
-   $553 = $551 | $549;
-   $554 = $552 | $550;
-   $555 = (_bitshift64Lshr(($327|0),($328|0),61)|0);
-   $556 = tempRet0;
-   $557 = (_bitshift64Shl(($327|0),($328|0),3)|0);
-   $558 = tempRet0;
-   $559 = $557 | $555;
-   $560 = $558 | $556;
-   $561 = (_bitshift64Lshr(($327|0),($328|0),6)|0);
-   $562 = tempRet0;
-   $563 = $559 ^ $561;
-   $564 = $560 ^ $562;
-   $565 = $563 ^ $553;
-   $566 = $564 ^ $554;
-   $569 = (_bitshift64Lshr(($567|0),($568|0),1)|0);
-   $570 = tempRet0;
-   $571 = (_bitshift64Shl(($567|0),($568|0),63)|0);
-   $572 = tempRet0;
-   $573 = $571 | $569;
-   $574 = $572 | $570;
-   $575 = (_bitshift64Lshr(($567|0),($568|0),8)|0);
-   $576 = tempRet0;
-   $577 = (_bitshift64Shl(($567|0),($568|0),56)|0);
-   $578 = tempRet0;
-   $579 = $577 | $575;
-   $580 = $578 | $576;
-   $581 = (_bitshift64Lshr(($567|0),($568|0),7)|0);
-   $582 = tempRet0;
-   $583 = $579 ^ $581;
-   $584 = $580 ^ $582;
-   $585 = $583 ^ $573;
-   $586 = $584 ^ $574;
-   $589 = (_i64Add(($439|0),($440|0),($587|0),($588|0))|0);
-   $590 = tempRet0;
-   $591 = (_i64Add(($589|0),($590|0),($585|0),($586|0))|0);
-   $592 = tempRet0;
-   $593 = (_i64Add(($591|0),($592|0),($565|0),($566|0))|0);
-   $594 = tempRet0;
-   $595 = (_bitshift64Lshr(($501|0),($502|0),28)|0);
-   $596 = tempRet0;
-   $597 = (_bitshift64Shl(($501|0),($502|0),36)|0);
-   $598 = tempRet0;
-   $599 = $597 | $595;
-   $600 = $598 | $596;
-   $601 = (_bitshift64Lshr(($501|0),($502|0),34)|0);
-   $602 = tempRet0;
-   $603 = (_bitshift64Shl(($501|0),($502|0),30)|0);
-   $604 = tempRet0;
-   $605 = $603 | $601;
-   $606 = $604 | $602;
-   $607 = $599 ^ $605;
-   $608 = $600 ^ $606;
-   $609 = (_bitshift64Lshr(($501|0),($502|0),39)|0);
-   $610 = tempRet0;
-   $611 = (_bitshift64Shl(($501|0),($502|0),25)|0);
-   $612 = tempRet0;
-   $613 = $611 | $609;
-   $614 = $612 | $610;
-   $615 = $607 ^ $613;
-   $616 = $608 ^ $614;
-   $617 = $371 ^ $329;
-   $618 = $372 ^ $330;
-   $619 = $501 & $617;
-   $620 = $502 & $618;
-   $621 = $371 & $329;
-   $622 = $372 & $330;
-   $623 = $619 ^ $621;
-   $624 = $620 ^ $622;
-   $625 = (_i64Add(($615|0),($616|0),($623|0),($624|0))|0);
-   $626 = tempRet0;
-   $627 = (_i64Add(($547|0),($548|0),($355|0),($358|0))|0);
-   $628 = tempRet0;
-   $629 = (_i64Add(($625|0),($626|0),($547|0),($548|0))|0);
-   $630 = tempRet0;
-   $631 = (_bitshift64Lshr(($627|0),($628|0),14)|0);
-   $632 = tempRet0;
-   $633 = (_bitshift64Shl(($627|0),($628|0),50)|0);
-   $634 = tempRet0;
-   $635 = $633 | $631;
-   $636 = $634 | $632;
-   $637 = (_bitshift64Lshr(($627|0),($628|0),18)|0);
-   $638 = tempRet0;
-   $639 = (_bitshift64Shl(($627|0),($628|0),46)|0);
-   $640 = tempRet0;
-   $641 = $639 | $637;
-   $642 = $640 | $638;
-   $643 = $635 ^ $641;
-   $644 = $636 ^ $642;
-   $645 = (_bitshift64Lshr(($627|0),($628|0),41)|0);
-   $646 = tempRet0;
-   $647 = (_bitshift64Shl(($627|0),($628|0),23)|0);
-   $648 = tempRet0;
-   $649 = $647 | $645;
-   $650 = $648 | $646;
-   $651 = $643 ^ $649;
-   $652 = $644 ^ $650;
-   $653 = $627 & $499;
-   $654 = $628 & $500;
-   $655 = $627 ^ -1;
-   $656 = $628 ^ -1;
-   $657 = $369 & $655;
-   $658 = $370 & $656;
-   $659 = $657 ^ $653;
-   $660 = $658 ^ $654;
-   $661 = $$151221$i | 3;
-   $662 = (8128 + ($661<<3)|0);
-   $663 = $662;
-   $664 = $663;
-   $665 = HEAP32[$664>>2]|0;
-   $666 = (($663) + 4)|0;
-   $667 = $666;
-   $668 = HEAP32[$667>>2]|0;
-   $669 = (_i64Add(($226|0),($227|0),($567|0),($568|0))|0);
-   $670 = tempRet0;
-   $671 = (_i64Add(($669|0),($670|0),($665|0),($668|0))|0);
-   $672 = tempRet0;
-   $673 = (_i64Add(($671|0),($672|0),($659|0),($660|0))|0);
-   $674 = tempRet0;
-   $675 = (_i64Add(($673|0),($674|0),($651|0),($652|0))|0);
-   $676 = tempRet0;
-   $677 = (_bitshift64Lshr(($465|0),($466|0),19)|0);
-   $678 = tempRet0;
-   $679 = (_bitshift64Shl(($465|0),($466|0),45)|0);
-   $680 = tempRet0;
-   $681 = $679 | $677;
-   $682 = $680 | $678;
-   $683 = (_bitshift64Lshr(($465|0),($466|0),61)|0);
-   $684 = tempRet0;
-   $685 = (_bitshift64Shl(($465|0),($466|0),3)|0);
-   $686 = tempRet0;
-   $687 = $685 | $683;
-   $688 = $686 | $684;
-   $689 = (_bitshift64Lshr(($465|0),($466|0),6)|0);
-   $690 = tempRet0;
-   $691 = $687 ^ $689;
-   $692 = $688 ^ $690;
-   $693 = $691 ^ $681;
-   $694 = $692 ^ $682;
-   $697 = (_bitshift64Lshr(($695|0),($696|0),1)|0);
-   $698 = tempRet0;
-   $699 = (_bitshift64Shl(($695|0),($696|0),63)|0);
-   $700 = tempRet0;
-   $701 = $699 | $697;
-   $702 = $700 | $698;
-   $703 = (_bitshift64Lshr(($695|0),($696|0),8)|0);
-   $704 = tempRet0;
-   $705 = (_bitshift64Shl(($695|0),($696|0),56)|0);
-   $706 = tempRet0;
-   $707 = $705 | $703;
-   $708 = $706 | $704;
-   $709 = (_bitshift64Lshr(($695|0),($696|0),7)|0);
-   $710 = tempRet0;
-   $711 = $707 ^ $709;
-   $712 = $708 ^ $710;
-   $713 = $711 ^ $701;
-   $714 = $712 ^ $702;
-   $717 = (_i64Add(($567|0),($568|0),($715|0),($716|0))|0);
-   $718 = tempRet0;
-   $719 = (_i64Add(($717|0),($718|0),($713|0),($714|0))|0);
-   $720 = tempRet0;
-   $721 = (_i64Add(($719|0),($720|0),($693|0),($694|0))|0);
-   $722 = tempRet0;
-   $723 = (_bitshift64Lshr(($629|0),($630|0),28)|0);
-   $724 = tempRet0;
-   $725 = (_bitshift64Shl(($629|0),($630|0),36)|0);
-   $726 = tempRet0;
-   $727 = $725 | $723;
-   $728 = $726 | $724;
-   $729 = (_bitshift64Lshr(($629|0),($630|0),34)|0);
-   $730 = tempRet0;
-   $731 = (_bitshift64Shl(($629|0),($630|0),30)|0);
-   $732 = tempRet0;
-   $733 = $731 | $729;
-   $734 = $732 | $730;
-   $735 = $727 ^ $733;
-   $736 = $728 ^ $734;
-   $737 = (_bitshift64Lshr(($629|0),($630|0),39)|0);
-   $738 = tempRet0;
-   $739 = (_bitshift64Shl(($629|0),($630|0),25)|0);
-   $740 = tempRet0;
-   $741 = $739 | $737;
-   $742 = $740 | $738;
-   $743 = $735 ^ $741;
-   $744 = $736 ^ $742;
-   $745 = $501 ^ $371;
-   $746 = $502 ^ $372;
-   $747 = $629 & $745;
-   $748 = $630 & $746;
-   $749 = $501 & $371;
-   $750 = $502 & $372;
-   $751 = $747 ^ $749;
-   $752 = $748 ^ $750;
-   $753 = (_i64Add(($743|0),($744|0),($751|0),($752|0))|0);
-   $754 = tempRet0;
-   $755 = (_i64Add(($675|0),($676|0),($329|0),($330|0))|0);
-   $756 = tempRet0;
-   $757 = (_i64Add(($753|0),($754|0),($675|0),($676|0))|0);
-   $758 = tempRet0;
-   $759 = (_bitshift64Lshr(($755|0),($756|0),14)|0);
-   $760 = tempRet0;
-   $761 = (_bitshift64Shl(($755|0),($756|0),50)|0);
-   $762 = tempRet0;
-   $763 = $761 | $759;
-   $764 = $762 | $760;
-   $765 = (_bitshift64Lshr(($755|0),($756|0),18)|0);
-   $766 = tempRet0;
-   $767 = (_bitshift64Shl(($755|0),($756|0),46)|0);
-   $768 = tempRet0;
-   $769 = $767 | $765;
-   $770 = $768 | $766;
-   $771 = $763 ^ $769;
-   $772 = $764 ^ $770;
-   $773 = (_bitshift64Lshr(($755|0),($756|0),41)|0);
-   $774 = tempRet0;
-   $775 = (_bitshift64Shl(($755|0),($756|0),23)|0);
-   $776 = tempRet0;
-   $777 = $775 | $773;
-   $778 = $776 | $774;
-   $779 = $771 ^ $777;
-   $780 = $772 ^ $778;
-   $781 = $755 & $627;
-   $782 = $756 & $628;
-   $783 = $755 ^ -1;
-   $784 = $756 ^ -1;
-   $785 = $499 & $783;
-   $786 = $500 & $784;
-   $787 = $785 ^ $781;
-   $788 = $786 ^ $782;
-   $789 = $$151221$i | 4;
-   $790 = (8128 + ($789<<3)|0);
-   $791 = $790;
-   $792 = $791;
-   $793 = HEAP32[$792>>2]|0;
-   $794 = (($791) + 4)|0;
-   $795 = $794;
-   $796 = HEAP32[$795>>2]|0;
-   $797 = (_i64Add(($793|0),($796|0),($695|0),($696|0))|0);
-   $798 = tempRet0;
-   $799 = (_i64Add(($797|0),($798|0),($369|0),($370|0))|0);
-   $800 = tempRet0;
-   $801 = (_i64Add(($799|0),($800|0),($787|0),($788|0))|0);
-   $802 = tempRet0;
-   $803 = (_i64Add(($801|0),($802|0),($779|0),($780|0))|0);
-   $804 = tempRet0;
-   $805 = (_bitshift64Lshr(($593|0),($594|0),19)|0);
-   $806 = tempRet0;
-   $807 = (_bitshift64Shl(($593|0),($594|0),45)|0);
-   $808 = tempRet0;
-   $809 = $807 | $805;
-   $810 = $808 | $806;
-   $811 = (_bitshift64Lshr(($593|0),($594|0),61)|0);
-   $812 = tempRet0;
-   $813 = (_bitshift64Shl(($593|0),($594|0),3)|0);
-   $814 = tempRet0;
-   $815 = $813 | $811;
-   $816 = $814 | $812;
-   $817 = (_bitshift64Lshr(($593|0),($594|0),6)|0);
-   $818 = tempRet0;
-   $819 = $815 ^ $817;
-   $820 = $816 ^ $818;
-   $821 = $819 ^ $809;
-   $822 = $820 ^ $810;
-   $825 = (_bitshift64Lshr(($823|0),($824|0),1)|0);
-   $826 = tempRet0;
-   $827 = (_bitshift64Shl(($823|0),($824|0),63)|0);
-   $828 = tempRet0;
-   $829 = $827 | $825;
-   $830 = $828 | $826;
-   $831 = (_bitshift64Lshr(($823|0),($824|0),8)|0);
-   $832 = tempRet0;
-   $833 = (_bitshift64Shl(($823|0),($824|0),56)|0);
-   $834 = tempRet0;
-   $835 = $833 | $831;
-   $836 = $834 | $832;
-   $837 = (_bitshift64Lshr(($823|0),($824|0),7)|0);
-   $838 = tempRet0;
-   $839 = $835 ^ $837;
-   $840 = $836 ^ $838;
-   $841 = $839 ^ $829;
-   $842 = $840 ^ $830;
-   $845 = (_i64Add(($695|0),($696|0),($843|0),($844|0))|0);
-   $846 = tempRet0;
-   $847 = (_i64Add(($845|0),($846|0),($841|0),($842|0))|0);
-   $848 = tempRet0;
-   $849 = (_i64Add(($847|0),($848|0),($821|0),($822|0))|0);
-   $850 = tempRet0;
-   $851 = (_bitshift64Lshr(($757|0),($758|0),28)|0);
-   $852 = tempRet0;
-   $853 = (_bitshift64Shl(($757|0),($758|0),36)|0);
-   $854 = tempRet0;
-   $855 = $853 | $851;
-   $856 = $854 | $852;
-   $857 = (_bitshift64Lshr(($757|0),($758|0),34)|0);
-   $858 = tempRet0;
-   $859 = (_bitshift64Shl(($757|0),($758|0),30)|0);
-   $860 = tempRet0;
-   $861 = $859 | $857;
-   $862 = $860 | $858;
-   $863 = $855 ^ $861;
-   $864 = $856 ^ $862;
-   $865 = (_bitshift64Lshr(($757|0),($758|0),39)|0);
-   $866 = tempRet0;
-   $867 = (_bitshift64Shl(($757|0),($758|0),25)|0);
-   $868 = tempRet0;
-   $869 = $867 | $865;
-   $870 = $868 | $866;
-   $871 = $863 ^ $869;
-   $872 = $864 ^ $870;
-   $873 = $629 ^ $501;
-   $874 = $630 ^ $502;
-   $875 = $757 & $873;
-   $876 = $758 & $874;
-   $877 = $629 & $501;
-   $878 = $630 & $502;
-   $879 = $875 ^ $877;
-   $880 = $876 ^ $878;
-   $881 = (_i64Add(($871|0),($872|0),($879|0),($880|0))|0);
-   $882 = tempRet0;
-   $883 = (_i64Add(($803|0),($804|0),($371|0),($372|0))|0);
-   $884 = tempRet0;
-   $885 = (_i64Add(($881|0),($882|0),($803|0),($804|0))|0);
-   $886 = tempRet0;
-   $887 = (_bitshift64Lshr(($883|0),($884|0),14)|0);
-   $888 = tempRet0;
-   $889 = (_bitshift64Shl(($883|0),($884|0),50)|0);
-   $890 = tempRet0;
-   $891 = $889 | $887;
-   $892 = $890 | $888;
-   $893 = (_bitshift64Lshr(($883|0),($884|0),18)|0);
-   $894 = tempRet0;
-   $895 = (_bitshift64Shl(($883|0),($884|0),46)|0);
-   $896 = tempRet0;
-   $897 = $895 | $893;
-   $898 = $896 | $894;
-   $899 = $891 ^ $897;
-   $900 = $892 ^ $898;
-   $901 = (_bitshift64Lshr(($883|0),($884|0),41)|0);
-   $902 = tempRet0;
-   $903 = (_bitshift64Shl(($883|0),($884|0),23)|0);
-   $904 = tempRet0;
-   $905 = $903 | $901;
-   $906 = $904 | $902;
-   $907 = $899 ^ $905;
-   $908 = $900 ^ $906;
-   $909 = $883 & $755;
-   $910 = $884 & $756;
-   $911 = $883 ^ -1;
-   $912 = $884 ^ -1;
-   $913 = $627 & $911;
-   $914 = $628 & $912;
-   $915 = $913 ^ $909;
-   $916 = $914 ^ $910;
-   $917 = $$151221$i | 5;
-   $918 = (8128 + ($917<<3)|0);
-   $919 = $918;
-   $920 = $919;
-   $921 = HEAP32[$920>>2]|0;
-   $922 = (($919) + 4)|0;
-   $923 = $922;
-   $924 = HEAP32[$923>>2]|0;
-   $925 = (_i64Add(($921|0),($924|0),($823|0),($824|0))|0);
-   $926 = tempRet0;
-   $927 = (_i64Add(($925|0),($926|0),($499|0),($500|0))|0);
-   $928 = tempRet0;
-   $929 = (_i64Add(($927|0),($928|0),($915|0),($916|0))|0);
-   $930 = tempRet0;
-   $931 = (_i64Add(($929|0),($930|0),($907|0),($908|0))|0);
-   $932 = tempRet0;
-   $933 = (_bitshift64Lshr(($721|0),($722|0),19)|0);
-   $934 = tempRet0;
-   $935 = (_bitshift64Shl(($721|0),($722|0),45)|0);
-   $936 = tempRet0;
-   $937 = $935 | $933;
-   $938 = $936 | $934;
-   $939 = (_bitshift64Lshr(($721|0),($722|0),61)|0);
-   $940 = tempRet0;
-   $941 = (_bitshift64Shl(($721|0),($722|0),3)|0);
-   $942 = tempRet0;
-   $943 = $941 | $939;
-   $944 = $942 | $940;
-   $945 = (_bitshift64Lshr(($721|0),($722|0),6)|0);
-   $946 = tempRet0;
-   $947 = $943 ^ $945;
-   $948 = $944 ^ $946;
-   $949 = $947 ^ $937;
-   $950 = $948 ^ $938;
-   $953 = (_bitshift64Lshr(($951|0),($952|0),1)|0);
-   $954 = tempRet0;
-   $955 = (_bitshift64Shl(($951|0),($952|0),63)|0);
-   $956 = tempRet0;
-   $957 = $955 | $953;
-   $958 = $956 | $954;
-   $959 = (_bitshift64Lshr(($951|0),($952|0),8)|0);
-   $960 = tempRet0;
-   $961 = (_bitshift64Shl(($951|0),($952|0),56)|0);
-   $962 = tempRet0;
-   $963 = $961 | $959;
-   $964 = $962 | $960;
-   $965 = (_bitshift64Lshr(($951|0),($952|0),7)|0);
-   $966 = tempRet0;
-   $967 = $963 ^ $965;
-   $968 = $964 ^ $966;
-   $969 = $967 ^ $957;
-   $970 = $968 ^ $958;
-   $971 = (_i64Add(($969|0),($970|0),($823|0),($824|0))|0);
-   $972 = tempRet0;
-   $973 = (_i64Add(($971|0),($972|0),($281|0),($282|0))|0);
-   $974 = tempRet0;
-   $975 = (_i64Add(($973|0),($974|0),($949|0),($950|0))|0);
-   $976 = tempRet0;
-   $977 = (_bitshift64Lshr(($885|0),($886|0),28)|0);
-   $978 = tempRet0;
-   $979 = (_bitshift64Shl(($885|0),($886|0),36)|0);
-   $980 = tempRet0;
-   $981 = $979 | $977;
-   $982 = $980 | $978;
-   $983 = (_bitshift64Lshr(($885|0),($886|0),34)|0);
-   $984 = tempRet0;
-   $985 = (_bitshift64Shl(($885|0),($886|0),30)|0);
-   $986 = tempRet0;
-   $987 = $985 | $983;
-   $988 = $986 | $984;
-   $989 = $981 ^ $987;
-   $990 = $982 ^ $988;
-   $991 = (_bitshift64Lshr(($885|0),($886|0),39)|0);
-   $992 = tempRet0;
-   $993 = (_bitshift64Shl(($885|0),($886|0),25)|0);
-   $994 = tempRet0;
-   $995 = $993 | $991;
-   $996 = $994 | $992;
-   $997 = $989 ^ $995;
-   $998 = $990 ^ $996;
-   $999 = $757 ^ $629;
-   $1000 = $758 ^ $630;
-   $1001 = $885 & $999;
-   $1002 = $886 & $1000;
-   $1003 = $757 & $629;
-   $1004 = $758 & $630;
-   $1005 = $1001 ^ $1003;
-   $1006 = $1002 ^ $1004;
-   $1007 = (_i64Add(($997|0),($998|0),($1005|0),($1006|0))|0);
-   $1008 = tempRet0;
-   $1009 = (_i64Add(($931|0),($932|0),($501|0),($502|0))|0);
-   $1010 = tempRet0;
-   $1011 = (_i64Add(($1007|0),($1008|0),($931|0),($932|0))|0);
-   $1012 = tempRet0;
-   $1013 = (_bitshift64Lshr(($1009|0),($1010|0),14)|0);
-   $1014 = tempRet0;
-   $1015 = (_bitshift64Shl(($1009|0),($1010|0),50)|0);
-   $1016 = tempRet0;
-   $1017 = $1015 | $1013;
-   $1018 = $1016 | $1014;
-   $1019 = (_bitshift64Lshr(($1009|0),($1010|0),18)|0);
-   $1020 = tempRet0;
-   $1021 = (_bitshift64Shl(($1009|0),($1010|0),46)|0);
-   $1022 = tempRet0;
-   $1023 = $1021 | $1019;
-   $1024 = $1022 | $1020;
-   $1025 = $1017 ^ $1023;
-   $1026 = $1018 ^ $1024;
-   $1027 = (_bitshift64Lshr(($1009|0),($1010|0),41)|0);
-   $1028 = tempRet0;
-   $1029 = (_bitshift64Shl(($1009|0),($1010|0),23)|0);
-   $1030 = tempRet0;
-   $1031 = $1029 | $1027;
-   $1032 = $1030 | $1028;
-   $1033 = $1025 ^ $1031;
-   $1034 = $1026 ^ $1032;
-   $1035 = $1009 & $883;
-   $1036 = $1010 & $884;
-   $1037 = $1009 ^ -1;
-   $1038 = $1010 ^ -1;
-   $1039 = $755 & $1037;
-   $1040 = $756 & $1038;
-   $1041 = $1039 ^ $1035;
-   $1042 = $1040 ^ $1036;
-   $1043 = $$151221$i | 6;
-   $1044 = (8128 + ($1043<<3)|0);
-   $1045 = $1044;
-   $1046 = $1045;
-   $1047 = HEAP32[$1046>>2]|0;
-   $1048 = (($1045) + 4)|0;
-   $1049 = $1048;
-   $1050 = HEAP32[$1049>>2]|0;
-   $1051 = (_i64Add(($1047|0),($1050|0),($951|0),($952|0))|0);
-   $1052 = tempRet0;
-   $1053 = (_i64Add(($1051|0),($1052|0),($627|0),($628|0))|0);
-   $1054 = tempRet0;
-   $1055 = (_i64Add(($1053|0),($1054|0),($1041|0),($1042|0))|0);
-   $1056 = tempRet0;
-   $1057 = (_i64Add(($1055|0),($1056|0),($1033|0),($1034|0))|0);
-   $1058 = tempRet0;
-   $1059 = (_bitshift64Lshr(($849|0),($850|0),19)|0);
-   $1060 = tempRet0;
-   $1061 = (_bitshift64Shl(($849|0),($850|0),45)|0);
-   $1062 = tempRet0;
-   $1063 = $1061 | $1059;
-   $1064 = $1062 | $1060;
-   $1065 = (_bitshift64Lshr(($849|0),($850|0),61)|0);
-   $1066 = tempRet0;
-   $1067 = (_bitshift64Shl(($849|0),($850|0),3)|0);
-   $1068 = tempRet0;
-   $1069 = $1067 | $1065;
-   $1070 = $1068 | $1066;
-   $1071 = (_bitshift64Lshr(($849|0),($850|0),6)|0);
-   $1072 = tempRet0;
-   $1073 = $1069 ^ $1071;
-   $1074 = $1070 ^ $1072;
-   $1075 = $1073 ^ $1063;
-   $1076 = $1074 ^ $1064;
-   $1079 = (_bitshift64Lshr(($1077|0),($1078|0),1)|0);
-   $1080 = tempRet0;
-   $1081 = (_bitshift64Shl(($1077|0),($1078|0),63)|0);
-   $1082 = tempRet0;
-   $1083 = $1081 | $1079;
-   $1084 = $1082 | $1080;
-   $1085 = (_bitshift64Lshr(($1077|0),($1078|0),8)|0);
-   $1086 = tempRet0;
-   $1087 = (_bitshift64Shl(($1077|0),($1078|0),56)|0);
-   $1088 = tempRet0;
-   $1089 = $1087 | $1085;
-   $1090 = $1088 | $1086;
-   $1091 = (_bitshift64Lshr(($1077|0),($1078|0),7)|0);
-   $1092 = tempRet0;
-   $1093 = $1089 ^ $1091;
-   $1094 = $1090 ^ $1092;
-   $1095 = $1093 ^ $1083;
-   $1096 = $1094 ^ $1084;
-   $1097 = (_i64Add(($1095|0),($1096|0),($951|0),($952|0))|0);
-   $1098 = tempRet0;
-   $1099 = (_i64Add(($1097|0),($1098|0),($419|0),($420|0))|0);
-   $1100 = tempRet0;
-   $1101 = (_i64Add(($1099|0),($1100|0),($1075|0),($1076|0))|0);
-   $1102 = tempRet0;
-   $1103 = (_bitshift64Lshr(($1011|0),($1012|0),28)|0);
-   $1104 = tempRet0;
-   $1105 = (_bitshift64Shl(($1011|0),($1012|0),36)|0);
-   $1106 = tempRet0;
-   $1107 = $1105 | $1103;
-   $1108 = $1106 | $1104;
-   $1109 = (_bitshift64Lshr(($1011|0),($1012|0),34)|0);
-   $1110 = tempRet0;
-   $1111 = (_bitshift64Shl(($1011|0),($1012|0),30)|0);
-   $1112 = tempRet0;
-   $1113 = $1111 | $1109;
-   $1114 = $1112 | $1110;
-   $1115 = $1107 ^ $1113;
-   $1116 = $1108 ^ $1114;
-   $1117 = (_bitshift64Lshr(($1011|0),($1012|0),39)|0);
-   $1118 = tempRet0;
-   $1119 = (_bitshift64Shl(($1011|0),($1012|0),25)|0);
-   $1120 = tempRet0;
-   $1121 = $1119 | $1117;
-   $1122 = $1120 | $1118;
-   $1123 = $1115 ^ $1121;
-   $1124 = $1116 ^ $1122;
-   $1125 = $885 ^ $757;
-   $1126 = $886 ^ $758;
-   $1127 = $1011 & $1125;
-   $1128 = $1012 & $1126;
-   $1129 = $885 & $757;
-   $1130 = $886 & $758;
-   $1131 = $1127 ^ $1129;
-   $1132 = $1128 ^ $1130;
-   $1133 = (_i64Add(($1123|0),($1124|0),($1131|0),($1132|0))|0);
-   $1134 = tempRet0;
-   $1135 = (_i64Add(($1057|0),($1058|0),($629|0),($630|0))|0);
-   $1136 = tempRet0;
-   $1137 = (_i64Add(($1133|0),($1134|0),($1057|0),($1058|0))|0);
-   $1138 = tempRet0;
-   $1139 = (_bitshift64Lshr(($1135|0),($1136|0),14)|0);
-   $1140 = tempRet0;
-   $1141 = (_bitshift64Shl(($1135|0),($1136|0),50)|0);
-   $1142 = tempRet0;
-   $1143 = $1141 | $1139;
-   $1144 = $1142 | $1140;
-   $1145 = (_bitshift64Lshr(($1135|0),($1136|0),18)|0);
-   $1146 = tempRet0;
-   $1147 = (_bitshift64Shl(($1135|0),($1136|0),46)|0);
-   $1148 = tempRet0;
-   $1149 = $1147 | $1145;
-   $1150 = $1148 | $1146;
-   $1151 = $1143 ^ $1149;
-   $1152 = $1144 ^ $1150;
-   $1153 = (_bitshift64Lshr(($1135|0),($1136|0),41)|0);
-   $1154 = tempRet0;
-   $1155 = (_bitshift64Shl(($1135|0),($1136|0),23)|0);
-   $1156 = tempRet0;
-   $1157 = $1155 | $1153;
-   $1158 = $1156 | $1154;
-   $1159 = $1151 ^ $1157;
-   $1160 = $1152 ^ $1158;
-   $1161 = $1135 & $1009;
-   $1162 = $1136 & $1010;
-   $1163 = $1135 ^ -1;
-   $1164 = $1136 ^ -1;
-   $1165 = $883 & $1163;
-   $1166 = $884 & $1164;
-   $1167 = $1165 ^ $1161;
-   $1168 = $1166 ^ $1162;
-   $1169 = $$151221$i | 7;
-   $1170 = (8128 + ($1169<<3)|0);
-   $1171 = $1170;
-   $1172 = $1171;
-   $1173 = HEAP32[$1172>>2]|0;
-   $1174 = (($1171) + 4)|0;
-   $1175 = $1174;
-   $1176 = HEAP32[$1175>>2]|0;
-   $1177 = (_i64Add(($1173|0),($1176|0),($1077|0),($1078|0))|0);
-   $1178 = tempRet0;
-   $1179 = (_i64Add(($1177|0),($1178|0),($755|0),($756|0))|0);
-   $1180 = tempRet0;
-   $1181 = (_i64Add(($1179|0),($1180|0),($1167|0),($1168|0))|0);
-   $1182 = tempRet0;
-   $1183 = (_i64Add(($1181|0),($1182|0),($1159|0),($1160|0))|0);
-   $1184 = tempRet0;
-   $1185 = (_bitshift64Lshr(($975|0),($976|0),19)|0);
-   $1186 = tempRet0;
-   $1187 = (_bitshift64Shl(($975|0),($976|0),45)|0);
-   $1188 = tempRet0;
-   $1189 = $1187 | $1185;
-   $1190 = $1188 | $1186;
-   $1191 = (_bitshift64Lshr(($975|0),($976|0),61)|0);
-   $1192 = tempRet0;
-   $1193 = (_bitshift64Shl(($975|0),($976|0),3)|0);
-   $1194 = tempRet0;
-   $1195 = $1193 | $1191;
-   $1196 = $1194 | $1192;
-   $1197 = (_bitshift64Lshr(($975|0),($976|0),6)|0);
-   $1198 = tempRet0;
-   $1199 = $1195 ^ $1197;
-   $1200 = $1196 ^ $1198;
-   $1201 = $1199 ^ $1189;
-   $1202 = $1200 ^ $1190;
-   $1205 = (_bitshift64Lshr(($1203|0),($1204|0),1)|0);
-   $1206 = tempRet0;
-   $1207 = (_bitshift64Shl(($1203|0),($1204|0),63)|0);
-   $1208 = tempRet0;
-   $1209 = $1207 | $1205;
-   $1210 = $1208 | $1206;
-   $1211 = (_bitshift64Lshr(($1203|0),($1204|0),8)|0);
-   $1212 = tempRet0;
-   $1213 = (_bitshift64Shl(($1203|0),($1204|0),56)|0);
-   $1214 = tempRet0;
-   $1215 = $1213 | $1211;
-   $1216 = $1214 | $1212;
-   $1217 = (_bitshift64Lshr(($1203|0),($1204|0),7)|0);
-   $1218 = tempRet0;
-   $1219 = $1215 ^ $1217;
-   $1220 = $1216 ^ $1218;
-   $1221 = $1219 ^ $1209;
-   $1222 = $1220 ^ $1210;
-   $1223 = (_i64Add(($1221|0),($1222|0),($1077|0),($1078|0))|0);
-   $1224 = tempRet0;
-   $1225 = (_i64Add(($1223|0),($1224|0),($327|0),($328|0))|0);
-   $1226 = tempRet0;
-   $1227 = (_i64Add(($1225|0),($1226|0),($1201|0),($1202|0))|0);
-   $1228 = tempRet0;
-   $1229 = (_bitshift64Lshr(($1137|0),($1138|0),28)|0);
-   $1230 = tempRet0;
-   $1231 = (_bitshift64Shl(($1137|0),($1138|0),36)|0);
-   $1232 = tempRet0;
-   $1233 = $1231 | $1229;
-   $1234 = $1232 | $1230;
-   $1235 = (_bitshift64Lshr(($1137|0),($1138|0),34)|0);
-   $1236 = tempRet0;
-   $1237 = (_bitshift64Shl(($1137|0),($1138|0),30)|0);
-   $1238 = tempRet0;
-   $1239 = $1237 | $1235;
-   $1240 = $1238 | $1236;
-   $1241 = $1233 ^ $1239;
-   $1242 = $1234 ^ $1240;
-   $1243 = (_bitshift64Lshr(($1137|0),($1138|0),39)|0);
-   $1244 = tempRet0;
-   $1245 = (_bitshift64Shl(($1137|0),($1138|0),25)|0);
-   $1246 = tempRet0;
-   $1247 = $1245 | $1243;
-   $1248 = $1246 | $1244;
-   $1249 = $1241 ^ $1247;
-   $1250 = $1242 ^ $1248;
-   $1251 = $1011 ^ $885;
-   $1252 = $1012 ^ $886;
-   $1253 = $1137 & $1251;
-   $1254 = $1138 & $1252;
-   $1255 = $1011 & $885;
-   $1256 = $1012 & $886;
-   $1257 = $1253 ^ $1255;
-   $1258 = $1254 ^ $1256;
-   $1259 = (_i64Add(($1249|0),($1250|0),($1257|0),($1258|0))|0);
-   $1260 = tempRet0;
-   $1261 = (_i64Add(($1183|0),($1184|0),($757|0),($758|0))|0);
-   $1262 = tempRet0;
-   $1263 = (_i64Add(($1259|0),($1260|0),($1183|0),($1184|0))|0);
-   $1264 = tempRet0;
-   $1265 = (_bitshift64Lshr(($1261|0),($1262|0),14)|0);
-   $1266 = tempRet0;
-   $1267 = (_bitshift64Shl(($1261|0),($1262|0),50)|0);
-   $1268 = tempRet0;
-   $1269 = $1267 | $1265;
-   $1270 = $1268 | $1266;
-   $1271 = (_bitshift64Lshr(($1261|0),($1262|0),18)|0);
-   $1272 = tempRet0;
-   $1273 = (_bitshift64Shl(($1261|0),($1262|0),46)|0);
-   $1274 = tempRet0;
-   $1275 = $1273 | $1271;
-   $1276 = $1274 | $1272;
-   $1277 = $1269 ^ $1275;
-   $1278 = $1270 ^ $1276;
-   $1279 = (_bitshift64Lshr(($1261|0),($1262|0),41)|0);
-   $1280 = tempRet0;
-   $1281 = (_bitshift64Shl(($1261|0),($1262|0),23)|0);
-   $1282 = tempRet0;
-   $1283 = $1281 | $1279;
-   $1284 = $1282 | $1280;
-   $1285 = $1277 ^ $1283;
-   $1286 = $1278 ^ $1284;
-   $1287 = $1261 & $1135;
-   $1288 = $1262 & $1136;
-   $1289 = $1261 ^ -1;
-   $1290 = $1262 ^ -1;
-   $1291 = $1009 & $1289;
-   $1292 = $1010 & $1290;
-   $1293 = $1291 ^ $1287;
-   $1294 = $1292 ^ $1288;
-   $1295 = $$151221$i | 8;
-   $1296 = (8128 + ($1295<<3)|0);
-   $1297 = $1296;
-   $1298 = $1297;
-   $1299 = HEAP32[$1298>>2]|0;
-   $1300 = (($1297) + 4)|0;
-   $1301 = $1300;
-   $1302 = HEAP32[$1301>>2]|0;
-   $1303 = (_i64Add(($1299|0),($1302|0),($1203|0),($1204|0))|0);
-   $1304 = tempRet0;
-   $1305 = (_i64Add(($1303|0),($1304|0),($883|0),($884|0))|0);
-   $1306 = tempRet0;
-   $1307 = (_i64Add(($1305|0),($1306|0),($1293|0),($1294|0))|0);
-   $1308 = tempRet0;
-   $1309 = (_i64Add(($1307|0),($1308|0),($1285|0),($1286|0))|0);
-   $1310 = tempRet0;
-   $1311 = (_bitshift64Lshr(($1101|0),($1102|0),19)|0);
-   $1312 = tempRet0;
-   $1313 = (_bitshift64Shl(($1101|0),($1102|0),45)|0);
-   $1314 = tempRet0;
-   $1315 = $1313 | $1311;
-   $1316 = $1314 | $1312;
-   $1317 = (_bitshift64Lshr(($1101|0),($1102|0),61)|0);
-   $1318 = tempRet0;
-   $1319 = (_bitshift64Shl(($1101|0),($1102|0),3)|0);
-   $1320 = tempRet0;
-   $1321 = $1319 | $1317;
-   $1322 = $1320 | $1318;
-   $1323 = (_bitshift64Lshr(($1101|0),($1102|0),6)|0);
-   $1324 = tempRet0;
-   $1325 = $1321 ^ $1323;
-   $1326 = $1322 ^ $1324;
-   $1327 = $1325 ^ $1315;
-   $1328 = $1326 ^ $1316;
-   $1329 = (_bitshift64Lshr(($321|0),($322|0),1)|0);
-   $1330 = tempRet0;
-   $1331 = (_bitshift64Shl(($321|0),($322|0),63)|0);
-   $1332 = tempRet0;
-   $1333 = $1331 | $1329;
-   $1334 = $1332 | $1330;
-   $1335 = (_bitshift64Lshr(($321|0),($322|0),8)|0);
-   $1336 = tempRet0;
-   $1337 = (_bitshift64Shl(($321|0),($322|0),56)|0);
-   $1338 = tempRet0;
-   $1339 = $1337 | $1335;
-   $1340 = $1338 | $1336;
-   $1341 = (_bitshift64Lshr(($321|0),($322|0),7)|0);
-   $1342 = tempRet0;
-   $1343 = $1339 ^ $1341;
-   $1344 = $1340 ^ $1342;
-   $1345 = $1343 ^ $1333;
-   $1346 = $1344 ^ $1334;
-   $1347 = (_i64Add(($1345|0),($1346|0),($1203|0),($1204|0))|0);
-   $1348 = tempRet0;
-   $1349 = (_i64Add(($1347|0),($1348|0),($465|0),($466|0))|0);
-   $1350 = tempRet0;
-   $1351 = (_i64Add(($1349|0),($1350|0),($1327|0),($1328|0))|0);
-   $1352 = tempRet0;
-   $1353 = (_bitshift64Lshr(($1263|0),($1264|0),28)|0);
-   $1354 = tempRet0;
-   $1355 = (_bitshift64Shl(($1263|0),($1264|0),36)|0);
-   $1356 = tempRet0;
-   $1357 = $1355 | $1353;
-   $1358 = $1356 | $1354;
-   $1359 = (_bitshift64Lshr(($1263|0),($1264|0),34)|0);
-   $1360 = tempRet0;
-   $1361 = (_bitshift64Shl(($1263|0),($1264|0),30)|0);
-   $1362 = tempRet0;
-   $1363 = $1361 | $1359;
-   $1364 = $1362 | $1360;
-   $1365 = $1357 ^ $1363;
-   $1366 = $1358 ^ $1364;
-   $1367 = (_bitshift64Lshr(($1263|0),($1264|0),39)|0);
-   $1368 = tempRet0;
-   $1369 = (_bitshift64Shl(($1263|0),($1264|0),25)|0);
-   $1370 = tempRet0;
-   $1371 = $1369 | $1367;
-   $1372 = $1370 | $1368;
-   $1373 = $1365 ^ $1371;
-   $1374 = $1366 ^ $1372;
-   $1375 = $1137 ^ $1011;
-   $1376 = $1138 ^ $1012;
-   $1377 = $1263 & $1375;
-   $1378 = $1264 & $1376;
-   $1379 = $1137 & $1011;
-   $1380 = $1138 & $1012;
-   $1381 = $1377 ^ $1379;
-   $1382 = $1378 ^ $1380;
-   $1383 = (_i64Add(($1373|0),($1374|0),($1381|0),($1382|0))|0);
-   $1384 = tempRet0;
-   $1385 = (_i64Add(($1309|0),($1310|0),($885|0),($886|0))|0);
-   $1386 = tempRet0;
-   $1387 = (_i64Add(($1383|0),($1384|0),($1309|0),($1310|0))|0);
-   $1388 = tempRet0;
-   $1389 = (_bitshift64Lshr(($1385|0),($1386|0),14)|0);
-   $1390 = tempRet0;
-   $1391 = (_bitshift64Shl(($1385|0),($1386|0),50)|0);
-   $1392 = tempRet0;
-   $1393 = $1391 | $1389;
-   $1394 = $1392 | $1390;
-   $1395 = (_bitshift64Lshr(($1385|0),($1386|0),18)|0);
-   $1396 = tempRet0;
-   $1397 = (_bitshift64Shl(($1385|0),($1386|0),46)|0);
-   $1398 = tempRet0;
-   $1399 = $1397 | $1395;
-   $1400 = $1398 | $1396;
-   $1401 = $1393 ^ $1399;
-   $1402 = $1394 ^ $1400;
-   $1403 = (_bitshift64Lshr(($1385|0),($1386|0),41)|0);
-   $1404 = tempRet0;
-   $1405 = (_bitshift64Shl(($1385|0),($1386|0),23)|0);
-   $1406 = tempRet0;
-   $1407 = $1405 | $1403;
-   $1408 = $1406 | $1404;
-   $1409 = $1401 ^ $1407;
-   $1410 = $1402 ^ $1408;
-   $1411 = $1385 & $1261;
-   $1412 = $1386 & $1262;
-   $1413 = $1385 ^ -1;
-   $1414 = $1386 ^ -1;
-   $1415 = $1135 & $1413;
-   $1416 = $1136 & $1414;
-   $1417 = $1415 ^ $1411;
-   $1418 = $1416 ^ $1412;
-   $1419 = $$151221$i | 9;
-   $1420 = (8128 + ($1419<<3)|0);
-   $1421 = $1420;
-   $1422 = $1421;
-   $1423 = HEAP32[$1422>>2]|0;
-   $1424 = (($1421) + 4)|0;
-   $1425 = $1424;
-   $1426 = HEAP32[$1425>>2]|0;
-   $1427 = (_i64Add(($1423|0),($1426|0),($321|0),($322|0))|0);
-   $1428 = tempRet0;
-   $1429 = (_i64Add(($1427|0),($1428|0),($1009|0),($1010|0))|0);
-   $1430 = tempRet0;
-   $1431 = (_i64Add(($1429|0),($1430|0),($1417|0),($1418|0))|0);
-   $1432 = tempRet0;
-   $1433 = (_i64Add(($1431|0),($1432|0),($1409|0),($1410|0))|0);
-   $1434 = tempRet0;
-   $1435 = (_bitshift64Lshr(($1227|0),($1228|0),19)|0);
-   $1436 = tempRet0;
-   $1437 = (_bitshift64Shl(($1227|0),($1228|0),45)|0);
-   $1438 = tempRet0;
-   $1439 = $1437 | $1435;
-   $1440 = $1438 | $1436;
-   $1441 = (_bitshift64Lshr(($1227|0),($1228|0),61)|0);
-   $1442 = tempRet0;
-   $1443 = (_bitshift64Shl(($1227|0),($1228|0),3)|0);
-   $1444 = tempRet0;
-   $1445 = $1443 | $1441;
-   $1446 = $1444 | $1442;
-   $1447 = (_bitshift64Lshr(($1227|0),($1228|0),6)|0);
-   $1448 = tempRet0;
-   $1449 = $1445 ^ $1447;
-   $1450 = $1446 ^ $1448;
-   $1451 = $1449 ^ $1439;
-   $1452 = $1450 ^ $1440;
-   $1453 = (_bitshift64Lshr(($459|0),($460|0),1)|0);
-   $1454 = tempRet0;
-   $1455 = (_bitshift64Shl(($459|0),($460|0),63)|0);
-   $1456 = tempRet0;
-   $1457 = $1455 | $1453;
-   $1458 = $1456 | $1454;
-   $1459 = (_bitshift64Lshr(($459|0),($460|0),8)|0);
-   $1460 = tempRet0;
-   $1461 = (_bitshift64Shl(($459|0),($460|0),56)|0);
-   $1462 = tempRet0;
-   $1463 = $1461 | $1459;
-   $1464 = $1462 | $1460;
-   $1465 = (_bitshift64Lshr(($459|0),($460|0),7)|0);
-   $1466 = tempRet0;
-   $1467 = $1463 ^ $1465;
-   $1468 = $1464 ^ $1466;
-   $1469 = $1467 ^ $1457;
-   $1470 = $1468 ^ $1458;
-   $1471 = (_i64Add(($1469|0),($1470|0),($321|0),($322|0))|0);
-   $1472 = tempRet0;
-   $1473 = (_i64Add(($1471|0),($1472|0),($593|0),($594|0))|0);
-   $1474 = tempRet0;
-   $1475 = (_i64Add(($1473|0),($1474|0),($1451|0),($1452|0))|0);
-   $1476 = tempRet0;
-   $1477 = (_bitshift64Lshr(($1387|0),($1388|0),28)|0);
-   $1478 = tempRet0;
-   $1479 = (_bitshift64Shl(($1387|0),($1388|0),36)|0);
-   $1480 = tempRet0;
-   $1481 = $1479 | $1477;
-   $1482 = $1480 | $1478;
-   $1483 = (_bitshift64Lshr(($1387|0),($1388|0),34)|0);
-   $1484 = tempRet0;
-   $1485 = (_bitshift64Shl(($1387|0),($1388|0),30)|0);
-   $1486 = tempRet0;
-   $1487 = $1485 | $1483;
-   $1488 = $1486 | $1484;
-   $1489 = $1481 ^ $1487;
-   $1490 = $1482 ^ $1488;
-   $1491 = (_bitshift64Lshr(($1387|0),($1388|0),39)|0);
-   $1492 = tempRet0;
-   $1493 = (_bitshift64Shl(($1387|0),($1388|0),25)|0);
-   $1494 = tempRet0;
-   $1495 = $1493 | $1491;
-   $1496 = $1494 | $1492;
-   $1497 = $1489 ^ $1495;
-   $1498 = $1490 ^ $1496;
-   $1499 = $1263 ^ $1137;
-   $1500 = $1264 ^ $1138;
-   $1501 = $1387 & $1499;
-   $1502 = $1388 & $1500;
-   $1503 = $1263 & $1137;
-   $1504 = $1264 & $1138;
-   $1505 = $1501 ^ $1503;
-   $1506 = $1502 ^ $1504;
-   $1507 = (_i64Add(($1497|0),($1498|0),($1505|0),($1506|0))|0);
-   $1508 = tempRet0;
-   $1509 = (_i64Add(($1433|0),($1434|0),($1011|0),($1012|0))|0);
-   $1510 = tempRet0;
-   $1511 = (_i64Add(($1507|0),($1508|0),($1433|0),($1434|0))|0);
-   $1512 = tempRet0;
-   $1513 = (_bitshift64Lshr(($1509|0),($1510|0),14)|0);
-   $1514 = tempRet0;
-   $1515 = (_bitshift64Shl(($1509|0),($1510|0),50)|0);
-   $1516 = tempRet0;
-   $1517 = $1515 | $1513;
-   $1518 = $1516 | $1514;
-   $1519 = (_bitshift64Lshr(($1509|0),($1510|0),18)|0);
-   $1520 = tempRet0;
-   $1521 = (_bitshift64Shl(($1509|0),($1510|0),46)|0);
-   $1522 = tempRet0;
-   $1523 = $1521 | $1519;
-   $1524 = $1522 | $1520;
-   $1525 = $1517 ^ $1523;
-   $1526 = $1518 ^ $1524;
-   $1527 = (_bitshift64Lshr(($1509|0),($1510|0),41)|0);
-   $1528 = tempRet0;
-   $1529 = (_bitshift64Shl(($1509|0),($1510|0),23)|0);
-   $1530 = tempRet0;
-   $1531 = $1529 | $1527;
-   $1532 = $1530 | $1528;
-   $1533 = $1525 ^ $1531;
-   $1534 = $1526 ^ $1532;
-   $1535 = $1509 & $1385;
-   $1536 = $1510 & $1386;
-   $1537 = $1509 ^ -1;
-   $1538 = $1510 ^ -1;
-   $1539 = $1261 & $1537;
-   $1540 = $1262 & $1538;
-   $1541 = $1539 ^ $1535;
-   $1542 = $1540 ^ $1536;
-   $1543 = $$151221$i | 10;
-   $1544 = (8128 + ($1543<<3)|0);
-   $1545 = $1544;
-   $1546 = $1545;
-   $1547 = HEAP32[$1546>>2]|0;
-   $1548 = (($1545) + 4)|0;
-   $1549 = $1548;
-   $1550 = HEAP32[$1549>>2]|0;
-   $1551 = (_i64Add(($1547|0),($1550|0),($459|0),($460|0))|0);
-   $1552 = tempRet0;
-   $1553 = (_i64Add(($1551|0),($1552|0),($1135|0),($1136|0))|0);
-   $1554 = tempRet0;
-   $1555 = (_i64Add(($1553|0),($1554|0),($1541|0),($1542|0))|0);
-   $1556 = tempRet0;
-   $1557 = (_i64Add(($1555|0),($1556|0),($1533|0),($1534|0))|0);
-   $1558 = tempRet0;
-   $1559 = (_bitshift64Lshr(($1351|0),($1352|0),19)|0);
-   $1560 = tempRet0;
-   $1561 = (_bitshift64Shl(($1351|0),($1352|0),45)|0);
-   $1562 = tempRet0;
-   $1563 = $1561 | $1559;
-   $1564 = $1562 | $1560;
-   $1565 = (_bitshift64Lshr(($1351|0),($1352|0),61)|0);
-   $1566 = tempRet0;
-   $1567 = (_bitshift64Shl(($1351|0),($1352|0),3)|0);
-   $1568 = tempRet0;
-   $1569 = $1567 | $1565;
-   $1570 = $1568 | $1566;
-   $1571 = (_bitshift64Lshr(($1351|0),($1352|0),6)|0);
-   $1572 = tempRet0;
-   $1573 = $1569 ^ $1571;
-   $1574 = $1570 ^ $1572;
-   $1575 = $1573 ^ $1563;
-   $1576 = $1574 ^ $1564;
-   $1577 = (_bitshift64Lshr(($587|0),($588|0),1)|0);
-   $1578 = tempRet0;
-   $1579 = (_bitshift64Shl(($587|0),($588|0),63)|0);
-   $1580 = tempRet0;
-   $1581 = $1579 | $1577;
-   $1582 = $1580 | $1578;
-   $1583 = (_bitshift64Lshr(($587|0),($588|0),8)|0);
-   $1584 = tempRet0;
-   $1585 = (_bitshift64Shl(($587|0),($588|0),56)|0);
-   $1586 = tempRet0;
-   $1587 = $1585 | $1583;
-   $1588 = $1586 | $1584;
-   $1589 = (_bitshift64Lshr(($587|0),($588|0),7)|0);
-   $1590 = tempRet0;
-   $1591 = $1587 ^ $1589;
-   $1592 = $1588 ^ $1590;
-   $1593 = $1591 ^ $1581;
-   $1594 = $1592 ^ $1582;
-   $1595 = (_i64Add(($1593|0),($1594|0),($459|0),($460|0))|0);
-   $1596 = tempRet0;
-   $1597 = (_i64Add(($1595|0),($1596|0),($721|0),($722|0))|0);
-   $1598 = tempRet0;
-   $1599 = (_i64Add(($1597|0),($1598|0),($1575|0),($1576|0))|0);
-   $1600 = tempRet0;
-   $1601 = (_bitshift64Lshr(($1511|0),($1512|0),28)|0);
-   $1602 = tempRet0;
-   $1603 = (_bitshift64Shl(($1511|0),($1512|0),36)|0);
-   $1604 = tempRet0;
-   $1605 = $1603 | $1601;
-   $1606 = $1604 | $1602;
-   $1607 = (_bitshift64Lshr(($1511|0),($1512|0),34)|0);
-   $1608 = tempRet0;
-   $1609 = (_bitshift64Shl(($1511|0),($1512|0),30)|0);
-   $1610 = tempRet0;
-   $1611 = $1609 | $1607;
-   $1612 = $1610 | $1608;
-   $1613 = $1605 ^ $1611;
-   $1614 = $1606 ^ $1612;
-   $1615 = (_bitshift64Lshr(($1511|0),($1512|0),39)|0);
-   $1616 = tempRet0;
-   $1617 = (_bitshift64Shl(($1511|0),($1512|0),25)|0);
-   $1618 = tempRet0;
-   $1619 = $1617 | $1615;
-   $1620 = $1618 | $1616;
-   $1621 = $1613 ^ $1619;
-   $1622 = $1614 ^ $1620;
-   $1623 = $1387 ^ $1263;
-   $1624 = $1388 ^ $1264;
-   $1625 = $1511 & $1623;
-   $1626 = $1512 & $1624;
-   $1627 = $1387 & $1263;
-   $1628 = $1388 & $1264;
-   $1629 = $1625 ^ $1627;
-   $1630 = $1626 ^ $1628;
-   $1631 = (_i64Add(($1621|0),($1622|0),($1629|0),($1630|0))|0);
-   $1632 = tempRet0;
-   $1633 = (_i64Add(($1557|0),($1558|0),($1137|0),($1138|0))|0);
-   $1634 = tempRet0;
-   $1635 = (_i64Add(($1631|0),($1632|0),($1557|0),($1558|0))|0);
-   $1636 = tempRet0;
-   $1637 = (_bitshift64Lshr(($1633|0),($1634|0),14)|0);
-   $1638 = tempRet0;
-   $1639 = (_bitshift64Shl(($1633|0),($1634|0),50)|0);
-   $1640 = tempRet0;
-   $1641 = $1639 | $1637;
-   $1642 = $1640 | $1638;
-   $1643 = (_bitshift64Lshr(($1633|0),($1634|0),18)|0);
-   $1644 = tempRet0;
-   $1645 = (_bitshift64Shl(($1633|0),($1634|0),46)|0);
-   $1646 = tempRet0;
-   $1647 = $1645 | $1643;
-   $1648 = $1646 | $1644;
-   $1649 = $1641 ^ $1647;
-   $1650 = $1642 ^ $1648;
-   $1651 = (_bitshift64Lshr(($1633|0),($1634|0),41)|0);
-   $1652 = tempRet0;
-   $1653 = (_bitshift64Shl(($1633|0),($1634|0),23)|0);
-   $1654 = tempRet0;
-   $1655 = $1653 | $1651;
-   $1656 = $1654 | $1652;
-   $1657 = $1649 ^ $1655;
-   $1658 = $1650 ^ $1656;
-   $1659 = $1633 & $1509;
-   $1660 = $1634 & $1510;
-   $1661 = $1633 ^ -1;
-   $1662 = $1634 ^ -1;
-   $1663 = $1385 & $1661;
-   $1664 = $1386 & $1662;
-   $1665 = $1663 ^ $1659;
-   $1666 = $1664 ^ $1660;
-   $1667 = $$151221$i | 11;
-   $1668 = (8128 + ($1667<<3)|0);
-   $1669 = $1668;
-   $1670 = $1669;
-   $1671 = HEAP32[$1670>>2]|0;
-   $1672 = (($1669) + 4)|0;
-   $1673 = $1672;
-   $1674 = HEAP32[$1673>>2]|0;
-   $1675 = (_i64Add(($1671|0),($1674|0),($587|0),($588|0))|0);
-   $1676 = tempRet0;
-   $1677 = (_i64Add(($1675|0),($1676|0),($1261|0),($1262|0))|0);
-   $1678 = tempRet0;
-   $1679 = (_i64Add(($1677|0),($1678|0),($1665|0),($1666|0))|0);
-   $1680 = tempRet0;
-   $1681 = (_i64Add(($1679|0),($1680|0),($1657|0),($1658|0))|0);
-   $1682 = tempRet0;
-   $1683 = (_bitshift64Lshr(($1475|0),($1476|0),19)|0);
-   $1684 = tempRet0;
-   $1685 = (_bitshift64Shl(($1475|0),($1476|0),45)|0);
-   $1686 = tempRet0;
-   $1687 = $1685 | $1683;
-   $1688 = $1686 | $1684;
-   $1689 = (_bitshift64Lshr(($1475|0),($1476|0),61)|0);
-   $1690 = tempRet0;
-   $1691 = (_bitshift64Shl(($1475|0),($1476|0),3)|0);
-   $1692 = tempRet0;
-   $1693 = $1691 | $1689;
-   $1694 = $1692 | $1690;
-   $1695 = (_bitshift64Lshr(($1475|0),($1476|0),6)|0);
-   $1696 = tempRet0;
-   $1697 = $1693 ^ $1695;
-   $1698 = $1694 ^ $1696;
-   $1699 = $1697 ^ $1687;
-   $1700 = $1698 ^ $1688;
-   $1701 = (_bitshift64Lshr(($715|0),($716|0),1)|0);
-   $1702 = tempRet0;
-   $1703 = (_bitshift64Shl(($715|0),($716|0),63)|0);
-   $1704 = tempRet0;
-   $1705 = $1703 | $1701;
-   $1706 = $1704 | $1702;
-   $1707 = (_bitshift64Lshr(($715|0),($716|0),8)|0);
-   $1708 = tempRet0;
-   $1709 = (_bitshift64Shl(($715|0),($716|0),56)|0);
-   $1710 = tempRet0;
-   $1711 = $1709 | $1707;
-   $1712 = $1710 | $1708;
-   $1713 = (_bitshift64Lshr(($715|0),($716|0),7)|0);
-   $1714 = tempRet0;
-   $1715 = $1711 ^ $1713;
-   $1716 = $1712 ^ $1714;
-   $1717 = $1715 ^ $1705;
-   $1718 = $1716 ^ $1706;
-   $1719 = (_i64Add(($1717|0),($1718|0),($587|0),($588|0))|0);
-   $1720 = tempRet0;
-   $1721 = (_i64Add(($1719|0),($1720|0),($849|0),($850|0))|0);
-   $1722 = tempRet0;
-   $1723 = (_i64Add(($1721|0),($1722|0),($1699|0),($1700|0))|0);
-   $1724 = tempRet0;
-   $1725 = (_bitshift64Lshr(($1635|0),($1636|0),28)|0);
-   $1726 = tempRet0;
-   $1727 = (_bitshift64Shl(($1635|0),($1636|0),36)|0);
-   $1728 = tempRet0;
-   $1729 = $1727 | $1725;
-   $1730 = $1728 | $1726;
-   $1731 = (_bitshift64Lshr(($1635|0),($1636|0),34)|0);
-   $1732 = tempRet0;
-   $1733 = (_bitshift64Shl(($1635|0),($1636|0),30)|0);
-   $1734 = tempRet0;
-   $1735 = $1733 | $1731;
-   $1736 = $1734 | $1732;
-   $1737 = $1729 ^ $1735;
-   $1738 = $1730 ^ $1736;
-   $1739 = (_bitshift64Lshr(($1635|0),($1636|0),39)|0);
-   $1740 = tempRet0;
-   $1741 = (_bitshift64Shl(($1635|0),($1636|0),25)|0);
-   $1742 = tempRet0;
-   $1743 = $1741 | $1739;
-   $1744 = $1742 | $1740;
-   $1745 = $1737 ^ $1743;
-   $1746 = $1738 ^ $1744;
-   $1747 = $1511 ^ $1387;
-   $1748 = $1512 ^ $1388;
-   $1749 = $1635 & $1747;
-   $1750 = $1636 & $1748;
-   $1751 = $1511 & $1387;
-   $1752 = $1512 & $1388;
-   $1753 = $1749 ^ $1751;
-   $1754 = $1750 ^ $1752;
-   $1755 = (_i64Add(($1745|0),($1746|0),($1753|0),($1754|0))|0);
-   $1756 = tempRet0;
-   $1757 = (_i64Add(($1681|0),($1682|0),($1263|0),($1264|0))|0);
-   $1758 = tempRet0;
-   $1759 = (_i64Add(($1755|0),($1756|0),($1681|0),($1682|0))|0);
-   $1760 = tempRet0;
-   $1761 = (_bitshift64Lshr(($1757|0),($1758|0),14)|0);
-   $1762 = tempRet0;
-   $1763 = (_bitshift64Shl(($1757|0),($1758|0),50)|0);
-   $1764 = tempRet0;
-   $1765 = $1763 | $1761;
-   $1766 = $1764 | $1762;
-   $1767 = (_bitshift64Lshr(($1757|0),($1758|0),18)|0);
-   $1768 = tempRet0;
-   $1769 = (_bitshift64Shl(($1757|0),($1758|0),46)|0);
-   $1770 = tempRet0;
-   $1771 = $1769 | $1767;
-   $1772 = $1770 | $1768;
-   $1773 = $1765 ^ $1771;
-   $1774 = $1766 ^ $1772;
-   $1775 = (_bitshift64Lshr(($1757|0),($1758|0),41)|0);
-   $1776 = tempRet0;
-   $1777 = (_bitshift64Shl(($1757|0),($1758|0),23)|0);
-   $1778 = tempRet0;
-   $1779 = $1777 | $1775;
-   $1780 = $1778 | $1776;
-   $1781 = $1773 ^ $1779;
-   $1782 = $1774 ^ $1780;
-   $1783 = $1757 & $1633;
-   $1784 = $1758 & $1634;
-   $1785 = $1757 ^ -1;
-   $1786 = $1758 ^ -1;
-   $1787 = $1509 & $1785;
-   $1788 = $1510 & $1786;
-   $1789 = $1787 ^ $1783;
-   $1790 = $1788 ^ $1784;
-   $1791 = $$151221$i | 12;
-   $1792 = (8128 + ($1791<<3)|0);
-   $1793 = $1792;
-   $1794 = $1793;
-   $1795 = HEAP32[$1794>>2]|0;
-   $1796 = (($1793) + 4)|0;
-   $1797 = $1796;
-   $1798 = HEAP32[$1797>>2]|0;
-   $1799 = (_i64Add(($1795|0),($1798|0),($715|0),($716|0))|0);
-   $1800 = tempRet0;
-   $1801 = (_i64Add(($1799|0),($1800|0),($1385|0),($1386|0))|0);
-   $1802 = tempRet0;
-   $1803 = (_i64Add(($1801|0),($1802|0),($1789|0),($1790|0))|0);
-   $1804 = tempRet0;
-   $1805 = (_i64Add(($1803|0),($1804|0),($1781|0),($1782|0))|0);
-   $1806 = tempRet0;
-   $1807 = (_bitshift64Lshr(($1599|0),($1600|0),19)|0);
-   $1808 = tempRet0;
-   $1809 = (_bitshift64Shl(($1599|0),($1600|0),45)|0);
-   $1810 = tempRet0;
-   $1811 = $1809 | $1807;
-   $1812 = $1810 | $1808;
-   $1813 = (_bitshift64Lshr(($1599|0),($1600|0),61)|0);
-   $1814 = tempRet0;
-   $1815 = (_bitshift64Shl(($1599|0),($1600|0),3)|0);
-   $1816 = tempRet0;
-   $1817 = $1815 | $1813;
-   $1818 = $1816 | $1814;
-   $1819 = (_bitshift64Lshr(($1599|0),($1600|0),6)|0);
-   $1820 = tempRet0;
-   $1821 = $1817 ^ $1819;
-   $1822 = $1818 ^ $1820;
-   $1823 = $1821 ^ $1811;
-   $1824 = $1822 ^ $1812;
-   $1825 = (_bitshift64Lshr(($843|0),($844|0),1)|0);
-   $1826 = tempRet0;
-   $1827 = (_bitshift64Shl(($843|0),($844|0),63)|0);
-   $1828 = tempRet0;
-   $1829 = $1827 | $1825;
-   $1830 = $1828 | $1826;
-   $1831 = (_bitshift64Lshr(($843|0),($844|0),8)|0);
-   $1832 = tempRet0;
-   $1833 = (_bitshift64Shl(($843|0),($844|0),56)|0);
-   $1834 = tempRet0;
-   $1835 = $1833 | $1831;
-   $1836 = $1834 | $1832;
-   $1837 = (_bitshift64Lshr(($843|0),($844|0),7)|0);
-   $1838 = tempRet0;
-   $1839 = $1835 ^ $1837;
-   $1840 = $1836 ^ $1838;
-   $1841 = $1839 ^ $1829;
-   $1842 = $1840 ^ $1830;
-   $1843 = (_i64Add(($1841|0),($1842|0),($715|0),($716|0))|0);
-   $1844 = tempRet0;
-   $1845 = (_i64Add(($1843|0),($1844|0),($975|0),($976|0))|0);
-   $1846 = tempRet0;
-   $1847 = (_i64Add(($1845|0),($1846|0),($1823|0),($1824|0))|0);
-   $1848 = tempRet0;
-   $1849 = (_bitshift64Lshr(($1759|0),($1760|0),28)|0);
-   $1850 = tempRet0;
-   $1851 = (_bitshift64Shl(($1759|0),($1760|0),36)|0);
-   $1852 = tempRet0;
-   $1853 = $1851 | $1849;
-   $1854 = $1852 | $1850;
-   $1855 = (_bitshift64Lshr(($1759|0),($1760|0),34)|0);
-   $1856 = tempRet0;
-   $1857 = (_bitshift64Shl(($1759|0),($1760|0),30)|0);
-   $1858 = tempRet0;
-   $1859 = $1857 | $1855;
-   $1860 = $1858 | $1856;
-   $1861 = $1853 ^ $1859;
-   $1862 = $1854 ^ $1860;
-   $1863 = (_bitshift64Lshr(($1759|0),($1760|0),39)|0);
-   $1864 = tempRet0;
-   $1865 = (_bitshift64Shl(($1759|0),($1760|0),25)|0);
-   $1866 = tempRet0;
-   $1867 = $1865 | $1863;
-   $1868 = $1866 | $1864;
-   $1869 = $1861 ^ $1867;
-   $1870 = $1862 ^ $1868;
-   $1871 = $1635 ^ $1511;
-   $1872 = $1636 ^ $1512;
-   $1873 = $1759 & $1871;
-   $1874 = $1760 & $1872;
-   $1875 = $1635 & $1511;
-   $1876 = $1636 & $1512;
-   $1877 = $1873 ^ $1875;
-   $1878 = $1874 ^ $1876;
-   $1879 = (_i64Add(($1869|0),($1870|0),($1877|0),($1878|0))|0);
-   $1880 = tempRet0;
-   $1881 = (_i64Add(($1805|0),($1806|0),($1387|0),($1388|0))|0);
-   $1882 = tempRet0;
-   $1883 = (_i64Add(($1879|0),($1880|0),($1805|0),($1806|0))|0);
-   $1884 = tempRet0;
-   $1885 = (_bitshift64Lshr(($1881|0),($1882|0),14)|0);
-   $1886 = tempRet0;
-   $1887 = (_bitshift64Shl(($1881|0),($1882|0),50)|0);
-   $1888 = tempRet0;
-   $1889 = $1887 | $1885;
-   $1890 = $1888 | $1886;
-   $1891 = (_bitshift64Lshr(($1881|0),($1882|0),18)|0);
-   $1892 = tempRet0;
-   $1893 = (_bitshift64Shl(($1881|0),($1882|0),46)|0);
-   $1894 = tempRet0;
-   $1895 = $1893 | $1891;
-   $1896 = $1894 | $1892;
-   $1897 = $1889 ^ $1895;
-   $1898 = $1890 ^ $1896;
-   $1899 = (_bitshift64Lshr(($1881|0),($1882|0),41)|0);
-   $1900 = tempRet0;
-   $1901 = (_bitshift64Shl(($1881|0),($1882|0),23)|0);
-   $1902 = tempRet0;
-   $1903 = $1901 | $1899;
-   $1904 = $1902 | $1900;
-   $1905 = $1897 ^ $1903;
-   $1906 = $1898 ^ $1904;
-   $1907 = $1881 & $1757;
-   $1908 = $1882 & $1758;
-   $1909 = $1881 ^ -1;
-   $1910 = $1882 ^ -1;
-   $1911 = $1633 & $1909;
-   $1912 = $1634 & $1910;
-   $1913 = $1911 ^ $1907;
-   $1914 = $1912 ^ $1908;
-   $1915 = $$151221$i | 13;
-   $1916 = (8128 + ($1915<<3)|0);
-   $1917 = $1916;
-   $1918 = $1917;
-   $1919 = HEAP32[$1918>>2]|0;
-   $1920 = (($1917) + 4)|0;
-   $1921 = $1920;
-   $1922 = HEAP32[$1921>>2]|0;
-   $1923 = (_i64Add(($1919|0),($1922|0),($843|0),($844|0))|0);
-   $1924 = tempRet0;
-   $1925 = (_i64Add(($1923|0),($1924|0),($1509|0),($1510|0))|0);
-   $1926 = tempRet0;
-   $1927 = (_i64Add(($1925|0),($1926|0),($1913|0),($1914|0))|0);
-   $1928 = tempRet0;
-   $1929 = (_i64Add(($1927|0),($1928|0),($1905|0),($1906|0))|0);
-   $1930 = tempRet0;
-   $1931 = (_bitshift64Lshr(($1723|0),($1724|0),19)|0);
-   $1932 = tempRet0;
-   $1933 = (_bitshift64Shl(($1723|0),($1724|0),45)|0);
-   $1934 = tempRet0;
-   $1935 = $1933 | $1931;
-   $1936 = $1934 | $1932;
-   $1937 = (_bitshift64Lshr(($1723|0),($1724|0),61)|0);
-   $1938 = tempRet0;
-   $1939 = (_bitshift64Shl(($1723|0),($1724|0),3)|0);
-   $1940 = tempRet0;
-   $1941 = $1939 | $1937;
-   $1942 = $1940 | $1938;
-   $1943 = (_bitshift64Lshr(($1723|0),($1724|0),6)|0);
-   $1944 = tempRet0;
-   $1945 = $1941 ^ $1943;
-   $1946 = $1942 ^ $1944;
-   $1947 = $1945 ^ $1935;
-   $1948 = $1946 ^ $1936;
-   $1949 = (_bitshift64Lshr(($281|0),($282|0),1)|0);
-   $1950 = tempRet0;
-   $1951 = (_bitshift64Shl(($281|0),($282|0),63)|0);
-   $1952 = tempRet0;
-   $1953 = $1951 | $1949;
-   $1954 = $1952 | $1950;
-   $1955 = (_bitshift64Lshr(($281|0),($282|0),8)|0);
-   $1956 = tempRet0;
-   $1957 = (_bitshift64Shl(($281|0),($282|0),56)|0);
-   $1958 = tempRet0;
-   $1959 = $1957 | $1955;
-   $1960 = $1958 | $1956;
-   $1961 = (_bitshift64Lshr(($281|0),($282|0),7)|0);
-   $1962 = tempRet0;
-   $1963 = $1959 ^ $1961;
-   $1964 = $1960 ^ $1962;
-   $1965 = $1963 ^ $1953;
-   $1966 = $1964 ^ $1954;
-   $1967 = (_i64Add(($1965|0),($1966|0),($843|0),($844|0))|0);
-   $1968 = tempRet0;
-   $1969 = (_i64Add(($1967|0),($1968|0),($1101|0),($1102|0))|0);
-   $1970 = tempRet0;
-   $1971 = (_i64Add(($1969|0),($1970|0),($1947|0),($1948|0))|0);
-   $1972 = tempRet0;
-   $1973 = (_bitshift64Lshr(($1883|0),($1884|0),28)|0);
-   $1974 = tempRet0;
-   $1975 = (_bitshift64Shl(($1883|0),($1884|0),36)|0);
-   $1976 = tempRet0;
-   $1977 = $1975 | $1973;
-   $1978 = $1976 | $1974;
-   $1979 = (_bitshift64Lshr(($1883|0),($1884|0),34)|0);
-   $1980 = tempRet0;
-   $1981 = (_bitshift64Shl(($1883|0),($1884|0),30)|0);
-   $1982 = tempRet0;
-   $1983 = $1981 | $1979;
-   $1984 = $1982 | $1980;
-   $1985 = $1977 ^ $1983;
-   $1986 = $1978 ^ $1984;
-   $1987 = (_bitshift64Lshr(($1883|0),($1884|0),39)|0);
-   $1988 = tempRet0;
-   $1989 = (_bitshift64Shl(($1883|0),($1884|0),25)|0);
-   $1990 = tempRet0;
-   $1991 = $1989 | $1987;
-   $1992 = $1990 | $1988;
-   $1993 = $1985 ^ $1991;
-   $1994 = $1986 ^ $1992;
-   $1995 = $1759 ^ $1635;
-   $1996 = $1760 ^ $1636;
-   $1997 = $1883 & $1995;
-   $1998 = $1884 & $1996;
-   $1999 = $1759 & $1635;
-   $2000 = $1760 & $1636;
-   $2001 = $1997 ^ $1999;
-   $2002 = $1998 ^ $2000;
-   $2003 = (_i64Add(($1993|0),($1994|0),($2001|0),($2002|0))|0);
-   $2004 = tempRet0;
-   $2005 = (_i64Add(($1929|0),($1930|0),($1511|0),($1512|0))|0);
-   $2006 = tempRet0;
-   $2007 = (_i64Add(($2003|0),($2004|0),($1929|0),($1930|0))|0);
-   $2008 = tempRet0;
-   $2009 = (_bitshift64Lshr(($2005|0),($2006|0),14)|0);
-   $2010 = tempRet0;
-   $2011 = (_bitshift64Shl(($2005|0),($2006|0),50)|0);
-   $2012 = tempRet0;
-   $2013 = $2011 | $2009;
-   $2014 = $2012 | $2010;
-   $2015 = (_bitshift64Lshr(($2005|0),($2006|0),18)|0);
-   $2016 = tempRet0;
-   $2017 = (_bitshift64Shl(($2005|0),($2006|0),46)|0);
-   $2018 = tempRet0;
-   $2019 = $2017 | $2015;
-   $2020 = $2018 | $2016;
-   $2021 = $2013 ^ $2019;
-   $2022 = $2014 ^ $2020;
-   $2023 = (_bitshift64Lshr(($2005|0),($2006|0),41)|0);
-   $2024 = tempRet0;
-   $2025 = (_bitshift64Shl(($2005|0),($2006|0),23)|0);
-   $2026 = tempRet0;
-   $2027 = $2025 | $2023;
-   $2028 = $2026 | $2024;
-   $2029 = $2021 ^ $2027;
-   $2030 = $2022 ^ $2028;
-   $2031 = $2005 & $1881;
-   $2032 = $2006 & $1882;
-   $2033 = $2005 ^ -1;
-   $2034 = $2006 ^ -1;
-   $2035 = $1757 & $2033;
-   $2036 = $1758 & $2034;
-   $2037 = $2035 ^ $2031;
-   $2038 = $2036 ^ $2032;
-   $2039 = $$151221$i | 14;
-   $2040 = (8128 + ($2039<<3)|0);
-   $2041 = $2040;
-   $2042 = $2041;
-   $2043 = HEAP32[$2042>>2]|0;
-   $2044 = (($2041) + 4)|0;
-   $2045 = $2044;
-   $2046 = HEAP32[$2045>>2]|0;
-   $2047 = (_i64Add(($2043|0),($2046|0),($281|0),($282|0))|0);
-   $2048 = tempRet0;
-   $2049 = (_i64Add(($2047|0),($2048|0),($1633|0),($1634|0))|0);
-   $2050 = tempRet0;
-   $2051 = (_i64Add(($2049|0),($2050|0),($2037|0),($2038|0))|0);
-   $2052 = tempRet0;
-   $2053 = (_i64Add(($2051|0),($2052|0),($2029|0),($2030|0))|0);
-   $2054 = tempRet0;
-   $2055 = (_bitshift64Lshr(($1847|0),($1848|0),19)|0);
-   $2056 = tempRet0;
-   $2057 = (_bitshift64Shl(($1847|0),($1848|0),45)|0);
-   $2058 = tempRet0;
-   $2059 = $2057 | $2055;
-   $2060 = $2058 | $2056;
-   $2061 = (_bitshift64Lshr(($1847|0),($1848|0),61)|0);
-   $2062 = tempRet0;
-   $2063 = (_bitshift64Shl(($1847|0),($1848|0),3)|0);
-   $2064 = tempRet0;
-   $2065 = $2063 | $2061;
-   $2066 = $2064 | $2062;
-   $2067 = (_bitshift64Lshr(($1847|0),($1848|0),6)|0);
-   $2068 = tempRet0;
-   $2069 = $2065 ^ $2067;
-   $2070 = $2066 ^ $2068;
-   $2071 = $2069 ^ $2059;
-   $2072 = $2070 ^ $2060;
-   $2073 = (_bitshift64Lshr(($419|0),($420|0),1)|0);
-   $2074 = tempRet0;
-   $2075 = (_bitshift64Shl(($419|0),($420|0),63)|0);
-   $2076 = tempRet0;
-   $2077 = $2075 | $2073;
-   $2078 = $2076 | $2074;
-   $2079 = (_bitshift64Lshr(($419|0),($420|0),8)|0);
-   $2080 = tempRet0;
-   $2081 = (_bitshift64Shl(($419|0),($420|0),56)|0);
-   $2082 = tempRet0;
-   $2083 = $2081 | $2079;
-   $2084 = $2082 | $2080;
-   $2085 = (_bitshift64Lshr(($419|0),($420|0),7)|0);
-   $2086 = tempRet0;
-   $2087 = $2083 ^ $2085;
-   $2088 = $2084 ^ $2086;
-   $2089 = $2087 ^ $2077;
-   $2090 = $2088 ^ $2078;
-   $2091 = (_i64Add(($2089|0),($2090|0),($281|0),($282|0))|0);
-   $2092 = tempRet0;
-   $2093 = (_i64Add(($2091|0),($2092|0),($1227|0),($1228|0))|0);
-   $2094 = tempRet0;
-   $2095 = (_i64Add(($2093|0),($2094|0),($2071|0),($2072|0))|0);
-   $2096 = tempRet0;
-   $2097 = (_bitshift64Lshr(($2007|0),($2008|0),28)|0);
-   $2098 = tempRet0;
-   $2099 = (_bitshift64Shl(($2007|0),($2008|0),36)|0);
-   $2100 = tempRet0;
-   $2101 = $2099 | $2097;
-   $2102 = $2100 | $2098;
-   $2103 = (_bitshift64Lshr(($2007|0),($2008|0),34)|0);
-   $2104 = tempRet0;
-   $2105 = (_bitshift64Shl(($2007|0),($2008|0),30)|0);
-   $2106 = tempRet0;
-   $2107 = $2105 | $2103;
-   $2108 = $2106 | $2104;
-   $2109 = $2101 ^ $2107;
-   $2110 = $2102 ^ $2108;
-   $2111 = (_bitshift64Lshr(($2007|0),($2008|0),39)|0);
-   $2112 = tempRet0;
-   $2113 = (_bitshift64Shl(($2007|0),($2008|0),25)|0);
-   $2114 = tempRet0;
-   $2115 = $2113 | $2111;
-   $2116 = $2114 | $2112;
-   $2117 = $2109 ^ $2115;
-   $2118 = $2110 ^ $2116;
-   $2119 = $1883 ^ $1759;
-   $2120 = $1884 ^ $1760;
-   $2121 = $2007 & $2119;
-   $2122 = $2008 & $2120;
-   $2123 = $1883 & $1759;
-   $2124 = $1884 & $1760;
-   $2125 = $2121 ^ $2123;
-   $2126 = $2122 ^ $2124;
-   $2127 = (_i64Add(($2117|0),($2118|0),($2125|0),($2126|0))|0);
-   $2128 = tempRet0;
-   $2129 = (_i64Add(($2053|0),($2054|0),($1635|0),($1636|0))|0);
-   $2130 = tempRet0;
-   $2131 = (_i64Add(($2127|0),($2128|0),($2053|0),($2054|0))|0);
-   $2132 = tempRet0;
-   $2133 = (_bitshift64Lshr(($2129|0),($2130|0),14)|0);
-   $2134 = tempRet0;
-   $2135 = (_bitshift64Shl(($2129|0),($2130|0),50)|0);
-   $2136 = tempRet0;
-   $2137 = $2135 | $2133;
-   $2138 = $2136 | $2134;
-   $2139 = (_bitshift64Lshr(($2129|0),($2130|0),18)|0);
-   $2140 = tempRet0;
-   $2141 = (_bitshift64Shl(($2129|0),($2130|0),46)|0);
-   $2142 = tempRet0;
-   $2143 = $2141 | $2139;
-   $2144 = $2142 | $2140;
-   $2145 = $2137 ^ $2143;
-   $2146 = $2138 ^ $2144;
-   $2147 = (_bitshift64Lshr(($2129|0),($2130|0),41)|0);
-   $2148 = tempRet0;
-   $2149 = (_bitshift64Shl(($2129|0),($2130|0),23)|0);
-   $2150 = tempRet0;
-   $2151 = $2149 | $2147;
-   $2152 = $2150 | $2148;
-   $2153 = $2145 ^ $2151;
-   $2154 = $2146 ^ $2152;
-   $2155 = $2129 & $2005;
-   $2156 = $2130 & $2006;
-   $2157 = $2129 ^ -1;
-   $2158 = $2130 ^ -1;
-   $2159 = $1881 & $2157;
-   $2160 = $1882 & $2158;
-   $2161 = $2159 ^ $2155;
-   $2162 = $2160 ^ $2156;
-   $2163 = $$151221$i | 15;
-   $2164 = (8128 + ($2163<<3)|0);
-   $2165 = $2164;
-   $2166 = $2165;
-   $2167 = HEAP32[$2166>>2]|0;
-   $2168 = (($2165) + 4)|0;
-   $2169 = $2168;
-   $2170 = HEAP32[$2169>>2]|0;
-   $2171 = (_i64Add(($2167|0),($2170|0),($419|0),($420|0))|0);
-   $2172 = tempRet0;
-   $2173 = (_i64Add(($2171|0),($2172|0),($1757|0),($1758|0))|0);
-   $2174 = tempRet0;
-   $2175 = (_i64Add(($2173|0),($2174|0),($2161|0),($2162|0))|0);
-   $2176 = tempRet0;
-   $2177 = (_i64Add(($2175|0),($2176|0),($2153|0),($2154|0))|0);
-   $2178 = tempRet0;
-   $2179 = (_bitshift64Lshr(($1971|0),($1972|0),19)|0);
-   $2180 = tempRet0;
-   $2181 = (_bitshift64Shl(($1971|0),($1972|0),45)|0);
-   $2182 = tempRet0;
-   $2183 = $2181 | $2179;
-   $2184 = $2182 | $2180;
-   $2185 = (_bitshift64Lshr(($1971|0),($1972|0),61)|0);
-   $2186 = tempRet0;
-   $2187 = (_bitshift64Shl(($1971|0),($1972|0),3)|0);
-   $2188 = tempRet0;
-   $2189 = $2187 | $2185;
-   $2190 = $2188 | $2186;
-   $2191 = (_bitshift64Lshr(($1971|0),($1972|0),6)|0);
-   $2192 = tempRet0;
-   $2193 = $2189 ^ $2191;
-   $2194 = $2190 ^ $2192;
-   $2195 = $2193 ^ $2183;
-   $2196 = $2194 ^ $2184;
-   $2197 = (_bitshift64Lshr(($327|0),($328|0),1)|0);
-   $2198 = tempRet0;
-   $2199 = (_bitshift64Shl(($327|0),($328|0),63)|0);
-   $2200 = tempRet0;
-   $2201 = $2199 | $2197;
-   $2202 = $2200 | $2198;
-   $2203 = (_bitshift64Lshr(($327|0),($328|0),8)|0);
-   $2204 = tempRet0;
-   $2205 = (_bitshift64Shl(($327|0),($328|0),56)|0);
-   $2206 = tempRet0;
-   $2207 = $2205 | $2203;
-   $2208 = $2206 | $2204;
-   $2209 = (_bitshift64Lshr(($327|0),($328|0),7)|0);
-   $2210 = tempRet0;
-   $2211 = $2207 ^ $2209;
-   $2212 = $2208 ^ $2210;
-   $2213 = $2211 ^ $2201;
-   $2214 = $2212 ^ $2202;
-   $2215 = (_i64Add(($2213|0),($2214|0),($419|0),($420|0))|0);
-   $2216 = tempRet0;
-   $2217 = (_i64Add(($2215|0),($2216|0),($1351|0),($1352|0))|0);
-   $2218 = tempRet0;
-   $2219 = (_i64Add(($2217|0),($2218|0),($2195|0),($2196|0))|0);
-   $2220 = tempRet0;
-   $2221 = (_bitshift64Lshr(($2131|0),($2132|0),28)|0);
-   $2222 = tempRet0;
-   $2223 = (_bitshift64Shl(($2131|0),($2132|0),36)|0);
-   $2224 = tempRet0;
-   $2225 = $2223 | $2221;
-   $2226 = $2224 | $2222;
-   $2227 = (_bitshift64Lshr(($2131|0),($2132|0),34)|0);
-   $2228 = tempRet0;
-   $2229 = (_bitshift64Shl(($2131|0),($2132|0),30)|0);
-   $2230 = tempRet0;
-   $2231 = $2229 | $2227;
-   $2232 = $2230 | $2228;
-   $2233 = $2225 ^ $2231;
-   $2234 = $2226 ^ $2232;
-   $2235 = (_bitshift64Lshr(($2131|0),($2132|0),39)|0);
-   $2236 = tempRet0;
-   $2237 = (_bitshift64Shl(($2131|0),($2132|0),25)|0);
-   $2238 = tempRet0;
-   $2239 = $2237 | $2235;
-   $2240 = $2238 | $2236;
-   $2241 = $2233 ^ $2239;
-   $2242 = $2234 ^ $2240;
-   $2243 = $2007 ^ $1883;
-   $2244 = $2008 ^ $1884;
-   $2245 = $2131 & $2243;
-   $2246 = $2132 & $2244;
-   $2247 = $2007 & $1883;
-   $2248 = $2008 & $1884;
-   $2249 = $2245 ^ $2247;
-   $2250 = $2246 ^ $2248;
-   $2251 = (_i64Add(($2241|0),($2242|0),($2249|0),($2250|0))|0);
-   $2252 = tempRet0;
-   $2253 = (_i64Add(($2177|0),($2178|0),($1759|0),($1760|0))|0);
-   $2254 = tempRet0;
-   $2255 = (_i64Add(($2251|0),($2252|0),($2177|0),($2178|0))|0);
-   $2256 = tempRet0;
-   $2257 = (($$151221$i) + 16)|0;
-   $2258 = ($2257>>>0)<(64);
-   if ($2258) {
-    $$151221$i = $2257;$1077 = $1227;$1078 = $1228;$1203 = $1351;$1204 = 
$1352;$226 = $2253;$227 = $2254;$251 = $2129;$253 = $2130;$257 = $2005;$259 = 
$2006;$269 = $1881;$270 = $1882;$271 = $327;$272 = $328;$281 = $2095;$282 = 
$2096;$301 = $465;$302 = $466;$321 = $1475;$322 = $1476;$329 = $2255;$330 = 
$2256;$354 = $2007;$355 = $2131;$357 = $2008;$358 = $2132;$367 = $1883;$368 = 
$1884;$419 = $2219;$420 = $2220;$439 = $593;$440 = $594;$459 = $1599;$460 = 
$1600;$567 = $721;$568 = $722;$587  [...]
-   } else {
-    break;
-   }
-  }
-  $2259 = $3;
-  $2260 = $2259;
-  HEAP32[$2260>>2] = $327;
-  $2261 = (($2259) + 4)|0;
-  $2262 = $2261;
-  HEAP32[$2262>>2] = $328;
-  $2263 = $12;
-  $2264 = $2263;
-  HEAP32[$2264>>2] = $2095;
-  $2265 = (($2263) + 4)|0;
-  $2266 = $2265;
-  HEAP32[$2266>>2] = $2096;
-  $2267 = $13;
-  $2268 = $2267;
-  HEAP32[$2268>>2] = $1475;
-  $2269 = (($2267) + 4)|0;
-  $2270 = $2269;
-  HEAP32[$2270>>2] = $1476;
-  $2271 = $14;
-  $2272 = $2271;
-  HEAP32[$2272>>2] = $465;
-  $2273 = (($2271) + 4)|0;
-  $2274 = $2273;
-  HEAP32[$2274>>2] = $466;
-  $2275 = $15;
-  $2276 = $2275;
-  HEAP32[$2276>>2] = $2219;
-  $2277 = (($2275) + 4)|0;
-  $2278 = $2277;
-  HEAP32[$2278>>2] = $2220;
-  $2279 = $16;
-  $2280 = $2279;
-  HEAP32[$2280>>2] = $1599;
-  $2281 = (($2279) + 4)|0;
-  $2282 = $2281;
-  HEAP32[$2282>>2] = $1600;
-  $2283 = $17;
-  $2284 = $2283;
-  HEAP32[$2284>>2] = $593;
-  $2285 = (($2283) + 4)|0;
-  $2286 = $2285;
-  HEAP32[$2286>>2] = $594;
-  $2287 = $18;
-  $2288 = $2287;
-  HEAP32[$2288>>2] = $1723;
-  $2289 = (($2287) + 4)|0;
-  $2290 = $2289;
-  HEAP32[$2290>>2] = $1724;
-  $2291 = $19;
-  $2292 = $2291;
-  HEAP32[$2292>>2] = $721;
-  $2293 = (($2291) + 4)|0;
-  $2294 = $2293;
-  HEAP32[$2294>>2] = $722;
-  $2295 = $20;
-  $2296 = $2295;
-  HEAP32[$2296>>2] = $1847;
-  $2297 = (($2295) + 4)|0;
-  $2298 = $2297;
-  HEAP32[$2298>>2] = $1848;
-  $2299 = $21;
-  $2300 = $2299;
-  HEAP32[$2300>>2] = $849;
-  $2301 = (($2299) + 4)|0;
-  $2302 = $2301;
-  HEAP32[$2302>>2] = $850;
-  $2303 = $22;
-  $2304 = $2303;
-  HEAP32[$2304>>2] = $1971;
-  $2305 = (($2303) + 4)|0;
-  $2306 = $2305;
-  HEAP32[$2306>>2] = $1972;
-  $2307 = $23;
-  $2308 = $2307;
-  HEAP32[$2308>>2] = $975;
-  $2309 = (($2307) + 4)|0;
-  $2310 = $2309;
-  HEAP32[$2310>>2] = $976;
-  $2311 = $24;
-  $2312 = $2311;
-  HEAP32[$2312>>2] = $1101;
-  $2313 = (($2311) + 4)|0;
-  $2314 = $2313;
-  HEAP32[$2314>>2] = $1102;
-  $2315 = $25;
-  $2316 = $2315;
-  HEAP32[$2316>>2] = $1227;
-  $2317 = (($2315) + 4)|0;
-  $2318 = $2317;
-  HEAP32[$2318>>2] = $1228;
-  $2319 = $26;
-  $2320 = $2319;
-  HEAP32[$2320>>2] = $1351;
-  $2321 = (($2319) + 4)|0;
-  $2322 = $2321;
-  HEAP32[$2322>>2] = $1352;
-  $2323 = (_bitshift64Lshr(($2253|0),($2254|0),14)|0);
-  $2324 = tempRet0;
-  $2325 = (_bitshift64Shl(($2253|0),($2254|0),50)|0);
-  $2326 = tempRet0;
-  $2327 = $2325 | $2323;
-  $2328 = $2326 | $2324;
-  $2329 = (_bitshift64Lshr(($2253|0),($2254|0),18)|0);
-  $2330 = tempRet0;
-  $2331 = (_bitshift64Shl(($2253|0),($2254|0),46)|0);
-  $2332 = tempRet0;
-  $2333 = $2331 | $2329;
-  $2334 = $2332 | $2330;
-  $2335 = $2327 ^ $2333;
-  $2336 = $2328 ^ $2334;
-  $2337 = (_bitshift64Lshr(($2253|0),($2254|0),41)|0);
-  $2338 = tempRet0;
-  $2339 = (_bitshift64Shl(($2253|0),($2254|0),23)|0);
-  $2340 = tempRet0;
-  $2341 = $2339 | $2337;
-  $2342 = $2340 | $2338;
-  $2343 = $2335 ^ $2341;
-  $2344 = $2336 ^ $2342;
-  $2345 = $2253 & $2129;
-  $2346 = $2254 & $2130;
-  $2347 = $2253 ^ -1;
-  $2348 = $2254 ^ -1;
-  $2349 = $2005 & $2347;
-  $2350 = $2006 & $2348;
-  $2351 = $2349 ^ $2345;
-  $2352 = $2350 ^ $2346;
-  $2353 = (_i64Add(($327|0),($328|0),-366583396,-903397682)|0);
-  $2354 = tempRet0;
-  $2355 = (_i64Add(($2353|0),($2354|0),($1881|0),($1882|0))|0);
-  $2356 = tempRet0;
-  $2357 = (_i64Add(($2355|0),($2356|0),($2351|0),($2352|0))|0);
-  $2358 = tempRet0;
-  $2359 = (_i64Add(($2357|0),($2358|0),($2343|0),($2344|0))|0);
-  $2360 = tempRet0;
-  $2361 = (_bitshift64Lshr(($2255|0),($2256|0),28)|0);
-  $2362 = tempRet0;
-  $2363 = (_bitshift64Shl(($2255|0),($2256|0),36)|0);
-  $2364 = tempRet0;
-  $2365 = $2363 | $2361;
-  $2366 = $2364 | $2362;
-  $2367 = (_bitshift64Lshr(($2255|0),($2256|0),34)|0);
-  $2368 = tempRet0;
-  $2369 = (_bitshift64Shl(($2255|0),($2256|0),30)|0);
-  $2370 = tempRet0;
-  $2371 = $2369 | $2367;
-  $2372 = $2370 | $2368;
-  $2373 = $2365 ^ $2371;
-  $2374 = $2366 ^ $2372;
-  $2375 = (_bitshift64Lshr(($2255|0),($2256|0),39)|0);
-  $2376 = tempRet0;
-  $2377 = (_bitshift64Shl(($2255|0),($2256|0),25)|0);
-  $2378 = tempRet0;
-  $2379 = $2377 | $2375;
-  $2380 = $2378 | $2376;
-  $2381 = $2373 ^ $2379;
-  $2382 = $2374 ^ $2380;
-  $2383 = $2131 ^ $2007;
-  $2384 = $2132 ^ $2008;
-  $2385 = $2255 & $2383;
-  $2386 = $2256 & $2384;
-  $2387 = $2131 & $2007;
-  $2388 = $2132 & $2008;
-  $2389 = $2385 ^ $2387;
-  $2390 = $2386 ^ $2388;
-  $2391 = (_i64Add(($2381|0),($2382|0),($2389|0),($2390|0))|0);
-  $2392 = tempRet0;
-  $2393 = (_i64Add(($2359|0),($2360|0),($1883|0),($1884|0))|0);
-  $2394 = tempRet0;
-  $2395 = (_i64Add(($2391|0),($2392|0),($2359|0),($2360|0))|0);
-  $2396 = tempRet0;
-  $2397 = (_bitshift64Lshr(($2393|0),($2394|0),14)|0);
-  $2398 = tempRet0;
-  $2399 = (_bitshift64Shl(($2393|0),($2394|0),50)|0);
-  $2400 = tempRet0;
-  $2401 = $2399 | $2397;
-  $2402 = $2400 | $2398;
-  $2403 = (_bitshift64Lshr(($2393|0),($2394|0),18)|0);
-  $2404 = tempRet0;
-  $2405 = (_bitshift64Shl(($2393|0),($2394|0),46)|0);
-  $2406 = tempRet0;
-  $2407 = $2405 | $2403;
-  $2408 = $2406 | $2404;
-  $2409 = $2401 ^ $2407;
-  $2410 = $2402 ^ $2408;
-  $2411 = (_bitshift64Lshr(($2393|0),($2394|0),41)|0);
-  $2412 = tempRet0;
-  $2413 = (_bitshift64Shl(($2393|0),($2394|0),23)|0);
-  $2414 = tempRet0;
-  $2415 = $2413 | $2411;
-  $2416 = $2414 | $2412;
-  $2417 = $2409 ^ $2415;
-  $2418 = $2410 ^ $2416;
-  $2419 = $2393 & $2253;
-  $2420 = $2394 & $2254;
-  $2421 = $2393 ^ -1;
-  $2422 = $2394 ^ -1;
-  $2423 = $2129 & $2421;
-  $2424 = $2130 & $2422;
-  $2425 = $2423 ^ $2419;
-  $2426 = $2424 ^ $2420;
-  $2427 = (_i64Add(($465|0),($466|0),566280711,-779700025)|0);
-  $2428 = tempRet0;
-  $2429 = (_i64Add(($2427|0),($2428|0),($2005|0),($2006|0))|0);
-  $2430 = tempRet0;
-  $2431 = (_i64Add(($2429|0),($2430|0),($2425|0),($2426|0))|0);
-  $2432 = tempRet0;
-  $2433 = (_i64Add(($2431|0),($2432|0),($2417|0),($2418|0))|0);
-  $2434 = tempRet0;
-  $2435 = (_bitshift64Lshr(($2395|0),($2396|0),28)|0);
-  $2436 = tempRet0;
-  $2437 = (_bitshift64Shl(($2395|0),($2396|0),36)|0);
-  $2438 = tempRet0;
-  $2439 = $2437 | $2435;
-  $2440 = $2438 | $2436;
-  $2441 = (_bitshift64Lshr(($2395|0),($2396|0),34)|0);
-  $2442 = tempRet0;
-  $2443 = (_bitshift64Shl(($2395|0),($2396|0),30)|0);
-  $2444 = tempRet0;
-  $2445 = $2443 | $2441;
-  $2446 = $2444 | $2442;
-  $2447 = $2439 ^ $2445;
-  $2448 = $2440 ^ $2446;
-  $2449 = (_bitshift64Lshr(($2395|0),($2396|0),39)|0);
-  $2450 = tempRet0;
-  $2451 = (_bitshift64Shl(($2395|0),($2396|0),25)|0);
-  $2452 = tempRet0;
-  $2453 = $2451 | $2449;
-  $2454 = $2452 | $2450;
-  $2455 = $2447 ^ $2453;
-  $2456 = $2448 ^ $2454;
-  $2457 = $2255 ^ $2131;
-  $2458 = $2256 ^ $2132;
-  $2459 = $2395 & $2457;
-  $2460 = $2396 & $2458;
-  $2461 = $2255 & $2131;
-  $2462 = $2256 & $2132;
-  $2463 = $2459 ^ $2461;
-  $2464 = $2460 ^ $2462;
-  $2465 = (_i64Add(($2455|0),($2456|0),($2463|0),($2464|0))|0);
-  $2466 = tempRet0;
-  $2467 = (_i64Add(($2433|0),($2434|0),($2007|0),($2008|0))|0);
-  $2468 = tempRet0;
-  $2469 = (_i64Add(($2465|0),($2466|0),($2433|0),($2434|0))|0);
-  $2470 = tempRet0;
-  $2471 = (_bitshift64Lshr(($2467|0),($2468|0),14)|0);
-  $2472 = tempRet0;
-  $2473 = (_bitshift64Shl(($2467|0),($2468|0),50)|0);
-  $2474 = tempRet0;
-  $2475 = $2473 | $2471;
-  $2476 = $2474 | $2472;
-  $2477 = (_bitshift64Lshr(($2467|0),($2468|0),18)|0);
-  $2478 = tempRet0;
-  $2479 = (_bitshift64Shl(($2467|0),($2468|0),46)|0);
-  $2480 = tempRet0;
-  $2481 = $2479 | $2477;
-  $2482 = $2480 | $2478;
-  $2483 = $2475 ^ $2481;
-  $2484 = $2476 ^ $2482;
-  $2485 = (_bitshift64Lshr(($2467|0),($2468|0),41)|0);
-  $2486 = tempRet0;
-  $2487 = (_bitshift64Shl(($2467|0),($2468|0),23)|0);
-  $2488 = tempRet0;
-  $2489 = $2487 | $2485;
-  $2490 = $2488 | $2486;
-  $2491 = $2483 ^ $2489;
-  $2492 = $2484 ^ $2490;
-  $2493 = $2467 & $2393;
-  $2494 = $2468 & $2394;
-  $2495 = $2467 ^ -1;
-  $2496 = $2468 ^ -1;
-  $2497 = $2253 & $2495;
-  $2498 = $2254 & $2496;
-  $2499 = $2497 ^ $2493;
-  $2500 = $2498 ^ $2494;
-  $2501 = (_i64Add(($593|0),($594|0),-840897762,-354779690)|0);
-  $2502 = tempRet0;
-  $2503 = (_i64Add(($2501|0),($2502|0),($2129|0),($2130|0))|0);
-  $2504 = tempRet0;
-  $2505 = (_i64Add(($2503|0),($2504|0),($2499|0),($2500|0))|0);
-  $2506 = tempRet0;
-  $2507 = (_i64Add(($2505|0),($2506|0),($2491|0),($2492|0))|0);
-  $2508 = tempRet0;
-  $2509 = (_bitshift64Lshr(($2469|0),($2470|0),28)|0);
-  $2510 = tempRet0;
-  $2511 = (_bitshift64Shl(($2469|0),($2470|0),36)|0);
-  $2512 = tempRet0;
-  $2513 = $2511 | $2509;
-  $2514 = $2512 | $2510;
-  $2515 = (_bitshift64Lshr(($2469|0),($2470|0),34)|0);
-  $2516 = tempRet0;
-  $2517 = (_bitshift64Shl(($2469|0),($2470|0),30)|0);
-  $2518 = tempRet0;
-  $2519 = $2517 | $2515;
-  $2520 = $2518 | $2516;
-  $2521 = $2513 ^ $2519;
-  $2522 = $2514 ^ $2520;
-  $2523 = (_bitshift64Lshr(($2469|0),($2470|0),39)|0);
-  $2524 = tempRet0;
-  $2525 = (_bitshift64Shl(($2469|0),($2470|0),25)|0);
-  $2526 = tempRet0;
-  $2527 = $2525 | $2523;
-  $2528 = $2526 | $2524;
-  $2529 = $2521 ^ $2527;
-  $2530 = $2522 ^ $2528;
-  $2531 = $2395 ^ $2255;
-  $2532 = $2396 ^ $2256;
-  $2533 = $2469 & $2531;
-  $2534 = $2470 & $2532;
-  $2535 = $2395 & $2255;
-  $2536 = $2396 & $2256;
-  $2537 = $2533 ^ $2535;
-  $2538 = $2534 ^ $2536;
-  $2539 = (_i64Add(($2529|0),($2530|0),($2537|0),($2538|0))|0);
-  $2540 = tempRet0;
-  $2541 = (_i64Add(($2507|0),($2508|0),($2131|0),($2132|0))|0);
-  $2542 = tempRet0;
-  $2543 = (_i64Add(($2539|0),($2540|0),($2507|0),($2508|0))|0);
-  $2544 = tempRet0;
-  $2545 = (_bitshift64Lshr(($2541|0),($2542|0),14)|0);
-  $2546 = tempRet0;
-  $2547 = (_bitshift64Shl(($2541|0),($2542|0),50)|0);
-  $2548 = tempRet0;
-  $2549 = $2547 | $2545;
-  $2550 = $2548 | $2546;
-  $2551 = (_bitshift64Lshr(($2541|0),($2542|0),18)|0);
-  $2552 = tempRet0;
-  $2553 = (_bitshift64Shl(($2541|0),($2542|0),46)|0);
-  $2554 = tempRet0;
-  $2555 = $2553 | $2551;
-  $2556 = $2554 | $2552;
-  $2557 = $2549 ^ $2555;
-  $2558 = $2550 ^ $2556;
-  $2559 = (_bitshift64Lshr(($2541|0),($2542|0),41)|0);
-  $2560 = tempRet0;
-  $2561 = (_bitshift64Shl(($2541|0),($2542|0),23)|0);
-  $2562 = tempRet0;
-  $2563 = $2561 | $2559;
-  $2564 = $2562 | $2560;
-  $2565 = $2557 ^ $2563;
-  $2566 = $2558 ^ $2564;
-  $2567 = $2541 & $2467;
-  $2568 = $2542 & $2468;
-  $2569 = $2541 ^ -1;
-  $2570 = $2542 ^ -1;
-  $2571 = $2393 & $2569;
-  $2572 = $2394 & $2570;
-  $2573 = $2571 ^ $2567;
-  $2574 = $2572 ^ $2568;
-  $2575 = (_i64Add(($721|0),($722|0),-294727304,-176337025)|0);
-  $2576 = tempRet0;
-  $2577 = (_i64Add(($2575|0),($2576|0),($2253|0),($2254|0))|0);
-  $2578 = tempRet0;
-  $2579 = (_i64Add(($2577|0),($2578|0),($2573|0),($2574|0))|0);
-  $2580 = tempRet0;
-  $2581 = (_i64Add(($2579|0),($2580|0),($2565|0),($2566|0))|0);
-  $2582 = tempRet0;
-  $2583 = (_bitshift64Lshr(($2543|0),($2544|0),28)|0);
-  $2584 = tempRet0;
-  $2585 = (_bitshift64Shl(($2543|0),($2544|0),36)|0);
-  $2586 = tempRet0;
-  $2587 = $2585 | $2583;
-  $2588 = $2586 | $2584;
-  $2589 = (_bitshift64Lshr(($2543|0),($2544|0),34)|0);
-  $2590 = tempRet0;
-  $2591 = (_bitshift64Shl(($2543|0),($2544|0),30)|0);
-  $2592 = tempRet0;
-  $2593 = $2591 | $2589;
-  $2594 = $2592 | $2590;
-  $2595 = $2587 ^ $2593;
-  $2596 = $2588 ^ $2594;
-  $2597 = (_bitshift64Lshr(($2543|0),($2544|0),39)|0);
-  $2598 = tempRet0;
-  $2599 = (_bitshift64Shl(($2543|0),($2544|0),25)|0);
-  $2600 = tempRet0;
-  $2601 = $2599 | $2597;
-  $2602 = $2600 | $2598;
-  $2603 = $2595 ^ $2601;
-  $2604 = $2596 ^ $2602;
-  $2605 = $2469 ^ $2395;
-  $2606 = $2470 ^ $2396;
-  $2607 = $2543 & $2605;
-  $2608 = $2544 & $2606;
-  $2609 = $2469 & $2395;
-  $2610 = $2470 & $2396;
-  $2611 = $2607 ^ $2609;
-  $2612 = $2608 ^ $2610;
-  $2613 = (_i64Add(($2603|0),($2604|0),($2611|0),($2612|0))|0);
-  $2614 = tempRet0;
-  $2615 = (_i64Add(($2581|0),($2582|0),($2255|0),($2256|0))|0);
-  $2616 = tempRet0;
-  $2617 = (_i64Add(($2613|0),($2614|0),($2581|0),($2582|0))|0);
-  $2618 = tempRet0;
-  $2619 = (_bitshift64Lshr(($2615|0),($2616|0),14)|0);
-  $2620 = tempRet0;
-  $2621 = (_bitshift64Shl(($2615|0),($2616|0),50)|0);
-  $2622 = tempRet0;
-  $2623 = $2621 | $2619;
-  $2624 = $2622 | $2620;
-  $2625 = (_bitshift64Lshr(($2615|0),($2616|0),18)|0);
-  $2626 = tempRet0;
-  $2627 = (_bitshift64Shl(($2615|0),($2616|0),46)|0);
-  $2628 = tempRet0;
-  $2629 = $2627 | $2625;
-  $2630 = $2628 | $2626;
-  $2631 = $2623 ^ $2629;
-  $2632 = $2624 ^ $2630;
-  $2633 = (_bitshift64Lshr(($2615|0),($2616|0),41)|0);
-  $2634 = tempRet0;
-  $2635 = (_bitshift64Shl(($2615|0),($2616|0),23)|0);
-  $2636 = tempRet0;
-  $2637 = $2635 | $2633;
-  $2638 = $2636 | $2634;
-  $2639 = $2631 ^ $2637;
-  $2640 = $2632 ^ $2638;
-  $2641 = $2615 & $2541;
-  $2642 = $2616 & $2542;
-  $2643 = $2615 ^ -1;
-  $2644 = $2616 ^ -1;
-  $2645 = $2467 & $2643;
-  $2646 = $2468 & $2644;
-  $2647 = $2645 ^ $2641;
-  $2648 = $2646 ^ $2642;
-  $2649 = (_i64Add(($849|0),($850|0),1914138554,116418474)|0);
-  $2650 = tempRet0;
-  $2651 = (_i64Add(($2649|0),($2650|0),($2393|0),($2394|0))|0);
-  $2652 = tempRet0;
-  $2653 = (_i64Add(($2651|0),($2652|0),($2647|0),($2648|0))|0);
-  $2654 = tempRet0;
-  $2655 = (_i64Add(($2653|0),($2654|0),($2639|0),($2640|0))|0);
-  $2656 = tempRet0;
-  $2657 = (_bitshift64Lshr(($2617|0),($2618|0),28)|0);
-  $2658 = tempRet0;
-  $2659 = (_bitshift64Shl(($2617|0),($2618|0),36)|0);
-  $2660 = tempRet0;
-  $2661 = $2659 | $2657;
-  $2662 = $2660 | $2658;
-  $2663 = (_bitshift64Lshr(($2617|0),($2618|0),34)|0);
-  $2664 = tempRet0;
-  $2665 = (_bitshift64Shl(($2617|0),($2618|0),30)|0);
-  $2666 = tempRet0;
-  $2667 = $2665 | $2663;
-  $2668 = $2666 | $2664;
-  $2669 = $2661 ^ $2667;
-  $2670 = $2662 ^ $2668;
-  $2671 = (_bitshift64Lshr(($2617|0),($2618|0),39)|0);
-  $2672 = tempRet0;
-  $2673 = (_bitshift64Shl(($2617|0),($2618|0),25)|0);
-  $2674 = tempRet0;
-  $2675 = $2673 | $2671;
-  $2676 = $2674 | $2672;
-  $2677 = $2669 ^ $2675;
-  $2678 = $2670 ^ $2676;
-  $2679 = $2543 ^ $2469;
-  $2680 = $2544 ^ $2470;
-  $2681 = $2617 & $2679;
-  $2682 = $2618 & $2680;
-  $2683 = $2543 & $2469;
-  $2684 = $2544 & $2470;
-  $2685 = $2681 ^ $2683;
-  $2686 = $2682 ^ $2684;
-  $2687 = (_i64Add(($2677|0),($2678|0),($2685|0),($2686|0))|0);
-  $2688 = tempRet0;
-  $2689 = (_i64Add(($2655|0),($2656|0),($2395|0),($2396|0))|0);
-  $2690 = tempRet0;
-  $2691 = (_i64Add(($2687|0),($2688|0),($2655|0),($2656|0))|0);
-  $2692 = tempRet0;
-  $2693 = (_bitshift64Lshr(($2689|0),($2690|0),14)|0);
-  $2694 = tempRet0;
-  $2695 = (_bitshift64Shl(($2689|0),($2690|0),50)|0);
-  $2696 = tempRet0;
-  $2697 = $2695 | $2693;
-  $2698 = $2696 | $2694;
-  $2699 = (_bitshift64Lshr(($2689|0),($2690|0),18)|0);
-  $2700 = tempRet0;
-  $2701 = (_bitshift64Shl(($2689|0),($2690|0),46)|0);
-  $2702 = tempRet0;
-  $2703 = $2701 | $2699;
-  $2704 = $2702 | $2700;
-  $2705 = $2697 ^ $2703;
-  $2706 = $2698 ^ $2704;
-  $2707 = (_bitshift64Lshr(($2689|0),($2690|0),41)|0);
-  $2708 = tempRet0;
-  $2709 = (_bitshift64Shl(($2689|0),($2690|0),23)|0);
-  $2710 = tempRet0;
-  $2711 = $2709 | $2707;
-  $2712 = $2710 | $2708;
-  $2713 = $2705 ^ $2711;
-  $2714 = $2706 ^ $2712;
-  $2715 = $2689 & $2615;
-  $2716 = $2690 & $2616;
-  $2717 = $2689 ^ -1;
-  $2718 = $2690 ^ -1;
-  $2719 = $2541 & $2717;
-  $2720 = $2542 & $2718;
-  $2721 = $2719 ^ $2715;
-  $2722 = $2720 ^ $2716;
-  $2723 = (_i64Add(($975|0),($976|0),-1563912026,174292421)|0);
-  $2724 = tempRet0;
-  $2725 = (_i64Add(($2723|0),($2724|0),($2467|0),($2468|0))|0);
-  $2726 = tempRet0;
-  $2727 = (_i64Add(($2725|0),($2726|0),($2721|0),($2722|0))|0);
-  $2728 = tempRet0;
-  $2729 = (_i64Add(($2727|0),($2728|0),($2713|0),($2714|0))|0);
-  $2730 = tempRet0;
-  $2731 = (_bitshift64Lshr(($2691|0),($2692|0),28)|0);
-  $2732 = tempRet0;
-  $2733 = (_bitshift64Shl(($2691|0),($2692|0),36)|0);
-  $2734 = tempRet0;
-  $2735 = $2733 | $2731;
-  $2736 = $2734 | $2732;
-  $2737 = (_bitshift64Lshr(($2691|0),($2692|0),34)|0);
-  $2738 = tempRet0;
-  $2739 = (_bitshift64Shl(($2691|0),($2692|0),30)|0);
-  $2740 = tempRet0;
-  $2741 = $2739 | $2737;
-  $2742 = $2740 | $2738;
-  $2743 = $2735 ^ $2741;
-  $2744 = $2736 ^ $2742;
-  $2745 = (_bitshift64Lshr(($2691|0),($2692|0),39)|0);
-  $2746 = tempRet0;
-  $2747 = (_bitshift64Shl(($2691|0),($2692|0),25)|0);
-  $2748 = tempRet0;
-  $2749 = $2747 | $2745;
-  $2750 = $2748 | $2746;
-  $2751 = $2743 ^ $2749;
-  $2752 = $2744 ^ $2750;
-  $2753 = $2617 ^ $2543;
-  $2754 = $2618 ^ $2544;
-  $2755 = $2691 & $2753;
-  $2756 = $2692 & $2754;
-  $2757 = $2617 & $2543;
-  $2758 = $2618 & $2544;
-  $2759 = $2755 ^ $2757;
-  $2760 = $2756 ^ $2758;
-  $2761 = (_i64Add(($2751|0),($2752|0),($2759|0),($2760|0))|0);
-  $2762 = tempRet0;
-  $2763 = (_i64Add(($2729|0),($2730|0),($2469|0),($2470|0))|0);
-  $2764 = tempRet0;
-  $2765 = (_i64Add(($2761|0),($2762|0),($2729|0),($2730|0))|0);
-  $2766 = tempRet0;
-  $2767 = (_bitshift64Lshr(($2763|0),($2764|0),14)|0);
-  $2768 = tempRet0;
-  $2769 = (_bitshift64Shl(($2763|0),($2764|0),50)|0);
-  $2770 = tempRet0;
-  $2771 = $2769 | $2767;
-  $2772 = $2770 | $2768;
-  $2773 = (_bitshift64Lshr(($2763|0),($2764|0),18)|0);
-  $2774 = tempRet0;
-  $2775 = (_bitshift64Shl(($2763|0),($2764|0),46)|0);
-  $2776 = tempRet0;
-  $2777 = $2775 | $2773;
-  $2778 = $2776 | $2774;
-  $2779 = $2771 ^ $2777;
-  $2780 = $2772 ^ $2778;
-  $2781 = (_bitshift64Lshr(($2763|0),($2764|0),41)|0);
-  $2782 = tempRet0;
-  $2783 = (_bitshift64Shl(($2763|0),($2764|0),23)|0);
-  $2784 = tempRet0;
-  $2785 = $2783 | $2781;
-  $2786 = $2784 | $2782;
-  $2787 = $2779 ^ $2785;
-  $2788 = $2780 ^ $2786;
-  $2789 = $2763 & $2689;
-  $2790 = $2764 & $2690;
-  $2791 = $2763 ^ -1;
-  $2792 = $2764 ^ -1;
-  $2793 = $2615 & $2791;
-  $2794 = $2616 & $2792;
-  $2795 = $2793 ^ $2789;
-  $2796 = $2794 ^ $2790;
-  $2797 = (_i64Add(($1101|0),($1102|0),-1090974290,289380356)|0);
-  $2798 = tempRet0;
-  $2799 = (_i64Add(($2797|0),($2798|0),($2541|0),($2542|0))|0);
-  $2800 = tempRet0;
-  $2801 = (_i64Add(($2799|0),($2800|0),($2795|0),($2796|0))|0);
-  $2802 = tempRet0;
-  $2803 = (_i64Add(($2801|0),($2802|0),($2787|0),($2788|0))|0);
-  $2804 = tempRet0;
-  $2805 = (_bitshift64Lshr(($2765|0),($2766|0),28)|0);
-  $2806 = tempRet0;
-  $2807 = (_bitshift64Shl(($2765|0),($2766|0),36)|0);
-  $2808 = tempRet0;
-  $2809 = $2807 | $2805;
-  $2810 = $2808 | $2806;
-  $2811 = (_bitshift64Lshr(($2765|0),($2766|0),34)|0);
-  $2812 = tempRet0;
-  $2813 = (_bitshift64Shl(($2765|0),($2766|0),30)|0);
-  $2814 = tempRet0;
-  $2815 = $2813 | $2811;
-  $2816 = $2814 | $2812;
-  $2817 = $2809 ^ $2815;
-  $2818 = $2810 ^ $2816;
-  $2819 = (_bitshift64Lshr(($2765|0),($2766|0),39)|0);
-  $2820 = tempRet0;
-  $2821 = (_bitshift64Shl(($2765|0),($2766|0),25)|0);
-  $2822 = tempRet0;
-  $2823 = $2821 | $2819;
-  $2824 = $2822 | $2820;
-  $2825 = $2817 ^ $2823;
-  $2826 = $2818 ^ $2824;
-  $2827 = $2691 ^ $2617;
-  $2828 = $2692 ^ $2618;
-  $2829 = $2765 & $2827;
-  $2830 = $2766 & $2828;
-  $2831 = $2691 & $2617;
-  $2832 = $2692 & $2618;
-  $2833 = $2829 ^ $2831;
-  $2834 = $2830 ^ $2832;
-  $2835 = (_i64Add(($2825|0),($2826|0),($2833|0),($2834|0))|0);
-  $2836 = tempRet0;
-  $2837 = (_i64Add(($2803|0),($2804|0),($2543|0),($2544|0))|0);
-  $2838 = tempRet0;
-  $2839 = (_i64Add(($2835|0),($2836|0),($2803|0),($2804|0))|0);
-  $2840 = tempRet0;
-  $2841 = (_bitshift64Lshr(($2837|0),($2838|0),14)|0);
-  $2842 = tempRet0;
-  $2843 = (_bitshift64Shl(($2837|0),($2838|0),50)|0);
-  $2844 = tempRet0;
-  $2845 = $2843 | $2841;
-  $2846 = $2844 | $2842;
-  $2847 = (_bitshift64Lshr(($2837|0),($2838|0),18)|0);
-  $2848 = tempRet0;
-  $2849 = (_bitshift64Shl(($2837|0),($2838|0),46)|0);
-  $2850 = tempRet0;
-  $2851 = $2849 | $2847;
-  $2852 = $2850 | $2848;
-  $2853 = $2845 ^ $2851;
-  $2854 = $2846 ^ $2852;
-  $2855 = (_bitshift64Lshr(($2837|0),($2838|0),41)|0);
-  $2856 = tempRet0;
-  $2857 = (_bitshift64Shl(($2837|0),($2838|0),23)|0);
-  $2858 = tempRet0;
-  $2859 = $2857 | $2855;
-  $2860 = $2858 | $2856;
-  $2861 = $2853 ^ $2859;
-  $2862 = $2854 ^ $2860;
-  $2863 = $2837 & $2763;
-  $2864 = $2838 & $2764;
-  $2865 = $2837 ^ -1;
-  $2866 = $2838 ^ -1;
-  $2867 = $2689 & $2865;
-  $2868 = $2690 & $2866;
-  $2869 = $2867 ^ $2863;
-  $2870 = $2868 ^ $2864;
-  $2871 = (_i64Add(($1227|0),($1228|0),320620315,460393269)|0);
-  $2872 = tempRet0;
-  $2873 = (_i64Add(($2871|0),($2872|0),($2615|0),($2616|0))|0);
-  $2874 = tempRet0;
-  $2875 = (_i64Add(($2873|0),($2874|0),($2869|0),($2870|0))|0);
-  $2876 = tempRet0;
-  $2877 = (_i64Add(($2875|0),($2876|0),($2861|0),($2862|0))|0);
-  $2878 = tempRet0;
-  $2879 = (_bitshift64Lshr(($2839|0),($2840|0),28)|0);
-  $2880 = tempRet0;
-  $2881 = (_bitshift64Shl(($2839|0),($2840|0),36)|0);
-  $2882 = tempRet0;
-  $2883 = $2881 | $2879;
-  $2884 = $2882 | $2880;
-  $2885 = (_bitshift64Lshr(($2839|0),($2840|0),34)|0);
-  $2886 = tempRet0;
-  $2887 = (_bitshift64Shl(($2839|0),($2840|0),30)|0);
-  $2888 = tempRet0;
-  $2889 = $2887 | $2885;
-  $2890 = $2888 | $2886;
-  $2891 = $2883 ^ $2889;
-  $2892 = $2884 ^ $2890;
-  $2893 = (_bitshift64Lshr(($2839|0),($2840|0),39)|0);
-  $2894 = tempRet0;
-  $2895 = (_bitshift64Shl(($2839|0),($2840|0),25)|0);
-  $2896 = tempRet0;
-  $2897 = $2895 | $2893;
-  $2898 = $2896 | $2894;
-  $2899 = $2891 ^ $2897;
-  $2900 = $2892 ^ $2898;
-  $2901 = $2765 ^ $2691;
-  $2902 = $2766 ^ $2692;
-  $2903 = $2839 & $2901;
-  $2904 = $2840 & $2902;
-  $2905 = $2765 & $2691;
-  $2906 = $2766 & $2692;
-  $2907 = $2903 ^ $2905;
-  $2908 = $2904 ^ $2906;
-  $2909 = (_i64Add(($2899|0),($2900|0),($2907|0),($2908|0))|0);
-  $2910 = tempRet0;
-  $2911 = (_i64Add(($2877|0),($2878|0),($2617|0),($2618|0))|0);
-  $2912 = tempRet0;
-  $2913 = (_i64Add(($2909|0),($2910|0),($2877|0),($2878|0))|0);
-  $2914 = tempRet0;
-  $2915 = (_bitshift64Lshr(($2911|0),($2912|0),14)|0);
-  $2916 = tempRet0;
-  $2917 = (_bitshift64Shl(($2911|0),($2912|0),50)|0);
-  $2918 = tempRet0;
-  $2919 = $2917 | $2915;
-  $2920 = $2918 | $2916;
-  $2921 = (_bitshift64Lshr(($2911|0),($2912|0),18)|0);
-  $2922 = tempRet0;
-  $2923 = (_bitshift64Shl(($2911|0),($2912|0),46)|0);
-  $2924 = tempRet0;
-  $2925 = $2923 | $2921;
-  $2926 = $2924 | $2922;
-  $2927 = $2919 ^ $2925;
-  $2928 = $2920 ^ $2926;
-  $2929 = (_bitshift64Lshr(($2911|0),($2912|0),41)|0);
-  $2930 = tempRet0;
-  $2931 = (_bitshift64Shl(($2911|0),($2912|0),23)|0);
-  $2932 = tempRet0;
-  $2933 = $2931 | $2929;
-  $2934 = $2932 | $2930;
-  $2935 = $2927 ^ $2933;
-  $2936 = $2928 ^ $2934;
-  $2937 = $2911 & $2837;
-  $2938 = $2912 & $2838;
-  $2939 = $2911 ^ -1;
-  $2940 = $2912 ^ -1;
-  $2941 = $2763 & $2939;
-  $2942 = $2764 & $2940;
-  $2943 = $2941 ^ $2937;
-  $2944 = $2942 ^ $2938;
-  $2945 = (_i64Add(($1351|0),($1352|0),587496836,685471733)|0);
-  $2946 = tempRet0;
-  $2947 = (_i64Add(($2945|0),($2946|0),($2689|0),($2690|0))|0);
-  $2948 = tempRet0;
-  $2949 = (_i64Add(($2947|0),($2948|0),($2943|0),($2944|0))|0);
-  $2950 = tempRet0;
-  $2951 = (_i64Add(($2949|0),($2950|0),($2935|0),($2936|0))|0);
-  $2952 = tempRet0;
-  $2953 = (_bitshift64Lshr(($2913|0),($2914|0),28)|0);
-  $2954 = tempRet0;
-  $2955 = (_bitshift64Shl(($2913|0),($2914|0),36)|0);
-  $2956 = tempRet0;
-  $2957 = $2955 | $2953;
-  $2958 = $2956 | $2954;
-  $2959 = (_bitshift64Lshr(($2913|0),($2914|0),34)|0);
-  $2960 = tempRet0;
-  $2961 = (_bitshift64Shl(($2913|0),($2914|0),30)|0);
-  $2962 = tempRet0;
-  $2963 = $2961 | $2959;
-  $2964 = $2962 | $2960;
-  $2965 = $2957 ^ $2963;
-  $2966 = $2958 ^ $2964;
-  $2967 = (_bitshift64Lshr(($2913|0),($2914|0),39)|0);
-  $2968 = tempRet0;
-  $2969 = (_bitshift64Shl(($2913|0),($2914|0),25)|0);
-  $2970 = tempRet0;
-  $2971 = $2969 | $2967;
-  $2972 = $2970 | $2968;
-  $2973 = $2965 ^ $2971;
-  $2974 = $2966 ^ $2972;
-  $2975 = $2839 ^ $2765;
-  $2976 = $2840 ^ $2766;
-  $2977 = $2913 & $2975;
-  $2978 = $2914 & $2976;
-  $2979 = $2839 & $2765;
-  $2980 = $2840 & $2766;
-  $2981 = $2977 ^ $2979;
-  $2982 = $2978 ^ $2980;
-  $2983 = (_i64Add(($2973|0),($2974|0),($2981|0),($2982|0))|0);
-  $2984 = tempRet0;
-  $2985 = (_i64Add(($2951|0),($2952|0),($2691|0),($2692|0))|0);
-  $2986 = tempRet0;
-  $2987 = (_i64Add(($2983|0),($2984|0),($2951|0),($2952|0))|0);
-  $2988 = tempRet0;
-  $2989 = (_bitshift64Lshr(($2985|0),($2986|0),14)|0);
-  $2990 = tempRet0;
-  $2991 = (_bitshift64Shl(($2985|0),($2986|0),50)|0);
-  $2992 = tempRet0;
-  $2993 = $2991 | $2989;
-  $2994 = $2992 | $2990;
-  $2995 = (_bitshift64Lshr(($2985|0),($2986|0),18)|0);
-  $2996 = tempRet0;
-  $2997 = (_bitshift64Shl(($2985|0),($2986|0),46)|0);
-  $2998 = tempRet0;
-  $2999 = $2997 | $2995;
-  $3000 = $2998 | $2996;
-  $3001 = $2993 ^ $2999;
-  $3002 = $2994 ^ $3000;
-  $3003 = (_bitshift64Lshr(($2985|0),($2986|0),41)|0);
-  $3004 = tempRet0;
-  $3005 = (_bitshift64Shl(($2985|0),($2986|0),23)|0);
-  $3006 = tempRet0;
-  $3007 = $3005 | $3003;
-  $3008 = $3006 | $3004;
-  $3009 = $3001 ^ $3007;
-  $3010 = $3002 ^ $3008;
-  $3011 = $2985 & $2911;
-  $3012 = $2986 & $2912;
-  $3013 = $2985 ^ -1;
-  $3014 = $2986 ^ -1;
-  $3015 = $2837 & $3013;
-  $3016 = $2838 & $3014;
-  $3017 = $3015 ^ $3011;
-  $3018 = $3016 ^ $3012;
-  $3019 = (_i64Add(($1475|0),($1476|0),1086792851,852142971)|0);
-  $3020 = tempRet0;
-  $3021 = (_i64Add(($3019|0),($3020|0),($2763|0),($2764|0))|0);
-  $3022 = tempRet0;
-  $3023 = (_i64Add(($3021|0),($3022|0),($3017|0),($3018|0))|0);
-  $3024 = tempRet0;
-  $3025 = (_i64Add(($3023|0),($3024|0),($3009|0),($3010|0))|0);
-  $3026 = tempRet0;
-  $3027 = (_bitshift64Lshr(($2987|0),($2988|0),28)|0);
-  $3028 = tempRet0;
-  $3029 = (_bitshift64Shl(($2987|0),($2988|0),36)|0);
-  $3030 = tempRet0;
-  $3031 = $3029 | $3027;
-  $3032 = $3030 | $3028;
-  $3033 = (_bitshift64Lshr(($2987|0),($2988|0),34)|0);
-  $3034 = tempRet0;
-  $3035 = (_bitshift64Shl(($2987|0),($2988|0),30)|0);
-  $3036 = tempRet0;
-  $3037 = $3035 | $3033;
-  $3038 = $3036 | $3034;
-  $3039 = $3031 ^ $3037;
-  $3040 = $3032 ^ $3038;
-  $3041 = (_bitshift64Lshr(($2987|0),($2988|0),39)|0);
-  $3042 = tempRet0;
-  $3043 = (_bitshift64Shl(($2987|0),($2988|0),25)|0);
-  $3044 = tempRet0;
-  $3045 = $3043 | $3041;
-  $3046 = $3044 | $3042;
-  $3047 = $3039 ^ $3045;
-  $3048 = $3040 ^ $3046;
-  $3049 = $2913 ^ $2839;
-  $3050 = $2914 ^ $2840;
-  $3051 = $2987 & $3049;
-  $3052 = $2988 & $3050;
-  $3053 = $2913 & $2839;
-  $3054 = $2914 & $2840;
-  $3055 = $3051 ^ $3053;
-  $3056 = $3052 ^ $3054;
-  $3057 = (_i64Add(($3047|0),($3048|0),($3055|0),($3056|0))|0);
-  $3058 = tempRet0;
-  $3059 = (_i64Add(($3025|0),($3026|0),($2765|0),($2766|0))|0);
-  $3060 = tempRet0;
-  $3061 = (_i64Add(($3057|0),($3058|0),($3025|0),($3026|0))|0);
-  $3062 = tempRet0;
-  $3063 = (_bitshift64Lshr(($3059|0),($3060|0),14)|0);
-  $3064 = tempRet0;
-  $3065 = (_bitshift64Shl(($3059|0),($3060|0),50)|0);
-  $3066 = tempRet0;
-  $3067 = $3065 | $3063;
-  $3068 = $3066 | $3064;
-  $3069 = (_bitshift64Lshr(($3059|0),($3060|0),18)|0);
-  $3070 = tempRet0;
-  $3071 = (_bitshift64Shl(($3059|0),($3060|0),46)|0);
-  $3072 = tempRet0;
-  $3073 = $3071 | $3069;
-  $3074 = $3072 | $3070;
-  $3075 = $3067 ^ $3073;
-  $3076 = $3068 ^ $3074;
-  $3077 = (_bitshift64Lshr(($3059|0),($3060|0),41)|0);
-  $3078 = tempRet0;
-  $3079 = (_bitshift64Shl(($3059|0),($3060|0),23)|0);
-  $3080 = tempRet0;
-  $3081 = $3079 | $3077;
-  $3082 = $3080 | $3078;
-  $3083 = $3075 ^ $3081;
-  $3084 = $3076 ^ $3082;
-  $3085 = $3059 & $2985;
-  $3086 = $3060 & $2986;
-  $3087 = $3059 ^ -1;
-  $3088 = $3060 ^ -1;
-  $3089 = $2911 & $3087;
-  $3090 = $2912 & $3088;
-  $3091 = $3089 ^ $3085;
-  $3092 = $3090 ^ $3086;
-  $3093 = (_i64Add(($1599|0),($1600|0),365543100,1017036298)|0);
-  $3094 = tempRet0;
-  $3095 = (_i64Add(($3093|0),($3094|0),($2837|0),($2838|0))|0);
-  $3096 = tempRet0;
-  $3097 = (_i64Add(($3095|0),($3096|0),($3091|0),($3092|0))|0);
-  $3098 = tempRet0;
-  $3099 = (_i64Add(($3097|0),($3098|0),($3083|0),($3084|0))|0);
-  $3100 = tempRet0;
-  $3101 = (_bitshift64Lshr(($3061|0),($3062|0),28)|0);
-  $3102 = tempRet0;
-  $3103 = (_bitshift64Shl(($3061|0),($3062|0),36)|0);
-  $3104 = tempRet0;
-  $3105 = $3103 | $3101;
-  $3106 = $3104 | $3102;
-  $3107 = (_bitshift64Lshr(($3061|0),($3062|0),34)|0);
-  $3108 = tempRet0;
-  $3109 = (_bitshift64Shl(($3061|0),($3062|0),30)|0);
-  $3110 = tempRet0;
-  $3111 = $3109 | $3107;
-  $3112 = $3110 | $3108;
-  $3113 = $3105 ^ $3111;
-  $3114 = $3106 ^ $3112;
-  $3115 = (_bitshift64Lshr(($3061|0),($3062|0),39)|0);
-  $3116 = tempRet0;
-  $3117 = (_bitshift64Shl(($3061|0),($3062|0),25)|0);
-  $3118 = tempRet0;
-  $3119 = $3117 | $3115;
-  $3120 = $3118 | $3116;
-  $3121 = $3113 ^ $3119;
-  $3122 = $3114 ^ $3120;
-  $3123 = $2987 ^ $2913;
-  $3124 = $2988 ^ $2914;
-  $3125 = $3061 & $3123;
-  $3126 = $3062 & $3124;
-  $3127 = $2987 & $2913;
-  $3128 = $2988 & $2914;
-  $3129 = $3125 ^ $3127;
-  $3130 = $3126 ^ $3128;
-  $3131 = (_i64Add(($3121|0),($3122|0),($3129|0),($3130|0))|0);
-  $3132 = tempRet0;
-  $3133 = (_i64Add(($3099|0),($3100|0),($2839|0),($2840|0))|0);
-  $3134 = tempRet0;
-  $3135 = (_i64Add(($3131|0),($3132|0),($3099|0),($3100|0))|0);
-  $3136 = tempRet0;
-  $3137 = (_bitshift64Lshr(($3133|0),($3134|0),14)|0);
-  $3138 = tempRet0;
-  $3139 = (_bitshift64Shl(($3133|0),($3134|0),50)|0);
-  $3140 = tempRet0;
-  $3141 = $3139 | $3137;
-  $3142 = $3140 | $3138;
-  $3143 = (_bitshift64Lshr(($3133|0),($3134|0),18)|0);
-  $3144 = tempRet0;
-  $3145 = (_bitshift64Shl(($3133|0),($3134|0),46)|0);
-  $3146 = tempRet0;
-  $3147 = $3145 | $3143;
-  $3148 = $3146 | $3144;
-  $3149 = $3141 ^ $3147;
-  $3150 = $3142 ^ $3148;
-  $3151 = (_bitshift64Lshr(($3133|0),($3134|0),41)|0);
-  $3152 = tempRet0;
-  $3153 = (_bitshift64Shl(($3133|0),($3134|0),23)|0);
-  $3154 = tempRet0;
-  $3155 = $3153 | $3151;
-  $3156 = $3154 | $3152;
-  $3157 = $3149 ^ $3155;
-  $3158 = $3150 ^ $3156;
-  $3159 = $3133 & $3059;
-  $3160 = $3134 & $3060;
-  $3161 = $3133 ^ -1;
-  $3162 = $3134 ^ -1;
-  $3163 = $2985 & $3161;
-  $3164 = $2986 & $3162;
-  $3165 = $3163 ^ $3159;
-  $3166 = $3164 ^ $3160;
-  $3167 = (_i64Add(($1723|0),($1724|0),-1676669620,1126000580)|0);
-  $3168 = tempRet0;
-  $3169 = (_i64Add(($3167|0),($3168|0),($2911|0),($2912|0))|0);
-  $3170 = tempRet0;
-  $3171 = (_i64Add(($3169|0),($3170|0),($3165|0),($3166|0))|0);
-  $3172 = tempRet0;
-  $3173 = (_i64Add(($3171|0),($3172|0),($3157|0),($3158|0))|0);
-  $3174 = tempRet0;
-  $3175 = (_bitshift64Lshr(($3135|0),($3136|0),28)|0);
-  $3176 = tempRet0;
-  $3177 = (_bitshift64Shl(($3135|0),($3136|0),36)|0);
-  $3178 = tempRet0;
-  $3179 = $3177 | $3175;
-  $3180 = $3178 | $3176;
-  $3181 = (_bitshift64Lshr(($3135|0),($3136|0),34)|0);
-  $3182 = tempRet0;
-  $3183 = (_bitshift64Shl(($3135|0),($3136|0),30)|0);
-  $3184 = tempRet0;
-  $3185 = $3183 | $3181;
-  $3186 = $3184 | $3182;
-  $3187 = $3179 ^ $3185;
-  $3188 = $3180 ^ $3186;
-  $3189 = (_bitshift64Lshr(($3135|0),($3136|0),39)|0);
-  $3190 = tempRet0;
-  $3191 = (_bitshift64Shl(($3135|0),($3136|0),25)|0);
-  $3192 = tempRet0;
-  $3193 = $3191 | $3189;
-  $3194 = $3192 | $3190;
-  $3195 = $3187 ^ $3193;
-  $3196 = $3188 ^ $3194;
-  $3197 = $3061 ^ $2987;
-  $3198 = $3062 ^ $2988;
-  $3199 = $3135 & $3197;
-  $3200 = $3136 & $3198;
-  $3201 = $3061 & $2987;
-  $3202 = $3062 & $2988;
-  $3203 = $3199 ^ $3201;
-  $3204 = $3200 ^ $3202;
-  $3205 = (_i64Add(($3195|0),($3196|0),($3203|0),($3204|0))|0);
-  $3206 = tempRet0;
-  $3207 = (_i64Add(($3173|0),($3174|0),($2913|0),($2914|0))|0);
-  $3208 = tempRet0;
-  $3209 = (_i64Add(($3205|0),($3206|0),($3173|0),($3174|0))|0);
-  $3210 = tempRet0;
-  $3211 = (_bitshift64Lshr(($3207|0),($3208|0),14)|0);
-  $3212 = tempRet0;
-  $3213 = (_bitshift64Shl(($3207|0),($3208|0),50)|0);
-  $3214 = tempRet0;
-  $3215 = $3213 | $3211;
-  $3216 = $3214 | $3212;
-  $3217 = (_bitshift64Lshr(($3207|0),($3208|0),18)|0);
-  $3218 = tempRet0;
-  $3219 = (_bitshift64Shl(($3207|0),($3208|0),46)|0);
-  $3220 = tempRet0;
-  $3221 = $3219 | $3217;
-  $3222 = $3220 | $3218;
-  $3223 = $3215 ^ $3221;
-  $3224 = $3216 ^ $3222;
-  $3225 = (_bitshift64Lshr(($3207|0),($3208|0),41)|0);
-  $3226 = tempRet0;
-  $3227 = (_bitshift64Shl(($3207|0),($3208|0),23)|0);
-  $3228 = tempRet0;
-  $3229 = $3227 | $3225;
-  $3230 = $3228 | $3226;
-  $3231 = $3223 ^ $3229;
-  $3232 = $3224 ^ $3230;
-  $3233 = $3207 & $3133;
-  $3234 = $3208 & $3134;
-  $3235 = $3207 ^ -1;
-  $3236 = $3208 ^ -1;
-  $3237 = $3059 & $3235;
-  $3238 = $3060 & $3236;
-  $3239 = $3237 ^ $3233;
-  $3240 = $3238 ^ $3234;
-  $3241 = (_i64Add(($1847|0),($1848|0),-885112138,1288033470)|0);
-  $3242 = tempRet0;
-  $3243 = (_i64Add(($3241|0),($3242|0),($2985|0),($2986|0))|0);
-  $3244 = tempRet0;
-  $3245 = (_i64Add(($3243|0),($3244|0),($3239|0),($3240|0))|0);
-  $3246 = tempRet0;
-  $3247 = (_i64Add(($3245|0),($3246|0),($3231|0),($3232|0))|0);
-  $3248 = tempRet0;
-  $3249 = (_bitshift64Lshr(($3209|0),($3210|0),28)|0);
-  $3250 = tempRet0;
-  $3251 = (_bitshift64Shl(($3209|0),($3210|0),36)|0);
-  $3252 = tempRet0;
-  $3253 = $3251 | $3249;
-  $3254 = $3252 | $3250;
-  $3255 = (_bitshift64Lshr(($3209|0),($3210|0),34)|0);
-  $3256 = tempRet0;
-  $3257 = (_bitshift64Shl(($3209|0),($3210|0),30)|0);
-  $3258 = tempRet0;
-  $3259 = $3257 | $3255;
-  $3260 = $3258 | $3256;
-  $3261 = $3253 ^ $3259;
-  $3262 = $3254 ^ $3260;
-  $3263 = (_bitshift64Lshr(($3209|0),($3210|0),39)|0);
-  $3264 = tempRet0;
-  $3265 = (_bitshift64Shl(($3209|0),($3210|0),25)|0);
-  $3266 = tempRet0;
-  $3267 = $3265 | $3263;
-  $3268 = $3266 | $3264;
-  $3269 = $3261 ^ $3267;
-  $3270 = $3262 ^ $3268;
-  $3271 = $3135 ^ $3061;
-  $3272 = $3136 ^ $3062;
-  $3273 = $3209 & $3271;
-  $3274 = $3210 & $3272;
-  $3275 = $3135 & $3061;
-  $3276 = $3136 & $3062;
-  $3277 = $3273 ^ $3275;
-  $3278 = $3274 ^ $3276;
-  $3279 = (_i64Add(($3269|0),($3270|0),($3277|0),($3278|0))|0);
-  $3280 = tempRet0;
-  $3281 = (_i64Add(($3247|0),($3248|0),($2987|0),($2988|0))|0);
-  $3282 = tempRet0;
-  $3283 = (_i64Add(($3279|0),($3280|0),($3247|0),($3248|0))|0);
-  $3284 = tempRet0;
-  $3285 = (_bitshift64Lshr(($3281|0),($3282|0),14)|0);
-  $3286 = tempRet0;
-  $3287 = (_bitshift64Shl(($3281|0),($3282|0),50)|0);
-  $3288 = tempRet0;
-  $3289 = $3287 | $3285;
-  $3290 = $3288 | $3286;
-  $3291 = (_bitshift64Lshr(($3281|0),($3282|0),18)|0);
-  $3292 = tempRet0;
-  $3293 = (_bitshift64Shl(($3281|0),($3282|0),46)|0);
-  $3294 = tempRet0;
-  $3295 = $3293 | $3291;
-  $3296 = $3294 | $3292;
-  $3297 = $3289 ^ $3295;
-  $3298 = $3290 ^ $3296;
-  $3299 = (_bitshift64Lshr(($3281|0),($3282|0),41)|0);
-  $3300 = tempRet0;
-  $3301 = (_bitshift64Shl(($3281|0),($3282|0),23)|0);
-  $3302 = tempRet0;
-  $3303 = $3301 | $3299;
-  $3304 = $3302 | $3300;
-  $3305 = $3297 ^ $3303;
-  $3306 = $3298 ^ $3304;
-  $3307 = $3281 & $3207;
-  $3308 = $3282 & $3208;
-  $3309 = $3281 ^ -1;
-  $3310 = $3282 ^ -1;
-  $3311 = $3133 & $3309;
-  $3312 = $3134 & $3310;
-  $3313 = $3311 ^ $3307;
-  $3314 = $3312 ^ $3308;
-  $3315 = (_i64Add(($1971|0),($1972|0),-60457430,1501505948)|0);
-  $3316 = tempRet0;
-  $3317 = (_i64Add(($3315|0),($3316|0),($3059|0),($3060|0))|0);
-  $3318 = tempRet0;
-  $3319 = (_i64Add(($3317|0),($3318|0),($3313|0),($3314|0))|0);
-  $3320 = tempRet0;
-  $3321 = (_i64Add(($3319|0),($3320|0),($3305|0),($3306|0))|0);
-  $3322 = tempRet0;
-  $3323 = (_bitshift64Lshr(($3283|0),($3284|0),28)|0);
-  $3324 = tempRet0;
-  $3325 = (_bitshift64Shl(($3283|0),($3284|0),36)|0);
-  $3326 = tempRet0;
-  $3327 = $3325 | $3323;
-  $3328 = $3326 | $3324;
-  $3329 = (_bitshift64Lshr(($3283|0),($3284|0),34)|0);
-  $3330 = tempRet0;
-  $3331 = (_bitshift64Shl(($3283|0),($3284|0),30)|0);
-  $3332 = tempRet0;
-  $3333 = $3331 | $3329;
-  $3334 = $3332 | $3330;
-  $3335 = $3327 ^ $3333;
-  $3336 = $3328 ^ $3334;
-  $3337 = (_bitshift64Lshr(($3283|0),($3284|0),39)|0);
-  $3338 = tempRet0;
-  $3339 = (_bitshift64Shl(($3283|0),($3284|0),25)|0);
-  $3340 = tempRet0;
-  $3341 = $3339 | $3337;
-  $3342 = $3340 | $3338;
-  $3343 = $3335 ^ $3341;
-  $3344 = $3336 ^ $3342;
-  $3345 = $3209 ^ $3135;
-  $3346 = $3210 ^ $3136;
-  $3347 = $3283 & $3345;
-  $3348 = $3284 & $3346;
-  $3349 = $3209 & $3135;
-  $3350 = $3210 & $3136;
-  $3351 = $3347 ^ $3349;
-  $3352 = $3348 ^ $3350;
-  $3353 = (_i64Add(($3343|0),($3344|0),($3351|0),($3352|0))|0);
-  $3354 = tempRet0;
-  $3355 = (_i64Add(($3321|0),($3322|0),($3061|0),($3062|0))|0);
-  $3356 = tempRet0;
-  $3357 = (_i64Add(($3353|0),($3354|0),($3321|0),($3322|0))|0);
-  $3358 = tempRet0;
-  $3359 = (_bitshift64Lshr(($3355|0),($3356|0),14)|0);
-  $3360 = tempRet0;
-  $3361 = (_bitshift64Shl(($3355|0),($3356|0),50)|0);
-  $3362 = tempRet0;
-  $3363 = $3361 | $3359;
-  $3364 = $3362 | $3360;
-  $3365 = (_bitshift64Lshr(($3355|0),($3356|0),18)|0);
-  $3366 = tempRet0;
-  $3367 = (_bitshift64Shl(($3355|0),($3356|0),46)|0);
-  $3368 = tempRet0;
-  $3369 = $3367 | $3365;
-  $3370 = $3368 | $3366;
-  $3371 = $3363 ^ $3369;
-  $3372 = $3364 ^ $3370;
-  $3373 = (_bitshift64Lshr(($3355|0),($3356|0),41)|0);
-  $3374 = tempRet0;
-  $3375 = (_bitshift64Shl(($3355|0),($3356|0),23)|0);
-  $3376 = tempRet0;
-  $3377 = $3375 | $3373;
-  $3378 = $3376 | $3374;
-  $3379 = $3371 ^ $3377;
-  $3380 = $3372 ^ $3378;
-  $3381 = $3355 & $3281;
-  $3382 = $3356 & $3282;
-  $3383 = $3355 ^ -1;
-  $3384 = $3356 ^ -1;
-  $3385 = $3207 & $3383;
-  $3386 = $3208 & $3384;
-  $3387 = $3385 ^ $3381;
-  $3388 = $3386 ^ $3382;
-  $3389 = (_i64Add(($2095|0),($2096|0),987167468,1607167915)|0);
-  $3390 = tempRet0;
-  $3391 = (_i64Add(($3389|0),($3390|0),($3133|0),($3134|0))|0);
-  $3392 = tempRet0;
-  $3393 = (_i64Add(($3391|0),($3392|0),($3387|0),($3388|0))|0);
-  $3394 = tempRet0;
-  $3395 = (_i64Add(($3393|0),($3394|0),($3379|0),($3380|0))|0);
-  $3396 = tempRet0;
-  $3397 = (_bitshift64Lshr(($3357|0),($3358|0),28)|0);
-  $3398 = tempRet0;
-  $3399 = (_bitshift64Shl(($3357|0),($3358|0),36)|0);
-  $3400 = tempRet0;
-  $3401 = $3399 | $3397;
-  $3402 = $3400 | $3398;
-  $3403 = (_bitshift64Lshr(($3357|0),($3358|0),34)|0);
-  $3404 = tempRet0;
-  $3405 = (_bitshift64Shl(($3357|0),($3358|0),30)|0);
-  $3406 = tempRet0;
-  $3407 = $3405 | $3403;
-  $3408 = $3406 | $3404;
-  $3409 = $3401 ^ $3407;
-  $3410 = $3402 ^ $3408;
-  $3411 = (_bitshift64Lshr(($3357|0),($3358|0),39)|0);
-  $3412 = tempRet0;
-  $3413 = (_bitshift64Shl(($3357|0),($3358|0),25)|0);
-  $3414 = tempRet0;
-  $3415 = $3413 | $3411;
-  $3416 = $3414 | $3412;
-  $3417 = $3409 ^ $3415;
-  $3418 = $3410 ^ $3416;
-  $3419 = $3283 ^ $3209;
-  $3420 = $3284 ^ $3210;
-  $3421 = $3357 & $3419;
-  $3422 = $3358 & $3420;
-  $3423 = $3283 & $3209;
-  $3424 = $3284 & $3210;
-  $3425 = $3421 ^ $3423;
-  $3426 = $3422 ^ $3424;
-  $3427 = (_i64Add(($3417|0),($3418|0),($3425|0),($3426|0))|0);
-  $3428 = tempRet0;
-  $3429 = (_i64Add(($3395|0),($3396|0),($3135|0),($3136|0))|0);
-  $3430 = tempRet0;
-  $3431 = (_i64Add(($3427|0),($3428|0),($3395|0),($3396|0))|0);
-  $3432 = tempRet0;
-  $3433 = (_bitshift64Lshr(($3429|0),($3430|0),14)|0);
-  $3434 = tempRet0;
-  $3435 = (_bitshift64Shl(($3429|0),($3430|0),50)|0);
-  $3436 = tempRet0;
-  $3437 = $3435 | $3433;
-  $3438 = $3436 | $3434;
-  $3439 = (_bitshift64Lshr(($3429|0),($3430|0),18)|0);
-  $3440 = tempRet0;
-  $3441 = (_bitshift64Shl(($3429|0),($3430|0),46)|0);
-  $3442 = tempRet0;
-  $3443 = $3441 | $3439;
-  $3444 = $3442 | $3440;
-  $3445 = $3437 ^ $3443;
-  $3446 = $3438 ^ $3444;
-  $3447 = (_bitshift64Lshr(($3429|0),($3430|0),41)|0);
-  $3448 = tempRet0;
-  $3449 = (_bitshift64Shl(($3429|0),($3430|0),23)|0);
-  $3450 = tempRet0;
-  $3451 = $3449 | $3447;
-  $3452 = $3450 | $3448;
-  $3453 = $3445 ^ $3451;
-  $3454 = $3446 ^ $3452;
-  $3455 = $3429 & $3355;
-  $3456 = $3430 & $3356;
-  $3457 = $3429 ^ -1;
-  $3458 = $3430 ^ -1;
-  $3459 = $3281 & $3457;
-  $3460 = $3282 & $3458;
-  $3461 = $3459 ^ $3455;
-  $3462 = $3460 ^ $3456;
-  $3463 = (_i64Add(($2219|0),($2220|0),1246189591,1816402316)|0);
-  $3464 = tempRet0;
-  $3465 = (_i64Add(($3463|0),($3464|0),($3207|0),($3208|0))|0);
-  $3466 = tempRet0;
-  $3467 = (_i64Add(($3465|0),($3466|0),($3461|0),($3462|0))|0);
-  $3468 = tempRet0;
-  $3469 = (_i64Add(($3467|0),($3468|0),($3453|0),($3454|0))|0);
-  $3470 = tempRet0;
-  $3471 = (_bitshift64Lshr(($3431|0),($3432|0),28)|0);
-  $3472 = tempRet0;
-  $3473 = (_bitshift64Shl(($3431|0),($3432|0),36)|0);
-  $3474 = tempRet0;
-  $3475 = $3473 | $3471;
-  $3476 = $3474 | $3472;
-  $3477 = (_bitshift64Lshr(($3431|0),($3432|0),34)|0);
-  $3478 = tempRet0;
-  $3479 = (_bitshift64Shl(($3431|0),($3432|0),30)|0);
-  $3480 = tempRet0;
-  $3481 = $3479 | $3477;
-  $3482 = $3480 | $3478;
-  $3483 = $3475 ^ $3481;
-  $3484 = $3476 ^ $3482;
-  $3485 = (_bitshift64Lshr(($3431|0),($3432|0),39)|0);
-  $3486 = tempRet0;
-  $3487 = (_bitshift64Shl(($3431|0),($3432|0),25)|0);
-  $3488 = tempRet0;
-  $3489 = $3487 | $3485;
-  $3490 = $3488 | $3486;
-  $3491 = $3483 ^ $3489;
-  $3492 = $3484 ^ $3490;
-  $3493 = $3357 ^ $3283;
-  $3494 = $3358 ^ $3284;
-  $3495 = $3431 & $3493;
-  $3496 = $3432 & $3494;
-  $3497 = $3357 & $3283;
-  $3498 = $3358 & $3284;
-  $3499 = $3495 ^ $3497;
-  $3500 = $3496 ^ $3498;
-  $3503 = (_i64Add(($3499|0),($3500|0),($3501|0),($3502|0))|0);
-  $3504 = tempRet0;
-  $3505 = (_i64Add(($3503|0),($3504|0),($3491|0),($3492|0))|0);
-  $3506 = tempRet0;
-  $3507 = (_i64Add(($3505|0),($3506|0),($3469|0),($3470|0))|0);
-  $3508 = tempRet0;
-  $3509 = $4;
-  $3510 = $3509;
-  HEAP32[$3510>>2] = $3507;
-  $3511 = (($3509) + 4)|0;
-  $3512 = $3511;
-  HEAP32[$3512>>2] = $3508;
-  $3515 = (_i64Add(($3431|0),($3432|0),($3513|0),($3514|0))|0);
-  $3516 = tempRet0;
-  $3517 = $5;
-  $3518 = $3517;
-  HEAP32[$3518>>2] = $3515;
-  $3519 = (($3517) + 4)|0;
-  $3520 = $3519;
-  HEAP32[$3520>>2] = $3516;
-  $3523 = (_i64Add(($3357|0),($3358|0),($3521|0),($3522|0))|0);
-  $3524 = tempRet0;
-  $3525 = $6;
-  $3526 = $3525;
-  HEAP32[$3526>>2] = $3523;
-  $3527 = (($3525) + 4)|0;
-  $3528 = $3527;
-  HEAP32[$3528>>2] = $3524;
-  $3531 = (_i64Add(($3283|0),($3284|0),($3529|0),($3530|0))|0);
-  $3532 = tempRet0;
-  $3533 = $7;
-  $3534 = $3533;
-  HEAP32[$3534>>2] = $3531;
-  $3535 = (($3533) + 4)|0;
-  $3536 = $3535;
-  HEAP32[$3536>>2] = $3532;
-  $3539 = (_i64Add(($3209|0),($3210|0),($3537|0),($3538|0))|0);
-  $3540 = tempRet0;
-  $3541 = (_i64Add(($3539|0),($3540|0),($3469|0),($3470|0))|0);
-  $3542 = tempRet0;
-  $3543 = $8;
-  $3544 = $3543;
-  HEAP32[$3544>>2] = $3541;
-  $3545 = (($3543) + 4)|0;
-  $3546 = $3545;
-  HEAP32[$3546>>2] = $3542;
-  $3549 = (_i64Add(($3429|0),($3430|0),($3547|0),($3548|0))|0);
-  $3550 = tempRet0;
-  $3551 = $9;
-  $3552 = $3551;
-  HEAP32[$3552>>2] = $3549;
-  $3553 = (($3551) + 4)|0;
-  $3554 = $3553;
-  HEAP32[$3554>>2] = $3550;
-  $3557 = (_i64Add(($3355|0),($3356|0),($3555|0),($3556|0))|0);
-  $3558 = tempRet0;
-  $3559 = $10;
-  $3560 = $3559;
-  HEAP32[$3560>>2] = $3557;
-  $3561 = (($3559) + 4)|0;
-  $3562 = $3561;
-  HEAP32[$3562>>2] = $3558;
-  $3565 = (_i64Add(($3281|0),($3282|0),($3563|0),($3564|0))|0);
-  $3566 = tempRet0;
-  $3567 = $11;
-  $3568 = $3567;
-  HEAP32[$3568>>2] = $3565;
-  $3569 = (($3567) + 4)|0;
-  $3570 = $3569;
-  HEAP32[$3570>>2] = $3566;
-  $3571 = ((($$0)) + 128|0);
-  $3572 = (($$08) + -1)|0;
-  $3573 = ($3572|0)==(0);
-  if ($3573) {
-   break;
-  } else {
-   $$0 = $3571;$$08 = $3572;$3501 = $3507;$3502 = $3508;$3513 = $3515;$3514 = 
$3516;$3521 = $3523;$3522 = $3524;$3529 = $3531;$3530 = $3532;$3537 = 
$3541;$3538 = $3542;$3547 = $3549;$3548 = $3550;$3555 = $3557;$3556 = 
$3558;$3563 = $3565;$3564 = $3566;
-  }
- }
- STACKTOP = sp;return 220;
-}
-function _sha384_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 160|0);
- $3 = $2;
- $4 = $3;
- HEAP32[$4>>2] = -1056596264;
- $5 = (($3) + 4)|0;
- $6 = $5;
- HEAP32[$6>>2] = -876896931;
- $7 = ((($0)) + 168|0);
- $8 = $7;
- $9 = $8;
- HEAP32[$9>>2] = 914150663;
- $10 = (($8) + 4)|0;
- $11 = $10;
- HEAP32[$11>>2] = 1654270250;
- $12 = ((($0)) + 176|0);
- $13 = $12;
- $14 = $13;
- HEAP32[$14>>2] = 812702999;
- $15 = (($13) + 4)|0;
- $16 = $15;
- HEAP32[$16>>2] = -1856437926;
- $17 = ((($0)) + 184|0);
- $18 = $17;
- $19 = $18;
- HEAP32[$19>>2] = -150054599;
- $20 = (($18) + 4)|0;
- $21 = $20;
- HEAP32[$21>>2] = 355462360;
- $22 = ((($0)) + 192|0);
- $23 = $22;
- $24 = $23;
- HEAP32[$24>>2] = -4191439;
- $25 = (($23) + 4)|0;
- $26 = $25;
- HEAP32[$26>>2] = 1731405415;
- $27 = ((($0)) + 200|0);
- $28 = $27;
- $29 = $28;
- HEAP32[$29>>2] = 1750603025;
- $30 = (($28) + 4)|0;
- $31 = $30;
- HEAP32[$31>>2] = -1900787065;
- $32 = ((($0)) + 208|0);
- $33 = $32;
- $34 = $33;
- HEAP32[$34>>2] = 1694076839;
- $35 = (($33) + 4)|0;
- $36 = $35;
- HEAP32[$36>>2] = -619958771;
- $37 = ((($0)) + 216|0);
- $38 = $37;
- $39 = $38;
- HEAP32[$39>>2] = -1090891868;
- $40 = (($38) + 4)|0;
- $41 = $40;
- HEAP32[$41>>2] = 1203062813;
- $42 = ((($0)) + 128|0);
- $43 = ((($0)) + 148|0);
- 
;HEAP32[$42>>2]=0|0;HEAP32[$42+4>>2]=0|0;HEAP32[$42+8>>2]=0|0;HEAP32[$42+12>>2]=0|0;HEAP32[$42+16>>2]=0|0;
- HEAP32[$43>>2] = 128;
- $44 = ((($0)) + 152|0);
- HEAP32[$44>>2] = 80;
- return;
-}
-function _twofish_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (_do_twofish_setkey($0,$1,$2)|0);
- ___gcry_burn_stack(47);
- return ($3|0);
-}
-function _twofish_encrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0;
- var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 
= 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0;
- var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 
= 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 
= 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0;
- var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 
= 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 
= 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0;
- var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, 
$179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, 
$186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0;
- var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, 
$197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, 
$204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0;
- var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 
= 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 
= 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0;
- var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 
= 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 
= 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0;
- var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 
= 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 
= 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0;
- var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 
= 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 
= 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0;
- var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, 
$288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, 
$295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0;
- var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 
0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 
0, $313 = 0, $314 = 0, $315 = 0, $316 = 0;
- var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0;
- var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 
= 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0;
- var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 
= 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0;
- var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, 
$378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, 
$385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0;
- var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 
= 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 
0, $403 = 0, $404 = 0, $405 = 0, $406 = 0;
- var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 
= 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0;
- var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 
= 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0;
- var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 
= 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0;
- var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, 
$468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, 
$475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0;
- var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 
= 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 
= 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0;
- var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 
0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 
0, $511 = 0, $512 = 0, $513 = 0, $514 = 0;
- var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 
= 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0;
- var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 
= 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0;
- var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, 
$558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, 
$565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0;
- var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 
= 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 
= 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0;
- var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 
= 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 
0, $601 = 0, $602 = 0, $603 = 0, $604 = 0;
- var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 
= 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 
= 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0;
- var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 
= 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 
= 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0;
- var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, 
$648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, 
$655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0;
- var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 
= 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 
= 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0;
- var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 
= 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 
= 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0;
- var $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 
0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 
0, $71 = 0, $710 = 0, $711 = 0, $712 = 0;
- var $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 
= 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 
= 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0;
- var $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, 
$738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, 
$745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0;
- var $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 
= 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 
= 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0;
- var $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 
= 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 
= 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0;
- var $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 
= 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 
0, $80 = 0, $800 = 0, $801 = 0, $802 = 0;
- var $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 
= 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 
= 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0;
- var $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, 
$828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, 
$835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0;
- var $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 
= 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 
= 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0;
- var $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 
= 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 
= 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0;
- var $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 
= 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 
= 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0;
- var $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 
0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 
0, $908 = 0, $909 = 0, $91 = 0, $910 = 0;
- var $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, 
$918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, 
$925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0;
- var $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 
= 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $95 = 0, $96 = 0, $97 = 
0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($2)) + 3|0);
- $4 = HEAP8[$3>>0]|0;
- $5 = $4&255;
- $6 = $5 << 24;
- $7 = ((($2)) + 2|0);
- $8 = HEAP8[$7>>0]|0;
- $9 = $8&255;
- $10 = $9 << 16;
- $11 = $10 | $6;
- $12 = ((($2)) + 1|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13&255;
- $15 = $14 << 8;
- $16 = $11 | $15;
- $17 = HEAP8[$2>>0]|0;
- $18 = $17&255;
- $19 = $16 | $18;
- $20 = ((($0)) + 4096|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = $19 ^ $21;
- $23 = ((($2)) + 4|0);
- $24 = ((($2)) + 7|0);
- $25 = HEAP8[$24>>0]|0;
- $26 = $25&255;
- $27 = $26 << 24;
- $28 = ((($2)) + 6|0);
- $29 = HEAP8[$28>>0]|0;
- $30 = $29&255;
- $31 = $30 << 16;
- $32 = $31 | $27;
- $33 = ((($2)) + 5|0);
- $34 = HEAP8[$33>>0]|0;
- $35 = $34&255;
- $36 = $35 << 8;
- $37 = $32 | $36;
- $38 = HEAP8[$23>>0]|0;
- $39 = $38&255;
- $40 = $37 | $39;
- $41 = ((($0)) + 4100|0);
- $42 = HEAP32[$41>>2]|0;
- $43 = $40 ^ $42;
- $44 = ((($2)) + 8|0);
- $45 = ((($2)) + 11|0);
- $46 = HEAP8[$45>>0]|0;
- $47 = $46&255;
- $48 = $47 << 24;
- $49 = ((($2)) + 10|0);
- $50 = HEAP8[$49>>0]|0;
- $51 = $50&255;
- $52 = $51 << 16;
- $53 = $52 | $48;
- $54 = ((($2)) + 9|0);
- $55 = HEAP8[$54>>0]|0;
- $56 = $55&255;
- $57 = $56 << 8;
- $58 = $53 | $57;
- $59 = HEAP8[$44>>0]|0;
- $60 = $59&255;
- $61 = $58 | $60;
- $62 = ((($0)) + 4104|0);
- $63 = HEAP32[$62>>2]|0;
- $64 = $61 ^ $63;
- $65 = ((($2)) + 12|0);
- $66 = ((($2)) + 15|0);
- $67 = HEAP8[$66>>0]|0;
- $68 = $67&255;
- $69 = $68 << 24;
- $70 = ((($2)) + 14|0);
- $71 = HEAP8[$70>>0]|0;
- $72 = $71&255;
- $73 = $72 << 16;
- $74 = $73 | $69;
- $75 = ((($2)) + 13|0);
- $76 = HEAP8[$75>>0]|0;
- $77 = $76&255;
- $78 = $77 << 8;
- $79 = $74 | $78;
- $80 = HEAP8[$65>>0]|0;
- $81 = $80&255;
- $82 = $79 | $81;
- $83 = ((($0)) + 4108|0);
- $84 = HEAP32[$83>>2]|0;
- $85 = $82 ^ $84;
- $86 = $22 & 255;
- $87 = (($0) + ($86<<2)|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $22 >>> 8;
- $90 = $89 & 255;
- $91 = (((($0)) + 1024|0) + ($90<<2)|0);
- $92 = HEAP32[$91>>2]|0;
- $93 = $92 ^ $88;
- $94 = $22 >>> 16;
- $95 = $94 & 255;
- $96 = (((($0)) + 2048|0) + ($95<<2)|0);
- $97 = HEAP32[$96>>2]|0;
- $98 = $93 ^ $97;
- $99 = $22 >>> 24;
- $100 = (((($0)) + 3072|0) + ($99<<2)|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $98 ^ $101;
- $103 = $43 & 255;
- $104 = (((($0)) + 1024|0) + ($103<<2)|0);
- $105 = HEAP32[$104>>2]|0;
- $106 = $43 >>> 8;
- $107 = $106 & 255;
- $108 = (((($0)) + 2048|0) + ($107<<2)|0);
- $109 = HEAP32[$108>>2]|0;
- $110 = $109 ^ $105;
- $111 = $43 >>> 16;
- $112 = $111 & 255;
- $113 = (((($0)) + 3072|0) + ($112<<2)|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $110 ^ $114;
- $116 = $43 >>> 24;
- $117 = (($0) + ($116<<2)|0);
- $118 = HEAP32[$117>>2]|0;
- $119 = $115 ^ $118;
- $120 = (($119) + ($102))|0;
- $121 = ((($0)) + 4132|0);
- $122 = HEAP32[$121>>2]|0;
- $123 = (($119) + ($122))|0;
- $124 = (($123) + ($120))|0;
- $125 = ((($0)) + 4128|0);
- $126 = HEAP32[$125>>2]|0;
- $127 = (($120) + ($126))|0;
- $128 = $64 ^ $127;
- $129 = $128 >>> 1;
- $130 = $128 << 31;
- $131 = $129 | $130;
- $132 = $85 << 1;
- $133 = $85 >>> 31;
- $134 = $132 | $133;
- $135 = $124 ^ $134;
- $136 = $129 & 255;
- $137 = (($0) + ($136<<2)|0);
- $138 = HEAP32[$137>>2]|0;
- $139 = $128 >>> 9;
- $140 = $139 & 255;
- $141 = (((($0)) + 1024|0) + ($140<<2)|0);
- $142 = HEAP32[$141>>2]|0;
- $143 = $142 ^ $138;
- $144 = $128 >>> 17;
- $145 = $144 & 255;
- $146 = (((($0)) + 2048|0) + ($145<<2)|0);
- $147 = HEAP32[$146>>2]|0;
- $148 = $143 ^ $147;
- $149 = $131 >>> 24;
- $150 = (((($0)) + 3072|0) + ($149<<2)|0);
- $151 = HEAP32[$150>>2]|0;
- $152 = $148 ^ $151;
- $153 = $135 & 255;
- $154 = (((($0)) + 1024|0) + ($153<<2)|0);
- $155 = HEAP32[$154>>2]|0;
- $156 = $135 >>> 8;
- $157 = $156 & 255;
- $158 = (((($0)) + 2048|0) + ($157<<2)|0);
- $159 = HEAP32[$158>>2]|0;
- $160 = $159 ^ $155;
- $161 = $135 >>> 16;
- $162 = $161 & 255;
- $163 = (((($0)) + 3072|0) + ($162<<2)|0);
- $164 = HEAP32[$163>>2]|0;
- $165 = $160 ^ $164;
- $166 = $135 >>> 24;
- $167 = (($0) + ($166<<2)|0);
- $168 = HEAP32[$167>>2]|0;
- $169 = $165 ^ $168;
- $170 = (($169) + ($152))|0;
- $171 = ((($0)) + 4140|0);
- $172 = HEAP32[$171>>2]|0;
- $173 = (($169) + ($172))|0;
- $174 = (($173) + ($170))|0;
- $175 = ((($0)) + 4136|0);
- $176 = HEAP32[$175>>2]|0;
- $177 = (($170) + ($176))|0;
- $178 = $177 ^ $22;
- $179 = $178 >>> 1;
- $180 = $178 << 31;
- $181 = $179 | $180;
- $182 = $43 << 1;
- $183 = $43 >>> 31;
- $184 = $182 | $183;
- $185 = $174 ^ $184;
- $186 = $179 & 255;
- $187 = (($0) + ($186<<2)|0);
- $188 = HEAP32[$187>>2]|0;
- $189 = $178 >>> 9;
- $190 = $189 & 255;
- $191 = (((($0)) + 1024|0) + ($190<<2)|0);
- $192 = HEAP32[$191>>2]|0;
- $193 = $192 ^ $188;
- $194 = $178 >>> 17;
- $195 = $194 & 255;
- $196 = (((($0)) + 2048|0) + ($195<<2)|0);
- $197 = HEAP32[$196>>2]|0;
- $198 = $193 ^ $197;
- $199 = $181 >>> 24;
- $200 = (((($0)) + 3072|0) + ($199<<2)|0);
- $201 = HEAP32[$200>>2]|0;
- $202 = $198 ^ $201;
- $203 = $185 & 255;
- $204 = (((($0)) + 1024|0) + ($203<<2)|0);
- $205 = HEAP32[$204>>2]|0;
- $206 = $185 >>> 8;
- $207 = $206 & 255;
- $208 = (((($0)) + 2048|0) + ($207<<2)|0);
- $209 = HEAP32[$208>>2]|0;
- $210 = $209 ^ $205;
- $211 = $185 >>> 16;
- $212 = $211 & 255;
- $213 = (((($0)) + 3072|0) + ($212<<2)|0);
- $214 = HEAP32[$213>>2]|0;
- $215 = $210 ^ $214;
- $216 = $185 >>> 24;
- $217 = (($0) + ($216<<2)|0);
- $218 = HEAP32[$217>>2]|0;
- $219 = $215 ^ $218;
- $220 = (($219) + ($202))|0;
- $221 = ((($0)) + 4148|0);
- $222 = HEAP32[$221>>2]|0;
- $223 = (($219) + ($222))|0;
- $224 = (($223) + ($220))|0;
- $225 = ((($0)) + 4144|0);
- $226 = HEAP32[$225>>2]|0;
- $227 = (($220) + ($226))|0;
- $228 = $227 ^ $131;
- $229 = $228 >>> 1;
- $230 = $228 << 31;
- $231 = $229 | $230;
- $232 = $135 << 1;
- $233 = $135 >>> 31;
- $234 = $232 | $233;
- $235 = $224 ^ $234;
- $236 = $229 & 255;
- $237 = (($0) + ($236<<2)|0);
- $238 = HEAP32[$237>>2]|0;
- $239 = $228 >>> 9;
- $240 = $239 & 255;
- $241 = (((($0)) + 1024|0) + ($240<<2)|0);
- $242 = HEAP32[$241>>2]|0;
- $243 = $242 ^ $238;
- $244 = $228 >>> 17;
- $245 = $244 & 255;
- $246 = (((($0)) + 2048|0) + ($245<<2)|0);
- $247 = HEAP32[$246>>2]|0;
- $248 = $243 ^ $247;
- $249 = $231 >>> 24;
- $250 = (((($0)) + 3072|0) + ($249<<2)|0);
- $251 = HEAP32[$250>>2]|0;
- $252 = $248 ^ $251;
- $253 = $235 & 255;
- $254 = (((($0)) + 1024|0) + ($253<<2)|0);
- $255 = HEAP32[$254>>2]|0;
- $256 = $235 >>> 8;
- $257 = $256 & 255;
- $258 = (((($0)) + 2048|0) + ($257<<2)|0);
- $259 = HEAP32[$258>>2]|0;
- $260 = $259 ^ $255;
- $261 = $235 >>> 16;
- $262 = $261 & 255;
- $263 = (((($0)) + 3072|0) + ($262<<2)|0);
- $264 = HEAP32[$263>>2]|0;
- $265 = $260 ^ $264;
- $266 = $235 >>> 24;
- $267 = (($0) + ($266<<2)|0);
- $268 = HEAP32[$267>>2]|0;
- $269 = $265 ^ $268;
- $270 = (($269) + ($252))|0;
- $271 = ((($0)) + 4156|0);
- $272 = HEAP32[$271>>2]|0;
- $273 = (($269) + ($272))|0;
- $274 = (($273) + ($270))|0;
- $275 = ((($0)) + 4152|0);
- $276 = HEAP32[$275>>2]|0;
- $277 = (($270) + ($276))|0;
- $278 = $277 ^ $181;
- $279 = $278 >>> 1;
- $280 = $278 << 31;
- $281 = $279 | $280;
- $282 = $185 << 1;
- $283 = $185 >>> 31;
- $284 = $282 | $283;
- $285 = $274 ^ $284;
- $286 = $279 & 255;
- $287 = (($0) + ($286<<2)|0);
- $288 = HEAP32[$287>>2]|0;
- $289 = $278 >>> 9;
- $290 = $289 & 255;
- $291 = (((($0)) + 1024|0) + ($290<<2)|0);
- $292 = HEAP32[$291>>2]|0;
- $293 = $292 ^ $288;
- $294 = $278 >>> 17;
- $295 = $294 & 255;
- $296 = (((($0)) + 2048|0) + ($295<<2)|0);
- $297 = HEAP32[$296>>2]|0;
- $298 = $293 ^ $297;
- $299 = $281 >>> 24;
- $300 = (((($0)) + 3072|0) + ($299<<2)|0);
- $301 = HEAP32[$300>>2]|0;
- $302 = $298 ^ $301;
- $303 = $285 & 255;
- $304 = (((($0)) + 1024|0) + ($303<<2)|0);
- $305 = HEAP32[$304>>2]|0;
- $306 = $285 >>> 8;
- $307 = $306 & 255;
- $308 = (((($0)) + 2048|0) + ($307<<2)|0);
- $309 = HEAP32[$308>>2]|0;
- $310 = $309 ^ $305;
- $311 = $285 >>> 16;
- $312 = $311 & 255;
- $313 = (((($0)) + 3072|0) + ($312<<2)|0);
- $314 = HEAP32[$313>>2]|0;
- $315 = $310 ^ $314;
- $316 = $285 >>> 24;
- $317 = (($0) + ($316<<2)|0);
- $318 = HEAP32[$317>>2]|0;
- $319 = $315 ^ $318;
- $320 = (($319) + ($302))|0;
- $321 = ((($0)) + 4164|0);
- $322 = HEAP32[$321>>2]|0;
- $323 = (($319) + ($322))|0;
- $324 = (($323) + ($320))|0;
- $325 = ((($0)) + 4160|0);
- $326 = HEAP32[$325>>2]|0;
- $327 = (($320) + ($326))|0;
- $328 = $327 ^ $231;
- $329 = $328 >>> 1;
- $330 = $328 << 31;
- $331 = $329 | $330;
- $332 = $235 << 1;
- $333 = $235 >>> 31;
- $334 = $332 | $333;
- $335 = $324 ^ $334;
- $336 = $329 & 255;
- $337 = (($0) + ($336<<2)|0);
- $338 = HEAP32[$337>>2]|0;
- $339 = $328 >>> 9;
- $340 = $339 & 255;
- $341 = (((($0)) + 1024|0) + ($340<<2)|0);
- $342 = HEAP32[$341>>2]|0;
- $343 = $342 ^ $338;
- $344 = $328 >>> 17;
- $345 = $344 & 255;
- $346 = (((($0)) + 2048|0) + ($345<<2)|0);
- $347 = HEAP32[$346>>2]|0;
- $348 = $343 ^ $347;
- $349 = $331 >>> 24;
- $350 = (((($0)) + 3072|0) + ($349<<2)|0);
- $351 = HEAP32[$350>>2]|0;
- $352 = $348 ^ $351;
- $353 = $335 & 255;
- $354 = (((($0)) + 1024|0) + ($353<<2)|0);
- $355 = HEAP32[$354>>2]|0;
- $356 = $335 >>> 8;
- $357 = $356 & 255;
- $358 = (((($0)) + 2048|0) + ($357<<2)|0);
- $359 = HEAP32[$358>>2]|0;
- $360 = $359 ^ $355;
- $361 = $335 >>> 16;
- $362 = $361 & 255;
- $363 = (((($0)) + 3072|0) + ($362<<2)|0);
- $364 = HEAP32[$363>>2]|0;
- $365 = $360 ^ $364;
- $366 = $335 >>> 24;
- $367 = (($0) + ($366<<2)|0);
- $368 = HEAP32[$367>>2]|0;
- $369 = $365 ^ $368;
- $370 = (($369) + ($352))|0;
- $371 = ((($0)) + 4172|0);
- $372 = HEAP32[$371>>2]|0;
- $373 = (($369) + ($372))|0;
- $374 = (($373) + ($370))|0;
- $375 = ((($0)) + 4168|0);
- $376 = HEAP32[$375>>2]|0;
- $377 = (($370) + ($376))|0;
- $378 = $377 ^ $281;
- $379 = $378 >>> 1;
- $380 = $378 << 31;
- $381 = $379 | $380;
- $382 = $285 << 1;
- $383 = $285 >>> 31;
- $384 = $382 | $383;
- $385 = $374 ^ $384;
- $386 = $379 & 255;
- $387 = (($0) + ($386<<2)|0);
- $388 = HEAP32[$387>>2]|0;
- $389 = $378 >>> 9;
- $390 = $389 & 255;
- $391 = (((($0)) + 1024|0) + ($390<<2)|0);
- $392 = HEAP32[$391>>2]|0;
- $393 = $392 ^ $388;
- $394 = $378 >>> 17;
- $395 = $394 & 255;
- $396 = (((($0)) + 2048|0) + ($395<<2)|0);
- $397 = HEAP32[$396>>2]|0;
- $398 = $393 ^ $397;
- $399 = $381 >>> 24;
- $400 = (((($0)) + 3072|0) + ($399<<2)|0);
- $401 = HEAP32[$400>>2]|0;
- $402 = $398 ^ $401;
- $403 = $385 & 255;
- $404 = (((($0)) + 1024|0) + ($403<<2)|0);
- $405 = HEAP32[$404>>2]|0;
- $406 = $385 >>> 8;
- $407 = $406 & 255;
- $408 = (((($0)) + 2048|0) + ($407<<2)|0);
- $409 = HEAP32[$408>>2]|0;
- $410 = $409 ^ $405;
- $411 = $385 >>> 16;
- $412 = $411 & 255;
- $413 = (((($0)) + 3072|0) + ($412<<2)|0);
- $414 = HEAP32[$413>>2]|0;
- $415 = $410 ^ $414;
- $416 = $385 >>> 24;
- $417 = (($0) + ($416<<2)|0);
- $418 = HEAP32[$417>>2]|0;
- $419 = $415 ^ $418;
- $420 = (($419) + ($402))|0;
- $421 = ((($0)) + 4180|0);
- $422 = HEAP32[$421>>2]|0;
- $423 = (($419) + ($422))|0;
- $424 = (($423) + ($420))|0;
- $425 = ((($0)) + 4176|0);
- $426 = HEAP32[$425>>2]|0;
- $427 = (($420) + ($426))|0;
- $428 = $427 ^ $331;
- $429 = $428 >>> 1;
- $430 = $428 << 31;
- $431 = $429 | $430;
- $432 = $335 << 1;
- $433 = $335 >>> 31;
- $434 = $432 | $433;
- $435 = $424 ^ $434;
- $436 = $429 & 255;
- $437 = (($0) + ($436<<2)|0);
- $438 = HEAP32[$437>>2]|0;
- $439 = $428 >>> 9;
- $440 = $439 & 255;
- $441 = (((($0)) + 1024|0) + ($440<<2)|0);
- $442 = HEAP32[$441>>2]|0;
- $443 = $442 ^ $438;
- $444 = $428 >>> 17;
- $445 = $444 & 255;
- $446 = (((($0)) + 2048|0) + ($445<<2)|0);
- $447 = HEAP32[$446>>2]|0;
- $448 = $443 ^ $447;
- $449 = $431 >>> 24;
- $450 = (((($0)) + 3072|0) + ($449<<2)|0);
- $451 = HEAP32[$450>>2]|0;
- $452 = $448 ^ $451;
- $453 = $435 & 255;
- $454 = (((($0)) + 1024|0) + ($453<<2)|0);
- $455 = HEAP32[$454>>2]|0;
- $456 = $435 >>> 8;
- $457 = $456 & 255;
- $458 = (((($0)) + 2048|0) + ($457<<2)|0);
- $459 = HEAP32[$458>>2]|0;
- $460 = $459 ^ $455;
- $461 = $435 >>> 16;
- $462 = $461 & 255;
- $463 = (((($0)) + 3072|0) + ($462<<2)|0);
- $464 = HEAP32[$463>>2]|0;
- $465 = $460 ^ $464;
- $466 = $435 >>> 24;
- $467 = (($0) + ($466<<2)|0);
- $468 = HEAP32[$467>>2]|0;
- $469 = $465 ^ $468;
- $470 = (($469) + ($452))|0;
- $471 = ((($0)) + 4188|0);
- $472 = HEAP32[$471>>2]|0;
- $473 = (($469) + ($472))|0;
- $474 = (($473) + ($470))|0;
- $475 = ((($0)) + 4184|0);
- $476 = HEAP32[$475>>2]|0;
- $477 = (($470) + ($476))|0;
- $478 = $477 ^ $381;
- $479 = $478 >>> 1;
- $480 = $478 << 31;
- $481 = $479 | $480;
- $482 = $385 << 1;
- $483 = $385 >>> 31;
- $484 = $482 | $483;
- $485 = $474 ^ $484;
- $486 = $479 & 255;
- $487 = (($0) + ($486<<2)|0);
- $488 = HEAP32[$487>>2]|0;
- $489 = $478 >>> 9;
- $490 = $489 & 255;
- $491 = (((($0)) + 1024|0) + ($490<<2)|0);
- $492 = HEAP32[$491>>2]|0;
- $493 = $492 ^ $488;
- $494 = $478 >>> 17;
- $495 = $494 & 255;
- $496 = (((($0)) + 2048|0) + ($495<<2)|0);
- $497 = HEAP32[$496>>2]|0;
- $498 = $493 ^ $497;
- $499 = $481 >>> 24;
- $500 = (((($0)) + 3072|0) + ($499<<2)|0);
- $501 = HEAP32[$500>>2]|0;
- $502 = $498 ^ $501;
- $503 = $485 & 255;
- $504 = (((($0)) + 1024|0) + ($503<<2)|0);
- $505 = HEAP32[$504>>2]|0;
- $506 = $485 >>> 8;
- $507 = $506 & 255;
- $508 = (((($0)) + 2048|0) + ($507<<2)|0);
- $509 = HEAP32[$508>>2]|0;
- $510 = $509 ^ $505;
- $511 = $485 >>> 16;
- $512 = $511 & 255;
- $513 = (((($0)) + 3072|0) + ($512<<2)|0);
- $514 = HEAP32[$513>>2]|0;
- $515 = $510 ^ $514;
- $516 = $485 >>> 24;
- $517 = (($0) + ($516<<2)|0);
- $518 = HEAP32[$517>>2]|0;
- $519 = $515 ^ $518;
- $520 = (($519) + ($502))|0;
- $521 = ((($0)) + 4196|0);
- $522 = HEAP32[$521>>2]|0;
- $523 = (($519) + ($522))|0;
- $524 = (($523) + ($520))|0;
- $525 = ((($0)) + 4192|0);
- $526 = HEAP32[$525>>2]|0;
- $527 = (($520) + ($526))|0;
- $528 = $527 ^ $431;
- $529 = $528 >>> 1;
- $530 = $528 << 31;
- $531 = $529 | $530;
- $532 = $435 << 1;
- $533 = $435 >>> 31;
- $534 = $532 | $533;
- $535 = $524 ^ $534;
- $536 = $529 & 255;
- $537 = (($0) + ($536<<2)|0);
- $538 = HEAP32[$537>>2]|0;
- $539 = $528 >>> 9;
- $540 = $539 & 255;
- $541 = (((($0)) + 1024|0) + ($540<<2)|0);
- $542 = HEAP32[$541>>2]|0;
- $543 = $542 ^ $538;
- $544 = $528 >>> 17;
- $545 = $544 & 255;
- $546 = (((($0)) + 2048|0) + ($545<<2)|0);
- $547 = HEAP32[$546>>2]|0;
- $548 = $543 ^ $547;
- $549 = $531 >>> 24;
- $550 = (((($0)) + 3072|0) + ($549<<2)|0);
- $551 = HEAP32[$550>>2]|0;
- $552 = $548 ^ $551;
- $553 = $535 & 255;
- $554 = (((($0)) + 1024|0) + ($553<<2)|0);
- $555 = HEAP32[$554>>2]|0;
- $556 = $535 >>> 8;
- $557 = $556 & 255;
- $558 = (((($0)) + 2048|0) + ($557<<2)|0);
- $559 = HEAP32[$558>>2]|0;
- $560 = $559 ^ $555;
- $561 = $535 >>> 16;
- $562 = $561 & 255;
- $563 = (((($0)) + 3072|0) + ($562<<2)|0);
- $564 = HEAP32[$563>>2]|0;
- $565 = $560 ^ $564;
- $566 = $535 >>> 24;
- $567 = (($0) + ($566<<2)|0);
- $568 = HEAP32[$567>>2]|0;
- $569 = $565 ^ $568;
- $570 = (($569) + ($552))|0;
- $571 = ((($0)) + 4204|0);
- $572 = HEAP32[$571>>2]|0;
- $573 = (($569) + ($572))|0;
- $574 = (($573) + ($570))|0;
- $575 = ((($0)) + 4200|0);
- $576 = HEAP32[$575>>2]|0;
- $577 = (($570) + ($576))|0;
- $578 = $577 ^ $481;
- $579 = $578 >>> 1;
- $580 = $578 << 31;
- $581 = $579 | $580;
- $582 = $485 << 1;
- $583 = $485 >>> 31;
- $584 = $582 | $583;
- $585 = $574 ^ $584;
- $586 = $579 & 255;
- $587 = (($0) + ($586<<2)|0);
- $588 = HEAP32[$587>>2]|0;
- $589 = $578 >>> 9;
- $590 = $589 & 255;
- $591 = (((($0)) + 1024|0) + ($590<<2)|0);
- $592 = HEAP32[$591>>2]|0;
- $593 = $592 ^ $588;
- $594 = $578 >>> 17;
- $595 = $594 & 255;
- $596 = (((($0)) + 2048|0) + ($595<<2)|0);
- $597 = HEAP32[$596>>2]|0;
- $598 = $593 ^ $597;
- $599 = $581 >>> 24;
- $600 = (((($0)) + 3072|0) + ($599<<2)|0);
- $601 = HEAP32[$600>>2]|0;
- $602 = $598 ^ $601;
- $603 = $585 & 255;
- $604 = (((($0)) + 1024|0) + ($603<<2)|0);
- $605 = HEAP32[$604>>2]|0;
- $606 = $585 >>> 8;
- $607 = $606 & 255;
- $608 = (((($0)) + 2048|0) + ($607<<2)|0);
- $609 = HEAP32[$608>>2]|0;
- $610 = $609 ^ $605;
- $611 = $585 >>> 16;
- $612 = $611 & 255;
- $613 = (((($0)) + 3072|0) + ($612<<2)|0);
- $614 = HEAP32[$613>>2]|0;
- $615 = $610 ^ $614;
- $616 = $585 >>> 24;
- $617 = (($0) + ($616<<2)|0);
- $618 = HEAP32[$617>>2]|0;
- $619 = $615 ^ $618;
- $620 = (($619) + ($602))|0;
- $621 = ((($0)) + 4212|0);
- $622 = HEAP32[$621>>2]|0;
- $623 = (($619) + ($622))|0;
- $624 = (($623) + ($620))|0;
- $625 = ((($0)) + 4208|0);
- $626 = HEAP32[$625>>2]|0;
- $627 = (($620) + ($626))|0;
- $628 = $627 ^ $531;
- $629 = $628 >>> 1;
- $630 = $628 << 31;
- $631 = $629 | $630;
- $632 = $535 << 1;
- $633 = $535 >>> 31;
- $634 = $632 | $633;
- $635 = $624 ^ $634;
- $636 = $629 & 255;
- $637 = (($0) + ($636<<2)|0);
- $638 = HEAP32[$637>>2]|0;
- $639 = $628 >>> 9;
- $640 = $639 & 255;
- $641 = (((($0)) + 1024|0) + ($640<<2)|0);
- $642 = HEAP32[$641>>2]|0;
- $643 = $642 ^ $638;
- $644 = $628 >>> 17;
- $645 = $644 & 255;
- $646 = (((($0)) + 2048|0) + ($645<<2)|0);
- $647 = HEAP32[$646>>2]|0;
- $648 = $643 ^ $647;
- $649 = $631 >>> 24;
- $650 = (((($0)) + 3072|0) + ($649<<2)|0);
- $651 = HEAP32[$650>>2]|0;
- $652 = $648 ^ $651;
- $653 = $635 & 255;
- $654 = (((($0)) + 1024|0) + ($653<<2)|0);
- $655 = HEAP32[$654>>2]|0;
- $656 = $635 >>> 8;
- $657 = $656 & 255;
- $658 = (((($0)) + 2048|0) + ($657<<2)|0);
- $659 = HEAP32[$658>>2]|0;
- $660 = $659 ^ $655;
- $661 = $635 >>> 16;
- $662 = $661 & 255;
- $663 = (((($0)) + 3072|0) + ($662<<2)|0);
- $664 = HEAP32[$663>>2]|0;
- $665 = $660 ^ $664;
- $666 = $635 >>> 24;
- $667 = (($0) + ($666<<2)|0);
- $668 = HEAP32[$667>>2]|0;
- $669 = $665 ^ $668;
- $670 = (($669) + ($652))|0;
- $671 = ((($0)) + 4220|0);
- $672 = HEAP32[$671>>2]|0;
- $673 = (($669) + ($672))|0;
- $674 = (($673) + ($670))|0;
- $675 = ((($0)) + 4216|0);
- $676 = HEAP32[$675>>2]|0;
- $677 = (($670) + ($676))|0;
- $678 = $677 ^ $581;
- $679 = $678 >>> 1;
- $680 = $678 << 31;
- $681 = $679 | $680;
- $682 = $585 << 1;
- $683 = $585 >>> 31;
- $684 = $682 | $683;
- $685 = $674 ^ $684;
- $686 = $679 & 255;
- $687 = (($0) + ($686<<2)|0);
- $688 = HEAP32[$687>>2]|0;
- $689 = $678 >>> 9;
- $690 = $689 & 255;
- $691 = (((($0)) + 1024|0) + ($690<<2)|0);
- $692 = HEAP32[$691>>2]|0;
- $693 = $692 ^ $688;
- $694 = $678 >>> 17;
- $695 = $694 & 255;
- $696 = (((($0)) + 2048|0) + ($695<<2)|0);
- $697 = HEAP32[$696>>2]|0;
- $698 = $693 ^ $697;
- $699 = $681 >>> 24;
- $700 = (((($0)) + 3072|0) + ($699<<2)|0);
- $701 = HEAP32[$700>>2]|0;
- $702 = $698 ^ $701;
- $703 = $685 & 255;
- $704 = (((($0)) + 1024|0) + ($703<<2)|0);
- $705 = HEAP32[$704>>2]|0;
- $706 = $685 >>> 8;
- $707 = $706 & 255;
- $708 = (((($0)) + 2048|0) + ($707<<2)|0);
- $709 = HEAP32[$708>>2]|0;
- $710 = $709 ^ $705;
- $711 = $685 >>> 16;
- $712 = $711 & 255;
- $713 = (((($0)) + 3072|0) + ($712<<2)|0);
- $714 = HEAP32[$713>>2]|0;
- $715 = $710 ^ $714;
- $716 = $685 >>> 24;
- $717 = (($0) + ($716<<2)|0);
- $718 = HEAP32[$717>>2]|0;
- $719 = $715 ^ $718;
- $720 = (($719) + ($702))|0;
- $721 = ((($0)) + 4228|0);
- $722 = HEAP32[$721>>2]|0;
- $723 = (($719) + ($722))|0;
- $724 = (($723) + ($720))|0;
- $725 = ((($0)) + 4224|0);
- $726 = HEAP32[$725>>2]|0;
- $727 = (($720) + ($726))|0;
- $728 = $727 ^ $631;
- $729 = $728 >>> 1;
- $730 = $728 << 31;
- $731 = $729 | $730;
- $732 = $635 << 1;
- $733 = $635 >>> 31;
- $734 = $732 | $733;
- $735 = $724 ^ $734;
- $736 = $729 & 255;
- $737 = (($0) + ($736<<2)|0);
- $738 = HEAP32[$737>>2]|0;
- $739 = $728 >>> 9;
- $740 = $739 & 255;
- $741 = (((($0)) + 1024|0) + ($740<<2)|0);
- $742 = HEAP32[$741>>2]|0;
- $743 = $742 ^ $738;
- $744 = $728 >>> 17;
- $745 = $744 & 255;
- $746 = (((($0)) + 2048|0) + ($745<<2)|0);
- $747 = HEAP32[$746>>2]|0;
- $748 = $743 ^ $747;
- $749 = $731 >>> 24;
- $750 = (((($0)) + 3072|0) + ($749<<2)|0);
- $751 = HEAP32[$750>>2]|0;
- $752 = $748 ^ $751;
- $753 = $735 & 255;
- $754 = (((($0)) + 1024|0) + ($753<<2)|0);
- $755 = HEAP32[$754>>2]|0;
- $756 = $735 >>> 8;
- $757 = $756 & 255;
- $758 = (((($0)) + 2048|0) + ($757<<2)|0);
- $759 = HEAP32[$758>>2]|0;
- $760 = $759 ^ $755;
- $761 = $735 >>> 16;
- $762 = $761 & 255;
- $763 = (((($0)) + 3072|0) + ($762<<2)|0);
- $764 = HEAP32[$763>>2]|0;
- $765 = $760 ^ $764;
- $766 = $735 >>> 24;
- $767 = (($0) + ($766<<2)|0);
- $768 = HEAP32[$767>>2]|0;
- $769 = $765 ^ $768;
- $770 = (($769) + ($752))|0;
- $771 = ((($0)) + 4236|0);
- $772 = HEAP32[$771>>2]|0;
- $773 = (($769) + ($772))|0;
- $774 = (($773) + ($770))|0;
- $775 = ((($0)) + 4232|0);
- $776 = HEAP32[$775>>2]|0;
- $777 = (($770) + ($776))|0;
- $778 = $777 ^ $681;
- $779 = $778 >>> 1;
- $780 = $778 << 31;
- $781 = $779 | $780;
- $782 = $685 << 1;
- $783 = $685 >>> 31;
- $784 = $782 | $783;
- $785 = $774 ^ $784;
- $786 = $779 & 255;
- $787 = (($0) + ($786<<2)|0);
- $788 = HEAP32[$787>>2]|0;
- $789 = $778 >>> 9;
- $790 = $789 & 255;
- $791 = (((($0)) + 1024|0) + ($790<<2)|0);
- $792 = HEAP32[$791>>2]|0;
- $793 = $792 ^ $788;
- $794 = $778 >>> 17;
- $795 = $794 & 255;
- $796 = (((($0)) + 2048|0) + ($795<<2)|0);
- $797 = HEAP32[$796>>2]|0;
- $798 = $793 ^ $797;
- $799 = $781 >>> 24;
- $800 = (((($0)) + 3072|0) + ($799<<2)|0);
- $801 = HEAP32[$800>>2]|0;
- $802 = $798 ^ $801;
- $803 = $785 & 255;
- $804 = (((($0)) + 1024|0) + ($803<<2)|0);
- $805 = HEAP32[$804>>2]|0;
- $806 = $785 >>> 8;
- $807 = $806 & 255;
- $808 = (((($0)) + 2048|0) + ($807<<2)|0);
- $809 = HEAP32[$808>>2]|0;
- $810 = $809 ^ $805;
- $811 = $785 >>> 16;
- $812 = $811 & 255;
- $813 = (((($0)) + 3072|0) + ($812<<2)|0);
- $814 = HEAP32[$813>>2]|0;
- $815 = $810 ^ $814;
- $816 = $785 >>> 24;
- $817 = (($0) + ($816<<2)|0);
- $818 = HEAP32[$817>>2]|0;
- $819 = $815 ^ $818;
- $820 = (($819) + ($802))|0;
- $821 = ((($0)) + 4244|0);
- $822 = HEAP32[$821>>2]|0;
- $823 = (($819) + ($822))|0;
- $824 = (($823) + ($820))|0;
- $825 = ((($0)) + 4240|0);
- $826 = HEAP32[$825>>2]|0;
- $827 = (($820) + ($826))|0;
- $828 = $827 ^ $731;
- $829 = $828 >>> 1;
- $830 = $828 << 31;
- $831 = $829 | $830;
- $832 = $735 << 1;
- $833 = $735 >>> 31;
- $834 = $832 | $833;
- $835 = $824 ^ $834;
- $836 = $829 & 255;
- $837 = (($0) + ($836<<2)|0);
- $838 = HEAP32[$837>>2]|0;
- $839 = $828 >>> 9;
- $840 = $839 & 255;
- $841 = (((($0)) + 1024|0) + ($840<<2)|0);
- $842 = HEAP32[$841>>2]|0;
- $843 = $842 ^ $838;
- $844 = $828 >>> 17;
- $845 = $844 & 255;
- $846 = (((($0)) + 2048|0) + ($845<<2)|0);
- $847 = HEAP32[$846>>2]|0;
- $848 = $843 ^ $847;
- $849 = $831 >>> 24;
- $850 = (((($0)) + 3072|0) + ($849<<2)|0);
- $851 = HEAP32[$850>>2]|0;
- $852 = $848 ^ $851;
- $853 = $835 & 255;
- $854 = (((($0)) + 1024|0) + ($853<<2)|0);
- $855 = HEAP32[$854>>2]|0;
- $856 = $835 >>> 8;
- $857 = $856 & 255;
- $858 = (((($0)) + 2048|0) + ($857<<2)|0);
- $859 = HEAP32[$858>>2]|0;
- $860 = $859 ^ $855;
- $861 = $835 >>> 16;
- $862 = $861 & 255;
- $863 = (((($0)) + 3072|0) + ($862<<2)|0);
- $864 = HEAP32[$863>>2]|0;
- $865 = $860 ^ $864;
- $866 = $835 >>> 24;
- $867 = (($0) + ($866<<2)|0);
- $868 = HEAP32[$867>>2]|0;
- $869 = $865 ^ $868;
- $870 = (($869) + ($852))|0;
- $871 = ((($0)) + 4252|0);
- $872 = HEAP32[$871>>2]|0;
- $873 = (($869) + ($872))|0;
- $874 = (($873) + ($870))|0;
- $875 = ((($0)) + 4248|0);
- $876 = HEAP32[$875>>2]|0;
- $877 = (($870) + ($876))|0;
- $878 = $877 ^ $781;
- $879 = $878 >>> 1;
- $880 = $878 << 31;
- $881 = $879 | $880;
- $882 = $785 << 1;
- $883 = $785 >>> 31;
- $884 = $882 | $883;
- $885 = $874 ^ $884;
- $886 = ((($0)) + 4112|0);
- $887 = HEAP32[$886>>2]|0;
- $888 = $887 ^ $831;
- $889 = $888 >>> 24;
- $890 = $889&255;
- $891 = ((($1)) + 3|0);
- HEAP8[$891>>0] = $890;
- $892 = $888 >>> 16;
- $893 = $892&255;
- $894 = ((($1)) + 2|0);
- HEAP8[$894>>0] = $893;
- $895 = $888 >>> 8;
- $896 = $895&255;
- $897 = ((($1)) + 1|0);
- HEAP8[$897>>0] = $896;
- $898 = $888&255;
- HEAP8[$1>>0] = $898;
- $899 = ((($0)) + 4116|0);
- $900 = HEAP32[$899>>2]|0;
- $901 = $900 ^ $835;
- $902 = ((($1)) + 4|0);
- $903 = $901 >>> 24;
- $904 = $903&255;
- $905 = ((($1)) + 7|0);
- HEAP8[$905>>0] = $904;
- $906 = $901 >>> 16;
- $907 = $906&255;
- $908 = ((($1)) + 6|0);
- HEAP8[$908>>0] = $907;
- $909 = $901 >>> 8;
- $910 = $909&255;
- $911 = ((($1)) + 5|0);
- HEAP8[$911>>0] = $910;
- $912 = $901&255;
- HEAP8[$902>>0] = $912;
- $913 = ((($0)) + 4120|0);
- $914 = HEAP32[$913>>2]|0;
- $915 = $914 ^ $881;
- $916 = ((($1)) + 8|0);
- $917 = $915 >>> 24;
- $918 = $917&255;
- $919 = ((($1)) + 11|0);
- HEAP8[$919>>0] = $918;
- $920 = $915 >>> 16;
- $921 = $920&255;
- $922 = ((($1)) + 10|0);
- HEAP8[$922>>0] = $921;
- $923 = $915 >>> 8;
- $924 = $923&255;
- $925 = ((($1)) + 9|0);
- HEAP8[$925>>0] = $924;
- $926 = $915&255;
- HEAP8[$916>>0] = $926;
- $927 = ((($0)) + 4124|0);
- $928 = HEAP32[$927>>2]|0;
- $929 = $885 ^ $928;
- $930 = ((($1)) + 12|0);
- $931 = $929 >>> 24;
- $932 = $931&255;
- $933 = ((($1)) + 15|0);
- HEAP8[$933>>0] = $932;
- $934 = $929 >>> 16;
- $935 = $934&255;
- $936 = ((($1)) + 14|0);
- HEAP8[$936>>0] = $935;
- $937 = $929 >>> 8;
- $938 = $937&255;
- $939 = ((($1)) + 13|0);
- HEAP8[$939>>0] = $938;
- $940 = $929&255;
- HEAP8[$930>>0] = $940;
- return 36;
-}
-function _twofish_decrypt($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0;
- var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 
= 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0;
- var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 
= 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 
= 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0;
- var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 
= 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 
= 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0;
- var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, 
$179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, 
$186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0;
- var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, 
$197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, 
$204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0;
- var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 
= 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 
= 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0;
- var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 
= 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 
= 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0;
- var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 
= 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 
= 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0;
- var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 
= 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 
= 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0;
- var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, 
$288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, 
$295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0;
- var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 
0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 
0, $313 = 0, $314 = 0, $315 = 0, $316 = 0;
- var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0;
- var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 
= 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0;
- var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 
= 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0;
- var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, 
$378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, 
$385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0;
- var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 
= 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 
0, $403 = 0, $404 = 0, $405 = 0, $406 = 0;
- var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 
= 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0;
- var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 
= 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0;
- var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 
= 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0;
- var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, 
$468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, 
$475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0;
- var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 
= 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 
= 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0;
- var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 
0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 
0, $511 = 0, $512 = 0, $513 = 0, $514 = 0;
- var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 
= 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0;
- var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 
= 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0;
- var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, 
$558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, 
$565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0;
- var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 
= 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 
= 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0;
- var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 
= 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 
0, $601 = 0, $602 = 0, $603 = 0, $604 = 0;
- var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 
= 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 
= 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0;
- var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 
= 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 
= 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0;
- var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, 
$648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, 
$655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0;
- var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 
= 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 
= 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0;
- var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 
= 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 
= 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0;
- var $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 
0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 
0, $71 = 0, $710 = 0, $711 = 0, $712 = 0;
- var $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 
= 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 
= 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0;
- var $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, 
$738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, 
$745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0;
- var $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 
= 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 
= 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0;
- var $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 
= 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 
= 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0;
- var $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 
= 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 
0, $80 = 0, $800 = 0, $801 = 0, $802 = 0;
- var $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 
= 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 
= 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0;
- var $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, 
$828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, 
$835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0;
- var $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 
= 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 
= 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0;
- var $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 
= 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 
= 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0;
- var $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 
= 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 
= 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0;
- var $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 
0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 
0, $908 = 0, $909 = 0, $91 = 0, $910 = 0;
- var $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, 
$918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, 
$925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0;
- var $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 
= 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $95 = 0, $96 = 0, $97 = 
0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($2)) + 3|0);
- $4 = HEAP8[$3>>0]|0;
- $5 = $4&255;
- $6 = $5 << 24;
- $7 = ((($2)) + 2|0);
- $8 = HEAP8[$7>>0]|0;
- $9 = $8&255;
- $10 = $9 << 16;
- $11 = $10 | $6;
- $12 = ((($2)) + 1|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13&255;
- $15 = $14 << 8;
- $16 = $11 | $15;
- $17 = HEAP8[$2>>0]|0;
- $18 = $17&255;
- $19 = $16 | $18;
- $20 = ((($0)) + 4112|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = $19 ^ $21;
- $23 = ((($2)) + 4|0);
- $24 = ((($2)) + 7|0);
- $25 = HEAP8[$24>>0]|0;
- $26 = $25&255;
- $27 = $26 << 24;
- $28 = ((($2)) + 6|0);
- $29 = HEAP8[$28>>0]|0;
- $30 = $29&255;
- $31 = $30 << 16;
- $32 = $31 | $27;
- $33 = ((($2)) + 5|0);
- $34 = HEAP8[$33>>0]|0;
- $35 = $34&255;
- $36 = $35 << 8;
- $37 = $32 | $36;
- $38 = HEAP8[$23>>0]|0;
- $39 = $38&255;
- $40 = $37 | $39;
- $41 = ((($0)) + 4116|0);
- $42 = HEAP32[$41>>2]|0;
- $43 = $40 ^ $42;
- $44 = ((($2)) + 8|0);
- $45 = ((($2)) + 11|0);
- $46 = HEAP8[$45>>0]|0;
- $47 = $46&255;
- $48 = $47 << 24;
- $49 = ((($2)) + 10|0);
- $50 = HEAP8[$49>>0]|0;
- $51 = $50&255;
- $52 = $51 << 16;
- $53 = $52 | $48;
- $54 = ((($2)) + 9|0);
- $55 = HEAP8[$54>>0]|0;
- $56 = $55&255;
- $57 = $56 << 8;
- $58 = $53 | $57;
- $59 = HEAP8[$44>>0]|0;
- $60 = $59&255;
- $61 = $58 | $60;
- $62 = ((($0)) + 4120|0);
- $63 = HEAP32[$62>>2]|0;
- $64 = $61 ^ $63;
- $65 = ((($2)) + 12|0);
- $66 = ((($2)) + 15|0);
- $67 = HEAP8[$66>>0]|0;
- $68 = $67&255;
- $69 = $68 << 24;
- $70 = ((($2)) + 14|0);
- $71 = HEAP8[$70>>0]|0;
- $72 = $71&255;
- $73 = $72 << 16;
- $74 = $73 | $69;
- $75 = ((($2)) + 13|0);
- $76 = HEAP8[$75>>0]|0;
- $77 = $76&255;
- $78 = $77 << 8;
- $79 = $74 | $78;
- $80 = HEAP8[$65>>0]|0;
- $81 = $80&255;
- $82 = $79 | $81;
- $83 = ((($0)) + 4124|0);
- $84 = HEAP32[$83>>2]|0;
- $85 = $82 ^ $84;
- $86 = $22 & 255;
- $87 = (($0) + ($86<<2)|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $22 >>> 8;
- $90 = $89 & 255;
- $91 = (((($0)) + 1024|0) + ($90<<2)|0);
- $92 = HEAP32[$91>>2]|0;
- $93 = $92 ^ $88;
- $94 = $22 >>> 16;
- $95 = $94 & 255;
- $96 = (((($0)) + 2048|0) + ($95<<2)|0);
- $97 = HEAP32[$96>>2]|0;
- $98 = $93 ^ $97;
- $99 = $22 >>> 24;
- $100 = (((($0)) + 3072|0) + ($99<<2)|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $98 ^ $101;
- $103 = $43 & 255;
- $104 = (((($0)) + 1024|0) + ($103<<2)|0);
- $105 = HEAP32[$104>>2]|0;
- $106 = $43 >>> 8;
- $107 = $106 & 255;
- $108 = (((($0)) + 2048|0) + ($107<<2)|0);
- $109 = HEAP32[$108>>2]|0;
- $110 = $109 ^ $105;
- $111 = $43 >>> 16;
- $112 = $111 & 255;
- $113 = (((($0)) + 3072|0) + ($112<<2)|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $110 ^ $114;
- $116 = $43 >>> 24;
- $117 = (($0) + ($116<<2)|0);
- $118 = HEAP32[$117>>2]|0;
- $119 = $115 ^ $118;
- $120 = (($119) + ($102))|0;
- $121 = ((($0)) + 4252|0);
- $122 = HEAP32[$121>>2]|0;
- $123 = (($122) + ($119))|0;
- $124 = (($123) + ($120))|0;
- $125 = $85 ^ $124;
- $126 = $125 >>> 1;
- $127 = $125 << 31;
- $128 = $126 | $127;
- $129 = $64 << 1;
- $130 = $64 >>> 31;
- $131 = $129 | $130;
- $132 = ((($0)) + 4248|0);
- $133 = HEAP32[$132>>2]|0;
- $134 = (($120) + ($133))|0;
- $135 = $134 ^ $131;
- $136 = $135 & 255;
- $137 = (($0) + ($136<<2)|0);
- $138 = HEAP32[$137>>2]|0;
- $139 = $135 >>> 8;
- $140 = $139 & 255;
- $141 = (((($0)) + 1024|0) + ($140<<2)|0);
- $142 = HEAP32[$141>>2]|0;
- $143 = $142 ^ $138;
- $144 = $135 >>> 16;
- $145 = $144 & 255;
- $146 = (((($0)) + 2048|0) + ($145<<2)|0);
- $147 = HEAP32[$146>>2]|0;
- $148 = $143 ^ $147;
- $149 = $135 >>> 24;
- $150 = (((($0)) + 3072|0) + ($149<<2)|0);
- $151 = HEAP32[$150>>2]|0;
- $152 = $148 ^ $151;
- $153 = $126 & 255;
- $154 = (((($0)) + 1024|0) + ($153<<2)|0);
- $155 = HEAP32[$154>>2]|0;
- $156 = $125 >>> 9;
- $157 = $156 & 255;
- $158 = (((($0)) + 2048|0) + ($157<<2)|0);
- $159 = HEAP32[$158>>2]|0;
- $160 = $159 ^ $155;
- $161 = $125 >>> 17;
- $162 = $161 & 255;
- $163 = (((($0)) + 3072|0) + ($162<<2)|0);
- $164 = HEAP32[$163>>2]|0;
- $165 = $160 ^ $164;
- $166 = $128 >>> 24;
- $167 = (($0) + ($166<<2)|0);
- $168 = HEAP32[$167>>2]|0;
- $169 = $165 ^ $168;
- $170 = (($169) + ($152))|0;
- $171 = ((($0)) + 4244|0);
- $172 = HEAP32[$171>>2]|0;
- $173 = (($172) + ($169))|0;
- $174 = (($173) + ($170))|0;
- $175 = $174 ^ $43;
- $176 = $175 >>> 1;
- $177 = $175 << 31;
- $178 = $176 | $177;
- $179 = $22 << 1;
- $180 = $22 >>> 31;
- $181 = $179 | $180;
- $182 = ((($0)) + 4240|0);
- $183 = HEAP32[$182>>2]|0;
- $184 = (($170) + ($183))|0;
- $185 = $184 ^ $181;
- $186 = $185 & 255;
- $187 = (($0) + ($186<<2)|0);
- $188 = HEAP32[$187>>2]|0;
- $189 = $185 >>> 8;
- $190 = $189 & 255;
- $191 = (((($0)) + 1024|0) + ($190<<2)|0);
- $192 = HEAP32[$191>>2]|0;
- $193 = $192 ^ $188;
- $194 = $185 >>> 16;
- $195 = $194 & 255;
- $196 = (((($0)) + 2048|0) + ($195<<2)|0);
- $197 = HEAP32[$196>>2]|0;
- $198 = $193 ^ $197;
- $199 = $185 >>> 24;
- $200 = (((($0)) + 3072|0) + ($199<<2)|0);
- $201 = HEAP32[$200>>2]|0;
- $202 = $198 ^ $201;
- $203 = $176 & 255;
- $204 = (((($0)) + 1024|0) + ($203<<2)|0);
- $205 = HEAP32[$204>>2]|0;
- $206 = $175 >>> 9;
- $207 = $206 & 255;
- $208 = (((($0)) + 2048|0) + ($207<<2)|0);
- $209 = HEAP32[$208>>2]|0;
- $210 = $209 ^ $205;
- $211 = $175 >>> 17;
- $212 = $211 & 255;
- $213 = (((($0)) + 3072|0) + ($212<<2)|0);
- $214 = HEAP32[$213>>2]|0;
- $215 = $210 ^ $214;
- $216 = $178 >>> 24;
- $217 = (($0) + ($216<<2)|0);
- $218 = HEAP32[$217>>2]|0;
- $219 = $215 ^ $218;
- $220 = (($219) + ($202))|0;
- $221 = ((($0)) + 4236|0);
- $222 = HEAP32[$221>>2]|0;
- $223 = (($222) + ($219))|0;
- $224 = (($223) + ($220))|0;
- $225 = $224 ^ $128;
- $226 = $225 >>> 1;
- $227 = $225 << 31;
- $228 = $226 | $227;
- $229 = $135 << 1;
- $230 = $135 >>> 31;
- $231 = $229 | $230;
- $232 = ((($0)) + 4232|0);
- $233 = HEAP32[$232>>2]|0;
- $234 = (($220) + ($233))|0;
- $235 = $234 ^ $231;
- $236 = $235 & 255;
- $237 = (($0) + ($236<<2)|0);
- $238 = HEAP32[$237>>2]|0;
- $239 = $235 >>> 8;
- $240 = $239 & 255;
- $241 = (((($0)) + 1024|0) + ($240<<2)|0);
- $242 = HEAP32[$241>>2]|0;
- $243 = $242 ^ $238;
- $244 = $235 >>> 16;
- $245 = $244 & 255;
- $246 = (((($0)) + 2048|0) + ($245<<2)|0);
- $247 = HEAP32[$246>>2]|0;
- $248 = $243 ^ $247;
- $249 = $235 >>> 24;
- $250 = (((($0)) + 3072|0) + ($249<<2)|0);
- $251 = HEAP32[$250>>2]|0;
- $252 = $248 ^ $251;
- $253 = $226 & 255;
- $254 = (((($0)) + 1024|0) + ($253<<2)|0);
- $255 = HEAP32[$254>>2]|0;
- $256 = $225 >>> 9;
- $257 = $256 & 255;
- $258 = (((($0)) + 2048|0) + ($257<<2)|0);
- $259 = HEAP32[$258>>2]|0;
- $260 = $259 ^ $255;
- $261 = $225 >>> 17;
- $262 = $261 & 255;
- $263 = (((($0)) + 3072|0) + ($262<<2)|0);
- $264 = HEAP32[$263>>2]|0;
- $265 = $260 ^ $264;
- $266 = $228 >>> 24;
- $267 = (($0) + ($266<<2)|0);
- $268 = HEAP32[$267>>2]|0;
- $269 = $265 ^ $268;
- $270 = (($269) + ($252))|0;
- $271 = ((($0)) + 4228|0);
- $272 = HEAP32[$271>>2]|0;
- $273 = (($272) + ($269))|0;
- $274 = (($273) + ($270))|0;
- $275 = $274 ^ $178;
- $276 = $275 >>> 1;
- $277 = $275 << 31;
- $278 = $276 | $277;
- $279 = $185 << 1;
- $280 = $185 >>> 31;
- $281 = $279 | $280;
- $282 = ((($0)) + 4224|0);
- $283 = HEAP32[$282>>2]|0;
- $284 = (($270) + ($283))|0;
- $285 = $284 ^ $281;
- $286 = $285 & 255;
- $287 = (($0) + ($286<<2)|0);
- $288 = HEAP32[$287>>2]|0;
- $289 = $285 >>> 8;
- $290 = $289 & 255;
- $291 = (((($0)) + 1024|0) + ($290<<2)|0);
- $292 = HEAP32[$291>>2]|0;
- $293 = $292 ^ $288;
- $294 = $285 >>> 16;
- $295 = $294 & 255;
- $296 = (((($0)) + 2048|0) + ($295<<2)|0);
- $297 = HEAP32[$296>>2]|0;
- $298 = $293 ^ $297;
- $299 = $285 >>> 24;
- $300 = (((($0)) + 3072|0) + ($299<<2)|0);
- $301 = HEAP32[$300>>2]|0;
- $302 = $298 ^ $301;
- $303 = $276 & 255;
- $304 = (((($0)) + 1024|0) + ($303<<2)|0);
- $305 = HEAP32[$304>>2]|0;
- $306 = $275 >>> 9;
- $307 = $306 & 255;
- $308 = (((($0)) + 2048|0) + ($307<<2)|0);
- $309 = HEAP32[$308>>2]|0;
- $310 = $309 ^ $305;
- $311 = $275 >>> 17;
- $312 = $311 & 255;
- $313 = (((($0)) + 3072|0) + ($312<<2)|0);
- $314 = HEAP32[$313>>2]|0;
- $315 = $310 ^ $314;
- $316 = $278 >>> 24;
- $317 = (($0) + ($316<<2)|0);
- $318 = HEAP32[$317>>2]|0;
- $319 = $315 ^ $318;
- $320 = (($319) + ($302))|0;
- $321 = ((($0)) + 4220|0);
- $322 = HEAP32[$321>>2]|0;
- $323 = (($322) + ($319))|0;
- $324 = (($323) + ($320))|0;
- $325 = $324 ^ $228;
- $326 = $325 >>> 1;
- $327 = $325 << 31;
- $328 = $326 | $327;
- $329 = $235 << 1;
- $330 = $235 >>> 31;
- $331 = $329 | $330;
- $332 = ((($0)) + 4216|0);
- $333 = HEAP32[$332>>2]|0;
- $334 = (($320) + ($333))|0;
- $335 = $334 ^ $331;
- $336 = $335 & 255;
- $337 = (($0) + ($336<<2)|0);
- $338 = HEAP32[$337>>2]|0;
- $339 = $335 >>> 8;
- $340 = $339 & 255;
- $341 = (((($0)) + 1024|0) + ($340<<2)|0);
- $342 = HEAP32[$341>>2]|0;
- $343 = $342 ^ $338;
- $344 = $335 >>> 16;
- $345 = $344 & 255;
- $346 = (((($0)) + 2048|0) + ($345<<2)|0);
- $347 = HEAP32[$346>>2]|0;
- $348 = $343 ^ $347;
- $349 = $335 >>> 24;
- $350 = (((($0)) + 3072|0) + ($349<<2)|0);
- $351 = HEAP32[$350>>2]|0;
- $352 = $348 ^ $351;
- $353 = $326 & 255;
- $354 = (((($0)) + 1024|0) + ($353<<2)|0);
- $355 = HEAP32[$354>>2]|0;
- $356 = $325 >>> 9;
- $357 = $356 & 255;
- $358 = (((($0)) + 2048|0) + ($357<<2)|0);
- $359 = HEAP32[$358>>2]|0;
- $360 = $359 ^ $355;
- $361 = $325 >>> 17;
- $362 = $361 & 255;
- $363 = (((($0)) + 3072|0) + ($362<<2)|0);
- $364 = HEAP32[$363>>2]|0;
- $365 = $360 ^ $364;
- $366 = $328 >>> 24;
- $367 = (($0) + ($366<<2)|0);
- $368 = HEAP32[$367>>2]|0;
- $369 = $365 ^ $368;
- $370 = (($369) + ($352))|0;
- $371 = ((($0)) + 4212|0);
- $372 = HEAP32[$371>>2]|0;
- $373 = (($372) + ($369))|0;
- $374 = (($373) + ($370))|0;
- $375 = $374 ^ $278;
- $376 = $375 >>> 1;
- $377 = $375 << 31;
- $378 = $376 | $377;
- $379 = $285 << 1;
- $380 = $285 >>> 31;
- $381 = $379 | $380;
- $382 = ((($0)) + 4208|0);
- $383 = HEAP32[$382>>2]|0;
- $384 = (($370) + ($383))|0;
- $385 = $384 ^ $381;
- $386 = $385 & 255;
- $387 = (($0) + ($386<<2)|0);
- $388 = HEAP32[$387>>2]|0;
- $389 = $385 >>> 8;
- $390 = $389 & 255;
- $391 = (((($0)) + 1024|0) + ($390<<2)|0);
- $392 = HEAP32[$391>>2]|0;
- $393 = $392 ^ $388;
- $394 = $385 >>> 16;
- $395 = $394 & 255;
- $396 = (((($0)) + 2048|0) + ($395<<2)|0);
- $397 = HEAP32[$396>>2]|0;
- $398 = $393 ^ $397;
- $399 = $385 >>> 24;
- $400 = (((($0)) + 3072|0) + ($399<<2)|0);
- $401 = HEAP32[$400>>2]|0;
- $402 = $398 ^ $401;
- $403 = $376 & 255;
- $404 = (((($0)) + 1024|0) + ($403<<2)|0);
- $405 = HEAP32[$404>>2]|0;
- $406 = $375 >>> 9;
- $407 = $406 & 255;
- $408 = (((($0)) + 2048|0) + ($407<<2)|0);
- $409 = HEAP32[$408>>2]|0;
- $410 = $409 ^ $405;
- $411 = $375 >>> 17;
- $412 = $411 & 255;
- $413 = (((($0)) + 3072|0) + ($412<<2)|0);
- $414 = HEAP32[$413>>2]|0;
- $415 = $410 ^ $414;
- $416 = $378 >>> 24;
- $417 = (($0) + ($416<<2)|0);
- $418 = HEAP32[$417>>2]|0;
- $419 = $415 ^ $418;
- $420 = (($419) + ($402))|0;
- $421 = ((($0)) + 4204|0);
- $422 = HEAP32[$421>>2]|0;
- $423 = (($422) + ($419))|0;
- $424 = (($423) + ($420))|0;
- $425 = $424 ^ $328;
- $426 = $425 >>> 1;
- $427 = $425 << 31;
- $428 = $426 | $427;
- $429 = $335 << 1;
- $430 = $335 >>> 31;
- $431 = $429 | $430;
- $432 = ((($0)) + 4200|0);
- $433 = HEAP32[$432>>2]|0;
- $434 = (($420) + ($433))|0;
- $435 = $434 ^ $431;
- $436 = $435 & 255;
- $437 = (($0) + ($436<<2)|0);
- $438 = HEAP32[$437>>2]|0;
- $439 = $435 >>> 8;
- $440 = $439 & 255;
- $441 = (((($0)) + 1024|0) + ($440<<2)|0);
- $442 = HEAP32[$441>>2]|0;
- $443 = $442 ^ $438;
- $444 = $435 >>> 16;
- $445 = $444 & 255;
- $446 = (((($0)) + 2048|0) + ($445<<2)|0);
- $447 = HEAP32[$446>>2]|0;
- $448 = $443 ^ $447;
- $449 = $435 >>> 24;
- $450 = (((($0)) + 3072|0) + ($449<<2)|0);
- $451 = HEAP32[$450>>2]|0;
- $452 = $448 ^ $451;
- $453 = $426 & 255;
- $454 = (((($0)) + 1024|0) + ($453<<2)|0);
- $455 = HEAP32[$454>>2]|0;
- $456 = $425 >>> 9;
- $457 = $456 & 255;
- $458 = (((($0)) + 2048|0) + ($457<<2)|0);
- $459 = HEAP32[$458>>2]|0;
- $460 = $459 ^ $455;
- $461 = $425 >>> 17;
- $462 = $461 & 255;
- $463 = (((($0)) + 3072|0) + ($462<<2)|0);
- $464 = HEAP32[$463>>2]|0;
- $465 = $460 ^ $464;
- $466 = $428 >>> 24;
- $467 = (($0) + ($466<<2)|0);
- $468 = HEAP32[$467>>2]|0;
- $469 = $465 ^ $468;
- $470 = (($469) + ($452))|0;
- $471 = ((($0)) + 4196|0);
- $472 = HEAP32[$471>>2]|0;
- $473 = (($472) + ($469))|0;
- $474 = (($473) + ($470))|0;
- $475 = $474 ^ $378;
- $476 = $475 >>> 1;
- $477 = $475 << 31;
- $478 = $476 | $477;
- $479 = $385 << 1;
- $480 = $385 >>> 31;
- $481 = $479 | $480;
- $482 = ((($0)) + 4192|0);
- $483 = HEAP32[$482>>2]|0;
- $484 = (($470) + ($483))|0;
- $485 = $484 ^ $481;
- $486 = $485 & 255;
- $487 = (($0) + ($486<<2)|0);
- $488 = HEAP32[$487>>2]|0;
- $489 = $485 >>> 8;
- $490 = $489 & 255;
- $491 = (((($0)) + 1024|0) + ($490<<2)|0);
- $492 = HEAP32[$491>>2]|0;
- $493 = $492 ^ $488;
- $494 = $485 >>> 16;
- $495 = $494 & 255;
- $496 = (((($0)) + 2048|0) + ($495<<2)|0);
- $497 = HEAP32[$496>>2]|0;
- $498 = $493 ^ $497;
- $499 = $485 >>> 24;
- $500 = (((($0)) + 3072|0) + ($499<<2)|0);
- $501 = HEAP32[$500>>2]|0;
- $502 = $498 ^ $501;
- $503 = $476 & 255;
- $504 = (((($0)) + 1024|0) + ($503<<2)|0);
- $505 = HEAP32[$504>>2]|0;
- $506 = $475 >>> 9;
- $507 = $506 & 255;
- $508 = (((($0)) + 2048|0) + ($507<<2)|0);
- $509 = HEAP32[$508>>2]|0;
- $510 = $509 ^ $505;
- $511 = $475 >>> 17;
- $512 = $511 & 255;
- $513 = (((($0)) + 3072|0) + ($512<<2)|0);
- $514 = HEAP32[$513>>2]|0;
- $515 = $510 ^ $514;
- $516 = $478 >>> 24;
- $517 = (($0) + ($516<<2)|0);
- $518 = HEAP32[$517>>2]|0;
- $519 = $515 ^ $518;
- $520 = (($519) + ($502))|0;
- $521 = ((($0)) + 4188|0);
- $522 = HEAP32[$521>>2]|0;
- $523 = (($522) + ($519))|0;
- $524 = (($523) + ($520))|0;
- $525 = $524 ^ $428;
- $526 = $525 >>> 1;
- $527 = $525 << 31;
- $528 = $526 | $527;
- $529 = $435 << 1;
- $530 = $435 >>> 31;
- $531 = $529 | $530;
- $532 = ((($0)) + 4184|0);
- $533 = HEAP32[$532>>2]|0;
- $534 = (($520) + ($533))|0;
- $535 = $534 ^ $531;
- $536 = $535 & 255;
- $537 = (($0) + ($536<<2)|0);
- $538 = HEAP32[$537>>2]|0;
- $539 = $535 >>> 8;
- $540 = $539 & 255;
- $541 = (((($0)) + 1024|0) + ($540<<2)|0);
- $542 = HEAP32[$541>>2]|0;
- $543 = $542 ^ $538;
- $544 = $535 >>> 16;
- $545 = $544 & 255;
- $546 = (((($0)) + 2048|0) + ($545<<2)|0);
- $547 = HEAP32[$546>>2]|0;
- $548 = $543 ^ $547;
- $549 = $535 >>> 24;
- $550 = (((($0)) + 3072|0) + ($549<<2)|0);
- $551 = HEAP32[$550>>2]|0;
- $552 = $548 ^ $551;
- $553 = $526 & 255;
- $554 = (((($0)) + 1024|0) + ($553<<2)|0);
- $555 = HEAP32[$554>>2]|0;
- $556 = $525 >>> 9;
- $557 = $556 & 255;
- $558 = (((($0)) + 2048|0) + ($557<<2)|0);
- $559 = HEAP32[$558>>2]|0;
- $560 = $559 ^ $555;
- $561 = $525 >>> 17;
- $562 = $561 & 255;
- $563 = (((($0)) + 3072|0) + ($562<<2)|0);
- $564 = HEAP32[$563>>2]|0;
- $565 = $560 ^ $564;
- $566 = $528 >>> 24;
- $567 = (($0) + ($566<<2)|0);
- $568 = HEAP32[$567>>2]|0;
- $569 = $565 ^ $568;
- $570 = (($569) + ($552))|0;
- $571 = ((($0)) + 4180|0);
- $572 = HEAP32[$571>>2]|0;
- $573 = (($572) + ($569))|0;
- $574 = (($573) + ($570))|0;
- $575 = $574 ^ $478;
- $576 = $575 >>> 1;
- $577 = $575 << 31;
- $578 = $576 | $577;
- $579 = $485 << 1;
- $580 = $485 >>> 31;
- $581 = $579 | $580;
- $582 = ((($0)) + 4176|0);
- $583 = HEAP32[$582>>2]|0;
- $584 = (($570) + ($583))|0;
- $585 = $584 ^ $581;
- $586 = $585 & 255;
- $587 = (($0) + ($586<<2)|0);
- $588 = HEAP32[$587>>2]|0;
- $589 = $585 >>> 8;
- $590 = $589 & 255;
- $591 = (((($0)) + 1024|0) + ($590<<2)|0);
- $592 = HEAP32[$591>>2]|0;
- $593 = $592 ^ $588;
- $594 = $585 >>> 16;
- $595 = $594 & 255;
- $596 = (((($0)) + 2048|0) + ($595<<2)|0);
- $597 = HEAP32[$596>>2]|0;
- $598 = $593 ^ $597;
- $599 = $585 >>> 24;
- $600 = (((($0)) + 3072|0) + ($599<<2)|0);
- $601 = HEAP32[$600>>2]|0;
- $602 = $598 ^ $601;
- $603 = $576 & 255;
- $604 = (((($0)) + 1024|0) + ($603<<2)|0);
- $605 = HEAP32[$604>>2]|0;
- $606 = $575 >>> 9;
- $607 = $606 & 255;
- $608 = (((($0)) + 2048|0) + ($607<<2)|0);
- $609 = HEAP32[$608>>2]|0;
- $610 = $609 ^ $605;
- $611 = $575 >>> 17;
- $612 = $611 & 255;
- $613 = (((($0)) + 3072|0) + ($612<<2)|0);
- $614 = HEAP32[$613>>2]|0;
- $615 = $610 ^ $614;
- $616 = $578 >>> 24;
- $617 = (($0) + ($616<<2)|0);
- $618 = HEAP32[$617>>2]|0;
- $619 = $615 ^ $618;
- $620 = (($619) + ($602))|0;
- $621 = ((($0)) + 4172|0);
- $622 = HEAP32[$621>>2]|0;
- $623 = (($622) + ($619))|0;
- $624 = (($623) + ($620))|0;
- $625 = $624 ^ $528;
- $626 = $625 >>> 1;
- $627 = $625 << 31;
- $628 = $626 | $627;
- $629 = $535 << 1;
- $630 = $535 >>> 31;
- $631 = $629 | $630;
- $632 = ((($0)) + 4168|0);
- $633 = HEAP32[$632>>2]|0;
- $634 = (($620) + ($633))|0;
- $635 = $634 ^ $631;
- $636 = $635 & 255;
- $637 = (($0) + ($636<<2)|0);
- $638 = HEAP32[$637>>2]|0;
- $639 = $635 >>> 8;
- $640 = $639 & 255;
- $641 = (((($0)) + 1024|0) + ($640<<2)|0);
- $642 = HEAP32[$641>>2]|0;
- $643 = $642 ^ $638;
- $644 = $635 >>> 16;
- $645 = $644 & 255;
- $646 = (((($0)) + 2048|0) + ($645<<2)|0);
- $647 = HEAP32[$646>>2]|0;
- $648 = $643 ^ $647;
- $649 = $635 >>> 24;
- $650 = (((($0)) + 3072|0) + ($649<<2)|0);
- $651 = HEAP32[$650>>2]|0;
- $652 = $648 ^ $651;
- $653 = $626 & 255;
- $654 = (((($0)) + 1024|0) + ($653<<2)|0);
- $655 = HEAP32[$654>>2]|0;
- $656 = $625 >>> 9;
- $657 = $656 & 255;
- $658 = (((($0)) + 2048|0) + ($657<<2)|0);
- $659 = HEAP32[$658>>2]|0;
- $660 = $659 ^ $655;
- $661 = $625 >>> 17;
- $662 = $661 & 255;
- $663 = (((($0)) + 3072|0) + ($662<<2)|0);
- $664 = HEAP32[$663>>2]|0;
- $665 = $660 ^ $664;
- $666 = $628 >>> 24;
- $667 = (($0) + ($666<<2)|0);
- $668 = HEAP32[$667>>2]|0;
- $669 = $665 ^ $668;
- $670 = (($669) + ($652))|0;
- $671 = ((($0)) + 4164|0);
- $672 = HEAP32[$671>>2]|0;
- $673 = (($672) + ($669))|0;
- $674 = (($673) + ($670))|0;
- $675 = $674 ^ $578;
- $676 = $675 >>> 1;
- $677 = $675 << 31;
- $678 = $676 | $677;
- $679 = $585 << 1;
- $680 = $585 >>> 31;
- $681 = $679 | $680;
- $682 = ((($0)) + 4160|0);
- $683 = HEAP32[$682>>2]|0;
- $684 = (($670) + ($683))|0;
- $685 = $684 ^ $681;
- $686 = $685 & 255;
- $687 = (($0) + ($686<<2)|0);
- $688 = HEAP32[$687>>2]|0;
- $689 = $685 >>> 8;
- $690 = $689 & 255;
- $691 = (((($0)) + 1024|0) + ($690<<2)|0);
- $692 = HEAP32[$691>>2]|0;
- $693 = $692 ^ $688;
- $694 = $685 >>> 16;
- $695 = $694 & 255;
- $696 = (((($0)) + 2048|0) + ($695<<2)|0);
- $697 = HEAP32[$696>>2]|0;
- $698 = $693 ^ $697;
- $699 = $685 >>> 24;
- $700 = (((($0)) + 3072|0) + ($699<<2)|0);
- $701 = HEAP32[$700>>2]|0;
- $702 = $698 ^ $701;
- $703 = $676 & 255;
- $704 = (((($0)) + 1024|0) + ($703<<2)|0);
- $705 = HEAP32[$704>>2]|0;
- $706 = $675 >>> 9;
- $707 = $706 & 255;
- $708 = (((($0)) + 2048|0) + ($707<<2)|0);
- $709 = HEAP32[$708>>2]|0;
- $710 = $709 ^ $705;
- $711 = $675 >>> 17;
- $712 = $711 & 255;
- $713 = (((($0)) + 3072|0) + ($712<<2)|0);
- $714 = HEAP32[$713>>2]|0;
- $715 = $710 ^ $714;
- $716 = $678 >>> 24;
- $717 = (($0) + ($716<<2)|0);
- $718 = HEAP32[$717>>2]|0;
- $719 = $715 ^ $718;
- $720 = (($719) + ($702))|0;
- $721 = ((($0)) + 4156|0);
- $722 = HEAP32[$721>>2]|0;
- $723 = (($722) + ($719))|0;
- $724 = (($723) + ($720))|0;
- $725 = $724 ^ $628;
- $726 = $725 >>> 1;
- $727 = $725 << 31;
- $728 = $726 | $727;
- $729 = $635 << 1;
- $730 = $635 >>> 31;
- $731 = $729 | $730;
- $732 = ((($0)) + 4152|0);
- $733 = HEAP32[$732>>2]|0;
- $734 = (($720) + ($733))|0;
- $735 = $734 ^ $731;
- $736 = $735 & 255;
- $737 = (($0) + ($736<<2)|0);
- $738 = HEAP32[$737>>2]|0;
- $739 = $735 >>> 8;
- $740 = $739 & 255;
- $741 = (((($0)) + 1024|0) + ($740<<2)|0);
- $742 = HEAP32[$741>>2]|0;
- $743 = $742 ^ $738;
- $744 = $735 >>> 16;
- $745 = $744 & 255;
- $746 = (((($0)) + 2048|0) + ($745<<2)|0);
- $747 = HEAP32[$746>>2]|0;
- $748 = $743 ^ $747;
- $749 = $735 >>> 24;
- $750 = (((($0)) + 3072|0) + ($749<<2)|0);
- $751 = HEAP32[$750>>2]|0;
- $752 = $748 ^ $751;
- $753 = $726 & 255;
- $754 = (((($0)) + 1024|0) + ($753<<2)|0);
- $755 = HEAP32[$754>>2]|0;
- $756 = $725 >>> 9;
- $757 = $756 & 255;
- $758 = (((($0)) + 2048|0) + ($757<<2)|0);
- $759 = HEAP32[$758>>2]|0;
- $760 = $759 ^ $755;
- $761 = $725 >>> 17;
- $762 = $761 & 255;
- $763 = (((($0)) + 3072|0) + ($762<<2)|0);
- $764 = HEAP32[$763>>2]|0;
- $765 = $760 ^ $764;
- $766 = $728 >>> 24;
- $767 = (($0) + ($766<<2)|0);
- $768 = HEAP32[$767>>2]|0;
- $769 = $765 ^ $768;
- $770 = (($769) + ($752))|0;
- $771 = ((($0)) + 4148|0);
- $772 = HEAP32[$771>>2]|0;
- $773 = (($772) + ($769))|0;
- $774 = (($773) + ($770))|0;
- $775 = $774 ^ $678;
- $776 = $775 >>> 1;
- $777 = $775 << 31;
- $778 = $776 | $777;
- $779 = $685 << 1;
- $780 = $685 >>> 31;
- $781 = $779 | $780;
- $782 = ((($0)) + 4144|0);
- $783 = HEAP32[$782>>2]|0;
- $784 = (($770) + ($783))|0;
- $785 = $784 ^ $781;
- $786 = $785 & 255;
- $787 = (($0) + ($786<<2)|0);
- $788 = HEAP32[$787>>2]|0;
- $789 = $785 >>> 8;
- $790 = $789 & 255;
- $791 = (((($0)) + 1024|0) + ($790<<2)|0);
- $792 = HEAP32[$791>>2]|0;
- $793 = $792 ^ $788;
- $794 = $785 >>> 16;
- $795 = $794 & 255;
- $796 = (((($0)) + 2048|0) + ($795<<2)|0);
- $797 = HEAP32[$796>>2]|0;
- $798 = $793 ^ $797;
- $799 = $785 >>> 24;
- $800 = (((($0)) + 3072|0) + ($799<<2)|0);
- $801 = HEAP32[$800>>2]|0;
- $802 = $798 ^ $801;
- $803 = $776 & 255;
- $804 = (((($0)) + 1024|0) + ($803<<2)|0);
- $805 = HEAP32[$804>>2]|0;
- $806 = $775 >>> 9;
- $807 = $806 & 255;
- $808 = (((($0)) + 2048|0) + ($807<<2)|0);
- $809 = HEAP32[$808>>2]|0;
- $810 = $809 ^ $805;
- $811 = $775 >>> 17;
- $812 = $811 & 255;
- $813 = (((($0)) + 3072|0) + ($812<<2)|0);
- $814 = HEAP32[$813>>2]|0;
- $815 = $810 ^ $814;
- $816 = $778 >>> 24;
- $817 = (($0) + ($816<<2)|0);
- $818 = HEAP32[$817>>2]|0;
- $819 = $815 ^ $818;
- $820 = (($819) + ($802))|0;
- $821 = ((($0)) + 4140|0);
- $822 = HEAP32[$821>>2]|0;
- $823 = (($822) + ($819))|0;
- $824 = (($823) + ($820))|0;
- $825 = $824 ^ $728;
- $826 = $825 >>> 1;
- $827 = $825 << 31;
- $828 = $826 | $827;
- $829 = $735 << 1;
- $830 = $735 >>> 31;
- $831 = $829 | $830;
- $832 = ((($0)) + 4136|0);
- $833 = HEAP32[$832>>2]|0;
- $834 = (($820) + ($833))|0;
- $835 = $834 ^ $831;
- $836 = $835 & 255;
- $837 = (($0) + ($836<<2)|0);
- $838 = HEAP32[$837>>2]|0;
- $839 = $835 >>> 8;
- $840 = $839 & 255;
- $841 = (((($0)) + 1024|0) + ($840<<2)|0);
- $842 = HEAP32[$841>>2]|0;
- $843 = $842 ^ $838;
- $844 = $835 >>> 16;
- $845 = $844 & 255;
- $846 = (((($0)) + 2048|0) + ($845<<2)|0);
- $847 = HEAP32[$846>>2]|0;
- $848 = $843 ^ $847;
- $849 = $835 >>> 24;
- $850 = (((($0)) + 3072|0) + ($849<<2)|0);
- $851 = HEAP32[$850>>2]|0;
- $852 = $848 ^ $851;
- $853 = $826 & 255;
- $854 = (((($0)) + 1024|0) + ($853<<2)|0);
- $855 = HEAP32[$854>>2]|0;
- $856 = $825 >>> 9;
- $857 = $856 & 255;
- $858 = (((($0)) + 2048|0) + ($857<<2)|0);
- $859 = HEAP32[$858>>2]|0;
- $860 = $859 ^ $855;
- $861 = $825 >>> 17;
- $862 = $861 & 255;
- $863 = (((($0)) + 3072|0) + ($862<<2)|0);
- $864 = HEAP32[$863>>2]|0;
- $865 = $860 ^ $864;
- $866 = $828 >>> 24;
- $867 = (($0) + ($866<<2)|0);
- $868 = HEAP32[$867>>2]|0;
- $869 = $865 ^ $868;
- $870 = (($869) + ($852))|0;
- $871 = ((($0)) + 4132|0);
- $872 = HEAP32[$871>>2]|0;
- $873 = (($872) + ($869))|0;
- $874 = (($873) + ($870))|0;
- $875 = $874 ^ $778;
- $876 = $875 >>> 1;
- $877 = $875 << 31;
- $878 = $876 | $877;
- $879 = $785 << 1;
- $880 = $785 >>> 31;
- $881 = $879 | $880;
- $882 = ((($0)) + 4128|0);
- $883 = HEAP32[$882>>2]|0;
- $884 = (($870) + ($883))|0;
- $885 = $884 ^ $881;
- $886 = ((($0)) + 4096|0);
- $887 = HEAP32[$886>>2]|0;
- $888 = $887 ^ $835;
- $889 = $888 >>> 24;
- $890 = $889&255;
- $891 = ((($1)) + 3|0);
- HEAP8[$891>>0] = $890;
- $892 = $888 >>> 16;
- $893 = $892&255;
- $894 = ((($1)) + 2|0);
- HEAP8[$894>>0] = $893;
- $895 = $888 >>> 8;
- $896 = $895&255;
- $897 = ((($1)) + 1|0);
- HEAP8[$897>>0] = $896;
- $898 = $888&255;
- HEAP8[$1>>0] = $898;
- $899 = ((($0)) + 4100|0);
- $900 = HEAP32[$899>>2]|0;
- $901 = $900 ^ $828;
- $902 = ((($1)) + 4|0);
- $903 = $901 >>> 24;
- $904 = $903&255;
- $905 = ((($1)) + 7|0);
- HEAP8[$905>>0] = $904;
- $906 = $901 >>> 16;
- $907 = $906&255;
- $908 = ((($1)) + 6|0);
- HEAP8[$908>>0] = $907;
- $909 = $901 >>> 8;
- $910 = $909&255;
- $911 = ((($1)) + 5|0);
- HEAP8[$911>>0] = $910;
- $912 = $901&255;
- HEAP8[$902>>0] = $912;
- $913 = ((($0)) + 4104|0);
- $914 = HEAP32[$913>>2]|0;
- $915 = $885 ^ $914;
- $916 = ((($1)) + 8|0);
- $917 = $915 >>> 24;
- $918 = $917&255;
- $919 = ((($1)) + 11|0);
- HEAP8[$919>>0] = $918;
- $920 = $915 >>> 16;
- $921 = $920&255;
- $922 = ((($1)) + 10|0);
- HEAP8[$922>>0] = $921;
- $923 = $915 >>> 8;
- $924 = $923&255;
- $925 = ((($1)) + 9|0);
- HEAP8[$925>>0] = $924;
- $926 = $915&255;
- HEAP8[$916>>0] = $926;
- $927 = ((($0)) + 4108|0);
- $928 = HEAP32[$927>>2]|0;
- $929 = $928 ^ $878;
- $930 = ((($1)) + 12|0);
- $931 = $929 >>> 24;
- $932 = $931&255;
- $933 = ((($1)) + 15|0);
- HEAP8[$933>>0] = $932;
- $934 = $929 >>> 16;
- $935 = $934&255;
- $936 = ((($1)) + 14|0);
- HEAP8[$936>>0] = $935;
- $937 = $929 >>> 8;
- $938 = $937&255;
- $939 = ((($1)) + 13|0);
- HEAP8[$939>>0] = $938;
- $940 = $929&255;
- HEAP8[$930>>0] = $940;
- return 36;
-}
-function _do_twofish_setkey($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$i$ph = 0, $$0$i1914 = 0, $$01787 = 0, $$01795 = 0, $$01803 = 0, 
$$01819 = 0, $$01827 = 0, $$01835 = 0, $$01851 = 0, $$01859 = 0, $$01867 = 0, 
$$01883 = 0, $$01891 = 0, $$01899 = 0, $$019071917 = 0, $$019091916 = 0, 
$$019111915 = 0, $$01913 = 0, $$1 = 0, $$11788 = 0;
- var $$11796 = 0, $$11804 = 0, $$11812 = 0, $$11820 = 0, $$11828 = 0, $$11836 
= 0, $$11844 = 0, $$11852 = 0, $$11860 = 0, $$11868 = 0, $$11876 = 0, $$11884 = 
0, $$11892 = 0, $$11900 = 0, $$119081920 = 0, $$119101919 = 0, $$119121918 = 0, 
$$2 = 0, $$21789 = 0, $$21797 = 0;
- var $$21805 = 0, $$21813 = 0, $$21821 = 0, $$21829 = 0, $$21837 = 0, $$21845 
= 0, $$21853 = 0, $$21861 = 0, $$21869 = 0, $$21877 = 0, $$21885 = 0, $$21893 = 
0, $$21901 = 0, $$3 = 0, $$31790 = 0, $$31798 = 0, $$31806 = 0, $$31814 = 0, 
$$31822 = 0, $$31830 = 0;
- var $$31838 = 0, $$31846 = 0, $$31854 = 0, $$31862 = 0, $$31870 = 0, $$31878 
= 0, $$31886 = 0, $$31894 = 0, $$31902 = 0, $$4 = 0, $$41791 = 0, $$41799 = 0, 
$$41807 = 0, $$41815 = 0, $$41823 = 0, $$41831 = 0, $$41839 = 0, $$41847 = 0, 
$$41855 = 0, $$41863 = 0;
- var $$41871 = 0, $$41879 = 0, $$41887 = 0, $$41895 = 0, $$41903 = 0, $$5 = 0, 
$$51792 = 0, $$51800 = 0, $$51808 = 0, $$51816 = 0, $$51824 = 0, $$51832 = 0, 
$$51840 = 0, $$51848 = 0, $$51856 = 0, $$51864 = 0, $$51872 = 0, $$51880 = 0, 
$$51888 = 0, $$51896 = 0;
- var $$51904 = 0, $$6 = 0, $$61793 = 0, $$61801 = 0, $$61809 = 0, $$61817 = 0, 
$$61825 = 0, $$61833 = 0, $$61841 = 0, $$61849 = 0, $$61857 = 0, $$61865 = 0, 
$$61873 = 0, $$61881 = 0, $$61889 = 0, $$61897 = 0, $$61905 = 0, $$7 = 0, 
$$71794 = 0, $$71802 = 0;
- var $$71810 = 0, $$71818 = 0, $$71826 = 0, $$71834 = 0, $$71842 = 0, $$71850 
= 0, $$71858 = 0, $$71866 = 0, $$71874 = 0, $$71882 = 0, $$71890 = 0, $$71898 = 
0, $$71906 = 0, $$pr = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, 
$1003 = 0;
- var $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 
0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, 
$1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0;
- var $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 
0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, 
$1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0;
- var $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 
0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, 
$1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0;
- var $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 
0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0, 
$1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0;
- var $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 
0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0, 
$109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0;
- var $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, 
$1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0, 
$1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0;
- var $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 
0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 0, 
$1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0;
- var $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 
0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0, 
$1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0;
- var $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 
0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0, 
$1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0;
- var $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 
0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0, 
$118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0;
- var $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 
0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0, 
$1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0;
- var $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 
0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0, 
$1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0;
- var $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 
0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0, 
$1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0;
- var $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 
0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0, $1250 = 0, 
$1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0;
- var $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 
0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 0, 
$127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0;
- var $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 
0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 0, 
$1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0;
- var $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 
0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0, 
$1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0;
- var $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 
0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0, $1322 = 0, 
$1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0;
- var $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 
0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0, $134 = 0, $1340 = 0, 
$1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0;
- var $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 
0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0, $1358 = 0, $1359 = 0, 
$136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0;
- var $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 
0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0, $1376 = 0, $1377 = 0, 
$1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0;
- var $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 
0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0, $1394 = 0, $1395 = 0, 
$1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0;
- var $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 
0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0, $1411 = 0, $1412 = 0, 
$1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0;
- var $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 
0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0, $143 = 0, $1430 = 0, 
$1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0;
- var $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 
0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0, $1448 = 0, $1449 = 0, 
$145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0;
- var $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 
0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0, $1466 = 0, $1467 = 0, 
$1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0;
- var $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 
0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0, $1484 = 0, $1485 = 0, 
$1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0;
- var $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 
0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0, $1501 = 0, $1502 = 0, 
$1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0;
- var $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 
0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0, $152 = 0, $1520 = 0, 
$1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0;
- var $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 
0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0, $1538 = 0, $1539 = 0, 
$154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0;
- var $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 
0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0, $1556 = 0, $1557 = 0, 
$1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0;
- var $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 
0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0, $1574 = 0, $1575 = 0, 
$1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0;
- var $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 
0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0, $1592 = 0, $1593 = 0, 
$1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0;
- var $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, 
$1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0, $161 = 0, $1610 = 0, 
$1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0;
- var $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 
0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0, $1628 = 0, $1629 = 0, 
$163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0;
- var $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 
0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0, $1646 = 0, $1647 = 0, 
$1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0;
- var $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 
0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0, $1664 = 0, $1665 = 0, 
$1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0;
- var $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 
0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0, $1682 = 0, $1683 = 0, 
$1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0;
- var $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 
0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0, $170 = 0, $1700 = 0, 
$1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0;
- var $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 
0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0, $1718 = 0, $1719 = 0, 
$172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0;
- var $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 
0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0, $1736 = 0, $1737 = 0, 
$1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0;
- var $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 
0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0, $1754 = 0, $1755 = 0, 
$1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0;
- var $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 
0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0, $1772 = 0, $1773 = 0, 
$1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0;
- var $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 
0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0, $1790 = 0, $1791 = 0, 
$1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0;
- var $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, 
$1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0, $1808 = 0, $1809 = 0, 
$181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0;
- var $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 
0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0, $1826 = 0, $1827 = 0, 
$1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0;
- var $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 
0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0, $1844 = 0, $1845 = 0, 
$1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0;
- var $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 
0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0, $1862 = 0, $1863 = 0, 
$1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0;
- var $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 
0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0, $1880 = 0, $1881 = 0, 
$1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0;
- var $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 
0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0, $1899 = 0, $19 = 0, 
$190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0;
- var $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 
0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0, $1916 = 0, $1917 = 0, 
$1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0;
- var $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 
0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0, $1934 = 0, $1935 = 0, 
$1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0;
- var $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 
0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0, $1952 = 0, $1953 = 0, 
$1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0;
- var $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 
0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0, $1970 = 0, $1971 = 0, 
$1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0;
- var $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 
0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0, $1989 = 0, $199 = 0, 
$1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0;
- var $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $20 = 0, $200 = 0, $2000 = 0, 
$2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0, $2005 = 0, $2006 = 0, $2007 = 0, 
$2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0;
- var $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 
0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0, $2023 = 0, $2024 = 0, $2025 = 0, 
$2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0;
- var $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 
0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0, $2041 = 0, $2042 = 0, $2043 = 0, 
$2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0;
- var $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 
0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0, $206 = 0, $2060 = 0, $2061 = 0, 
$2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0;
- var $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 
0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0, $2078 = 0, $2079 = 0, $208 = 0, 
$2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0;
- var $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 
0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0, $2096 = 0, $2097 = 0, $2098 = 0, 
$2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0;
- var $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 
0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0, $2113 = 0, $2114 = 0, $2115 = 0, 
$2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0;
- var $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 
0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0, $2131 = 0, $2132 = 0, $2133 = 0, 
$2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0;
- var $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 
0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0, $215 = 0, $2150 = 0, $2151 = 0, 
$2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0;
- var $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 
0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0, $2168 = 0, $2169 = 0, $217 = 0, 
$2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0;
- var $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 
0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0, $2186 = 0, $2187 = 0, $2188 = 0, 
$2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0;
- var $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 
0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0, $2203 = 0, $2204 = 0, $2205 = 0, 
$2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0;
- var $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 
0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0, $2221 = 0, $2222 = 0, $2223 = 0, 
$2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0;
- var $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 
0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0, $224 = 0, $2240 = 0, $2241 = 0, 
$2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0;
- var $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 
0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0, $2258 = 0, $2259 = 0, $226 = 0, 
$2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0;
- var $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 
0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0, $2276 = 0, $2277 = 0, $2278 = 0, 
$2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0;
- var $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 
0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0, $2294 = 0, $2295 = 0, $2296 = 0, 
$2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0;
- var $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 
0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0, $2311 = 0, $2312 = 0, $2313 = 0, 
$2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0;
- var $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 
0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0, $233 = 0, $2330 = 0, $2331 = 0, 
$2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0;
- var $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 
0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0, $2348 = 0, $2349 = 0, $235 = 0, 
$2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0;
- var $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 
0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0, $2366 = 0, $2367 = 0, $2368 = 0, 
$2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0;
- var $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 
0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0, $2384 = 0, $2385 = 0, $2386 = 0, 
$2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0;
- var $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 
0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0, $2401 = 0, $2402 = 0, $2403 = 0, 
$2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0;
- var $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 
0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0, $242 = 0, $2420 = 0, $2421 = 0, 
$2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0;
- var $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 
0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0, $2438 = 0, $2439 = 0, $244 = 0, 
$2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0;
- var $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 
0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0, $2456 = 0, $2457 = 0, $2458 = 0, 
$2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0;
- var $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 
0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0, $2474 = 0, $2475 = 0, $2476 = 0, 
$2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0;
- var $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 
0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0, $2492 = 0, $2493 = 0, $2494 = 0, 
$2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0;
- var $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 
0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0, $251 = 0, $2510 = 0, $2511 = 0, 
$2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0;
- var $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 
0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0, $2528 = 0, $2529 = 0, $253 = 0, 
$2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0;
- var $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 
0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0, $2546 = 0, $2547 = 0, $2548 = 0, 
$2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0;
- var $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 
0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0, $2564 = 0, $2565 = 0, $2566 = 0, 
$2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0;
- var $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 
0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0, $2582 = 0, $2583 = 0, $2584 = 0, 
$2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0;
- var $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 
0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0, $260 = 0, $2600 = 0, $2601 = 0, 
$2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0;
- var $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 
0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0, $2618 = 0, $2619 = 0, $262 = 0, 
$2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0;
- var $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 
0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0, $2636 = 0, $2637 = 0, $2638 = 0, 
$2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0;
- var $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 
0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0, $2654 = 0, $2655 = 0, $2656 = 0, 
$2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0;
- var $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 
0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0, $2672 = 0, $2673 = 0, $2674 = 0, 
$2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0;
- var $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 
0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0, $2690 = 0, $2691 = 0, $2692 = 0, 
$2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0;
- var $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, 
$2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0, $2708 = 0, $2709 = 0, $271 = 0, 
$2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0;
- var $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 
0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0, $2726 = 0, $2727 = 0, $2728 = 0, 
$2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0;
- var $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 
0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0, $2744 = 0, $2745 = 0, $2746 = 0, 
$2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0;
- var $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 
0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0, $2762 = 0, $2763 = 0, $2764 = 0, 
$2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0;
- var $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 
0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0, $2780 = 0, $2781 = 0, $2782 = 0, 
$2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0;
- var $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 
0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0, $2799 = 0, $28 = 0, $280 = 0, 
$2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0;
- var $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 
0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0, $2816 = 0, $2817 = 0, $2818 = 0, 
$2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0;
- var $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 
0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0, $2834 = 0, $2835 = 0, $2836 = 0, 
$2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0;
- var $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 
0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0, $2852 = 0, $2853 = 0, $2854 = 0, 
$2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0;
- var $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 
0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0, $2870 = 0, $2871 = 0, $2872 = 0, 
$2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0;
- var $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 
0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0, $2889 = 0, $289 = 0, $2890 = 0, 
$2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0;
- var $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, 
$2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0, $2906 = 0, $2907 = 0, $2908 = 0, 
$2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0;
- var $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 
0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0, $2924 = 0, $2925 = 0, $2926 = 0, 
$2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0;
- var $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 
0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0, $2942 = 0, $2943 = 0, $2944 = 0, 
$2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0;
- var $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 
0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0, $2960 = 0, $2961 = 0, $2962 = 0, 
$2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0;
- var $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 
0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0, $2979 = 0, $298 = 0, $2980 = 0, 
$2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0;
- var $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 
0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0, $2997 = 0, $2998 = 0, $2999 = 0, 
$3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0;
- var $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 
0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0, $3013 = 0, $3014 = 0, $3015 = 0, 
$3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0;
- var $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 
0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0, $3031 = 0, $3032 = 0, $3033 = 0, 
$3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0;
- var $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, $3043 = 0, $3044 = 0, $3045 = 
0, $3046 = 0, $3047 = 0, $3048 = 0, $3049 = 0, $305 = 0, $3050 = 0, $3051 = 0, 
$3052 = 0, $3053 = 0, $3054 = 0, $3055 = 0, $3056 = 0, $3057 = 0;
- var $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, $3061 = 0, $3062 = 0, $3063 = 
0, $3064 = 0, $3065 = 0, $3066 = 0, $3067 = 0, $3068 = 0, $3069 = 0, $307 = 0, 
$3070 = 0, $3071 = 0, $3072 = 0, $3073 = 0, $3074 = 0, $3075 = 0;
- var $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, $308 = 0, $3080 = 0, $3081 = 
0, $3082 = 0, $3083 = 0, $3084 = 0, $3085 = 0, $3086 = 0, $3087 = 0, $3088 = 0, 
$3089 = 0, $309 = 0, $3090 = 0, $3091 = 0, $3092 = 0, $3093 = 0;
- var $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, $3098 = 0, $3099 = 0, $31 = 
0, $310 = 0, $3100 = 0, $3101 = 0, $3102 = 0, $3103 = 0, $3104 = 0, $3105 = 0, 
$3106 = 0, $3107 = 0, $3108 = 0, $3109 = 0, $311 = 0, $3110 = 0;
- var $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, $3115 = 0, $3116 = 0, $3117 = 
0, $3118 = 0, $3119 = 0, $312 = 0, $3120 = 0, $3121 = 0, $3122 = 0, $3123 = 0, 
$3124 = 0, $3125 = 0, $3126 = 0, $3127 = 0, $3128 = 0, $3129 = 0;
- var $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, $3133 = 0, $3134 = 0, $3135 = 
0, $3136 = 0, $3137 = 0, $3138 = 0, $3139 = 0, $314 = 0, $3140 = 0, $3141 = 0, 
$3142 = 0, $3143 = 0, $3144 = 0, $3145 = 0, $3146 = 0, $3147 = 0;
- var $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, $3151 = 0, $3152 = 0, $3153 = 
0, $3154 = 0, $3155 = 0, $3156 = 0, $3157 = 0, $3158 = 0, $3159 = 0, $316 = 0, 
$3160 = 0, $3161 = 0, $3162 = 0, $3163 = 0, $3164 = 0, $3165 = 0;
- var $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, $317 = 0, $3170 = 0, $3171 = 
0, $3172 = 0, $3173 = 0, $3174 = 0, $3175 = 0, $3176 = 0, $3177 = 0, $3178 = 0, 
$3179 = 0, $318 = 0, $3180 = 0, $3181 = 0, $3182 = 0, $3183 = 0;
- var $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, $3188 = 0, $3189 = 0, $319 = 
0, $3190 = 0, $3191 = 0, $3192 = 0, $3193 = 0, $3194 = 0, $3195 = 0, $3196 = 0, 
$3197 = 0, $3198 = 0, $3199 = 0, $32 = 0, $320 = 0, $3200 = 0;
- var $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, $3205 = 0, $3206 = 0, $3207 = 
0, $3208 = 0, $3209 = 0, $321 = 0, $3210 = 0, $3211 = 0, $3212 = 0, $3213 = 0, 
$3214 = 0, $3215 = 0, $3216 = 0, $3217 = 0, $3218 = 0, $3219 = 0;
- var $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, $3223 = 0, $3224 = 0, $3225 = 
0, $3226 = 0, $3227 = 0, $3228 = 0, $3229 = 0, $323 = 0, $3230 = 0, $3231 = 0, 
$3232 = 0, $3233 = 0, $3234 = 0, $3235 = 0, $3236 = 0, $3237 = 0;
- var $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, $3241 = 0, $3242 = 0, $3243 = 
0, $3244 = 0, $3245 = 0, $3246 = 0, $3247 = 0, $3248 = 0, $3249 = 0, $325 = 0, 
$3250 = 0, $3251 = 0, $3252 = 0, $3253 = 0, $3254 = 0, $3255 = 0;
- var $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, $326 = 0, $3260 = 0, $3261 = 
0, $3262 = 0, $3263 = 0, $3264 = 0, $3265 = 0, $3266 = 0, $3267 = 0, $3268 = 0, 
$3269 = 0, $327 = 0, $3270 = 0, $3271 = 0, $3272 = 0, $3273 = 0;
- var $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, $3278 = 0, $3279 = 0, $328 = 
0, $3280 = 0, $3281 = 0, $3282 = 0, $3283 = 0, $3284 = 0, $3285 = 0, $3286 = 0, 
$3287 = 0, $3288 = 0, $3289 = 0, $329 = 0, $3290 = 0, $3291 = 0;
- var $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, $3296 = 0, $3297 = 0, $3298 = 
0, $3299 = 0, $33 = 0, $330 = 0, $3300 = 0, $3301 = 0, $3302 = 0, $3303 = 0, 
$3304 = 0, $3305 = 0, $3306 = 0, $3307 = 0, $3308 = 0, $3309 = 0;
- var $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, $3313 = 0, $3314 = 0, $3315 = 
0, $3316 = 0, $3317 = 0, $3318 = 0, $3319 = 0, $332 = 0, $3320 = 0, $3321 = 0, 
$3322 = 0, $3323 = 0, $3324 = 0, $3325 = 0, $3326 = 0, $3327 = 0;
- var $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, $3331 = 0, $3332 = 0, $3333 = 
0, $3334 = 0, $3335 = 0, $3336 = 0, $3337 = 0, $3338 = 0, $3339 = 0, $334 = 0, 
$3340 = 0, $3341 = 0, $3342 = 0, $3343 = 0, $3344 = 0, $3345 = 0;
- var $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, $335 = 0, $3350 = 0, $3351 = 
0, $3352 = 0, $3353 = 0, $3354 = 0, $3355 = 0, $3356 = 0, $3357 = 0, $3358 = 0, 
$3359 = 0, $336 = 0, $3360 = 0, $3361 = 0, $3362 = 0, $3363 = 0;
- var $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, $3368 = 0, $3369 = 0, $337 = 
0, $3370 = 0, $3371 = 0, $3372 = 0, $3373 = 0, $3374 = 0, $3375 = 0, $3376 = 0, 
$3377 = 0, $3378 = 0, $3379 = 0, $338 = 0, $3380 = 0, $3381 = 0;
- var $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, $3386 = 0, $3387 = 0, $3388 = 
0, $3389 = 0, $339 = 0, $3390 = 0, $3391 = 0, $3392 = 0, $3393 = 0, $3394 = 0, 
$3395 = 0, $3396 = 0, $3397 = 0, $3398 = 0, $3399 = 0, $34 = 0;
- var $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, $3403 = 0, $3404 = 0, $3405 = 
0, $3406 = 0, $3407 = 0, $3408 = 0, $3409 = 0, $341 = 0, $3410 = 0, $3411 = 0, 
$3412 = 0, $3413 = 0, $3414 = 0, $3415 = 0, $3416 = 0, $3417 = 0;
- var $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, $3421 = 0, $3422 = 0, $3423 = 
0, $3424 = 0, $3425 = 0, $3426 = 0, $3427 = 0, $3428 = 0, $3429 = 0, $343 = 0, 
$3430 = 0, $3431 = 0, $3432 = 0, $3433 = 0, $3434 = 0, $3435 = 0;
- var $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, $344 = 0, $3440 = 0, $3441 = 
0, $3442 = 0, $3443 = 0, $3444 = 0, $3445 = 0, $3446 = 0, $3447 = 0, $3448 = 0, 
$3449 = 0, $345 = 0, $3450 = 0, $3451 = 0, $3452 = 0, $3453 = 0;
- var $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, $3458 = 0, $3459 = 0, $346 = 
0, $3460 = 0, $3461 = 0, $3462 = 0, $3463 = 0, $3464 = 0, $3465 = 0, $3466 = 0, 
$3467 = 0, $3468 = 0, $3469 = 0, $347 = 0, $3470 = 0, $3471 = 0;
- var $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, $3476 = 0, $3477 = 0, $3478 = 
0, $3479 = 0, $348 = 0, $3480 = 0, $3481 = 0, $3482 = 0, $3483 = 0, $3484 = 0, 
$3485 = 0, $3486 = 0, $3487 = 0, $3488 = 0, $3489 = 0, $349 = 0;
- var $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, $3494 = 0, $3495 = 0, $3496 = 
0, $3497 = 0, $3498 = 0, $3499 = 0, $35 = 0, $350 = 0, $3500 = 0, $3501 = 0, 
$3502 = 0, $3503 = 0, $3504 = 0, $3505 = 0, $3506 = 0, $3507 = 0;
- var $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, $3511 = 0, $3512 = 0, $3513 = 
0, $3514 = 0, $3515 = 0, $3516 = 0, $3517 = 0, $3518 = 0, $3519 = 0, $352 = 0, 
$3520 = 0, $3521 = 0, $3522 = 0, $3523 = 0, $3524 = 0, $3525 = 0;
- var $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, $353 = 0, $3530 = 0, $3531 = 
0, $3532 = 0, $3533 = 0, $3534 = 0, $3535 = 0, $3536 = 0, $3537 = 0, $3538 = 0, 
$3539 = 0, $354 = 0, $3540 = 0, $3541 = 0, $3542 = 0, $3543 = 0;
- var $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, $3548 = 0, $3549 = 0, $355 = 
0, $3550 = 0, $3551 = 0, $3552 = 0, $3553 = 0, $3554 = 0, $3555 = 0, $3556 = 0, 
$3557 = 0, $3558 = 0, $3559 = 0, $356 = 0, $3560 = 0, $3561 = 0;
- var $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, $3566 = 0, $3567 = 0, $3568 = 
0, $3569 = 0, $357 = 0, $3570 = 0, $3571 = 0, $3572 = 0, $3573 = 0, $3574 = 0, 
$3575 = 0, $3576 = 0, $3577 = 0, $3578 = 0, $3579 = 0, $358 = 0;
- var $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, $3584 = 0, $3585 = 0, $3586 = 
0, $3587 = 0, $3588 = 0, $3589 = 0, $359 = 0, $3590 = 0, $3591 = 0, $3592 = 0, 
$3593 = 0, $3594 = 0, $3595 = 0, $3596 = 0, $3597 = 0, $3598 = 0;
- var $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, $3601 = 0, $3602 = 0, $3603 = 0, 
$3604 = 0, $3605 = 0, $3606 = 0, $3607 = 0, $3608 = 0, $3609 = 0, $361 = 0, 
$3610 = 0, $3611 = 0, $3612 = 0, $3613 = 0, $3614 = 0, $3615 = 0;
- var $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, $362 = 0, $3620 = 0, $3621 = 
0, $3622 = 0, $3623 = 0, $3624 = 0, $3625 = 0, $3626 = 0, $3627 = 0, $3628 = 0, 
$3629 = 0, $363 = 0, $3630 = 0, $3631 = 0, $3632 = 0, $3633 = 0;
- var $3634 = 0, $3635 = 0, $3636 = 0, $3637 = 0, $3638 = 0, $3639 = 0, $364 = 
0, $3640 = 0, $3641 = 0, $3642 = 0, $3643 = 0, $3644 = 0, $3645 = 0, $3646 = 0, 
$3647 = 0, $3648 = 0, $3649 = 0, $365 = 0, $3650 = 0, $3651 = 0;
- var $3652 = 0, $3653 = 0, $3654 = 0, $3655 = 0, $3656 = 0, $3657 = 0, $3658 = 
0, $3659 = 0, $366 = 0, $3660 = 0, $3661 = 0, $3662 = 0, $3663 = 0, $3664 = 0, 
$3665 = 0, $3666 = 0, $3667 = 0, $3668 = 0, $3669 = 0, $367 = 0;
- var $3670 = 0, $3671 = 0, $3672 = 0, $3673 = 0, $3674 = 0, $3675 = 0, $3676 = 
0, $3677 = 0, $3678 = 0, $3679 = 0, $368 = 0, $3680 = 0, $3681 = 0, $3682 = 0, 
$3683 = 0, $3684 = 0, $3685 = 0, $3686 = 0, $3687 = 0, $3688 = 0;
- var $3689 = 0, $369 = 0, $3690 = 0, $3691 = 0, $3692 = 0, $3693 = 0, $3694 = 
0, $3695 = 0, $3696 = 0, $3697 = 0, $3698 = 0, $3699 = 0, $37 = 0, $370 = 0, 
$3700 = 0, $3701 = 0, $3702 = 0, $3703 = 0, $3704 = 0, $3705 = 0;
- var $3706 = 0, $3707 = 0, $3708 = 0, $3709 = 0, $371 = 0, $3710 = 0, $3711 = 
0, $3712 = 0, $3713 = 0, $3714 = 0, $3715 = 0, $3716 = 0, $3717 = 0, $3718 = 0, 
$3719 = 0, $372 = 0, $3720 = 0, $3721 = 0, $3722 = 0, $3723 = 0;
- var $3724 = 0, $3725 = 0, $3726 = 0, $3727 = 0, $3728 = 0, $3729 = 0, $373 = 
0, $3730 = 0, $3731 = 0, $3732 = 0, $3733 = 0, $3734 = 0, $3735 = 0, $3736 = 0, 
$3737 = 0, $3738 = 0, $3739 = 0, $374 = 0, $3740 = 0, $3741 = 0;
- var $3742 = 0, $3743 = 0, $3744 = 0, $3745 = 0, $3746 = 0, $3747 = 0, $3748 = 
0, $3749 = 0, $375 = 0, $3750 = 0, $3751 = 0, $3752 = 0, $3753 = 0, $3754 = 0, 
$3755 = 0, $3756 = 0, $3757 = 0, $3758 = 0, $3759 = 0, $376 = 0;
- var $3760 = 0, $3761 = 0, $3762 = 0, $3763 = 0, $3764 = 0, $3765 = 0, $3766 = 
0, $3767 = 0, $3768 = 0, $3769 = 0, $377 = 0, $3770 = 0, $3771 = 0, $3772 = 0, 
$3773 = 0, $3774 = 0, $3775 = 0, $3776 = 0, $3777 = 0, $3778 = 0;
- var $3779 = 0, $378 = 0, $3780 = 0, $3781 = 0, $3782 = 0, $3783 = 0, $3784 = 
0, $3785 = 0, $3786 = 0, $3787 = 0, $3788 = 0, $3789 = 0, $379 = 0, $3790 = 0, 
$3791 = 0, $3792 = 0, $3793 = 0, $3794 = 0, $3795 = 0, $3796 = 0;
- var $3797 = 0, $3798 = 0, $3799 = 0, $38 = 0, $380 = 0, $3800 = 0, $3801 = 0, 
$3802 = 0, $3803 = 0, $3804 = 0, $3805 = 0, $3806 = 0, $3807 = 0, $3808 = 0, 
$3809 = 0, $381 = 0, $3810 = 0, $3811 = 0, $3812 = 0, $3813 = 0;
- var $3814 = 0, $3815 = 0, $3816 = 0, $3817 = 0, $3818 = 0, $3819 = 0, $382 = 
0, $3820 = 0, $3821 = 0, $3822 = 0, $3823 = 0, $3824 = 0, $3825 = 0, $3826 = 0, 
$3827 = 0, $3828 = 0, $3829 = 0, $383 = 0, $3830 = 0, $3831 = 0;
- var $3832 = 0, $3833 = 0, $3834 = 0, $3835 = 0, $3836 = 0, $3837 = 0, $3838 = 
0, $3839 = 0, $384 = 0, $3840 = 0, $3841 = 0, $3842 = 0, $3843 = 0, $3844 = 0, 
$3845 = 0, $3846 = 0, $3847 = 0, $3848 = 0, $3849 = 0, $385 = 0;
- var $3850 = 0, $3851 = 0, $3852 = 0, $3853 = 0, $3854 = 0, $3855 = 0, $3856 = 
0, $3857 = 0, $3858 = 0, $3859 = 0, $386 = 0, $3860 = 0, $3861 = 0, $3862 = 0, 
$3863 = 0, $3864 = 0, $3865 = 0, $3866 = 0, $3867 = 0, $3868 = 0;
- var $3869 = 0, $387 = 0, $3870 = 0, $3871 = 0, $3872 = 0, $3873 = 0, $3874 = 
0, $3875 = 0, $3876 = 0, $3877 = 0, $3878 = 0, $3879 = 0, $388 = 0, $3880 = 0, 
$3881 = 0, $3882 = 0, $3883 = 0, $3884 = 0, $3885 = 0, $3886 = 0;
- var $3887 = 0, $3888 = 0, $3889 = 0, $389 = 0, $3890 = 0, $3891 = 0, $3892 = 
0, $3893 = 0, $3894 = 0, $3895 = 0, $3896 = 0, $3897 = 0, $3898 = 0, $3899 = 0, 
$39 = 0, $390 = 0, $3900 = 0, $3901 = 0, $3902 = 0, $3903 = 0;
- var $3904 = 0, $3905 = 0, $3906 = 0, $3907 = 0, $3908 = 0, $3909 = 0, $391 = 
0, $3910 = 0, $3911 = 0, $3912 = 0, $3913 = 0, $3914 = 0, $3915 = 0, $3916 = 0, 
$3917 = 0, $3918 = 0, $3919 = 0, $392 = 0, $3920 = 0, $3921 = 0;
- var $3922 = 0, $3923 = 0, $3924 = 0, $3925 = 0, $3926 = 0, $3927 = 0, $3928 = 
0, $3929 = 0, $393 = 0, $3930 = 0, $3931 = 0, $3932 = 0, $3933 = 0, $3934 = 0, 
$3935 = 0, $3936 = 0, $3937 = 0, $3938 = 0, $3939 = 0, $394 = 0;
- var $3940 = 0, $3941 = 0, $3942 = 0, $3943 = 0, $3944 = 0, $3945 = 0, $3946 = 
0, $3947 = 0, $3948 = 0, $3949 = 0, $395 = 0, $3950 = 0, $3951 = 0, $3952 = 0, 
$3953 = 0, $3954 = 0, $3955 = 0, $3956 = 0, $3957 = 0, $3958 = 0;
- var $3959 = 0, $396 = 0, $3960 = 0, $3961 = 0, $3962 = 0, $3963 = 0, $3964 = 
0, $3965 = 0, $3966 = 0, $3967 = 0, $3968 = 0, $3969 = 0, $397 = 0, $3970 = 0, 
$3971 = 0, $3972 = 0, $3973 = 0, $3974 = 0, $3975 = 0, $3976 = 0;
- var $3977 = 0, $3978 = 0, $3979 = 0, $398 = 0, $3980 = 0, $3981 = 0, $3982 = 
0, $3983 = 0, $3984 = 0, $3985 = 0, $3986 = 0, $3987 = 0, $3988 = 0, $3989 = 0, 
$399 = 0, $3990 = 0, $3991 = 0, $3992 = 0, $3993 = 0, $3994 = 0;
- var $3995 = 0, $3996 = 0, $3997 = 0, $3998 = 0, $3999 = 0, $4 = 0, $40 = 0, 
$400 = 0, $4000 = 0, $4001 = 0, $4002 = 0, $4003 = 0, $4004 = 0, $4005 = 0, 
$4006 = 0, $4007 = 0, $4008 = 0, $4009 = 0, $401 = 0, $4010 = 0;
- var $4011 = 0, $4012 = 0, $4013 = 0, $4014 = 0, $4015 = 0, $4016 = 0, $4017 = 
0, $4018 = 0, $4019 = 0, $402 = 0, $4020 = 0, $4021 = 0, $4022 = 0, $4023 = 0, 
$4024 = 0, $4025 = 0, $4026 = 0, $4027 = 0, $4028 = 0, $4029 = 0;
- var $403 = 0, $4030 = 0, $4031 = 0, $4032 = 0, $4033 = 0, $4034 = 0, $4035 = 
0, $4036 = 0, $4037 = 0, $4038 = 0, $4039 = 0, $404 = 0, $4040 = 0, $4041 = 0, 
$4042 = 0, $4043 = 0, $4044 = 0, $4045 = 0, $4046 = 0, $4047 = 0;
- var $4048 = 0, $4049 = 0, $405 = 0, $4050 = 0, $4051 = 0, $4052 = 0, $4053 = 
0, $4054 = 0, $4055 = 0, $4056 = 0, $4057 = 0, $4058 = 0, $4059 = 0, $406 = 0, 
$4060 = 0, $4061 = 0, $4062 = 0, $4063 = 0, $4064 = 0, $4065 = 0;
- var $4066 = 0, $4067 = 0, $4068 = 0, $4069 = 0, $407 = 0, $4070 = 0, $4071 = 
0, $4072 = 0, $4073 = 0, $4074 = 0, $4075 = 0, $4076 = 0, $4077 = 0, $4078 = 0, 
$4079 = 0, $408 = 0, $4080 = 0, $4081 = 0, $4082 = 0, $4083 = 0;
- var $4084 = 0, $4085 = 0, $4086 = 0, $4087 = 0, $4088 = 0, $4089 = 0, $409 = 
0, $4090 = 0, $4091 = 0, $4092 = 0, $4093 = 0, $4094 = 0, $4095 = 0, $4096 = 0, 
$4097 = 0, $4098 = 0, $4099 = 0, $41 = 0, $410 = 0, $4100 = 0;
- var $4101 = 0, $4102 = 0, $4103 = 0, $4104 = 0, $4105 = 0, $4106 = 0, $4107 = 
0, $4108 = 0, $4109 = 0, $411 = 0, $4110 = 0, $4111 = 0, $4112 = 0, $4113 = 0, 
$4114 = 0, $4115 = 0, $4116 = 0, $4117 = 0, $4118 = 0, $4119 = 0;
- var $412 = 0, $4120 = 0, $4121 = 0, $4122 = 0, $4123 = 0, $4124 = 0, $4125 = 
0, $4126 = 0, $4127 = 0, $4128 = 0, $4129 = 0, $413 = 0, $4130 = 0, $4131 = 0, 
$4132 = 0, $4133 = 0, $4134 = 0, $4135 = 0, $4136 = 0, $4137 = 0;
- var $4138 = 0, $4139 = 0, $414 = 0, $4140 = 0, $4141 = 0, $4142 = 0, $4143 = 
0, $4144 = 0, $4145 = 0, $4146 = 0, $4147 = 0, $4148 = 0, $4149 = 0, $415 = 0, 
$4150 = 0, $4151 = 0, $4152 = 0, $4153 = 0, $4154 = 0, $4155 = 0;
- var $4156 = 0, $4157 = 0, $4158 = 0, $4159 = 0, $416 = 0, $4160 = 0, $4161 = 
0, $4162 = 0, $4163 = 0, $4164 = 0, $4165 = 0, $4166 = 0, $4167 = 0, $4168 = 0, 
$4169 = 0, $417 = 0, $4170 = 0, $4171 = 0, $4172 = 0, $4173 = 0;
- var $4174 = 0, $4175 = 0, $4176 = 0, $4177 = 0, $4178 = 0, $4179 = 0, $418 = 
0, $4180 = 0, $4181 = 0, $4182 = 0, $4183 = 0, $4184 = 0, $4185 = 0, $4186 = 0, 
$4187 = 0, $4188 = 0, $4189 = 0, $419 = 0, $4190 = 0, $4191 = 0;
- var $4192 = 0, $4193 = 0, $4194 = 0, $4195 = 0, $4196 = 0, $4197 = 0, $4198 = 
0, $4199 = 0, $42 = 0, $420 = 0, $4200 = 0, $4201 = 0, $4202 = 0, $4203 = 0, 
$4204 = 0, $4205 = 0, $4206 = 0, $4207 = 0, $4208 = 0, $4209 = 0;
- var $421 = 0, $4210 = 0, $4211 = 0, $4212 = 0, $4213 = 0, $4214 = 0, $4215 = 
0, $4216 = 0, $4217 = 0, $4218 = 0, $4219 = 0, $422 = 0, $4220 = 0, $4221 = 0, 
$4222 = 0, $4223 = 0, $4224 = 0, $4225 = 0, $4226 = 0, $4227 = 0;
- var $4228 = 0, $4229 = 0, $423 = 0, $4230 = 0, $4231 = 0, $4232 = 0, $4233 = 
0, $4234 = 0, $4235 = 0, $4236 = 0, $4237 = 0, $4238 = 0, $4239 = 0, $424 = 0, 
$4240 = 0, $4241 = 0, $4242 = 0, $4243 = 0, $4244 = 0, $4245 = 0;
- var $4246 = 0, $4247 = 0, $4248 = 0, $4249 = 0, $425 = 0, $4250 = 0, $4251 = 
0, $4252 = 0, $4253 = 0, $4254 = 0, $4255 = 0, $4256 = 0, $4257 = 0, $4258 = 0, 
$4259 = 0, $426 = 0, $4260 = 0, $4261 = 0, $4262 = 0, $4263 = 0;
- var $4264 = 0, $4265 = 0, $4266 = 0, $4267 = 0, $4268 = 0, $4269 = 0, $427 = 
0, $4270 = 0, $4271 = 0, $4272 = 0, $4273 = 0, $4274 = 0, $4275 = 0, $4276 = 0, 
$4277 = 0, $4278 = 0, $4279 = 0, $428 = 0, $4280 = 0, $4281 = 0;
- var $4282 = 0, $4283 = 0, $4284 = 0, $4285 = 0, $4286 = 0, $4287 = 0, $4288 = 
0, $4289 = 0, $429 = 0, $4290 = 0, $4291 = 0, $4292 = 0, $4293 = 0, $4294 = 0, 
$4295 = 0, $4296 = 0, $4297 = 0, $4298 = 0, $4299 = 0, $43 = 0;
- var $430 = 0, $4300 = 0, $4301 = 0, $4302 = 0, $4303 = 0, $4304 = 0, $4305 = 
0, $4306 = 0, $4307 = 0, $4308 = 0, $4309 = 0, $431 = 0, $4310 = 0, $4311 = 0, 
$4312 = 0, $4313 = 0, $4314 = 0, $4315 = 0, $4316 = 0, $4317 = 0;
- var $4318 = 0, $4319 = 0, $432 = 0, $4320 = 0, $4321 = 0, $4322 = 0, $4323 = 
0, $4324 = 0, $4325 = 0, $4326 = 0, $4327 = 0, $4328 = 0, $4329 = 0, $433 = 0, 
$4330 = 0, $4331 = 0, $4332 = 0, $4333 = 0, $4334 = 0, $4335 = 0;
- var $4336 = 0, $4337 = 0, $4338 = 0, $4339 = 0, $434 = 0, $4340 = 0, $4341 = 
0, $4342 = 0, $4343 = 0, $4344 = 0, $4345 = 0, $4346 = 0, $4347 = 0, $4348 = 0, 
$4349 = 0, $435 = 0, $4350 = 0, $4351 = 0, $4352 = 0, $4353 = 0;
- var $4354 = 0, $4355 = 0, $4356 = 0, $4357 = 0, $4358 = 0, $4359 = 0, $436 = 
0, $4360 = 0, $4361 = 0, $4362 = 0, $4363 = 0, $4364 = 0, $4365 = 0, $4366 = 0, 
$4367 = 0, $4368 = 0, $4369 = 0, $437 = 0, $4370 = 0, $4371 = 0;
- var $4372 = 0, $4373 = 0, $4374 = 0, $4375 = 0, $4376 = 0, $4377 = 0, $4378 = 
0, $4379 = 0, $438 = 0, $4380 = 0, $4381 = 0, $4382 = 0, $4383 = 0, $4384 = 0, 
$4385 = 0, $4386 = 0, $4387 = 0, $4388 = 0, $4389 = 0, $439 = 0;
- var $4390 = 0, $4391 = 0, $4392 = 0, $4393 = 0, $4394 = 0, $4395 = 0, $4396 = 
0, $4397 = 0, $4398 = 0, $4399 = 0, $44 = 0, $440 = 0, $4400 = 0, $4401 = 0, 
$4402 = 0, $4403 = 0, $4404 = 0, $4405 = 0, $4406 = 0, $4407 = 0;
- var $4408 = 0, $4409 = 0, $441 = 0, $4410 = 0, $4411 = 0, $4412 = 0, $4413 = 
0, $4414 = 0, $4415 = 0, $4416 = 0, $4417 = 0, $4418 = 0, $4419 = 0, $442 = 0, 
$4420 = 0, $4421 = 0, $4422 = 0, $4423 = 0, $4424 = 0, $4425 = 0;
- var $4426 = 0, $4427 = 0, $4428 = 0, $4429 = 0, $443 = 0, $4430 = 0, $4431 = 
0, $4432 = 0, $4433 = 0, $4434 = 0, $4435 = 0, $4436 = 0, $4437 = 0, $4438 = 0, 
$4439 = 0, $444 = 0, $4440 = 0, $4441 = 0, $4442 = 0, $4443 = 0;
- var $4444 = 0, $4445 = 0, $4446 = 0, $4447 = 0, $4448 = 0, $4449 = 0, $445 = 
0, $4450 = 0, $4451 = 0, $4452 = 0, $4453 = 0, $4454 = 0, $4455 = 0, $4456 = 0, 
$4457 = 0, $4458 = 0, $4459 = 0, $446 = 0, $4460 = 0, $4461 = 0;
- var $4462 = 0, $4463 = 0, $4464 = 0, $4465 = 0, $4466 = 0, $4467 = 0, $4468 = 
0, $4469 = 0, $447 = 0, $4470 = 0, $4471 = 0, $4472 = 0, $4473 = 0, $4474 = 0, 
$4475 = 0, $4476 = 0, $4477 = 0, $4478 = 0, $4479 = 0, $448 = 0;
- var $4480 = 0, $4481 = 0, $4482 = 0, $4483 = 0, $4484 = 0, $4485 = 0, $4486 = 
0, $4487 = 0, $4488 = 0, $4489 = 0, $449 = 0, $4490 = 0, $4491 = 0, $4492 = 0, 
$4493 = 0, $4494 = 0, $4495 = 0, $4496 = 0, $4497 = 0, $4498 = 0;
- var $4499 = 0, $45 = 0, $450 = 0, $4500 = 0, $4501 = 0, $4502 = 0, $4503 = 0, 
$4504 = 0, $4505 = 0, $4506 = 0, $4507 = 0, $4508 = 0, $4509 = 0, $451 = 0, 
$4510 = 0, $4511 = 0, $4512 = 0, $4513 = 0, $4514 = 0, $4515 = 0;
- var $4516 = 0, $4517 = 0, $4518 = 0, $4519 = 0, $452 = 0, $4520 = 0, $4521 = 
0, $4522 = 0, $4523 = 0, $4524 = 0, $4525 = 0, $4526 = 0, $4527 = 0, $4528 = 0, 
$4529 = 0, $453 = 0, $4530 = 0, $4531 = 0, $4532 = 0, $4533 = 0;
- var $4534 = 0, $4535 = 0, $4536 = 0, $4537 = 0, $4538 = 0, $4539 = 0, $454 = 
0, $4540 = 0, $4541 = 0, $4542 = 0, $4543 = 0, $4544 = 0, $4545 = 0, $4546 = 0, 
$4547 = 0, $4548 = 0, $4549 = 0, $455 = 0, $4550 = 0, $4551 = 0;
- var $4552 = 0, $4553 = 0, $4554 = 0, $4555 = 0, $4556 = 0, $4557 = 0, $4558 = 
0, $4559 = 0, $456 = 0, $4560 = 0, $4561 = 0, $4562 = 0, $4563 = 0, $4564 = 0, 
$4565 = 0, $4566 = 0, $4567 = 0, $4568 = 0, $4569 = 0, $457 = 0;
- var $4570 = 0, $4571 = 0, $4572 = 0, $4573 = 0, $4574 = 0, $4575 = 0, $4576 = 
0, $4577 = 0, $4578 = 0, $4579 = 0, $458 = 0, $4580 = 0, $4581 = 0, $4582 = 0, 
$4583 = 0, $4584 = 0, $4585 = 0, $4586 = 0, $4587 = 0, $4588 = 0;
- var $4589 = 0, $459 = 0, $4590 = 0, $4591 = 0, $4592 = 0, $4593 = 0, $4594 = 
0, $4595 = 0, $4596 = 0, $4597 = 0, $4598 = 0, $4599 = 0, $46 = 0, $460 = 0, 
$4600 = 0, $4601 = 0, $4602 = 0, $4603 = 0, $4604 = 0, $4605 = 0;
- var $4606 = 0, $4607 = 0, $4608 = 0, $4609 = 0, $461 = 0, $4610 = 0, $4611 = 
0, $4612 = 0, $4613 = 0, $4614 = 0, $4615 = 0, $4616 = 0, $4617 = 0, $4618 = 0, 
$4619 = 0, $462 = 0, $4620 = 0, $4621 = 0, $4622 = 0, $4623 = 0;
- var $4624 = 0, $4625 = 0, $4626 = 0, $4627 = 0, $4628 = 0, $4629 = 0, $463 = 
0, $4630 = 0, $4631 = 0, $4632 = 0, $4633 = 0, $4634 = 0, $4635 = 0, $4636 = 0, 
$4637 = 0, $4638 = 0, $4639 = 0, $464 = 0, $4640 = 0, $4641 = 0;
- var $4642 = 0, $4643 = 0, $4644 = 0, $4645 = 0, $4646 = 0, $4647 = 0, $4648 = 
0, $4649 = 0, $465 = 0, $4650 = 0, $4651 = 0, $4652 = 0, $4653 = 0, $4654 = 0, 
$4655 = 0, $4656 = 0, $4657 = 0, $4658 = 0, $4659 = 0, $466 = 0;
- var $4660 = 0, $4661 = 0, $4662 = 0, $4663 = 0, $4664 = 0, $4665 = 0, $4666 = 
0, $4667 = 0, $4668 = 0, $4669 = 0, $467 = 0, $4670 = 0, $4671 = 0, $4672 = 0, 
$4673 = 0, $4674 = 0, $4675 = 0, $4676 = 0, $4677 = 0, $4678 = 0;
- var $4679 = 0, $468 = 0, $4680 = 0, $4681 = 0, $4682 = 0, $4683 = 0, $4684 = 
0, $4685 = 0, $4686 = 0, $4687 = 0, $4688 = 0, $4689 = 0, $469 = 0, $4690 = 0, 
$4691 = 0, $4692 = 0, $4693 = 0, $4694 = 0, $4695 = 0, $4696 = 0;
- var $4697 = 0, $4698 = 0, $4699 = 0, $47 = 0, $470 = 0, $4700 = 0, $4701 = 0, 
$4702 = 0, $4703 = 0, $4704 = 0, $4705 = 0, $4706 = 0, $4707 = 0, $4708 = 0, 
$4709 = 0, $471 = 0, $4710 = 0, $4711 = 0, $4712 = 0, $4713 = 0;
- var $4714 = 0, $4715 = 0, $4716 = 0, $4717 = 0, $4718 = 0, $4719 = 0, $472 = 
0, $4720 = 0, $4721 = 0, $4722 = 0, $4723 = 0, $4724 = 0, $4725 = 0, $4726 = 0, 
$4727 = 0, $4728 = 0, $4729 = 0, $473 = 0, $4730 = 0, $4731 = 0;
- var $4732 = 0, $4733 = 0, $4734 = 0, $4735 = 0, $4736 = 0, $4737 = 0, $4738 = 
0, $4739 = 0, $474 = 0, $4740 = 0, $4741 = 0, $4742 = 0, $4743 = 0, $4744 = 0, 
$4745 = 0, $4746 = 0, $4747 = 0, $4748 = 0, $4749 = 0, $475 = 0;
- var $4750 = 0, $4751 = 0, $4752 = 0, $4753 = 0, $4754 = 0, $4755 = 0, $4756 = 
0, $4757 = 0, $4758 = 0, $4759 = 0, $476 = 0, $4760 = 0, $4761 = 0, $4762 = 0, 
$4763 = 0, $4764 = 0, $4765 = 0, $4766 = 0, $4767 = 0, $4768 = 0;
- var $4769 = 0, $477 = 0, $4770 = 0, $4771 = 0, $4772 = 0, $4773 = 0, $4774 = 
0, $4775 = 0, $4776 = 0, $4777 = 0, $4778 = 0, $4779 = 0, $478 = 0, $4780 = 0, 
$4781 = 0, $4782 = 0, $4783 = 0, $4784 = 0, $4785 = 0, $4786 = 0;
- var $4787 = 0, $4788 = 0, $4789 = 0, $479 = 0, $4790 = 0, $4791 = 0, $4792 = 
0, $4793 = 0, $4794 = 0, $4795 = 0, $4796 = 0, $4797 = 0, $4798 = 0, $4799 = 0, 
$48 = 0, $480 = 0, $4800 = 0, $4801 = 0, $4802 = 0, $4803 = 0;
- var $4804 = 0, $4805 = 0, $4806 = 0, $4807 = 0, $4808 = 0, $4809 = 0, $481 = 
0, $4810 = 0, $4811 = 0, $4812 = 0, $4813 = 0, $4814 = 0, $4815 = 0, $4816 = 0, 
$4817 = 0, $4818 = 0, $4819 = 0, $482 = 0, $4820 = 0, $4821 = 0;
- var $4822 = 0, $4823 = 0, $4824 = 0, $4825 = 0, $4826 = 0, $4827 = 0, $4828 = 
0, $4829 = 0, $483 = 0, $4830 = 0, $4831 = 0, $4832 = 0, $4833 = 0, $4834 = 0, 
$4835 = 0, $4836 = 0, $4837 = 0, $4838 = 0, $4839 = 0, $484 = 0;
- var $4840 = 0, $4841 = 0, $4842 = 0, $4843 = 0, $4844 = 0, $4845 = 0, $4846 = 
0, $4847 = 0, $4848 = 0, $4849 = 0, $485 = 0, $4850 = 0, $4851 = 0, $4852 = 0, 
$4853 = 0, $4854 = 0, $4855 = 0, $4856 = 0, $4857 = 0, $4858 = 0;
- var $4859 = 0, $486 = 0, $4860 = 0, $4861 = 0, $4862 = 0, $4863 = 0, $4864 = 
0, $4865 = 0, $4866 = 0, $4867 = 0, $4868 = 0, $4869 = 0, $487 = 0, $4870 = 0, 
$4871 = 0, $4872 = 0, $4873 = 0, $4874 = 0, $4875 = 0, $4876 = 0;
- var $4877 = 0, $4878 = 0, $4879 = 0, $488 = 0, $4880 = 0, $4881 = 0, $4882 = 
0, $4883 = 0, $4884 = 0, $4885 = 0, $4886 = 0, $4887 = 0, $4888 = 0, $4889 = 0, 
$489 = 0, $4890 = 0, $4891 = 0, $4892 = 0, $4893 = 0, $4894 = 0;
- var $4895 = 0, $4896 = 0, $4897 = 0, $4898 = 0, $4899 = 0, $49 = 0, $490 = 0, 
$4900 = 0, $4901 = 0, $4902 = 0, $4903 = 0, $4904 = 0, $4905 = 0, $4906 = 0, 
$4907 = 0, $4908 = 0, $4909 = 0, $491 = 0, $4910 = 0, $4911 = 0;
- var $4912 = 0, $4913 = 0, $4914 = 0, $4915 = 0, $4916 = 0, $4917 = 0, $4918 = 
0, $4919 = 0, $492 = 0, $4920 = 0, $4921 = 0, $4922 = 0, $4923 = 0, $4924 = 0, 
$4925 = 0, $4926 = 0, $4927 = 0, $4928 = 0, $4929 = 0, $493 = 0;
- var $4930 = 0, $4931 = 0, $4932 = 0, $4933 = 0, $4934 = 0, $4935 = 0, $4936 = 
0, $4937 = 0, $4938 = 0, $4939 = 0, $494 = 0, $4940 = 0, $4941 = 0, $4942 = 0, 
$4943 = 0, $4944 = 0, $4945 = 0, $4946 = 0, $4947 = 0, $4948 = 0;
- var $4949 = 0, $495 = 0, $4950 = 0, $4951 = 0, $4952 = 0, $4953 = 0, $4954 = 
0, $4955 = 0, $4956 = 0, $4957 = 0, $4958 = 0, $4959 = 0, $496 = 0, $4960 = 0, 
$4961 = 0, $4962 = 0, $4963 = 0, $4964 = 0, $4965 = 0, $4966 = 0;
- var $4967 = 0, $4968 = 0, $4969 = 0, $497 = 0, $4970 = 0, $4971 = 0, $4972 = 
0, $4973 = 0, $4974 = 0, $4975 = 0, $4976 = 0, $4977 = 0, $4978 = 0, $4979 = 0, 
$498 = 0, $4980 = 0, $4981 = 0, $4982 = 0, $4983 = 0, $4984 = 0;
- var $4985 = 0, $4986 = 0, $4987 = 0, $4988 = 0, $4989 = 0, $499 = 0, $4990 = 
0, $4991 = 0, $4992 = 0, $4993 = 0, $4994 = 0, $4995 = 0, $4996 = 0, $4997 = 0, 
$4998 = 0, $4999 = 0, $5 = 0, $50 = 0, $500 = 0, $5000 = 0;
- var $5001 = 0, $5002 = 0, $5003 = 0, $5004 = 0, $5005 = 0, $5006 = 0, $5007 = 
0, $5008 = 0, $5009 = 0, $501 = 0, $5010 = 0, $5011 = 0, $5012 = 0, $5013 = 0, 
$5014 = 0, $5015 = 0, $5016 = 0, $5017 = 0, $5018 = 0, $5019 = 0;
- var $502 = 0, $5020 = 0, $5021 = 0, $5022 = 0, $5023 = 0, $5024 = 0, $5025 = 
0, $5026 = 0, $5027 = 0, $5028 = 0, $5029 = 0, $503 = 0, $5030 = 0, $5031 = 0, 
$5032 = 0, $5033 = 0, $5034 = 0, $5035 = 0, $5036 = 0, $5037 = 0;
- var $5038 = 0, $5039 = 0, $504 = 0, $5040 = 0, $5041 = 0, $5042 = 0, $5043 = 
0, $5044 = 0, $5045 = 0, $5046 = 0, $5047 = 0, $5048 = 0, $5049 = 0, $505 = 0, 
$5050 = 0, $5051 = 0, $5052 = 0, $5053 = 0, $5054 = 0, $5055 = 0;
- var $5056 = 0, $5057 = 0, $5058 = 0, $5059 = 0, $506 = 0, $5060 = 0, $5061 = 
0, $5062 = 0, $5063 = 0, $5064 = 0, $5065 = 0, $5066 = 0, $5067 = 0, $5068 = 0, 
$5069 = 0, $507 = 0, $5070 = 0, $5071 = 0, $5072 = 0, $5073 = 0;
- var $5074 = 0, $5075 = 0, $5076 = 0, $5077 = 0, $5078 = 0, $5079 = 0, $508 = 
0, $5080 = 0, $5081 = 0, $5082 = 0, $5083 = 0, $5084 = 0, $5085 = 0, $5086 = 0, 
$5087 = 0, $5088 = 0, $5089 = 0, $509 = 0, $5090 = 0, $5091 = 0;
- var $5092 = 0, $5093 = 0, $5094 = 0, $5095 = 0, $5096 = 0, $5097 = 0, $5098 = 
0, $5099 = 0, $51 = 0, $510 = 0, $5100 = 0, $5101 = 0, $5102 = 0, $5103 = 0, 
$5104 = 0, $5105 = 0, $5106 = 0, $5107 = 0, $5108 = 0, $5109 = 0;
- var $511 = 0, $5110 = 0, $5111 = 0, $5112 = 0, $5113 = 0, $5114 = 0, $5115 = 
0, $5116 = 0, $5117 = 0, $5118 = 0, $5119 = 0, $512 = 0, $5120 = 0, $5121 = 0, 
$5122 = 0, $5123 = 0, $5124 = 0, $5125 = 0, $5126 = 0, $5127 = 0;
- var $5128 = 0, $5129 = 0, $513 = 0, $5130 = 0, $5131 = 0, $5132 = 0, $5133 = 
0, $5134 = 0, $5135 = 0, $5136 = 0, $5137 = 0, $5138 = 0, $5139 = 0, $514 = 0, 
$5140 = 0, $5141 = 0, $5142 = 0, $5143 = 0, $5144 = 0, $5145 = 0;
- var $5146 = 0, $5147 = 0, $5148 = 0, $5149 = 0, $515 = 0, $5150 = 0, $5151 = 
0, $5152 = 0, $5153 = 0, $5154 = 0, $5155 = 0, $5156 = 0, $5157 = 0, $5158 = 0, 
$5159 = 0, $516 = 0, $5160 = 0, $5161 = 0, $5162 = 0, $5163 = 0;
- var $5164 = 0, $5165 = 0, $5166 = 0, $5167 = 0, $5168 = 0, $5169 = 0, $517 = 
0, $5170 = 0, $5171 = 0, $5172 = 0, $5173 = 0, $5174 = 0, $5175 = 0, $5176 = 0, 
$5177 = 0, $5178 = 0, $5179 = 0, $518 = 0, $5180 = 0, $5181 = 0;
- var $5182 = 0, $5183 = 0, $5184 = 0, $5185 = 0, $5186 = 0, $5187 = 0, $5188 = 
0, $5189 = 0, $519 = 0, $5190 = 0, $5191 = 0, $5192 = 0, $5193 = 0, $5194 = 0, 
$5195 = 0, $5196 = 0, $5197 = 0, $5198 = 0, $5199 = 0, $52 = 0;
- var $520 = 0, $5200 = 0, $5201 = 0, $5202 = 0, $5203 = 0, $5204 = 0, $5205 = 
0, $5206 = 0, $5207 = 0, $5208 = 0, $5209 = 0, $521 = 0, $5210 = 0, $5211 = 0, 
$5212 = 0, $5213 = 0, $5214 = 0, $5215 = 0, $5216 = 0, $5217 = 0;
- var $5218 = 0, $5219 = 0, $522 = 0, $5220 = 0, $5221 = 0, $5222 = 0, $5223 = 
0, $5224 = 0, $5225 = 0, $5226 = 0, $5227 = 0, $5228 = 0, $5229 = 0, $523 = 0, 
$5230 = 0, $5231 = 0, $5232 = 0, $5233 = 0, $5234 = 0, $5235 = 0;
- var $5236 = 0, $5237 = 0, $5238 = 0, $5239 = 0, $524 = 0, $5240 = 0, $5241 = 
0, $5242 = 0, $5243 = 0, $5244 = 0, $5245 = 0, $5246 = 0, $5247 = 0, $5248 = 0, 
$5249 = 0, $525 = 0, $5250 = 0, $5251 = 0, $5252 = 0, $5253 = 0;
- var $5254 = 0, $5255 = 0, $5256 = 0, $5257 = 0, $5258 = 0, $5259 = 0, $526 = 
0, $5260 = 0, $5261 = 0, $5262 = 0, $5263 = 0, $5264 = 0, $5265 = 0, $5266 = 0, 
$5267 = 0, $5268 = 0, $5269 = 0, $527 = 0, $5270 = 0, $5271 = 0;
- var $5272 = 0, $5273 = 0, $5274 = 0, $5275 = 0, $5276 = 0, $5277 = 0, $5278 = 
0, $5279 = 0, $528 = 0, $5280 = 0, $5281 = 0, $5282 = 0, $5283 = 0, $5284 = 0, 
$5285 = 0, $5286 = 0, $5287 = 0, $5288 = 0, $5289 = 0, $529 = 0;
- var $5290 = 0, $5291 = 0, $5292 = 0, $5293 = 0, $5294 = 0, $5295 = 0, $5296 = 
0, $5297 = 0, $5298 = 0, $5299 = 0, $53 = 0, $530 = 0, $5300 = 0, $5301 = 0, 
$5302 = 0, $5303 = 0, $5304 = 0, $5305 = 0, $5306 = 0, $5307 = 0;
- var $5308 = 0, $5309 = 0, $531 = 0, $5310 = 0, $5311 = 0, $5312 = 0, $5313 = 
0, $5314 = 0, $5315 = 0, $5316 = 0, $5317 = 0, $5318 = 0, $5319 = 0, $532 = 0, 
$5320 = 0, $5321 = 0, $5322 = 0, $5323 = 0, $5324 = 0, $5325 = 0;
- var $5326 = 0, $5327 = 0, $5328 = 0, $5329 = 0, $533 = 0, $5330 = 0, $5331 = 
0, $5332 = 0, $5333 = 0, $5334 = 0, $5335 = 0, $5336 = 0, $5337 = 0, $5338 = 0, 
$5339 = 0, $534 = 0, $5340 = 0, $5341 = 0, $5342 = 0, $5343 = 0;
- var $5344 = 0, $5345 = 0, $5346 = 0, $5347 = 0, $5348 = 0, $5349 = 0, $535 = 
0, $5350 = 0, $5351 = 0, $5352 = 0, $5353 = 0, $5354 = 0, $5355 = 0, $5356 = 0, 
$5357 = 0, $5358 = 0, $5359 = 0, $536 = 0, $5360 = 0, $5361 = 0;
- var $5362 = 0, $5363 = 0, $5364 = 0, $5365 = 0, $5366 = 0, $5367 = 0, $5368 = 
0, $5369 = 0, $537 = 0, $5370 = 0, $5371 = 0, $5372 = 0, $5373 = 0, $5374 = 0, 
$5375 = 0, $5376 = 0, $5377 = 0, $5378 = 0, $5379 = 0, $538 = 0;
- var $5380 = 0, $5381 = 0, $5382 = 0, $5383 = 0, $5384 = 0, $5385 = 0, $5386 = 
0, $5387 = 0, $5388 = 0, $5389 = 0, $539 = 0, $5390 = 0, $5391 = 0, $5392 = 0, 
$5393 = 0, $5394 = 0, $5395 = 0, $5396 = 0, $5397 = 0, $5398 = 0;
- var $5399 = 0, $54 = 0, $540 = 0, $5400 = 0, $5401 = 0, $5402 = 0, $5403 = 0, 
$5404 = 0, $5405 = 0, $5406 = 0, $5407 = 0, $5408 = 0, $5409 = 0, $541 = 0, 
$5410 = 0, $5411 = 0, $5412 = 0, $5413 = 0, $5414 = 0, $5415 = 0;
- var $5416 = 0, $5417 = 0, $5418 = 0, $5419 = 0, $542 = 0, $5420 = 0, $5421 = 
0, $5422 = 0, $5423 = 0, $5424 = 0, $5425 = 0, $5426 = 0, $5427 = 0, $5428 = 0, 
$5429 = 0, $543 = 0, $5430 = 0, $5431 = 0, $5432 = 0, $5433 = 0;
- var $5434 = 0, $5435 = 0, $5436 = 0, $5437 = 0, $5438 = 0, $5439 = 0, $544 = 
0, $5440 = 0, $5441 = 0, $5442 = 0, $5443 = 0, $5444 = 0, $5445 = 0, $5446 = 0, 
$5447 = 0, $5448 = 0, $5449 = 0, $545 = 0, $5450 = 0, $5451 = 0;
- var $5452 = 0, $5453 = 0, $5454 = 0, $5455 = 0, $5456 = 0, $5457 = 0, $5458 = 
0, $5459 = 0, $546 = 0, $5460 = 0, $5461 = 0, $5462 = 0, $5463 = 0, $5464 = 0, 
$5465 = 0, $5466 = 0, $5467 = 0, $5468 = 0, $5469 = 0, $547 = 0;
- var $5470 = 0, $5471 = 0, $5472 = 0, $5473 = 0, $5474 = 0, $5475 = 0, $5476 = 
0, $5477 = 0, $5478 = 0, $5479 = 0, $548 = 0, $5480 = 0, $5481 = 0, $5482 = 0, 
$5483 = 0, $5484 = 0, $5485 = 0, $5486 = 0, $5487 = 0, $5488 = 0;
- var $5489 = 0, $549 = 0, $5490 = 0, $5491 = 0, $5492 = 0, $5493 = 0, $5494 = 
0, $5495 = 0, $5496 = 0, $5497 = 0, $5498 = 0, $5499 = 0, $55 = 0, $550 = 0, 
$5500 = 0, $5501 = 0, $5502 = 0, $5503 = 0, $5504 = 0, $5505 = 0;
- var $5506 = 0, $5507 = 0, $5508 = 0, $5509 = 0, $551 = 0, $5510 = 0, $5511 = 
0, $5512 = 0, $5513 = 0, $5514 = 0, $5515 = 0, $5516 = 0, $5517 = 0, $5518 = 0, 
$5519 = 0, $552 = 0, $5520 = 0, $5521 = 0, $5522 = 0, $5523 = 0;
- var $5524 = 0, $5525 = 0, $5526 = 0, $5527 = 0, $5528 = 0, $5529 = 0, $553 = 
0, $5530 = 0, $5531 = 0, $5532 = 0, $5533 = 0, $5534 = 0, $5535 = 0, $5536 = 0, 
$5537 = 0, $5538 = 0, $5539 = 0, $554 = 0, $5540 = 0, $5541 = 0;
- var $5542 = 0, $5543 = 0, $5544 = 0, $5545 = 0, $5546 = 0, $5547 = 0, $5548 = 
0, $5549 = 0, $555 = 0, $5550 = 0, $5551 = 0, $5552 = 0, $5553 = 0, $5554 = 0, 
$5555 = 0, $5556 = 0, $5557 = 0, $5558 = 0, $5559 = 0, $556 = 0;
- var $5560 = 0, $5561 = 0, $5562 = 0, $5563 = 0, $5564 = 0, $5565 = 0, $5566 = 
0, $5567 = 0, $5568 = 0, $5569 = 0, $557 = 0, $5570 = 0, $5571 = 0, $5572 = 0, 
$5573 = 0, $5574 = 0, $5575 = 0, $5576 = 0, $5577 = 0, $5578 = 0;
- var $5579 = 0, $558 = 0, $5580 = 0, $5581 = 0, $5582 = 0, $5583 = 0, $5584 = 
0, $5585 = 0, $5586 = 0, $5587 = 0, $5588 = 0, $5589 = 0, $559 = 0, $5590 = 0, 
$5591 = 0, $5592 = 0, $5593 = 0, $5594 = 0, $5595 = 0, $5596 = 0;
- var $5597 = 0, $5598 = 0, $5599 = 0, $56 = 0, $560 = 0, $5600 = 0, $5601 = 0, 
$5602 = 0, $5603 = 0, $5604 = 0, $5605 = 0, $5606 = 0, $5607 = 0, $5608 = 0, 
$5609 = 0, $561 = 0, $5610 = 0, $5611 = 0, $5612 = 0, $5613 = 0;
- var $5614 = 0, $5615 = 0, $5616 = 0, $5617 = 0, $5618 = 0, $5619 = 0, $562 = 
0, $5620 = 0, $5621 = 0, $5622 = 0, $5623 = 0, $5624 = 0, $5625 = 0, $5626 = 0, 
$5627 = 0, $5628 = 0, $5629 = 0, $563 = 0, $5630 = 0, $5631 = 0;
- var $5632 = 0, $5633 = 0, $5634 = 0, $5635 = 0, $5636 = 0, $5637 = 0, $5638 = 
0, $5639 = 0, $564 = 0, $5640 = 0, $5641 = 0, $5642 = 0, $5643 = 0, $5644 = 0, 
$5645 = 0, $5646 = 0, $5647 = 0, $5648 = 0, $5649 = 0, $565 = 0;
- var $5650 = 0, $5651 = 0, $5652 = 0, $5653 = 0, $5654 = 0, $5655 = 0, $5656 = 
0, $5657 = 0, $5658 = 0, $5659 = 0, $566 = 0, $5660 = 0, $5661 = 0, $5662 = 0, 
$5663 = 0, $5664 = 0, $5665 = 0, $5666 = 0, $5667 = 0, $5668 = 0;
- var $5669 = 0, $567 = 0, $5670 = 0, $5671 = 0, $5672 = 0, $5673 = 0, $5674 = 
0, $5675 = 0, $5676 = 0, $5677 = 0, $5678 = 0, $5679 = 0, $568 = 0, $5680 = 0, 
$5681 = 0, $5682 = 0, $5683 = 0, $5684 = 0, $5685 = 0, $5686 = 0;
- var $5687 = 0, $5688 = 0, $5689 = 0, $569 = 0, $5690 = 0, $5691 = 0, $5692 = 
0, $5693 = 0, $5694 = 0, $5695 = 0, $5696 = 0, $5697 = 0, $5698 = 0, $5699 = 0, 
$57 = 0, $570 = 0, $5700 = 0, $5701 = 0, $5702 = 0, $5703 = 0;
- var $5704 = 0, $5705 = 0, $5706 = 0, $5707 = 0, $5708 = 0, $5709 = 0, $571 = 
0, $5710 = 0, $5711 = 0, $5712 = 0, $5713 = 0, $5714 = 0, $5715 = 0, $5716 = 0, 
$5717 = 0, $5718 = 0, $5719 = 0, $572 = 0, $5720 = 0, $5721 = 0;
- var $5722 = 0, $5723 = 0, $5724 = 0, $5725 = 0, $5726 = 0, $5727 = 0, $5728 = 
0, $5729 = 0, $573 = 0, $5730 = 0, $5731 = 0, $5732 = 0, $5733 = 0, $5734 = 0, 
$5735 = 0, $5736 = 0, $5737 = 0, $5738 = 0, $5739 = 0, $574 = 0;
- var $5740 = 0, $5741 = 0, $5742 = 0, $5743 = 0, $5744 = 0, $5745 = 0, $5746 = 
0, $5747 = 0, $5748 = 0, $5749 = 0, $575 = 0, $5750 = 0, $5751 = 0, $5752 = 0, 
$5753 = 0, $5754 = 0, $5755 = 0, $5756 = 0, $5757 = 0, $5758 = 0;
- var $5759 = 0, $576 = 0, $5760 = 0, $5761 = 0, $5762 = 0, $5763 = 0, $5764 = 
0, $5765 = 0, $5766 = 0, $5767 = 0, $5768 = 0, $5769 = 0, $577 = 0, $5770 = 0, 
$5771 = 0, $5772 = 0, $5773 = 0, $5774 = 0, $5775 = 0, $5776 = 0;
- var $5777 = 0, $5778 = 0, $5779 = 0, $578 = 0, $5780 = 0, $5781 = 0, $5782 = 
0, $5783 = 0, $5784 = 0, $5785 = 0, $5786 = 0, $5787 = 0, $5788 = 0, $5789 = 0, 
$579 = 0, $5790 = 0, $5791 = 0, $5792 = 0, $5793 = 0, $5794 = 0;
- var $5795 = 0, $5796 = 0, $5797 = 0, $5798 = 0, $5799 = 0, $58 = 0, $580 = 0, 
$5800 = 0, $5801 = 0, $5802 = 0, $5803 = 0, $5804 = 0, $5805 = 0, $5806 = 0, 
$5807 = 0, $5808 = 0, $5809 = 0, $581 = 0, $5810 = 0, $5811 = 0;
- var $5812 = 0, $5813 = 0, $5814 = 0, $5815 = 0, $5816 = 0, $5817 = 0, $5818 = 
0, $5819 = 0, $582 = 0, $5820 = 0, $5821 = 0, $5822 = 0, $5823 = 0, $5824 = 0, 
$5825 = 0, $5826 = 0, $5827 = 0, $5828 = 0, $5829 = 0, $583 = 0;
- var $5830 = 0, $5831 = 0, $5832 = 0, $5833 = 0, $5834 = 0, $5835 = 0, $5836 = 
0, $5837 = 0, $5838 = 0, $5839 = 0, $584 = 0, $5840 = 0, $5841 = 0, $5842 = 0, 
$5843 = 0, $5844 = 0, $5845 = 0, $5846 = 0, $5847 = 0, $5848 = 0;
- var $5849 = 0, $585 = 0, $5850 = 0, $5851 = 0, $5852 = 0, $5853 = 0, $5854 = 
0, $5855 = 0, $5856 = 0, $5857 = 0, $5858 = 0, $5859 = 0, $586 = 0, $5860 = 0, 
$5861 = 0, $5862 = 0, $5863 = 0, $5864 = 0, $5865 = 0, $5866 = 0;
- var $5867 = 0, $5868 = 0, $5869 = 0, $587 = 0, $5870 = 0, $5871 = 0, $5872 = 
0, $5873 = 0, $5874 = 0, $5875 = 0, $5876 = 0, $5877 = 0, $5878 = 0, $5879 = 0, 
$588 = 0, $5880 = 0, $5881 = 0, $5882 = 0, $5883 = 0, $5884 = 0;
- var $5885 = 0, $5886 = 0, $5887 = 0, $5888 = 0, $5889 = 0, $589 = 0, $5890 = 
0, $5891 = 0, $5892 = 0, $5893 = 0, $5894 = 0, $5895 = 0, $5896 = 0, $5897 = 0, 
$5898 = 0, $5899 = 0, $59 = 0, $590 = 0, $5900 = 0, $5901 = 0;
- var $5902 = 0, $5903 = 0, $5904 = 0, $5905 = 0, $5906 = 0, $5907 = 0, $5908 = 
0, $5909 = 0, $591 = 0, $5910 = 0, $5911 = 0, $5912 = 0, $5913 = 0, $5914 = 0, 
$5915 = 0, $5916 = 0, $5917 = 0, $5918 = 0, $5919 = 0, $592 = 0;
- var $5920 = 0, $5921 = 0, $5922 = 0, $5923 = 0, $5924 = 0, $5925 = 0, $5926 = 
0, $5927 = 0, $5928 = 0, $5929 = 0, $593 = 0, $5930 = 0, $5931 = 0, $5932 = 0, 
$5933 = 0, $5934 = 0, $5935 = 0, $5936 = 0, $5937 = 0, $5938 = 0;
- var $5939 = 0, $594 = 0, $5940 = 0, $5941 = 0, $5942 = 0, $5943 = 0, $5944 = 
0, $5945 = 0, $5946 = 0, $5947 = 0, $5948 = 0, $5949 = 0, $595 = 0, $5950 = 0, 
$5951 = 0, $5952 = 0, $5953 = 0, $5954 = 0, $5955 = 0, $5956 = 0;
- var $5957 = 0, $5958 = 0, $5959 = 0, $596 = 0, $5960 = 0, $5961 = 0, $5962 = 
0, $5963 = 0, $5964 = 0, $5965 = 0, $5966 = 0, $5967 = 0, $5968 = 0, $5969 = 0, 
$597 = 0, $5970 = 0, $5971 = 0, $5972 = 0, $5973 = 0, $5974 = 0;
- var $5975 = 0, $5976 = 0, $5977 = 0, $5978 = 0, $5979 = 0, $598 = 0, $5980 = 
0, $5981 = 0, $5982 = 0, $5983 = 0, $5984 = 0, $5985 = 0, $5986 = 0, $5987 = 0, 
$5988 = 0, $5989 = 0, $599 = 0, $5990 = 0, $5991 = 0, $5992 = 0;
- var $5993 = 0, $5994 = 0, $5995 = 0, $5996 = 0, $5997 = 0, $5998 = 0, $5999 = 
0, $6 = 0, $60 = 0, $600 = 0, $6000 = 0, $6001 = 0, $6002 = 0, $6003 = 0, $6004 
= 0, $6005 = 0, $6006 = 0, $6007 = 0, $6008 = 0, $6009 = 0;
- var $601 = 0, $6010 = 0, $6011 = 0, $6012 = 0, $6013 = 0, $6014 = 0, $6015 = 
0, $6016 = 0, $6017 = 0, $6018 = 0, $6019 = 0, $602 = 0, $6020 = 0, $6021 = 0, 
$6022 = 0, $6023 = 0, $6024 = 0, $6025 = 0, $6026 = 0, $6027 = 0;
- var $6028 = 0, $6029 = 0, $603 = 0, $6030 = 0, $6031 = 0, $6032 = 0, $6033 = 
0, $6034 = 0, $6035 = 0, $6036 = 0, $6037 = 0, $6038 = 0, $6039 = 0, $604 = 0, 
$6040 = 0, $6041 = 0, $6042 = 0, $6043 = 0, $6044 = 0, $6045 = 0;
- var $6046 = 0, $6047 = 0, $6048 = 0, $6049 = 0, $605 = 0, $6050 = 0, $6051 = 
0, $6052 = 0, $6053 = 0, $6054 = 0, $6055 = 0, $6056 = 0, $6057 = 0, $6058 = 0, 
$6059 = 0, $606 = 0, $6060 = 0, $6061 = 0, $6062 = 0, $6063 = 0;
- var $6064 = 0, $6065 = 0, $6066 = 0, $6067 = 0, $6068 = 0, $6069 = 0, $607 = 
0, $6070 = 0, $6071 = 0, $6072 = 0, $6073 = 0, $6074 = 0, $6075 = 0, $6076 = 0, 
$6077 = 0, $6078 = 0, $6079 = 0, $608 = 0, $6080 = 0, $6081 = 0;
- var $6082 = 0, $6083 = 0, $6084 = 0, $6085 = 0, $6086 = 0, $6087 = 0, $6088 = 
0, $6089 = 0, $609 = 0, $6090 = 0, $6091 = 0, $6092 = 0, $6093 = 0, $6094 = 0, 
$6095 = 0, $6096 = 0, $6097 = 0, $6098 = 0, $6099 = 0, $61 = 0;
- var $610 = 0, $6100 = 0, $6101 = 0, $6102 = 0, $6103 = 0, $6104 = 0, $6105 = 
0, $6106 = 0, $6107 = 0, $6108 = 0, $6109 = 0, $611 = 0, $6110 = 0, $6111 = 0, 
$6112 = 0, $6113 = 0, $6114 = 0, $6115 = 0, $6116 = 0, $6117 = 0;
- var $6118 = 0, $6119 = 0, $612 = 0, $6120 = 0, $6121 = 0, $6122 = 0, $6123 = 
0, $6124 = 0, $6125 = 0, $6126 = 0, $6127 = 0, $6128 = 0, $6129 = 0, $613 = 0, 
$6130 = 0, $6131 = 0, $6132 = 0, $6133 = 0, $6134 = 0, $6135 = 0;
- var $6136 = 0, $6137 = 0, $6138 = 0, $6139 = 0, $614 = 0, $6140 = 0, $6141 = 
0, $6142 = 0, $6143 = 0, $6144 = 0, $6145 = 0, $6146 = 0, $6147 = 0, $6148 = 0, 
$6149 = 0, $615 = 0, $6150 = 0, $6151 = 0, $6152 = 0, $6153 = 0;
- var $6154 = 0, $6155 = 0, $6156 = 0, $6157 = 0, $6158 = 0, $6159 = 0, $616 = 
0, $6160 = 0, $6161 = 0, $6162 = 0, $6163 = 0, $6164 = 0, $6165 = 0, $6166 = 0, 
$6167 = 0, $6168 = 0, $6169 = 0, $617 = 0, $6170 = 0, $6171 = 0;
- var $6172 = 0, $6173 = 0, $6174 = 0, $6175 = 0, $6176 = 0, $6177 = 0, $6178 = 
0, $6179 = 0, $618 = 0, $6180 = 0, $6181 = 0, $6182 = 0, $6183 = 0, $6184 = 0, 
$6185 = 0, $6186 = 0, $6187 = 0, $6188 = 0, $6189 = 0, $619 = 0;
- var $6190 = 0, $6191 = 0, $6192 = 0, $6193 = 0, $6194 = 0, $6195 = 0, $6196 = 
0, $6197 = 0, $6198 = 0, $6199 = 0, $62 = 0, $620 = 0, $6200 = 0, $6201 = 0, 
$6202 = 0, $6203 = 0, $6204 = 0, $6205 = 0, $6206 = 0, $6207 = 0;
- var $6208 = 0, $6209 = 0, $621 = 0, $6210 = 0, $6211 = 0, $6212 = 0, $6213 = 
0, $6214 = 0, $6215 = 0, $6216 = 0, $6217 = 0, $6218 = 0, $6219 = 0, $622 = 0, 
$6220 = 0, $6221 = 0, $6222 = 0, $6223 = 0, $6224 = 0, $6225 = 0;
- var $6226 = 0, $6227 = 0, $6228 = 0, $6229 = 0, $623 = 0, $6230 = 0, $6231 = 
0, $6232 = 0, $6233 = 0, $6234 = 0, $6235 = 0, $6236 = 0, $6237 = 0, $6238 = 0, 
$6239 = 0, $624 = 0, $6240 = 0, $6241 = 0, $6242 = 0, $6243 = 0;
- var $6244 = 0, $6245 = 0, $6246 = 0, $6247 = 0, $6248 = 0, $6249 = 0, $625 = 
0, $6250 = 0, $6251 = 0, $6252 = 0, $6253 = 0, $6254 = 0, $6255 = 0, $6256 = 0, 
$6257 = 0, $6258 = 0, $6259 = 0, $626 = 0, $6260 = 0, $6261 = 0;
- var $6262 = 0, $6263 = 0, $6264 = 0, $6265 = 0, $6266 = 0, $6267 = 0, $6268 = 
0, $6269 = 0, $627 = 0, $6270 = 0, $6271 = 0, $6272 = 0, $6273 = 0, $6274 = 0, 
$6275 = 0, $6276 = 0, $6277 = 0, $6278 = 0, $6279 = 0, $628 = 0;
- var $6280 = 0, $6281 = 0, $6282 = 0, $6283 = 0, $6284 = 0, $6285 = 0, $6286 = 
0, $6287 = 0, $6288 = 0, $6289 = 0, $629 = 0, $6290 = 0, $6291 = 0, $6292 = 0, 
$6293 = 0, $6294 = 0, $6295 = 0, $6296 = 0, $6297 = 0, $6298 = 0;
- var $6299 = 0, $63 = 0, $630 = 0, $6300 = 0, $6301 = 0, $6302 = 0, $6303 = 0, 
$6304 = 0, $6305 = 0, $6306 = 0, $6307 = 0, $6308 = 0, $6309 = 0, $631 = 0, 
$6310 = 0, $6311 = 0, $6312 = 0, $6313 = 0, $6314 = 0, $632 = 0;
- var $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 
= 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 
= 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0;
- var $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, 
$658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, 
$665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0;
- var $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 
= 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 
= 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0;
- var $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 
= 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 
0, $701 = 0, $702 = 0, $703 = 0, $704 = 0;
- var $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 
= 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 
= 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0;
- var $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 
= 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 
= 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0;
- var $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, 
$748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, 
$755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0;
- var $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 
= 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 
= 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0;
- var $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 
= 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 
= 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0;
- var $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 
0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 
0, $81 = 0, $810 = 0, $811 = 0, $812 = 0;
- var $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 
= 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 
= 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0;
- var $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, 
$838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, 
$845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0;
- var $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 
= 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 
= 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0;
- var $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 
= 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 
= 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0;
- var $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 
= 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 
0, $90 = 0, $900 = 0, $901 = 0, $902 = 0;
- var $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 
= 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 
= 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0;
- var $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, 
$928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, 
$935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0;
- var $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 
= 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 
= 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0;
- var $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 
= 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 
= 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0;
- var $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 
= 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 
= 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0;
- var $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $exitcond = 
0, $exitcond1921 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 4288|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(4288|0);
- $vararg_buffer = sp + 16|0;
- $3 = sp + 24|0;
- $4 = sp;
- $5 = (($2) + -16)|0;
- $6 = $5 | 16;
- $7 = ($6|0)==(16);
- if (!($7)) {
-  $$01913 = 44;
-  STACKTOP = sp;return ($$01913|0);
- }
- $8 = HEAP32[18118]|0;
- $9 = ($8|0)==(0);
- do {
-  if ($9) {
-   HEAP32[18118] = 1;
-   (_do_twofish_setkey($3,8800,16)|0);
-   ___gcry_burn_stack(47);
-   (_twofish_encrypt($3,$4,8816)|0);
-   $10 = (_memcmp($4,8832,16)|0);
-   $11 = ($10|0)==(0);
-   if ($11) {
-    (_twofish_decrypt($3,$4,$4)|0);
-    $12 = (_memcmp($4,8816,16)|0);
-    $13 = ($12|0)==(0);
-    if ($13) {
-     (_do_twofish_setkey($3,8848,32)|0);
-     ___gcry_burn_stack(47);
-     (_twofish_encrypt($3,$4,8880)|0);
-     $14 = (_memcmp($4,8896,16)|0);
-     $15 = ($14|0)==(0);
-     if ($15) {
-      (_twofish_decrypt($3,$4,$4)|0);
-      $16 = (_memcmp($4,8880,16)|0);
-      $17 = ($16|0)==(0);
-      if ($17) {
-       $18 = (__gcry_selftest_helper_ctr(63524,32,33,70,4,16,4256)|0);
-       $19 = ($18|0)==(0|0);
-       if ($19) {
-        $20 = (__gcry_selftest_helper_cbc(63524,32,33,68,5,16,4256)|0);
-        $21 = ($20|0)==(0|0);
-        if ($21) {
-         $22 = (__gcry_selftest_helper_cfb(63524,32,33,69,5,16,4256)|0);
-         HEAP32[18119] = $22;
-         $23 = ($22|0)==(0|0);
-         if ($23) {
-          break;
-         } else {
-          $$0$i1914 = $22;
-         }
-        } else {
-         $$0$i$ph = $20;
-         label = 9;
-        }
-       } else {
-        $$0$i$ph = $18;
-        label = 9;
-       }
-      } else {
-       $$0$i$ph = 63532;
-       label = 9;
-      }
-     } else {
-      $$0$i$ph = 63568;
-      label = 9;
-     }
-    } else {
-     $$0$i$ph = 63604;
-     label = 9;
-    }
-   } else {
-    $$0$i$ph = 63640;
-    label = 9;
-   }
-   if ((label|0) == 9) {
-    HEAP32[18119] = $$0$i$ph;
-    $$0$i1914 = $$0$i$ph;
-   }
-   HEAP32[$vararg_buffer>>2] = $$0$i1914;
-   __gcry_log_error(63676,$vararg_buffer);
-   label = 12;
-  } else {
-   label = 12;
-  }
- } while(0);
- if ((label|0) == 12) {
-  $$pr = HEAP32[18119]|0;
-  $24 = ($$pr|0)==(0|0);
-  if (!($24)) {
-   $$01913 = 50;
-   STACKTOP = sp;return ($$01913|0);
-  }
- }
- $25 = HEAP8[$1>>0]|0;
- $26 = ($25<<24>>24)==(0);
- if ($26) {
-  $$01883 = 0;$$01891 = 0;$$01899 = 0;
- } else {
-  $27 = $25&255;
-  $28 = (($27) + -1)|0;
-  $29 = (8912 + ($28)|0);
-  $30 = HEAP8[$29>>0]|0;
-  $31 = $30&255;
-  $32 = (9168 + ($31)|0);
-  $33 = HEAP8[$32>>0]|0;
-  $34 = (($31) + 45)|0;
-  $35 = (9168 + ($34)|0);
-  $36 = HEAP8[$35>>0]|0;
-  $37 = (($31) + 1)|0;
-  $38 = (9168 + ($37)|0);
-  $39 = HEAP8[$38>>0]|0;
-  $$01883 = $39;$$01891 = $36;$$01899 = $33;
- }
- $40 = ((($1)) + 1|0);
- $41 = HEAP8[$40>>0]|0;
- $42 = ($41<<24>>24)==(0);
- if ($42) {
-  $$11876 = $$01891;$$11884 = $$01883;$$11892 = $$01891;$$11900 = $$01899;
- } else {
-  $43 = $41&255;
-  $44 = (($43) + -1)|0;
-  $45 = (8912 + ($44)|0);
-  $46 = HEAP8[$45>>0]|0;
-  $47 = $46&255;
-  $48 = (($47) + 45)|0;
-  $49 = (9168 + ($48)|0);
-  $50 = HEAP8[$49>>0]|0;
-  $51 = $50 ^ $$01899;
-  $52 = (($47) + 164)|0;
-  $53 = (9168 + ($52)|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = $54 ^ $$01891;
-  $56 = (($47) + 68)|0;
-  $57 = (9168 + ($56)|0);
-  $58 = HEAP8[$57>>0]|0;
-  $59 = $58 ^ $$01883;
-  $60 = (($47) + 138)|0;
-  $61 = (9168 + ($60)|0);
-  $62 = HEAP8[$61>>0]|0;
-  $63 = $62 ^ $$01891;
-  $$11876 = $63;$$11884 = $59;$$11892 = $55;$$11900 = $51;
- }
- $64 = ((($1)) + 2|0);
- $65 = HEAP8[$64>>0]|0;
- $66 = ($65<<24>>24)==(0);
- if ($66) {
-  $$21877 = $$11876;$$21885 = $$11884;$$21893 = $$11892;$$21901 = $$11900;
- } else {
-  $67 = $65&255;
-  $68 = (($67) + -1)|0;
-  $69 = (8912 + ($68)|0);
-  $70 = HEAP8[$69>>0]|0;
-  $71 = $70&255;
-  $72 = (($71) + 138)|0;
-  $73 = (9168 + ($72)|0);
-  $74 = HEAP8[$73>>0]|0;
-  $75 = $74 ^ $$11900;
-  $76 = (($71) + 213)|0;
-  $77 = (9168 + ($76)|0);
-  $78 = HEAP8[$77>>0]|0;
-  $79 = $78 ^ $$11892;
-  $80 = (($71) + 191)|0;
-  $81 = (9168 + ($80)|0);
-  $82 = HEAP8[$81>>0]|0;
-  $83 = $82 ^ $$11884;
-  $84 = (($71) + 209)|0;
-  $85 = (9168 + ($84)|0);
-  $86 = HEAP8[$85>>0]|0;
-  $87 = $86 ^ $$11876;
-  $$21877 = $87;$$21885 = $83;$$21893 = $79;$$21901 = $75;
- }
- $88 = ((($1)) + 3|0);
- $89 = HEAP8[$88>>0]|0;
- $90 = ($89<<24>>24)==(0);
- if ($90) {
-  $$31878 = $$21877;$$31886 = $$21885;$$31894 = $$21893;$$31902 = $$21901;
- } else {
-  $91 = $89&255;
-  $92 = (($91) + -1)|0;
-  $93 = (8912 + ($92)|0);
-  $94 = HEAP8[$93>>0]|0;
-  $95 = $94&255;
-  $96 = (($95) + 209)|0;
-  $97 = (9168 + ($96)|0);
-  $98 = HEAP8[$97>>0]|0;
-  $99 = $98 ^ $$21901;
-  $100 = (($95) + 127)|0;
-  $101 = (9168 + ($100)|0);
-  $102 = HEAP8[$101>>0]|0;
-  $103 = $102 ^ $$21893;
-  $104 = (($95) + 61)|0;
-  $105 = (9168 + ($104)|0);
-  $106 = HEAP8[$105>>0]|0;
-  $107 = $106 ^ $$21885;
-  $108 = (($95) + 153)|0;
-  $109 = (9168 + ($108)|0);
-  $110 = HEAP8[$109>>0]|0;
-  $111 = $110 ^ $$21877;
-  $$31878 = $111;$$31886 = $107;$$31894 = $103;$$31902 = $99;
- }
- $112 = ((($1)) + 4|0);
- $113 = HEAP8[$112>>0]|0;
- $114 = ($113<<24>>24)==(0);
- if ($114) {
-  $$41879 = $$31878;$$41887 = $$31886;$$41895 = $$31894;$$41903 = $$31902;
- } else {
-  $115 = $113&255;
-  $116 = (($115) + -1)|0;
-  $117 = (8912 + ($116)|0);
-  $118 = HEAP8[$117>>0]|0;
-  $119 = $118&255;
-  $120 = (($119) + 153)|0;
-  $121 = (9168 + ($120)|0);
-  $122 = HEAP8[$121>>0]|0;
-  $123 = $122 ^ $$31902;
-  $124 = (($119) + 70)|0;
-  $125 = (9168 + ($124)|0);
-  $126 = HEAP8[$125>>0]|0;
-  $127 = $126 ^ $$31894;
-  $128 = (($119) + 102)|0;
-  $129 = (9168 + ($128)|0);
-  $130 = HEAP8[$129>>0]|0;
-  $131 = $130 ^ $$31886;
-  $132 = (($119) + 150)|0;
-  $133 = (9168 + ($132)|0);
-  $134 = HEAP8[$133>>0]|0;
-  $135 = $134 ^ $$31878;
-  $$41879 = $135;$$41887 = $131;$$41895 = $127;$$41903 = $123;
- }
- $136 = ((($1)) + 5|0);
- $137 = HEAP8[$136>>0]|0;
- $138 = ($137<<24>>24)==(0);
- if ($138) {
-  $$51880 = $$41879;$$51888 = $$41887;$$51896 = $$41895;$$51904 = $$41903;
- } else {
-  $139 = $137&255;
-  $140 = (($139) + -1)|0;
-  $141 = (8912 + ($140)|0);
-  $142 = HEAP8[$141>>0]|0;
-  $143 = $142&255;
-  $144 = (($143) + 150)|0;
-  $145 = (9168 + ($144)|0);
-  $146 = HEAP8[$145>>0]|0;
-  $147 = $146 ^ $$41903;
-  $148 = (($143) + 60)|0;
-  $149 = (9168 + ($148)|0);
-  $150 = HEAP8[$149>>0]|0;
-  $151 = $150 ^ $$41895;
-  $152 = (($143) + 91)|0;
-  $153 = (9168 + ($152)|0);
-  $154 = HEAP8[$153>>0]|0;
-  $155 = $154 ^ $$41887;
-  $156 = (($143) + 237)|0;
-  $157 = (9168 + ($156)|0);
-  $158 = HEAP8[$157>>0]|0;
-  $159 = $158 ^ $$41879;
-  $$51880 = $159;$$51888 = $155;$$51896 = $151;$$51904 = $147;
- }
- $160 = ((($1)) + 6|0);
- $161 = HEAP8[$160>>0]|0;
- $162 = ($161<<24>>24)==(0);
- if ($162) {
-  $$61881 = $$51880;$$61889 = $$51888;$$61897 = $$51896;$$61905 = $$51904;
- } else {
-  $163 = $161&255;
-  $164 = (($163) + -1)|0;
-  $165 = (8912 + ($164)|0);
-  $166 = HEAP8[$165>>0]|0;
-  $167 = $166&255;
-  $168 = (($167) + 237)|0;
-  $169 = (9168 + ($168)|0);
-  $170 = HEAP8[$169>>0]|0;
-  $171 = $170 ^ $$51904;
-  $172 = (($167) + 55)|0;
-  $173 = (9168 + ($172)|0);
-  $174 = HEAP8[$173>>0]|0;
-  $175 = $174 ^ $$51896;
-  $176 = (($167) + 79)|0;
-  $177 = (9168 + ($176)|0);
-  $178 = HEAP8[$177>>0]|0;
-  $179 = $178 ^ $$51888;
-  $180 = (($167) + 224)|0;
-  $181 = (9168 + ($180)|0);
-  $182 = HEAP8[$181>>0]|0;
-  $183 = $182 ^ $$51880;
-  $$61881 = $183;$$61889 = $179;$$61897 = $175;$$61905 = $171;
- }
- $184 = ((($1)) + 7|0);
- $185 = HEAP8[$184>>0]|0;
- $186 = ($185<<24>>24)==(0);
- if ($186) {
-  $$71882 = $$61881;$$71890 = $$61889;$$71898 = $$61897;$$71906 = $$61905;
- } else {
-  $187 = $185&255;
-  $188 = (($187) + -1)|0;
-  $189 = (8912 + ($188)|0);
-  $190 = HEAP8[$189>>0]|0;
-  $191 = $190&255;
-  $192 = (($191) + 224)|0;
-  $193 = (9168 + ($192)|0);
-  $194 = HEAP8[$193>>0]|0;
-  $195 = $194 ^ $$61905;
-  $196 = (($191) + 208)|0;
-  $197 = (9168 + ($196)|0);
-  $198 = HEAP8[$197>>0]|0;
-  $199 = $198 ^ $$61897;
-  $200 = (($191) + 140)|0;
-  $201 = (9168 + ($200)|0);
-  $202 = HEAP8[$201>>0]|0;
-  $203 = $202 ^ $$61889;
-  $204 = (($191) + 23)|0;
-  $205 = (9168 + ($204)|0);
-  $206 = HEAP8[$205>>0]|0;
-  $207 = $206 ^ $$61881;
-  $$71882 = $207;$$71890 = $203;$$71898 = $199;$$71906 = $195;
- }
- $208 = ((($1)) + 8|0);
- $209 = HEAP8[$208>>0]|0;
- $210 = ($209<<24>>24)==(0);
- if ($210) {
-  $$01851 = 0;$$01859 = 0;$$01867 = 0;
- } else {
-  $211 = $209&255;
-  $212 = (($211) + -1)|0;
-  $213 = (8912 + ($212)|0);
-  $214 = HEAP8[$213>>0]|0;
-  $215 = $214&255;
-  $216 = (9168 + ($215)|0);
-  $217 = HEAP8[$216>>0]|0;
-  $218 = (($215) + 45)|0;
-  $219 = (9168 + ($218)|0);
-  $220 = HEAP8[$219>>0]|0;
-  $221 = (($215) + 1)|0;
-  $222 = (9168 + ($221)|0);
-  $223 = HEAP8[$222>>0]|0;
-  $$01851 = $223;$$01859 = $220;$$01867 = $217;
- }
- $224 = ((($1)) + 9|0);
- $225 = HEAP8[$224>>0]|0;
- $226 = ($225<<24>>24)==(0);
- if ($226) {
-  $$11844 = $$01859;$$11852 = $$01851;$$11860 = $$01859;$$11868 = $$01867;
- } else {
-  $227 = $225&255;
-  $228 = (($227) + -1)|0;
-  $229 = (8912 + ($228)|0);
-  $230 = HEAP8[$229>>0]|0;
-  $231 = $230&255;
-  $232 = (($231) + 45)|0;
-  $233 = (9168 + ($232)|0);
-  $234 = HEAP8[$233>>0]|0;
-  $235 = $234 ^ $$01867;
-  $236 = (($231) + 164)|0;
-  $237 = (9168 + ($236)|0);
-  $238 = HEAP8[$237>>0]|0;
-  $239 = $238 ^ $$01859;
-  $240 = (($231) + 68)|0;
-  $241 = (9168 + ($240)|0);
-  $242 = HEAP8[$241>>0]|0;
-  $243 = $242 ^ $$01851;
-  $244 = (($231) + 138)|0;
-  $245 = (9168 + ($244)|0);
-  $246 = HEAP8[$245>>0]|0;
-  $247 = $246 ^ $$01859;
-  $$11844 = $247;$$11852 = $243;$$11860 = $239;$$11868 = $235;
- }
- $248 = ((($1)) + 10|0);
- $249 = HEAP8[$248>>0]|0;
- $250 = ($249<<24>>24)==(0);
- if ($250) {
-  $$21845 = $$11844;$$21853 = $$11852;$$21861 = $$11860;$$21869 = $$11868;
- } else {
-  $251 = $249&255;
-  $252 = (($251) + -1)|0;
-  $253 = (8912 + ($252)|0);
-  $254 = HEAP8[$253>>0]|0;
-  $255 = $254&255;
-  $256 = (($255) + 138)|0;
-  $257 = (9168 + ($256)|0);
-  $258 = HEAP8[$257>>0]|0;
-  $259 = $258 ^ $$11868;
-  $260 = (($255) + 213)|0;
-  $261 = (9168 + ($260)|0);
-  $262 = HEAP8[$261>>0]|0;
-  $263 = $262 ^ $$11860;
-  $264 = (($255) + 191)|0;
-  $265 = (9168 + ($264)|0);
-  $266 = HEAP8[$265>>0]|0;
-  $267 = $266 ^ $$11852;
-  $268 = (($255) + 209)|0;
-  $269 = (9168 + ($268)|0);
-  $270 = HEAP8[$269>>0]|0;
-  $271 = $270 ^ $$11844;
-  $$21845 = $271;$$21853 = $267;$$21861 = $263;$$21869 = $259;
- }
- $272 = ((($1)) + 11|0);
- $273 = HEAP8[$272>>0]|0;
- $274 = ($273<<24>>24)==(0);
- if ($274) {
-  $$31846 = $$21845;$$31854 = $$21853;$$31862 = $$21861;$$31870 = $$21869;
- } else {
-  $275 = $273&255;
-  $276 = (($275) + -1)|0;
-  $277 = (8912 + ($276)|0);
-  $278 = HEAP8[$277>>0]|0;
-  $279 = $278&255;
-  $280 = (($279) + 209)|0;
-  $281 = (9168 + ($280)|0);
-  $282 = HEAP8[$281>>0]|0;
-  $283 = $282 ^ $$21869;
-  $284 = (($279) + 127)|0;
-  $285 = (9168 + ($284)|0);
-  $286 = HEAP8[$285>>0]|0;
-  $287 = $286 ^ $$21861;
-  $288 = (($279) + 61)|0;
-  $289 = (9168 + ($288)|0);
-  $290 = HEAP8[$289>>0]|0;
-  $291 = $290 ^ $$21853;
-  $292 = (($279) + 153)|0;
-  $293 = (9168 + ($292)|0);
-  $294 = HEAP8[$293>>0]|0;
-  $295 = $294 ^ $$21845;
-  $$31846 = $295;$$31854 = $291;$$31862 = $287;$$31870 = $283;
- }
- $296 = ((($1)) + 12|0);
- $297 = HEAP8[$296>>0]|0;
- $298 = ($297<<24>>24)==(0);
- if ($298) {
-  $$41847 = $$31846;$$41855 = $$31854;$$41863 = $$31862;$$41871 = $$31870;
- } else {
-  $299 = $297&255;
-  $300 = (($299) + -1)|0;
-  $301 = (8912 + ($300)|0);
-  $302 = HEAP8[$301>>0]|0;
-  $303 = $302&255;
-  $304 = (($303) + 153)|0;
-  $305 = (9168 + ($304)|0);
-  $306 = HEAP8[$305>>0]|0;
-  $307 = $306 ^ $$31870;
-  $308 = (($303) + 70)|0;
-  $309 = (9168 + ($308)|0);
-  $310 = HEAP8[$309>>0]|0;
-  $311 = $310 ^ $$31862;
-  $312 = (($303) + 102)|0;
-  $313 = (9168 + ($312)|0);
-  $314 = HEAP8[$313>>0]|0;
-  $315 = $314 ^ $$31854;
-  $316 = (($303) + 150)|0;
-  $317 = (9168 + ($316)|0);
-  $318 = HEAP8[$317>>0]|0;
-  $319 = $318 ^ $$31846;
-  $$41847 = $319;$$41855 = $315;$$41863 = $311;$$41871 = $307;
- }
- $320 = ((($1)) + 13|0);
- $321 = HEAP8[$320>>0]|0;
- $322 = ($321<<24>>24)==(0);
- if ($322) {
-  $$51848 = $$41847;$$51856 = $$41855;$$51864 = $$41863;$$51872 = $$41871;
- } else {
-  $323 = $321&255;
-  $324 = (($323) + -1)|0;
-  $325 = (8912 + ($324)|0);
-  $326 = HEAP8[$325>>0]|0;
-  $327 = $326&255;
-  $328 = (($327) + 150)|0;
-  $329 = (9168 + ($328)|0);
-  $330 = HEAP8[$329>>0]|0;
-  $331 = $330 ^ $$41871;
-  $332 = (($327) + 60)|0;
-  $333 = (9168 + ($332)|0);
-  $334 = HEAP8[$333>>0]|0;
-  $335 = $334 ^ $$41863;
-  $336 = (($327) + 91)|0;
-  $337 = (9168 + ($336)|0);
-  $338 = HEAP8[$337>>0]|0;
-  $339 = $338 ^ $$41855;
-  $340 = (($327) + 237)|0;
-  $341 = (9168 + ($340)|0);
-  $342 = HEAP8[$341>>0]|0;
-  $343 = $342 ^ $$41847;
-  $$51848 = $343;$$51856 = $339;$$51864 = $335;$$51872 = $331;
- }
- $344 = ((($1)) + 14|0);
- $345 = HEAP8[$344>>0]|0;
- $346 = ($345<<24>>24)==(0);
- if ($346) {
-  $$61849 = $$51848;$$61857 = $$51856;$$61865 = $$51864;$$61873 = $$51872;
- } else {
-  $347 = $345&255;
-  $348 = (($347) + -1)|0;
-  $349 = (8912 + ($348)|0);
-  $350 = HEAP8[$349>>0]|0;
-  $351 = $350&255;
-  $352 = (($351) + 237)|0;
-  $353 = (9168 + ($352)|0);
-  $354 = HEAP8[$353>>0]|0;
-  $355 = $354 ^ $$51872;
-  $356 = (($351) + 55)|0;
-  $357 = (9168 + ($356)|0);
-  $358 = HEAP8[$357>>0]|0;
-  $359 = $358 ^ $$51864;
-  $360 = (($351) + 79)|0;
-  $361 = (9168 + ($360)|0);
-  $362 = HEAP8[$361>>0]|0;
-  $363 = $362 ^ $$51856;
-  $364 = (($351) + 224)|0;
-  $365 = (9168 + ($364)|0);
-  $366 = HEAP8[$365>>0]|0;
-  $367 = $366 ^ $$51848;
-  $$61849 = $367;$$61857 = $363;$$61865 = $359;$$61873 = $355;
- }
- $368 = ((($1)) + 15|0);
- $369 = HEAP8[$368>>0]|0;
- $370 = ($369<<24>>24)==(0);
- if ($370) {
-  $$71850 = $$61849;$$71858 = $$61857;$$71866 = $$61865;$$71874 = $$61873;
- } else {
-  $371 = $369&255;
-  $372 = (($371) + -1)|0;
-  $373 = (8912 + ($372)|0);
-  $374 = HEAP8[$373>>0]|0;
-  $375 = $374&255;
-  $376 = (($375) + 224)|0;
-  $377 = (9168 + ($376)|0);
-  $378 = HEAP8[$377>>0]|0;
-  $379 = $378 ^ $$61873;
-  $380 = (($375) + 208)|0;
-  $381 = (9168 + ($380)|0);
-  $382 = HEAP8[$381>>0]|0;
-  $383 = $382 ^ $$61865;
-  $384 = (($375) + 140)|0;
-  $385 = (9168 + ($384)|0);
-  $386 = HEAP8[$385>>0]|0;
-  $387 = $386 ^ $$61857;
-  $388 = (($375) + 23)|0;
-  $389 = (9168 + ($388)|0);
-  $390 = HEAP8[$389>>0]|0;
-  $391 = $390 ^ $$61849;
-  $$71850 = $391;$$71858 = $387;$$71866 = $383;$$71874 = $379;
- }
- $392 = ($2|0)==(32);
- if (!($392)) {
-  $$119081920 = 1;$$119101919 = 0;$$119121918 = 0;
-  while(1) {
-   $4354 = (9664 + ($$119101919)|0);
-   $4355 = HEAP8[$4354>>0]|0;
-   $4356 = $4355 ^ $$71906;
-   $4357 = $4356&255;
-   $4358 = (10432 + ($4357)|0);
-   $4359 = HEAP8[$4358>>0]|0;
-   $4360 = $4359 ^ $$71874;
-   $4361 = $4360&255;
-   $4362 = (10688 + ($4361<<2)|0);
-   $4363 = HEAP32[$4362>>2]|0;
-   $4364 = (($0) + ($$119121918<<2)|0);
-   HEAP32[$4364>>2] = $4363;
-   $4365 = (9664 + ($$119081920)|0);
-   $4366 = HEAP8[$4365>>0]|0;
-   $4367 = $4366 ^ $$71898;
-   $4368 = $4367&255;
-   $4369 = (10432 + ($4368)|0);
-   $4370 = HEAP8[$4369>>0]|0;
-   $4371 = $4370 ^ $$71866;
-   $4372 = $4371&255;
-   $4373 = (11712 + ($4372<<2)|0);
-   $4374 = HEAP32[$4373>>2]|0;
-   $4375 = (((($0)) + 1024|0) + ($$119121918<<2)|0);
-   HEAP32[$4375>>2] = $4374;
-   $4376 = $4355 ^ $$71890;
-   $4377 = $4376&255;
-   $4378 = (10176 + ($4377)|0);
-   $4379 = HEAP8[$4378>>0]|0;
-   $4380 = $4379 ^ $$71858;
-   $4381 = $4380&255;
-   $4382 = (12736 + ($4381<<2)|0);
-   $4383 = HEAP32[$4382>>2]|0;
-   $4384 = (((($0)) + 2048|0) + ($$119121918<<2)|0);
-   HEAP32[$4384>>2] = $4383;
-   $4385 = $4366 ^ $$71882;
-   $4386 = $4385&255;
-   $4387 = (10176 + ($4386)|0);
-   $4388 = HEAP8[$4387>>0]|0;
-   $4389 = $4388 ^ $$71850;
-   $4390 = $4389&255;
-   $4391 = (13760 + ($4390<<2)|0);
-   $4392 = HEAP32[$4391>>2]|0;
-   $4393 = (((($0)) + 3072|0) + ($$119121918<<2)|0);
-   HEAP32[$4393>>2] = $4392;
-   $4394 = (($$119121918) + 1)|0;
-   $4395 = (($$119101919) + 2)|0;
-   $4396 = (($$119081920) + 2)|0;
-   $exitcond1921 = ($4394|0)==(256);
-   if ($exitcond1921) {
-    break;
-   } else {
-    $$119081920 = $4396;$$119101919 = $4395;$$119121918 = $4394;
-   }
-  }
-  $4397 = HEAP8[$208>>0]|0;
-  $4398 = $4397 ^ -87;
-  $4399 = $4398&255;
-  $4400 = (10432 + ($4399)|0);
-  $4401 = HEAP8[$4400>>0]|0;
-  $4402 = HEAP8[$1>>0]|0;
-  $4403 = $4402 ^ $4401;
-  $4404 = $4403&255;
-  $4405 = (10688 + ($4404<<2)|0);
-  $4406 = HEAP32[$4405>>2]|0;
-  $4407 = HEAP8[$224>>0]|0;
-  $4408 = $4407 ^ 117;
-  $4409 = $4408&255;
-  $4410 = (10432 + ($4409)|0);
-  $4411 = HEAP8[$4410>>0]|0;
-  $4412 = HEAP8[$40>>0]|0;
-  $4413 = $4412 ^ $4411;
-  $4414 = $4413&255;
-  $4415 = (11712 + ($4414<<2)|0);
-  $4416 = HEAP32[$4415>>2]|0;
-  $4417 = $4416 ^ $4406;
-  $4418 = HEAP8[$248>>0]|0;
-  $4419 = $4418 ^ -87;
-  $4420 = $4419&255;
-  $4421 = (10176 + ($4420)|0);
-  $4422 = HEAP8[$4421>>0]|0;
-  $4423 = HEAP8[$64>>0]|0;
-  $4424 = $4423 ^ $4422;
-  $4425 = $4424&255;
-  $4426 = (12736 + ($4425<<2)|0);
-  $4427 = HEAP32[$4426>>2]|0;
-  $4428 = $4417 ^ $4427;
-  $4429 = HEAP8[$272>>0]|0;
-  $4430 = $4429 ^ 117;
-  $4431 = $4430&255;
-  $4432 = (10176 + ($4431)|0);
-  $4433 = HEAP8[$4432>>0]|0;
-  $4434 = HEAP8[$88>>0]|0;
-  $4435 = $4434 ^ $4433;
-  $4436 = $4435&255;
-  $4437 = (13760 + ($4436<<2)|0);
-  $4438 = HEAP32[$4437>>2]|0;
-  $4439 = $4428 ^ $4438;
-  $4440 = HEAP8[$296>>0]|0;
-  $4441 = $4440 ^ 103;
-  $4442 = $4441&255;
-  $4443 = (10432 + ($4442)|0);
-  $4444 = HEAP8[$4443>>0]|0;
-  $4445 = HEAP8[$112>>0]|0;
-  $4446 = $4445 ^ $4444;
-  $4447 = $4446&255;
-  $4448 = (10688 + ($4447<<2)|0);
-  $4449 = HEAP32[$4448>>2]|0;
-  $4450 = HEAP8[$320>>0]|0;
-  $4451 = $4450 ^ -13;
-  $4452 = $4451&255;
-  $4453 = (10432 + ($4452)|0);
-  $4454 = HEAP8[$4453>>0]|0;
-  $4455 = HEAP8[$136>>0]|0;
-  $4456 = $4455 ^ $4454;
-  $4457 = $4456&255;
-  $4458 = (11712 + ($4457<<2)|0);
-  $4459 = HEAP32[$4458>>2]|0;
-  $4460 = $4459 ^ $4449;
-  $4461 = HEAP8[$344>>0]|0;
-  $4462 = $4461 ^ 103;
-  $4463 = $4462&255;
-  $4464 = (10176 + ($4463)|0);
-  $4465 = HEAP8[$4464>>0]|0;
-  $4466 = HEAP8[$160>>0]|0;
-  $4467 = $4466 ^ $4465;
-  $4468 = $4467&255;
-  $4469 = (12736 + ($4468<<2)|0);
-  $4470 = HEAP32[$4469>>2]|0;
-  $4471 = $4460 ^ $4470;
-  $4472 = HEAP8[$368>>0]|0;
-  $4473 = $4472 ^ -13;
-  $4474 = $4473&255;
-  $4475 = (10176 + ($4474)|0);
-  $4476 = HEAP8[$4475>>0]|0;
-  $4477 = HEAP8[$184>>0]|0;
-  $4478 = $4477 ^ $4476;
-  $4479 = $4478&255;
-  $4480 = (13760 + ($4479<<2)|0);
-  $4481 = HEAP32[$4480>>2]|0;
-  $4482 = $4471 ^ $4481;
-  $4483 = $4482 << 8;
-  $4484 = $4482 >>> 24;
-  $4485 = $4483 | $4484;
-  $4486 = (($4485) + ($4439))|0;
-  $4487 = (($4486) + ($4485))|0;
-  $4488 = ((($0)) + 4096|0);
-  HEAP32[$4488>>2] = $4486;
-  $4489 = $4487 << 9;
-  $4490 = $4487 >>> 23;
-  $4491 = $4489 | $4490;
-  $4492 = ((($0)) + 4100|0);
-  HEAP32[$4492>>2] = $4491;
-  $4493 = HEAP8[$208>>0]|0;
-  $4494 = $4493 ^ -77;
-  $4495 = $4494&255;
-  $4496 = (10432 + ($4495)|0);
-  $4497 = HEAP8[$4496>>0]|0;
-  $4498 = HEAP8[$1>>0]|0;
-  $4499 = $4498 ^ $4497;
-  $4500 = $4499&255;
-  $4501 = (10688 + ($4500<<2)|0);
-  $4502 = HEAP32[$4501>>2]|0;
-  $4503 = HEAP8[$224>>0]|0;
-  $4504 = $4503 ^ -58;
-  $4505 = $4504&255;
-  $4506 = (10432 + ($4505)|0);
-  $4507 = HEAP8[$4506>>0]|0;
-  $4508 = HEAP8[$40>>0]|0;
-  $4509 = $4508 ^ $4507;
-  $4510 = $4509&255;
-  $4511 = (11712 + ($4510<<2)|0);
-  $4512 = HEAP32[$4511>>2]|0;
-  $4513 = $4512 ^ $4502;
-  $4514 = HEAP8[$248>>0]|0;
-  $4515 = $4514 ^ -77;
-  $4516 = $4515&255;
-  $4517 = (10176 + ($4516)|0);
-  $4518 = HEAP8[$4517>>0]|0;
-  $4519 = HEAP8[$64>>0]|0;
-  $4520 = $4519 ^ $4518;
-  $4521 = $4520&255;
-  $4522 = (12736 + ($4521<<2)|0);
-  $4523 = HEAP32[$4522>>2]|0;
-  $4524 = $4513 ^ $4523;
-  $4525 = HEAP8[$272>>0]|0;
-  $4526 = $4525 ^ -58;
-  $4527 = $4526&255;
-  $4528 = (10176 + ($4527)|0);
-  $4529 = HEAP8[$4528>>0]|0;
-  $4530 = HEAP8[$88>>0]|0;
-  $4531 = $4530 ^ $4529;
-  $4532 = $4531&255;
-  $4533 = (13760 + ($4532<<2)|0);
-  $4534 = HEAP32[$4533>>2]|0;
-  $4535 = $4524 ^ $4534;
-  $4536 = HEAP8[$296>>0]|0;
-  $4537 = $4536 ^ -24;
-  $4538 = $4537&255;
-  $4539 = (10432 + ($4538)|0);
-  $4540 = HEAP8[$4539>>0]|0;
-  $4541 = HEAP8[$112>>0]|0;
-  $4542 = $4541 ^ $4540;
-  $4543 = $4542&255;
-  $4544 = (10688 + ($4543<<2)|0);
-  $4545 = HEAP32[$4544>>2]|0;
-  $4546 = HEAP8[$320>>0]|0;
-  $4547 = $4546 ^ -12;
-  $4548 = $4547&255;
-  $4549 = (10432 + ($4548)|0);
-  $4550 = HEAP8[$4549>>0]|0;
-  $4551 = HEAP8[$136>>0]|0;
-  $4552 = $4551 ^ $4550;
-  $4553 = $4552&255;
-  $4554 = (11712 + ($4553<<2)|0);
-  $4555 = HEAP32[$4554>>2]|0;
-  $4556 = $4555 ^ $4545;
-  $4557 = HEAP8[$344>>0]|0;
-  $4558 = $4557 ^ -24;
-  $4559 = $4558&255;
-  $4560 = (10176 + ($4559)|0);
-  $4561 = HEAP8[$4560>>0]|0;
-  $4562 = HEAP8[$160>>0]|0;
-  $4563 = $4562 ^ $4561;
-  $4564 = $4563&255;
-  $4565 = (12736 + ($4564<<2)|0);
-  $4566 = HEAP32[$4565>>2]|0;
-  $4567 = $4556 ^ $4566;
-  $4568 = HEAP8[$368>>0]|0;
-  $4569 = $4568 ^ -12;
-  $4570 = $4569&255;
-  $4571 = (10176 + ($4570)|0);
-  $4572 = HEAP8[$4571>>0]|0;
-  $4573 = HEAP8[$184>>0]|0;
-  $4574 = $4573 ^ $4572;
-  $4575 = $4574&255;
-  $4576 = (13760 + ($4575<<2)|0);
-  $4577 = HEAP32[$4576>>2]|0;
-  $4578 = $4567 ^ $4577;
-  $4579 = $4578 << 8;
-  $4580 = $4578 >>> 24;
-  $4581 = $4579 | $4580;
-  $4582 = (($4581) + ($4535))|0;
-  $4583 = (($4582) + ($4581))|0;
-  $4584 = ((($0)) + 4104|0);
-  HEAP32[$4584>>2] = $4582;
-  $4585 = $4583 << 9;
-  $4586 = $4583 >>> 23;
-  $4587 = $4585 | $4586;
-  $4588 = ((($0)) + 4108|0);
-  HEAP32[$4588>>2] = $4587;
-  $4589 = HEAP8[$208>>0]|0;
-  $4590 = $4589 ^ 4;
-  $4591 = $4590&255;
-  $4592 = (10432 + ($4591)|0);
-  $4593 = HEAP8[$4592>>0]|0;
-  $4594 = HEAP8[$1>>0]|0;
-  $4595 = $4594 ^ $4593;
-  $4596 = $4595&255;
-  $4597 = (10688 + ($4596<<2)|0);
-  $4598 = HEAP32[$4597>>2]|0;
-  $4599 = HEAP8[$224>>0]|0;
-  $4600 = $4599 ^ -37;
-  $4601 = $4600&255;
-  $4602 = (10432 + ($4601)|0);
-  $4603 = HEAP8[$4602>>0]|0;
-  $4604 = HEAP8[$40>>0]|0;
-  $4605 = $4604 ^ $4603;
-  $4606 = $4605&255;
-  $4607 = (11712 + ($4606<<2)|0);
-  $4608 = HEAP32[$4607>>2]|0;
-  $4609 = $4608 ^ $4598;
-  $4610 = HEAP8[$248>>0]|0;
-  $4611 = $4610 ^ 4;
-  $4612 = $4611&255;
-  $4613 = (10176 + ($4612)|0);
-  $4614 = HEAP8[$4613>>0]|0;
-  $4615 = HEAP8[$64>>0]|0;
-  $4616 = $4615 ^ $4614;
-  $4617 = $4616&255;
-  $4618 = (12736 + ($4617<<2)|0);
-  $4619 = HEAP32[$4618>>2]|0;
-  $4620 = $4609 ^ $4619;
-  $4621 = HEAP8[$272>>0]|0;
-  $4622 = $4621 ^ -37;
-  $4623 = $4622&255;
-  $4624 = (10176 + ($4623)|0);
-  $4625 = HEAP8[$4624>>0]|0;
-  $4626 = HEAP8[$88>>0]|0;
-  $4627 = $4626 ^ $4625;
-  $4628 = $4627&255;
-  $4629 = (13760 + ($4628<<2)|0);
-  $4630 = HEAP32[$4629>>2]|0;
-  $4631 = $4620 ^ $4630;
-  $4632 = HEAP8[$296>>0]|0;
-  $4633 = $4632 ^ -3;
-  $4634 = $4633&255;
-  $4635 = (10432 + ($4634)|0);
-  $4636 = HEAP8[$4635>>0]|0;
-  $4637 = HEAP8[$112>>0]|0;
-  $4638 = $4637 ^ $4636;
-  $4639 = $4638&255;
-  $4640 = (10688 + ($4639<<2)|0);
-  $4641 = HEAP32[$4640>>2]|0;
-  $4642 = HEAP8[$320>>0]|0;
-  $4643 = $4642 ^ 123;
-  $4644 = $4643&255;
-  $4645 = (10432 + ($4644)|0);
-  $4646 = HEAP8[$4645>>0]|0;
-  $4647 = HEAP8[$136>>0]|0;
-  $4648 = $4647 ^ $4646;
-  $4649 = $4648&255;
-  $4650 = (11712 + ($4649<<2)|0);
-  $4651 = HEAP32[$4650>>2]|0;
-  $4652 = $4651 ^ $4641;
-  $4653 = HEAP8[$344>>0]|0;
-  $4654 = $4653 ^ -3;
-  $4655 = $4654&255;
-  $4656 = (10176 + ($4655)|0);
-  $4657 = HEAP8[$4656>>0]|0;
-  $4658 = HEAP8[$160>>0]|0;
-  $4659 = $4658 ^ $4657;
-  $4660 = $4659&255;
-  $4661 = (12736 + ($4660<<2)|0);
-  $4662 = HEAP32[$4661>>2]|0;
-  $4663 = $4652 ^ $4662;
-  $4664 = HEAP8[$368>>0]|0;
-  $4665 = $4664 ^ 123;
-  $4666 = $4665&255;
-  $4667 = (10176 + ($4666)|0);
-  $4668 = HEAP8[$4667>>0]|0;
-  $4669 = HEAP8[$184>>0]|0;
-  $4670 = $4669 ^ $4668;
-  $4671 = $4670&255;
-  $4672 = (13760 + ($4671<<2)|0);
-  $4673 = HEAP32[$4672>>2]|0;
-  $4674 = $4663 ^ $4673;
-  $4675 = $4674 << 8;
-  $4676 = $4674 >>> 24;
-  $4677 = $4675 | $4676;
-  $4678 = (($4677) + ($4631))|0;
-  $4679 = (($4678) + ($4677))|0;
-  $4680 = ((($0)) + 4112|0);
-  HEAP32[$4680>>2] = $4678;
-  $4681 = $4679 << 9;
-  $4682 = $4679 >>> 23;
-  $4683 = $4681 | $4682;
-  $4684 = ((($0)) + 4116|0);
-  HEAP32[$4684>>2] = $4683;
-  $4685 = HEAP8[$208>>0]|0;
-  $4686 = $4685 ^ -93;
-  $4687 = $4686&255;
-  $4688 = (10432 + ($4687)|0);
-  $4689 = HEAP8[$4688>>0]|0;
-  $4690 = HEAP8[$1>>0]|0;
-  $4691 = $4690 ^ $4689;
-  $4692 = $4691&255;
-  $4693 = (10688 + ($4692<<2)|0);
-  $4694 = HEAP32[$4693>>2]|0;
-  $4695 = HEAP8[$224>>0]|0;
-  $4696 = $4695 ^ -5;
-  $4697 = $4696&255;
-  $4698 = (10432 + ($4697)|0);
-  $4699 = HEAP8[$4698>>0]|0;
-  $4700 = HEAP8[$40>>0]|0;
-  $4701 = $4700 ^ $4699;
-  $4702 = $4701&255;
-  $4703 = (11712 + ($4702<<2)|0);
-  $4704 = HEAP32[$4703>>2]|0;
-  $4705 = $4704 ^ $4694;
-  $4706 = HEAP8[$248>>0]|0;
-  $4707 = $4706 ^ -93;
-  $4708 = $4707&255;
-  $4709 = (10176 + ($4708)|0);
-  $4710 = HEAP8[$4709>>0]|0;
-  $4711 = HEAP8[$64>>0]|0;
-  $4712 = $4711 ^ $4710;
-  $4713 = $4712&255;
-  $4714 = (12736 + ($4713<<2)|0);
-  $4715 = HEAP32[$4714>>2]|0;
-  $4716 = $4705 ^ $4715;
-  $4717 = HEAP8[$272>>0]|0;
-  $4718 = $4717 ^ -5;
-  $4719 = $4718&255;
-  $4720 = (10176 + ($4719)|0);
-  $4721 = HEAP8[$4720>>0]|0;
-  $4722 = HEAP8[$88>>0]|0;
-  $4723 = $4722 ^ $4721;
-  $4724 = $4723&255;
-  $4725 = (13760 + ($4724<<2)|0);
-  $4726 = HEAP32[$4725>>2]|0;
-  $4727 = $4716 ^ $4726;
-  $4728 = HEAP8[$296>>0]|0;
-  $4729 = $4728 ^ 118;
-  $4730 = $4729&255;
-  $4731 = (10432 + ($4730)|0);
-  $4732 = HEAP8[$4731>>0]|0;
-  $4733 = HEAP8[$112>>0]|0;
-  $4734 = $4733 ^ $4732;
-  $4735 = $4734&255;
-  $4736 = (10688 + ($4735<<2)|0);
-  $4737 = HEAP32[$4736>>2]|0;
-  $4738 = HEAP8[$320>>0]|0;
-  $4739 = $4738 ^ -56;
-  $4740 = $4739&255;
-  $4741 = (10432 + ($4740)|0);
-  $4742 = HEAP8[$4741>>0]|0;
-  $4743 = HEAP8[$136>>0]|0;
-  $4744 = $4743 ^ $4742;
-  $4745 = $4744&255;
-  $4746 = (11712 + ($4745<<2)|0);
-  $4747 = HEAP32[$4746>>2]|0;
-  $4748 = $4747 ^ $4737;
-  $4749 = HEAP8[$344>>0]|0;
-  $4750 = $4749 ^ 118;
-  $4751 = $4750&255;
-  $4752 = (10176 + ($4751)|0);
-  $4753 = HEAP8[$4752>>0]|0;
-  $4754 = HEAP8[$160>>0]|0;
-  $4755 = $4754 ^ $4753;
-  $4756 = $4755&255;
-  $4757 = (12736 + ($4756<<2)|0);
-  $4758 = HEAP32[$4757>>2]|0;
-  $4759 = $4748 ^ $4758;
-  $4760 = HEAP8[$368>>0]|0;
-  $4761 = $4760 ^ -56;
-  $4762 = $4761&255;
-  $4763 = (10176 + ($4762)|0);
-  $4764 = HEAP8[$4763>>0]|0;
-  $4765 = HEAP8[$184>>0]|0;
-  $4766 = $4765 ^ $4764;
-  $4767 = $4766&255;
-  $4768 = (13760 + ($4767<<2)|0);
-  $4769 = HEAP32[$4768>>2]|0;
-  $4770 = $4759 ^ $4769;
-  $4771 = $4770 << 8;
-  $4772 = $4770 >>> 24;
-  $4773 = $4771 | $4772;
-  $4774 = (($4773) + ($4727))|0;
-  $4775 = (($4774) + ($4773))|0;
-  $4776 = ((($0)) + 4120|0);
-  HEAP32[$4776>>2] = $4774;
-  $4777 = $4775 << 9;
-  $4778 = $4775 >>> 23;
-  $4779 = $4777 | $4778;
-  $4780 = ((($0)) + 4124|0);
-  HEAP32[$4780>>2] = $4779;
-  $4781 = HEAP8[$208>>0]|0;
-  $4782 = $4781 ^ -102;
-  $4783 = $4782&255;
-  $4784 = (10432 + ($4783)|0);
-  $4785 = HEAP8[$4784>>0]|0;
-  $4786 = HEAP8[$1>>0]|0;
-  $4787 = $4786 ^ $4785;
-  $4788 = $4787&255;
-  $4789 = (10688 + ($4788<<2)|0);
-  $4790 = HEAP32[$4789>>2]|0;
-  $4791 = HEAP8[$224>>0]|0;
-  $4792 = $4791 ^ 74;
-  $4793 = $4792&255;
-  $4794 = (10432 + ($4793)|0);
-  $4795 = HEAP8[$4794>>0]|0;
-  $4796 = HEAP8[$40>>0]|0;
-  $4797 = $4796 ^ $4795;
-  $4798 = $4797&255;
-  $4799 = (11712 + ($4798<<2)|0);
-  $4800 = HEAP32[$4799>>2]|0;
-  $4801 = $4800 ^ $4790;
-  $4802 = HEAP8[$248>>0]|0;
-  $4803 = $4802 ^ -102;
-  $4804 = $4803&255;
-  $4805 = (10176 + ($4804)|0);
-  $4806 = HEAP8[$4805>>0]|0;
-  $4807 = HEAP8[$64>>0]|0;
-  $4808 = $4807 ^ $4806;
-  $4809 = $4808&255;
-  $4810 = (12736 + ($4809<<2)|0);
-  $4811 = HEAP32[$4810>>2]|0;
-  $4812 = $4801 ^ $4811;
-  $4813 = HEAP8[$272>>0]|0;
-  $4814 = $4813 ^ 74;
-  $4815 = $4814&255;
-  $4816 = (10176 + ($4815)|0);
-  $4817 = HEAP8[$4816>>0]|0;
-  $4818 = HEAP8[$88>>0]|0;
-  $4819 = $4818 ^ $4817;
-  $4820 = $4819&255;
-  $4821 = (13760 + ($4820<<2)|0);
-  $4822 = HEAP32[$4821>>2]|0;
-  $4823 = $4812 ^ $4822;
-  $4824 = HEAP8[$296>>0]|0;
-  $4825 = $4824 ^ -110;
-  $4826 = $4825&255;
-  $4827 = (10432 + ($4826)|0);
-  $4828 = HEAP8[$4827>>0]|0;
-  $4829 = HEAP8[$112>>0]|0;
-  $4830 = $4829 ^ $4828;
-  $4831 = $4830&255;
-  $4832 = (10688 + ($4831<<2)|0);
-  $4833 = HEAP32[$4832>>2]|0;
-  $4834 = HEAP8[$320>>0]|0;
-  $4835 = $4834 ^ -45;
-  $4836 = $4835&255;
-  $4837 = (10432 + ($4836)|0);
-  $4838 = HEAP8[$4837>>0]|0;
-  $4839 = HEAP8[$136>>0]|0;
-  $4840 = $4839 ^ $4838;
-  $4841 = $4840&255;
-  $4842 = (11712 + ($4841<<2)|0);
-  $4843 = HEAP32[$4842>>2]|0;
-  $4844 = $4843 ^ $4833;
-  $4845 = HEAP8[$344>>0]|0;
-  $4846 = $4845 ^ -110;
-  $4847 = $4846&255;
-  $4848 = (10176 + ($4847)|0);
-  $4849 = HEAP8[$4848>>0]|0;
-  $4850 = HEAP8[$160>>0]|0;
-  $4851 = $4850 ^ $4849;
-  $4852 = $4851&255;
-  $4853 = (12736 + ($4852<<2)|0);
-  $4854 = HEAP32[$4853>>2]|0;
-  $4855 = $4844 ^ $4854;
-  $4856 = HEAP8[$368>>0]|0;
-  $4857 = $4856 ^ -45;
-  $4858 = $4857&255;
-  $4859 = (10176 + ($4858)|0);
-  $4860 = HEAP8[$4859>>0]|0;
-  $4861 = HEAP8[$184>>0]|0;
-  $4862 = $4861 ^ $4860;
-  $4863 = $4862&255;
-  $4864 = (13760 + ($4863<<2)|0);
-  $4865 = HEAP32[$4864>>2]|0;
-  $4866 = $4855 ^ $4865;
-  $4867 = $4866 << 8;
-  $4868 = $4866 >>> 24;
-  $4869 = $4867 | $4868;
-  $4870 = (($4869) + ($4823))|0;
-  $4871 = (($4870) + ($4869))|0;
-  $4872 = ((($0)) + 4128|0);
-  HEAP32[$4872>>2] = $4870;
-  $4873 = $4871 << 9;
-  $4874 = $4871 >>> 23;
-  $4875 = $4873 | $4874;
-  $4876 = ((($0)) + 4132|0);
-  HEAP32[$4876>>2] = $4875;
-  $4877 = HEAP8[$208>>0]|0;
-  $4878 = $4877 ^ -128;
-  $4879 = $4878&255;
-  $4880 = (10432 + ($4879)|0);
-  $4881 = HEAP8[$4880>>0]|0;
-  $4882 = HEAP8[$1>>0]|0;
-  $4883 = $4882 ^ $4881;
-  $4884 = $4883&255;
-  $4885 = (10688 + ($4884<<2)|0);
-  $4886 = HEAP32[$4885>>2]|0;
-  $4887 = HEAP8[$224>>0]|0;
-  $4888 = $4887 ^ -26;
-  $4889 = $4888&255;
-  $4890 = (10432 + ($4889)|0);
-  $4891 = HEAP8[$4890>>0]|0;
-  $4892 = HEAP8[$40>>0]|0;
-  $4893 = $4892 ^ $4891;
-  $4894 = $4893&255;
-  $4895 = (11712 + ($4894<<2)|0);
-  $4896 = HEAP32[$4895>>2]|0;
-  $4897 = $4896 ^ $4886;
-  $4898 = HEAP8[$248>>0]|0;
-  $4899 = $4898 ^ -128;
-  $4900 = $4899&255;
-  $4901 = (10176 + ($4900)|0);
-  $4902 = HEAP8[$4901>>0]|0;
-  $4903 = HEAP8[$64>>0]|0;
-  $4904 = $4903 ^ $4902;
-  $4905 = $4904&255;
-  $4906 = (12736 + ($4905<<2)|0);
-  $4907 = HEAP32[$4906>>2]|0;
-  $4908 = $4897 ^ $4907;
-  $4909 = HEAP8[$272>>0]|0;
-  $4910 = $4909 ^ -26;
-  $4911 = $4910&255;
-  $4912 = (10176 + ($4911)|0);
-  $4913 = HEAP8[$4912>>0]|0;
-  $4914 = HEAP8[$88>>0]|0;
-  $4915 = $4914 ^ $4913;
-  $4916 = $4915&255;
-  $4917 = (13760 + ($4916<<2)|0);
-  $4918 = HEAP32[$4917>>2]|0;
-  $4919 = $4908 ^ $4918;
-  $4920 = HEAP8[$296>>0]|0;
-  $4921 = $4920 ^ 120;
-  $4922 = $4921&255;
-  $4923 = (10432 + ($4922)|0);
-  $4924 = HEAP8[$4923>>0]|0;
-  $4925 = HEAP8[$112>>0]|0;
-  $4926 = $4925 ^ $4924;
-  $4927 = $4926&255;
-  $4928 = (10688 + ($4927<<2)|0);
-  $4929 = HEAP32[$4928>>2]|0;
-  $4930 = HEAP8[$320>>0]|0;
-  $4931 = $4930 ^ 107;
-  $4932 = $4931&255;
-  $4933 = (10432 + ($4932)|0);
-  $4934 = HEAP8[$4933>>0]|0;
-  $4935 = HEAP8[$136>>0]|0;
-  $4936 = $4935 ^ $4934;
-  $4937 = $4936&255;
-  $4938 = (11712 + ($4937<<2)|0);
-  $4939 = HEAP32[$4938>>2]|0;
-  $4940 = $4939 ^ $4929;
-  $4941 = HEAP8[$344>>0]|0;
-  $4942 = $4941 ^ 120;
-  $4943 = $4942&255;
-  $4944 = (10176 + ($4943)|0);
-  $4945 = HEAP8[$4944>>0]|0;
-  $4946 = HEAP8[$160>>0]|0;
-  $4947 = $4946 ^ $4945;
-  $4948 = $4947&255;
-  $4949 = (12736 + ($4948<<2)|0);
-  $4950 = HEAP32[$4949>>2]|0;
-  $4951 = $4940 ^ $4950;
-  $4952 = HEAP8[$368>>0]|0;
-  $4953 = $4952 ^ 107;
-  $4954 = $4953&255;
-  $4955 = (10176 + ($4954)|0);
-  $4956 = HEAP8[$4955>>0]|0;
-  $4957 = HEAP8[$184>>0]|0;
-  $4958 = $4957 ^ $4956;
-  $4959 = $4958&255;
-  $4960 = (13760 + ($4959<<2)|0);
-  $4961 = HEAP32[$4960>>2]|0;
-  $4962 = $4951 ^ $4961;
-  $4963 = $4962 << 8;
-  $4964 = $4962 >>> 24;
-  $4965 = $4963 | $4964;
-  $4966 = (($4965) + ($4919))|0;
-  $4967 = (($4966) + ($4965))|0;
-  $4968 = ((($0)) + 4136|0);
-  HEAP32[$4968>>2] = $4966;
-  $4969 = $4967 << 9;
-  $4970 = $4967 >>> 23;
-  $4971 = $4969 | $4970;
-  $4972 = ((($0)) + 4140|0);
-  HEAP32[$4972>>2] = $4971;
-  $4973 = HEAP8[$208>>0]|0;
-  $4974 = $4973 ^ -28;
-  $4975 = $4974&255;
-  $4976 = (10432 + ($4975)|0);
-  $4977 = HEAP8[$4976>>0]|0;
-  $4978 = HEAP8[$1>>0]|0;
-  $4979 = $4978 ^ $4977;
-  $4980 = $4979&255;
-  $4981 = (10688 + ($4980<<2)|0);
-  $4982 = HEAP32[$4981>>2]|0;
-  $4983 = HEAP8[$224>>0]|0;
-  $4984 = $4983 ^ 69;
-  $4985 = $4984&255;
-  $4986 = (10432 + ($4985)|0);
-  $4987 = HEAP8[$4986>>0]|0;
-  $4988 = HEAP8[$40>>0]|0;
-  $4989 = $4988 ^ $4987;
-  $4990 = $4989&255;
-  $4991 = (11712 + ($4990<<2)|0);
-  $4992 = HEAP32[$4991>>2]|0;
-  $4993 = $4992 ^ $4982;
-  $4994 = HEAP8[$248>>0]|0;
-  $4995 = $4994 ^ -28;
-  $4996 = $4995&255;
-  $4997 = (10176 + ($4996)|0);
-  $4998 = HEAP8[$4997>>0]|0;
-  $4999 = HEAP8[$64>>0]|0;
-  $5000 = $4999 ^ $4998;
-  $5001 = $5000&255;
-  $5002 = (12736 + ($5001<<2)|0);
-  $5003 = HEAP32[$5002>>2]|0;
-  $5004 = $4993 ^ $5003;
-  $5005 = HEAP8[$272>>0]|0;
-  $5006 = $5005 ^ 69;
-  $5007 = $5006&255;
-  $5008 = (10176 + ($5007)|0);
-  $5009 = HEAP8[$5008>>0]|0;
-  $5010 = HEAP8[$88>>0]|0;
-  $5011 = $5010 ^ $5009;
-  $5012 = $5011&255;
-  $5013 = (13760 + ($5012<<2)|0);
-  $5014 = HEAP32[$5013>>2]|0;
-  $5015 = $5004 ^ $5014;
-  $5016 = HEAP8[$296>>0]|0;
-  $5017 = $5016 ^ -35;
-  $5018 = $5017&255;
-  $5019 = (10432 + ($5018)|0);
-  $5020 = HEAP8[$5019>>0]|0;
-  $5021 = HEAP8[$112>>0]|0;
-  $5022 = $5021 ^ $5020;
-  $5023 = $5022&255;
-  $5024 = (10688 + ($5023<<2)|0);
-  $5025 = HEAP32[$5024>>2]|0;
-  $5026 = HEAP8[$320>>0]|0;
-  $5027 = $5026 ^ 125;
-  $5028 = $5027&255;
-  $5029 = (10432 + ($5028)|0);
-  $5030 = HEAP8[$5029>>0]|0;
-  $5031 = HEAP8[$136>>0]|0;
-  $5032 = $5031 ^ $5030;
-  $5033 = $5032&255;
-  $5034 = (11712 + ($5033<<2)|0);
-  $5035 = HEAP32[$5034>>2]|0;
-  $5036 = $5035 ^ $5025;
-  $5037 = HEAP8[$344>>0]|0;
-  $5038 = $5037 ^ -35;
-  $5039 = $5038&255;
-  $5040 = (10176 + ($5039)|0);
-  $5041 = HEAP8[$5040>>0]|0;
-  $5042 = HEAP8[$160>>0]|0;
-  $5043 = $5042 ^ $5041;
-  $5044 = $5043&255;
-  $5045 = (12736 + ($5044<<2)|0);
-  $5046 = HEAP32[$5045>>2]|0;
-  $5047 = $5036 ^ $5046;
-  $5048 = HEAP8[$368>>0]|0;
-  $5049 = $5048 ^ 125;
-  $5050 = $5049&255;
-  $5051 = (10176 + ($5050)|0);
-  $5052 = HEAP8[$5051>>0]|0;
-  $5053 = HEAP8[$184>>0]|0;
-  $5054 = $5053 ^ $5052;
-  $5055 = $5054&255;
-  $5056 = (13760 + ($5055<<2)|0);
-  $5057 = HEAP32[$5056>>2]|0;
-  $5058 = $5047 ^ $5057;
-  $5059 = $5058 << 8;
-  $5060 = $5058 >>> 24;
-  $5061 = $5059 | $5060;
-  $5062 = (($5061) + ($5015))|0;
-  $5063 = (($5062) + ($5061))|0;
-  $5064 = ((($0)) + 4144|0);
-  HEAP32[$5064>>2] = $5062;
-  $5065 = $5063 << 9;
-  $5066 = $5063 >>> 23;
-  $5067 = $5065 | $5066;
-  $5068 = ((($0)) + 4148|0);
-  HEAP32[$5068>>2] = $5067;
-  $5069 = HEAP8[$208>>0]|0;
-  $5070 = $5069 ^ -47;
-  $5071 = $5070&255;
-  $5072 = (10432 + ($5071)|0);
-  $5073 = HEAP8[$5072>>0]|0;
-  $5074 = HEAP8[$1>>0]|0;
-  $5075 = $5074 ^ $5073;
-  $5076 = $5075&255;
-  $5077 = (10688 + ($5076<<2)|0);
-  $5078 = HEAP32[$5077>>2]|0;
-  $5079 = HEAP8[$224>>0]|0;
-  $5080 = $5079 ^ -24;
-  $5081 = $5080&255;
-  $5082 = (10432 + ($5081)|0);
-  $5083 = HEAP8[$5082>>0]|0;
-  $5084 = HEAP8[$40>>0]|0;
-  $5085 = $5084 ^ $5083;
-  $5086 = $5085&255;
-  $5087 = (11712 + ($5086<<2)|0);
-  $5088 = HEAP32[$5087>>2]|0;
-  $5089 = $5088 ^ $5078;
-  $5090 = HEAP8[$248>>0]|0;
-  $5091 = $5090 ^ -47;
-  $5092 = $5091&255;
-  $5093 = (10176 + ($5092)|0);
-  $5094 = HEAP8[$5093>>0]|0;
-  $5095 = HEAP8[$64>>0]|0;
-  $5096 = $5095 ^ $5094;
-  $5097 = $5096&255;
-  $5098 = (12736 + ($5097<<2)|0);
-  $5099 = HEAP32[$5098>>2]|0;
-  $5100 = $5089 ^ $5099;
-  $5101 = HEAP8[$272>>0]|0;
-  $5102 = $5101 ^ -24;
-  $5103 = $5102&255;
-  $5104 = (10176 + ($5103)|0);
-  $5105 = HEAP8[$5104>>0]|0;
-  $5106 = HEAP8[$88>>0]|0;
-  $5107 = $5106 ^ $5105;
-  $5108 = $5107&255;
-  $5109 = (13760 + ($5108<<2)|0);
-  $5110 = HEAP32[$5109>>2]|0;
-  $5111 = $5100 ^ $5110;
-  $5112 = HEAP8[$296>>0]|0;
-  $5113 = $5112 ^ 56;
-  $5114 = $5113&255;
-  $5115 = (10432 + ($5114)|0);
-  $5116 = HEAP8[$5115>>0]|0;
-  $5117 = HEAP8[$112>>0]|0;
-  $5118 = $5117 ^ $5116;
-  $5119 = $5118&255;
-  $5120 = (10688 + ($5119<<2)|0);
-  $5121 = HEAP32[$5120>>2]|0;
-  $5122 = HEAP8[$320>>0]|0;
-  $5123 = $5122 ^ 75;
-  $5124 = $5123&255;
-  $5125 = (10432 + ($5124)|0);
-  $5126 = HEAP8[$5125>>0]|0;
-  $5127 = HEAP8[$136>>0]|0;
-  $5128 = $5127 ^ $5126;
-  $5129 = $5128&255;
-  $5130 = (11712 + ($5129<<2)|0);
-  $5131 = HEAP32[$5130>>2]|0;
-  $5132 = $5131 ^ $5121;
-  $5133 = HEAP8[$344>>0]|0;
-  $5134 = $5133 ^ 56;
-  $5135 = $5134&255;
-  $5136 = (10176 + ($5135)|0);
-  $5137 = HEAP8[$5136>>0]|0;
-  $5138 = HEAP8[$160>>0]|0;
-  $5139 = $5138 ^ $5137;
-  $5140 = $5139&255;
-  $5141 = (12736 + ($5140<<2)|0);
-  $5142 = HEAP32[$5141>>2]|0;
-  $5143 = $5132 ^ $5142;
-  $5144 = HEAP8[$368>>0]|0;
-  $5145 = $5144 ^ 75;
-  $5146 = $5145&255;
-  $5147 = (10176 + ($5146)|0);
-  $5148 = HEAP8[$5147>>0]|0;
-  $5149 = HEAP8[$184>>0]|0;
-  $5150 = $5149 ^ $5148;
-  $5151 = $5150&255;
-  $5152 = (13760 + ($5151<<2)|0);
-  $5153 = HEAP32[$5152>>2]|0;
-  $5154 = $5143 ^ $5153;
-  $5155 = $5154 << 8;
-  $5156 = $5154 >>> 24;
-  $5157 = $5155 | $5156;
-  $5158 = (($5157) + ($5111))|0;
-  $5159 = (($5158) + ($5157))|0;
-  $5160 = ((($0)) + 4152|0);
-  HEAP32[$5160>>2] = $5158;
-  $5161 = $5159 << 9;
-  $5162 = $5159 >>> 23;
-  $5163 = $5161 | $5162;
-  $5164 = ((($0)) + 4156|0);
-  HEAP32[$5164>>2] = $5163;
-  $5165 = HEAP8[$208>>0]|0;
-  $5166 = $5165 ^ 13;
-  $5167 = $5166&255;
-  $5168 = (10432 + ($5167)|0);
-  $5169 = HEAP8[$5168>>0]|0;
-  $5170 = HEAP8[$1>>0]|0;
-  $5171 = $5170 ^ $5169;
-  $5172 = $5171&255;
-  $5173 = (10688 + ($5172<<2)|0);
-  $5174 = HEAP32[$5173>>2]|0;
-  $5175 = HEAP8[$224>>0]|0;
-  $5176 = $5175 ^ -42;
-  $5177 = $5176&255;
-  $5178 = (10432 + ($5177)|0);
-  $5179 = HEAP8[$5178>>0]|0;
-  $5180 = HEAP8[$40>>0]|0;
-  $5181 = $5180 ^ $5179;
-  $5182 = $5181&255;
-  $5183 = (11712 + ($5182<<2)|0);
-  $5184 = HEAP32[$5183>>2]|0;
-  $5185 = $5184 ^ $5174;
-  $5186 = HEAP8[$248>>0]|0;
-  $5187 = $5186 ^ 13;
-  $5188 = $5187&255;
-  $5189 = (10176 + ($5188)|0);
-  $5190 = HEAP8[$5189>>0]|0;
-  $5191 = HEAP8[$64>>0]|0;
-  $5192 = $5191 ^ $5190;
-  $5193 = $5192&255;
-  $5194 = (12736 + ($5193<<2)|0);
-  $5195 = HEAP32[$5194>>2]|0;
-  $5196 = $5185 ^ $5195;
-  $5197 = HEAP8[$272>>0]|0;
-  $5198 = $5197 ^ -42;
-  $5199 = $5198&255;
-  $5200 = (10176 + ($5199)|0);
-  $5201 = HEAP8[$5200>>0]|0;
-  $5202 = HEAP8[$88>>0]|0;
-  $5203 = $5202 ^ $5201;
-  $5204 = $5203&255;
-  $5205 = (13760 + ($5204<<2)|0);
-  $5206 = HEAP32[$5205>>2]|0;
-  $5207 = $5196 ^ $5206;
-  $5208 = HEAP8[$296>>0]|0;
-  $5209 = $5208 ^ -58;
-  $5210 = $5209&255;
-  $5211 = (10432 + ($5210)|0);
-  $5212 = HEAP8[$5211>>0]|0;
-  $5213 = HEAP8[$112>>0]|0;
-  $5214 = $5213 ^ $5212;
-  $5215 = $5214&255;
-  $5216 = (10688 + ($5215<<2)|0);
-  $5217 = HEAP32[$5216>>2]|0;
-  $5218 = HEAP8[$320>>0]|0;
-  $5219 = $5218 ^ 50;
-  $5220 = $5219&255;
-  $5221 = (10432 + ($5220)|0);
-  $5222 = HEAP8[$5221>>0]|0;
-  $5223 = HEAP8[$136>>0]|0;
-  $5224 = $5223 ^ $5222;
-  $5225 = $5224&255;
-  $5226 = (11712 + ($5225<<2)|0);
-  $5227 = HEAP32[$5226>>2]|0;
-  $5228 = $5227 ^ $5217;
-  $5229 = HEAP8[$344>>0]|0;
-  $5230 = $5229 ^ -58;
-  $5231 = $5230&255;
-  $5232 = (10176 + ($5231)|0);
-  $5233 = HEAP8[$5232>>0]|0;
-  $5234 = HEAP8[$160>>0]|0;
-  $5235 = $5234 ^ $5233;
-  $5236 = $5235&255;
-  $5237 = (12736 + ($5236<<2)|0);
-  $5238 = HEAP32[$5237>>2]|0;
-  $5239 = $5228 ^ $5238;
-  $5240 = HEAP8[$368>>0]|0;
-  $5241 = $5240 ^ 50;
-  $5242 = $5241&255;
-  $5243 = (10176 + ($5242)|0);
-  $5244 = HEAP8[$5243>>0]|0;
-  $5245 = HEAP8[$184>>0]|0;
-  $5246 = $5245 ^ $5244;
-  $5247 = $5246&255;
-  $5248 = (13760 + ($5247<<2)|0);
-  $5249 = HEAP32[$5248>>2]|0;
-  $5250 = $5239 ^ $5249;
-  $5251 = $5250 << 8;
-  $5252 = $5250 >>> 24;
-  $5253 = $5251 | $5252;
-  $5254 = (($5253) + ($5207))|0;
-  $5255 = (($5254) + ($5253))|0;
-  $5256 = ((($0)) + 4160|0);
-  HEAP32[$5256>>2] = $5254;
-  $5257 = $5255 << 9;
-  $5258 = $5255 >>> 23;
-  $5259 = $5257 | $5258;
-  $5260 = ((($0)) + 4164|0);
-  HEAP32[$5260>>2] = $5259;
-  $5261 = HEAP8[$208>>0]|0;
-  $5262 = $5261 ^ 53;
-  $5263 = $5262&255;
-  $5264 = (10432 + ($5263)|0);
-  $5265 = HEAP8[$5264>>0]|0;
-  $5266 = HEAP8[$1>>0]|0;
-  $5267 = $5266 ^ $5265;
-  $5268 = $5267&255;
-  $5269 = (10688 + ($5268<<2)|0);
-  $5270 = HEAP32[$5269>>2]|0;
-  $5271 = HEAP8[$224>>0]|0;
-  $5272 = $5271 ^ -40;
-  $5273 = $5272&255;
-  $5274 = (10432 + ($5273)|0);
-  $5275 = HEAP8[$5274>>0]|0;
-  $5276 = HEAP8[$40>>0]|0;
-  $5277 = $5276 ^ $5275;
-  $5278 = $5277&255;
-  $5279 = (11712 + ($5278<<2)|0);
-  $5280 = HEAP32[$5279>>2]|0;
-  $5281 = $5280 ^ $5270;
-  $5282 = HEAP8[$248>>0]|0;
-  $5283 = $5282 ^ 53;
-  $5284 = $5283&255;
-  $5285 = (10176 + ($5284)|0);
-  $5286 = HEAP8[$5285>>0]|0;
-  $5287 = HEAP8[$64>>0]|0;
-  $5288 = $5287 ^ $5286;
-  $5289 = $5288&255;
-  $5290 = (12736 + ($5289<<2)|0);
-  $5291 = HEAP32[$5290>>2]|0;
-  $5292 = $5281 ^ $5291;
-  $5293 = HEAP8[$272>>0]|0;
-  $5294 = $5293 ^ -40;
-  $5295 = $5294&255;
-  $5296 = (10176 + ($5295)|0);
-  $5297 = HEAP8[$5296>>0]|0;
-  $5298 = HEAP8[$88>>0]|0;
-  $5299 = $5298 ^ $5297;
-  $5300 = $5299&255;
-  $5301 = (13760 + ($5300<<2)|0);
-  $5302 = HEAP32[$5301>>2]|0;
-  $5303 = $5292 ^ $5302;
-  $5304 = HEAP8[$296>>0]|0;
-  $5305 = $5304 ^ -104;
-  $5306 = $5305&255;
-  $5307 = (10432 + ($5306)|0);
-  $5308 = HEAP8[$5307>>0]|0;
-  $5309 = HEAP8[$112>>0]|0;
-  $5310 = $5309 ^ $5308;
-  $5311 = $5310&255;
-  $5312 = (10688 + ($5311<<2)|0);
-  $5313 = HEAP32[$5312>>2]|0;
-  $5314 = HEAP8[$320>>0]|0;
-  $5315 = $5314 ^ -3;
-  $5316 = $5315&255;
-  $5317 = (10432 + ($5316)|0);
-  $5318 = HEAP8[$5317>>0]|0;
-  $5319 = HEAP8[$136>>0]|0;
-  $5320 = $5319 ^ $5318;
-  $5321 = $5320&255;
-  $5322 = (11712 + ($5321<<2)|0);
-  $5323 = HEAP32[$5322>>2]|0;
-  $5324 = $5323 ^ $5313;
-  $5325 = HEAP8[$344>>0]|0;
-  $5326 = $5325 ^ -104;
-  $5327 = $5326&255;
-  $5328 = (10176 + ($5327)|0);
-  $5329 = HEAP8[$5328>>0]|0;
-  $5330 = HEAP8[$160>>0]|0;
-  $5331 = $5330 ^ $5329;
-  $5332 = $5331&255;
-  $5333 = (12736 + ($5332<<2)|0);
-  $5334 = HEAP32[$5333>>2]|0;
-  $5335 = $5324 ^ $5334;
-  $5336 = HEAP8[$368>>0]|0;
-  $5337 = $5336 ^ -3;
-  $5338 = $5337&255;
-  $5339 = (10176 + ($5338)|0);
-  $5340 = HEAP8[$5339>>0]|0;
-  $5341 = HEAP8[$184>>0]|0;
-  $5342 = $5341 ^ $5340;
-  $5343 = $5342&255;
-  $5344 = (13760 + ($5343<<2)|0);
-  $5345 = HEAP32[$5344>>2]|0;
-  $5346 = $5335 ^ $5345;
-  $5347 = $5346 << 8;
-  $5348 = $5346 >>> 24;
-  $5349 = $5347 | $5348;
-  $5350 = (($5349) + ($5303))|0;
-  $5351 = (($5350) + ($5349))|0;
-  $5352 = ((($0)) + 4168|0);
-  HEAP32[$5352>>2] = $5350;
-  $5353 = $5351 << 9;
-  $5354 = $5351 >>> 23;
-  $5355 = $5353 | $5354;
-  $5356 = ((($0)) + 4172|0);
-  HEAP32[$5356>>2] = $5355;
-  $5357 = HEAP8[$208>>0]|0;
-  $5358 = $5357 ^ 24;
-  $5359 = $5358&255;
-  $5360 = (10432 + ($5359)|0);
-  $5361 = HEAP8[$5360>>0]|0;
-  $5362 = HEAP8[$1>>0]|0;
-  $5363 = $5362 ^ $5361;
-  $5364 = $5363&255;
-  $5365 = (10688 + ($5364<<2)|0);
-  $5366 = HEAP32[$5365>>2]|0;
-  $5367 = HEAP8[$224>>0]|0;
-  $5368 = $5367 ^ 55;
-  $5369 = $5368&255;
-  $5370 = (10432 + ($5369)|0);
-  $5371 = HEAP8[$5370>>0]|0;
-  $5372 = HEAP8[$40>>0]|0;
-  $5373 = $5372 ^ $5371;
-  $5374 = $5373&255;
-  $5375 = (11712 + ($5374<<2)|0);
-  $5376 = HEAP32[$5375>>2]|0;
-  $5377 = $5376 ^ $5366;
-  $5378 = HEAP8[$248>>0]|0;
-  $5379 = $5378 ^ 24;
-  $5380 = $5379&255;
-  $5381 = (10176 + ($5380)|0);
-  $5382 = HEAP8[$5381>>0]|0;
-  $5383 = HEAP8[$64>>0]|0;
-  $5384 = $5383 ^ $5382;
-  $5385 = $5384&255;
-  $5386 = (12736 + ($5385<<2)|0);
-  $5387 = HEAP32[$5386>>2]|0;
-  $5388 = $5377 ^ $5387;
-  $5389 = HEAP8[$272>>0]|0;
-  $5390 = $5389 ^ 55;
-  $5391 = $5390&255;
-  $5392 = (10176 + ($5391)|0);
-  $5393 = HEAP8[$5392>>0]|0;
-  $5394 = HEAP8[$88>>0]|0;
-  $5395 = $5394 ^ $5393;
-  $5396 = $5395&255;
-  $5397 = (13760 + ($5396<<2)|0);
-  $5398 = HEAP32[$5397>>2]|0;
-  $5399 = $5388 ^ $5398;
-  $5400 = HEAP8[$296>>0]|0;
-  $5401 = $5400 ^ -9;
-  $5402 = $5401&255;
-  $5403 = (10432 + ($5402)|0);
-  $5404 = HEAP8[$5403>>0]|0;
-  $5405 = HEAP8[$112>>0]|0;
-  $5406 = $5405 ^ $5404;
-  $5407 = $5406&255;
-  $5408 = (10688 + ($5407<<2)|0);
-  $5409 = HEAP32[$5408>>2]|0;
-  $5410 = HEAP8[$320>>0]|0;
-  $5411 = $5410 ^ 113;
-  $5412 = $5411&255;
-  $5413 = (10432 + ($5412)|0);
-  $5414 = HEAP8[$5413>>0]|0;
-  $5415 = HEAP8[$136>>0]|0;
-  $5416 = $5415 ^ $5414;
-  $5417 = $5416&255;
-  $5418 = (11712 + ($5417<<2)|0);
-  $5419 = HEAP32[$5418>>2]|0;
-  $5420 = $5419 ^ $5409;
-  $5421 = HEAP8[$344>>0]|0;
-  $5422 = $5421 ^ -9;
-  $5423 = $5422&255;
-  $5424 = (10176 + ($5423)|0);
-  $5425 = HEAP8[$5424>>0]|0;
-  $5426 = HEAP8[$160>>0]|0;
-  $5427 = $5426 ^ $5425;
-  $5428 = $5427&255;
-  $5429 = (12736 + ($5428<<2)|0);
-  $5430 = HEAP32[$5429>>2]|0;
-  $5431 = $5420 ^ $5430;
-  $5432 = HEAP8[$368>>0]|0;
-  $5433 = $5432 ^ 113;
-  $5434 = $5433&255;
-  $5435 = (10176 + ($5434)|0);
-  $5436 = HEAP8[$5435>>0]|0;
-  $5437 = HEAP8[$184>>0]|0;
-  $5438 = $5437 ^ $5436;
-  $5439 = $5438&255;
-  $5440 = (13760 + ($5439<<2)|0);
-  $5441 = HEAP32[$5440>>2]|0;
-  $5442 = $5431 ^ $5441;
-  $5443 = $5442 << 8;
-  $5444 = $5442 >>> 24;
-  $5445 = $5443 | $5444;
-  $5446 = (($5445) + ($5399))|0;
-  $5447 = (($5446) + ($5445))|0;
-  $5448 = ((($0)) + 4176|0);
-  HEAP32[$5448>>2] = $5446;
-  $5449 = $5447 << 9;
-  $5450 = $5447 >>> 23;
-  $5451 = $5449 | $5450;
-  $5452 = ((($0)) + 4180|0);
-  HEAP32[$5452>>2] = $5451;
-  $5453 = HEAP8[$208>>0]|0;
-  $5454 = $5453 ^ -20;
-  $5455 = $5454&255;
-  $5456 = (10432 + ($5455)|0);
-  $5457 = HEAP8[$5456>>0]|0;
-  $5458 = HEAP8[$1>>0]|0;
-  $5459 = $5458 ^ $5457;
-  $5460 = $5459&255;
-  $5461 = (10688 + ($5460<<2)|0);
-  $5462 = HEAP32[$5461>>2]|0;
-  $5463 = HEAP8[$224>>0]|0;
-  $5464 = $5463 ^ -15;
-  $5465 = $5464&255;
-  $5466 = (10432 + ($5465)|0);
-  $5467 = HEAP8[$5466>>0]|0;
-  $5468 = HEAP8[$40>>0]|0;
-  $5469 = $5468 ^ $5467;
-  $5470 = $5469&255;
-  $5471 = (11712 + ($5470<<2)|0);
-  $5472 = HEAP32[$5471>>2]|0;
-  $5473 = $5472 ^ $5462;
-  $5474 = HEAP8[$248>>0]|0;
-  $5475 = $5474 ^ -20;
-  $5476 = $5475&255;
-  $5477 = (10176 + ($5476)|0);
-  $5478 = HEAP8[$5477>>0]|0;
-  $5479 = HEAP8[$64>>0]|0;
-  $5480 = $5479 ^ $5478;
-  $5481 = $5480&255;
-  $5482 = (12736 + ($5481<<2)|0);
-  $5483 = HEAP32[$5482>>2]|0;
-  $5484 = $5473 ^ $5483;
-  $5485 = HEAP8[$272>>0]|0;
-  $5486 = $5485 ^ -15;
-  $5487 = $5486&255;
-  $5488 = (10176 + ($5487)|0);
-  $5489 = HEAP8[$5488>>0]|0;
-  $5490 = HEAP8[$88>>0]|0;
-  $5491 = $5490 ^ $5489;
-  $5492 = $5491&255;
-  $5493 = (13760 + ($5492<<2)|0);
-  $5494 = HEAP32[$5493>>2]|0;
-  $5495 = $5484 ^ $5494;
-  $5496 = HEAP8[$296>>0]|0;
-  $5497 = $5496 ^ 108;
-  $5498 = $5497&255;
-  $5499 = (10432 + ($5498)|0);
-  $5500 = HEAP8[$5499>>0]|0;
-  $5501 = HEAP8[$112>>0]|0;
-  $5502 = $5501 ^ $5500;
-  $5503 = $5502&255;
-  $5504 = (10688 + ($5503<<2)|0);
-  $5505 = HEAP32[$5504>>2]|0;
-  $5506 = HEAP8[$320>>0]|0;
-  $5507 = $5506 ^ -31;
-  $5508 = $5507&255;
-  $5509 = (10432 + ($5508)|0);
-  $5510 = HEAP8[$5509>>0]|0;
-  $5511 = HEAP8[$136>>0]|0;
-  $5512 = $5511 ^ $5510;
-  $5513 = $5512&255;
-  $5514 = (11712 + ($5513<<2)|0);
-  $5515 = HEAP32[$5514>>2]|0;
-  $5516 = $5515 ^ $5505;
-  $5517 = HEAP8[$344>>0]|0;
-  $5518 = $5517 ^ 108;
-  $5519 = $5518&255;
-  $5520 = (10176 + ($5519)|0);
-  $5521 = HEAP8[$5520>>0]|0;
-  $5522 = HEAP8[$160>>0]|0;
-  $5523 = $5522 ^ $5521;
-  $5524 = $5523&255;
-  $5525 = (12736 + ($5524<<2)|0);
-  $5526 = HEAP32[$5525>>2]|0;
-  $5527 = $5516 ^ $5526;
-  $5528 = HEAP8[$368>>0]|0;
-  $5529 = $5528 ^ -31;
-  $5530 = $5529&255;
-  $5531 = (10176 + ($5530)|0);
-  $5532 = HEAP8[$5531>>0]|0;
-  $5533 = HEAP8[$184>>0]|0;
-  $5534 = $5533 ^ $5532;
-  $5535 = $5534&255;
-  $5536 = (13760 + ($5535<<2)|0);
-  $5537 = HEAP32[$5536>>2]|0;
-  $5538 = $5527 ^ $5537;
-  $5539 = $5538 << 8;
-  $5540 = $5538 >>> 24;
-  $5541 = $5539 | $5540;
-  $5542 = (($5541) + ($5495))|0;
-  $5543 = (($5542) + ($5541))|0;
-  $5544 = ((($0)) + 4184|0);
-  HEAP32[$5544>>2] = $5542;
-  $5545 = $5543 << 9;
-  $5546 = $5543 >>> 23;
-  $5547 = $5545 | $5546;
-  $5548 = ((($0)) + 4188|0);
-  HEAP32[$5548>>2] = $5547;
-  $5549 = HEAP8[$208>>0]|0;
-  $5550 = $5549 ^ 67;
-  $5551 = $5550&255;
-  $5552 = (10432 + ($5551)|0);
-  $5553 = HEAP8[$5552>>0]|0;
-  $5554 = HEAP8[$1>>0]|0;
-  $5555 = $5554 ^ $5553;
-  $5556 = $5555&255;
-  $5557 = (10688 + ($5556<<2)|0);
-  $5558 = HEAP32[$5557>>2]|0;
-  $5559 = HEAP8[$224>>0]|0;
-  $5560 = $5559 ^ 48;
-  $5561 = $5560&255;
-  $5562 = (10432 + ($5561)|0);
-  $5563 = HEAP8[$5562>>0]|0;
-  $5564 = HEAP8[$40>>0]|0;
-  $5565 = $5564 ^ $5563;
-  $5566 = $5565&255;
-  $5567 = (11712 + ($5566<<2)|0);
-  $5568 = HEAP32[$5567>>2]|0;
-  $5569 = $5568 ^ $5558;
-  $5570 = HEAP8[$248>>0]|0;
-  $5571 = $5570 ^ 67;
-  $5572 = $5571&255;
-  $5573 = (10176 + ($5572)|0);
-  $5574 = HEAP8[$5573>>0]|0;
-  $5575 = HEAP8[$64>>0]|0;
-  $5576 = $5575 ^ $5574;
-  $5577 = $5576&255;
-  $5578 = (12736 + ($5577<<2)|0);
-  $5579 = HEAP32[$5578>>2]|0;
-  $5580 = $5569 ^ $5579;
-  $5581 = HEAP8[$272>>0]|0;
-  $5582 = $5581 ^ 48;
-  $5583 = $5582&255;
-  $5584 = (10176 + ($5583)|0);
-  $5585 = HEAP8[$5584>>0]|0;
-  $5586 = HEAP8[$88>>0]|0;
-  $5587 = $5586 ^ $5585;
-  $5588 = $5587&255;
-  $5589 = (13760 + ($5588<<2)|0);
-  $5590 = HEAP32[$5589>>2]|0;
-  $5591 = $5580 ^ $5590;
-  $5592 = HEAP8[$296>>0]|0;
-  $5593 = $5592 ^ 117;
-  $5594 = $5593&255;
-  $5595 = (10432 + ($5594)|0);
-  $5596 = HEAP8[$5595>>0]|0;
-  $5597 = HEAP8[$112>>0]|0;
-  $5598 = $5597 ^ $5596;
-  $5599 = $5598&255;
-  $5600 = (10688 + ($5599<<2)|0);
-  $5601 = HEAP32[$5600>>2]|0;
-  $5602 = HEAP8[$320>>0]|0;
-  $5603 = $5602 ^ 15;
-  $5604 = $5603&255;
-  $5605 = (10432 + ($5604)|0);
-  $5606 = HEAP8[$5605>>0]|0;
-  $5607 = HEAP8[$136>>0]|0;
-  $5608 = $5607 ^ $5606;
-  $5609 = $5608&255;
-  $5610 = (11712 + ($5609<<2)|0);
-  $5611 = HEAP32[$5610>>2]|0;
-  $5612 = $5611 ^ $5601;
-  $5613 = HEAP8[$344>>0]|0;
-  $5614 = $5613 ^ 117;
-  $5615 = $5614&255;
-  $5616 = (10176 + ($5615)|0);
-  $5617 = HEAP8[$5616>>0]|0;
-  $5618 = HEAP8[$160>>0]|0;
-  $5619 = $5618 ^ $5617;
-  $5620 = $5619&255;
-  $5621 = (12736 + ($5620<<2)|0);
-  $5622 = HEAP32[$5621>>2]|0;
-  $5623 = $5612 ^ $5622;
-  $5624 = HEAP8[$368>>0]|0;
-  $5625 = $5624 ^ 15;
-  $5626 = $5625&255;
-  $5627 = (10176 + ($5626)|0);
-  $5628 = HEAP8[$5627>>0]|0;
-  $5629 = HEAP8[$184>>0]|0;
-  $5630 = $5629 ^ $5628;
-  $5631 = $5630&255;
-  $5632 = (13760 + ($5631<<2)|0);
-  $5633 = HEAP32[$5632>>2]|0;
-  $5634 = $5623 ^ $5633;
-  $5635 = $5634 << 8;
-  $5636 = $5634 >>> 24;
-  $5637 = $5635 | $5636;
-  $5638 = (($5637) + ($5591))|0;
-  $5639 = (($5638) + ($5637))|0;
-  $5640 = ((($0)) + 4192|0);
-  HEAP32[$5640>>2] = $5638;
-  $5641 = $5639 << 9;
-  $5642 = $5639 >>> 23;
-  $5643 = $5641 | $5642;
-  $5644 = ((($0)) + 4196|0);
-  HEAP32[$5644>>2] = $5643;
-  $5645 = HEAP8[$208>>0]|0;
-  $5646 = $5645 ^ 55;
-  $5647 = $5646&255;
-  $5648 = (10432 + ($5647)|0);
-  $5649 = HEAP8[$5648>>0]|0;
-  $5650 = HEAP8[$1>>0]|0;
-  $5651 = $5650 ^ $5649;
-  $5652 = $5651&255;
-  $5653 = (10688 + ($5652<<2)|0);
-  $5654 = HEAP32[$5653>>2]|0;
-  $5655 = HEAP8[$224>>0]|0;
-  $5656 = $5655 ^ -8;
-  $5657 = $5656&255;
-  $5658 = (10432 + ($5657)|0);
-  $5659 = HEAP8[$5658>>0]|0;
-  $5660 = HEAP8[$40>>0]|0;
-  $5661 = $5660 ^ $5659;
-  $5662 = $5661&255;
-  $5663 = (11712 + ($5662<<2)|0);
-  $5664 = HEAP32[$5663>>2]|0;
-  $5665 = $5664 ^ $5654;
-  $5666 = HEAP8[$248>>0]|0;
-  $5667 = $5666 ^ 55;
-  $5668 = $5667&255;
-  $5669 = (10176 + ($5668)|0);
-  $5670 = HEAP8[$5669>>0]|0;
-  $5671 = HEAP8[$64>>0]|0;
-  $5672 = $5671 ^ $5670;
-  $5673 = $5672&255;
-  $5674 = (12736 + ($5673<<2)|0);
-  $5675 = HEAP32[$5674>>2]|0;
-  $5676 = $5665 ^ $5675;
-  $5677 = HEAP8[$272>>0]|0;
-  $5678 = $5677 ^ -8;
-  $5679 = $5678&255;
-  $5680 = (10176 + ($5679)|0);
-  $5681 = HEAP8[$5680>>0]|0;
-  $5682 = HEAP8[$88>>0]|0;
-  $5683 = $5682 ^ $5681;
-  $5684 = $5683&255;
-  $5685 = (13760 + ($5684<<2)|0);
-  $5686 = HEAP32[$5685>>2]|0;
-  $5687 = $5676 ^ $5686;
-  $5688 = HEAP8[$296>>0]|0;
-  $5689 = $5688 ^ 38;
-  $5690 = $5689&255;
-  $5691 = (10432 + ($5690)|0);
-  $5692 = HEAP8[$5691>>0]|0;
-  $5693 = HEAP8[$112>>0]|0;
-  $5694 = $5693 ^ $5692;
-  $5695 = $5694&255;
-  $5696 = (10688 + ($5695<<2)|0);
-  $5697 = HEAP32[$5696>>2]|0;
-  $5698 = HEAP8[$320>>0]|0;
-  $5699 = $5698 ^ 27;
-  $5700 = $5699&255;
-  $5701 = (10432 + ($5700)|0);
-  $5702 = HEAP8[$5701>>0]|0;
-  $5703 = HEAP8[$136>>0]|0;
-  $5704 = $5703 ^ $5702;
-  $5705 = $5704&255;
-  $5706 = (11712 + ($5705<<2)|0);
-  $5707 = HEAP32[$5706>>2]|0;
-  $5708 = $5707 ^ $5697;
-  $5709 = HEAP8[$344>>0]|0;
-  $5710 = $5709 ^ 38;
-  $5711 = $5710&255;
-  $5712 = (10176 + ($5711)|0);
-  $5713 = HEAP8[$5712>>0]|0;
-  $5714 = HEAP8[$160>>0]|0;
-  $5715 = $5714 ^ $5713;
-  $5716 = $5715&255;
-  $5717 = (12736 + ($5716<<2)|0);
-  $5718 = HEAP32[$5717>>2]|0;
-  $5719 = $5708 ^ $5718;
-  $5720 = HEAP8[$368>>0]|0;
-  $5721 = $5720 ^ 27;
-  $5722 = $5721&255;
-  $5723 = (10176 + ($5722)|0);
-  $5724 = HEAP8[$5723>>0]|0;
-  $5725 = HEAP8[$184>>0]|0;
-  $5726 = $5725 ^ $5724;
-  $5727 = $5726&255;
-  $5728 = (13760 + ($5727<<2)|0);
-  $5729 = HEAP32[$5728>>2]|0;
-  $5730 = $5719 ^ $5729;
-  $5731 = $5730 << 8;
-  $5732 = $5730 >>> 24;
-  $5733 = $5731 | $5732;
-  $5734 = (($5733) + ($5687))|0;
-  $5735 = (($5734) + ($5733))|0;
-  $5736 = ((($0)) + 4200|0);
-  HEAP32[$5736>>2] = $5734;
-  $5737 = $5735 << 9;
-  $5738 = $5735 >>> 23;
-  $5739 = $5737 | $5738;
-  $5740 = ((($0)) + 4204|0);
-  HEAP32[$5740>>2] = $5739;
-  $5741 = HEAP8[$208>>0]|0;
-  $5742 = $5741 ^ -6;
-  $5743 = $5742&255;
-  $5744 = (10432 + ($5743)|0);
-  $5745 = HEAP8[$5744>>0]|0;
-  $5746 = HEAP8[$1>>0]|0;
-  $5747 = $5746 ^ $5745;
-  $5748 = $5747&255;
-  $5749 = (10688 + ($5748<<2)|0);
-  $5750 = HEAP32[$5749>>2]|0;
-  $5751 = HEAP8[$224>>0]|0;
-  $5752 = $5751 ^ -121;
-  $5753 = $5752&255;
-  $5754 = (10432 + ($5753)|0);
-  $5755 = HEAP8[$5754>>0]|0;
-  $5756 = HEAP8[$40>>0]|0;
-  $5757 = $5756 ^ $5755;
-  $5758 = $5757&255;
-  $5759 = (11712 + ($5758<<2)|0);
-  $5760 = HEAP32[$5759>>2]|0;
-  $5761 = $5760 ^ $5750;
-  $5762 = HEAP8[$248>>0]|0;
-  $5763 = $5762 ^ -6;
-  $5764 = $5763&255;
-  $5765 = (10176 + ($5764)|0);
-  $5766 = HEAP8[$5765>>0]|0;
-  $5767 = HEAP8[$64>>0]|0;
-  $5768 = $5767 ^ $5766;
-  $5769 = $5768&255;
-  $5770 = (12736 + ($5769<<2)|0);
-  $5771 = HEAP32[$5770>>2]|0;
-  $5772 = $5761 ^ $5771;
-  $5773 = HEAP8[$272>>0]|0;
-  $5774 = $5773 ^ -121;
-  $5775 = $5774&255;
-  $5776 = (10176 + ($5775)|0);
-  $5777 = HEAP8[$5776>>0]|0;
-  $5778 = HEAP8[$88>>0]|0;
-  $5779 = $5778 ^ $5777;
-  $5780 = $5779&255;
-  $5781 = (13760 + ($5780<<2)|0);
-  $5782 = HEAP32[$5781>>2]|0;
-  $5783 = $5772 ^ $5782;
-  $5784 = HEAP8[$296>>0]|0;
-  $5785 = $5784 ^ 19;
-  $5786 = $5785&255;
-  $5787 = (10432 + ($5786)|0);
-  $5788 = HEAP8[$5787>>0]|0;
-  $5789 = HEAP8[$112>>0]|0;
-  $5790 = $5789 ^ $5788;
-  $5791 = $5790&255;
-  $5792 = (10688 + ($5791<<2)|0);
-  $5793 = HEAP32[$5792>>2]|0;
-  $5794 = HEAP8[$320>>0]|0;
-  $5795 = $5794 ^ -6;
-  $5796 = $5795&255;
-  $5797 = (10432 + ($5796)|0);
-  $5798 = HEAP8[$5797>>0]|0;
-  $5799 = HEAP8[$136>>0]|0;
-  $5800 = $5799 ^ $5798;
-  $5801 = $5800&255;
-  $5802 = (11712 + ($5801<<2)|0);
-  $5803 = HEAP32[$5802>>2]|0;
-  $5804 = $5803 ^ $5793;
-  $5805 = HEAP8[$344>>0]|0;
-  $5806 = $5805 ^ 19;
-  $5807 = $5806&255;
-  $5808 = (10176 + ($5807)|0);
-  $5809 = HEAP8[$5808>>0]|0;
-  $5810 = HEAP8[$160>>0]|0;
-  $5811 = $5810 ^ $5809;
-  $5812 = $5811&255;
-  $5813 = (12736 + ($5812<<2)|0);
-  $5814 = HEAP32[$5813>>2]|0;
-  $5815 = $5804 ^ $5814;
-  $5816 = HEAP8[$368>>0]|0;
-  $5817 = $5816 ^ -6;
-  $5818 = $5817&255;
-  $5819 = (10176 + ($5818)|0);
-  $5820 = HEAP8[$5819>>0]|0;
-  $5821 = HEAP8[$184>>0]|0;
-  $5822 = $5821 ^ $5820;
-  $5823 = $5822&255;
-  $5824 = (13760 + ($5823<<2)|0);
-  $5825 = HEAP32[$5824>>2]|0;
-  $5826 = $5815 ^ $5825;
-  $5827 = $5826 << 8;
-  $5828 = $5826 >>> 24;
-  $5829 = $5827 | $5828;
-  $5830 = (($5829) + ($5783))|0;
-  $5831 = (($5830) + ($5829))|0;
-  $5832 = ((($0)) + 4208|0);
-  HEAP32[$5832>>2] = $5830;
-  $5833 = $5831 << 9;
-  $5834 = $5831 >>> 23;
-  $5835 = $5833 | $5834;
-  $5836 = ((($0)) + 4212|0);
-  HEAP32[$5836>>2] = $5835;
-  $5837 = HEAP8[$208>>0]|0;
-  $5838 = $5837 ^ -108;
-  $5839 = $5838&255;
-  $5840 = (10432 + ($5839)|0);
-  $5841 = HEAP8[$5840>>0]|0;
-  $5842 = HEAP8[$1>>0]|0;
-  $5843 = $5842 ^ $5841;
-  $5844 = $5843&255;
-  $5845 = (10688 + ($5844<<2)|0);
-  $5846 = HEAP32[$5845>>2]|0;
-  $5847 = HEAP8[$224>>0]|0;
-  $5848 = $5847 ^ 6;
-  $5849 = $5848&255;
-  $5850 = (10432 + ($5849)|0);
-  $5851 = HEAP8[$5850>>0]|0;
-  $5852 = HEAP8[$40>>0]|0;
-  $5853 = $5852 ^ $5851;
-  $5854 = $5853&255;
-  $5855 = (11712 + ($5854<<2)|0);
-  $5856 = HEAP32[$5855>>2]|0;
-  $5857 = $5856 ^ $5846;
-  $5858 = HEAP8[$248>>0]|0;
-  $5859 = $5858 ^ -108;
-  $5860 = $5859&255;
-  $5861 = (10176 + ($5860)|0);
-  $5862 = HEAP8[$5861>>0]|0;
-  $5863 = HEAP8[$64>>0]|0;
-  $5864 = $5863 ^ $5862;
-  $5865 = $5864&255;
-  $5866 = (12736 + ($5865<<2)|0);
-  $5867 = HEAP32[$5866>>2]|0;
-  $5868 = $5857 ^ $5867;
-  $5869 = HEAP8[$272>>0]|0;
-  $5870 = $5869 ^ 6;
-  $5871 = $5870&255;
-  $5872 = (10176 + ($5871)|0);
-  $5873 = HEAP8[$5872>>0]|0;
-  $5874 = HEAP8[$88>>0]|0;
-  $5875 = $5874 ^ $5873;
-  $5876 = $5875&255;
-  $5877 = (13760 + ($5876<<2)|0);
-  $5878 = HEAP32[$5877>>2]|0;
-  $5879 = $5868 ^ $5878;
-  $5880 = HEAP8[$296>>0]|0;
-  $5881 = $5880 ^ 72;
-  $5882 = $5881&255;
-  $5883 = (10432 + ($5882)|0);
-  $5884 = HEAP8[$5883>>0]|0;
-  $5885 = HEAP8[$112>>0]|0;
-  $5886 = $5885 ^ $5884;
-  $5887 = $5886&255;
-  $5888 = (10688 + ($5887<<2)|0);
-  $5889 = HEAP32[$5888>>2]|0;
-  $5890 = HEAP8[$320>>0]|0;
-  $5891 = $5890 ^ 63;
-  $5892 = $5891&255;
-  $5893 = (10432 + ($5892)|0);
-  $5894 = HEAP8[$5893>>0]|0;
-  $5895 = HEAP8[$136>>0]|0;
-  $5896 = $5895 ^ $5894;
-  $5897 = $5896&255;
-  $5898 = (11712 + ($5897<<2)|0);
-  $5899 = HEAP32[$5898>>2]|0;
-  $5900 = $5899 ^ $5889;
-  $5901 = HEAP8[$344>>0]|0;
-  $5902 = $5901 ^ 72;
-  $5903 = $5902&255;
-  $5904 = (10176 + ($5903)|0);
-  $5905 = HEAP8[$5904>>0]|0;
-  $5906 = HEAP8[$160>>0]|0;
-  $5907 = $5906 ^ $5905;
-  $5908 = $5907&255;
-  $5909 = (12736 + ($5908<<2)|0);
-  $5910 = HEAP32[$5909>>2]|0;
-  $5911 = $5900 ^ $5910;
-  $5912 = HEAP8[$368>>0]|0;
-  $5913 = $5912 ^ 63;
-  $5914 = $5913&255;
-  $5915 = (10176 + ($5914)|0);
-  $5916 = HEAP8[$5915>>0]|0;
-  $5917 = HEAP8[$184>>0]|0;
-  $5918 = $5917 ^ $5916;
-  $5919 = $5918&255;
-  $5920 = (13760 + ($5919<<2)|0);
-  $5921 = HEAP32[$5920>>2]|0;
-  $5922 = $5911 ^ $5921;
-  $5923 = $5922 << 8;
-  $5924 = $5922 >>> 24;
-  $5925 = $5923 | $5924;
-  $5926 = (($5925) + ($5879))|0;
-  $5927 = (($5926) + ($5925))|0;
-  $5928 = ((($0)) + 4216|0);
-  HEAP32[$5928>>2] = $5926;
-  $5929 = $5927 << 9;
-  $5930 = $5927 >>> 23;
-  $5931 = $5929 | $5930;
-  $5932 = ((($0)) + 4220|0);
-  HEAP32[$5932>>2] = $5931;
-  $5933 = HEAP8[$208>>0]|0;
-  $5934 = $5933 ^ -14;
-  $5935 = $5934&255;
-  $5936 = (10432 + ($5935)|0);
-  $5937 = HEAP8[$5936>>0]|0;
-  $5938 = HEAP8[$1>>0]|0;
-  $5939 = $5938 ^ $5937;
-  $5940 = $5939&255;
-  $5941 = (10688 + ($5940<<2)|0);
-  $5942 = HEAP32[$5941>>2]|0;
-  $5943 = HEAP8[$224>>0]|0;
-  $5944 = $5943 ^ 94;
-  $5945 = $5944&255;
-  $5946 = (10432 + ($5945)|0);
-  $5947 = HEAP8[$5946>>0]|0;
-  $5948 = HEAP8[$40>>0]|0;
-  $5949 = $5948 ^ $5947;
-  $5950 = $5949&255;
-  $5951 = (11712 + ($5950<<2)|0);
-  $5952 = HEAP32[$5951>>2]|0;
-  $5953 = $5952 ^ $5942;
-  $5954 = HEAP8[$248>>0]|0;
-  $5955 = $5954 ^ -14;
-  $5956 = $5955&255;
-  $5957 = (10176 + ($5956)|0);
-  $5958 = HEAP8[$5957>>0]|0;
-  $5959 = HEAP8[$64>>0]|0;
-  $5960 = $5959 ^ $5958;
-  $5961 = $5960&255;
-  $5962 = (12736 + ($5961<<2)|0);
-  $5963 = HEAP32[$5962>>2]|0;
-  $5964 = $5953 ^ $5963;
-  $5965 = HEAP8[$272>>0]|0;
-  $5966 = $5965 ^ 94;
-  $5967 = $5966&255;
-  $5968 = (10176 + ($5967)|0);
-  $5969 = HEAP8[$5968>>0]|0;
-  $5970 = HEAP8[$88>>0]|0;
-  $5971 = $5970 ^ $5969;
-  $5972 = $5971&255;
-  $5973 = (13760 + ($5972<<2)|0);
-  $5974 = HEAP32[$5973>>2]|0;
-  $5975 = $5964 ^ $5974;
-  $5976 = HEAP8[$296>>0]|0;
-  $5977 = $5976 ^ -48;
-  $5978 = $5977&255;
-  $5979 = (10432 + ($5978)|0);
-  $5980 = HEAP8[$5979>>0]|0;
-  $5981 = HEAP8[$112>>0]|0;
-  $5982 = $5981 ^ $5980;
-  $5983 = $5982&255;
-  $5984 = (10688 + ($5983<<2)|0);
-  $5985 = HEAP32[$5984>>2]|0;
-  $5986 = HEAP8[$320>>0]|0;
-  $5987 = $5986 ^ -70;
-  $5988 = $5987&255;
-  $5989 = (10432 + ($5988)|0);
-  $5990 = HEAP8[$5989>>0]|0;
-  $5991 = HEAP8[$136>>0]|0;
-  $5992 = $5991 ^ $5990;
-  $5993 = $5992&255;
-  $5994 = (11712 + ($5993<<2)|0);
-  $5995 = HEAP32[$5994>>2]|0;
-  $5996 = $5995 ^ $5985;
-  $5997 = HEAP8[$344>>0]|0;
-  $5998 = $5997 ^ -48;
-  $5999 = $5998&255;
-  $6000 = (10176 + ($5999)|0);
-  $6001 = HEAP8[$6000>>0]|0;
-  $6002 = HEAP8[$160>>0]|0;
-  $6003 = $6002 ^ $6001;
-  $6004 = $6003&255;
-  $6005 = (12736 + ($6004<<2)|0);
-  $6006 = HEAP32[$6005>>2]|0;
-  $6007 = $5996 ^ $6006;
-  $6008 = HEAP8[$368>>0]|0;
-  $6009 = $6008 ^ -70;
-  $6010 = $6009&255;
-  $6011 = (10176 + ($6010)|0);
-  $6012 = HEAP8[$6011>>0]|0;
-  $6013 = HEAP8[$184>>0]|0;
-  $6014 = $6013 ^ $6012;
-  $6015 = $6014&255;
-  $6016 = (13760 + ($6015<<2)|0);
-  $6017 = HEAP32[$6016>>2]|0;
-  $6018 = $6007 ^ $6017;
-  $6019 = $6018 << 8;
-  $6020 = $6018 >>> 24;
-  $6021 = $6019 | $6020;
-  $6022 = (($6021) + ($5975))|0;
-  $6023 = (($6022) + ($6021))|0;
-  $6024 = ((($0)) + 4224|0);
-  HEAP32[$6024>>2] = $6022;
-  $6025 = $6023 << 9;
-  $6026 = $6023 >>> 23;
-  $6027 = $6025 | $6026;
-  $6028 = ((($0)) + 4228|0);
-  HEAP32[$6028>>2] = $6027;
-  $6029 = HEAP8[$208>>0]|0;
-  $6030 = $6029 ^ -117;
-  $6031 = $6030&255;
-  $6032 = (10432 + ($6031)|0);
-  $6033 = HEAP8[$6032>>0]|0;
-  $6034 = HEAP8[$1>>0]|0;
-  $6035 = $6034 ^ $6033;
-  $6036 = $6035&255;
-  $6037 = (10688 + ($6036<<2)|0);
-  $6038 = HEAP32[$6037>>2]|0;
-  $6039 = HEAP8[$224>>0]|0;
-  $6040 = $6039 ^ -82;
-  $6041 = $6040&255;
-  $6042 = (10432 + ($6041)|0);
-  $6043 = HEAP8[$6042>>0]|0;
-  $6044 = HEAP8[$40>>0]|0;
-  $6045 = $6044 ^ $6043;
-  $6046 = $6045&255;
-  $6047 = (11712 + ($6046<<2)|0);
-  $6048 = HEAP32[$6047>>2]|0;
-  $6049 = $6048 ^ $6038;
-  $6050 = HEAP8[$248>>0]|0;
-  $6051 = $6050 ^ -117;
-  $6052 = $6051&255;
-  $6053 = (10176 + ($6052)|0);
-  $6054 = HEAP8[$6053>>0]|0;
-  $6055 = HEAP8[$64>>0]|0;
-  $6056 = $6055 ^ $6054;
-  $6057 = $6056&255;
-  $6058 = (12736 + ($6057<<2)|0);
-  $6059 = HEAP32[$6058>>2]|0;
-  $6060 = $6049 ^ $6059;
-  $6061 = HEAP8[$272>>0]|0;
-  $6062 = $6061 ^ -82;
-  $6063 = $6062&255;
-  $6064 = (10176 + ($6063)|0);
-  $6065 = HEAP8[$6064>>0]|0;
-  $6066 = HEAP8[$88>>0]|0;
-  $6067 = $6066 ^ $6065;
-  $6068 = $6067&255;
-  $6069 = (13760 + ($6068<<2)|0);
-  $6070 = HEAP32[$6069>>2]|0;
-  $6071 = $6060 ^ $6070;
-  $6072 = HEAP8[$296>>0]|0;
-  $6073 = $6072 ^ 48;
-  $6074 = $6073&255;
-  $6075 = (10432 + ($6074)|0);
-  $6076 = HEAP8[$6075>>0]|0;
-  $6077 = HEAP8[$112>>0]|0;
-  $6078 = $6077 ^ $6076;
-  $6079 = $6078&255;
-  $6080 = (10688 + ($6079<<2)|0);
-  $6081 = HEAP32[$6080>>2]|0;
-  $6082 = HEAP8[$320>>0]|0;
-  $6083 = $6082 ^ 91;
-  $6084 = $6083&255;
-  $6085 = (10432 + ($6084)|0);
-  $6086 = HEAP8[$6085>>0]|0;
-  $6087 = HEAP8[$136>>0]|0;
-  $6088 = $6087 ^ $6086;
-  $6089 = $6088&255;
-  $6090 = (11712 + ($6089<<2)|0);
-  $6091 = HEAP32[$6090>>2]|0;
-  $6092 = $6091 ^ $6081;
-  $6093 = HEAP8[$344>>0]|0;
-  $6094 = $6093 ^ 48;
-  $6095 = $6094&255;
-  $6096 = (10176 + ($6095)|0);
-  $6097 = HEAP8[$6096>>0]|0;
-  $6098 = HEAP8[$160>>0]|0;
-  $6099 = $6098 ^ $6097;
-  $6100 = $6099&255;
-  $6101 = (12736 + ($6100<<2)|0);
-  $6102 = HEAP32[$6101>>2]|0;
-  $6103 = $6092 ^ $6102;
-  $6104 = HEAP8[$368>>0]|0;
-  $6105 = $6104 ^ 91;
-  $6106 = $6105&255;
-  $6107 = (10176 + ($6106)|0);
-  $6108 = HEAP8[$6107>>0]|0;
-  $6109 = HEAP8[$184>>0]|0;
-  $6110 = $6109 ^ $6108;
-  $6111 = $6110&255;
-  $6112 = (13760 + ($6111<<2)|0);
-  $6113 = HEAP32[$6112>>2]|0;
-  $6114 = $6103 ^ $6113;
-  $6115 = $6114 << 8;
-  $6116 = $6114 >>> 24;
-  $6117 = $6115 | $6116;
-  $6118 = (($6117) + ($6071))|0;
-  $6119 = (($6118) + ($6117))|0;
-  $6120 = ((($0)) + 4232|0);
-  HEAP32[$6120>>2] = $6118;
-  $6121 = $6119 << 9;
-  $6122 = $6119 >>> 23;
-  $6123 = $6121 | $6122;
-  $6124 = ((($0)) + 4236|0);
-  HEAP32[$6124>>2] = $6123;
-  $6125 = HEAP8[$208>>0]|0;
-  $6126 = $6125 ^ -124;
-  $6127 = $6126&255;
-  $6128 = (10432 + ($6127)|0);
-  $6129 = HEAP8[$6128>>0]|0;
-  $6130 = HEAP8[$1>>0]|0;
-  $6131 = $6130 ^ $6129;
-  $6132 = $6131&255;
-  $6133 = (10688 + ($6132<<2)|0);
-  $6134 = HEAP32[$6133>>2]|0;
-  $6135 = HEAP8[$224>>0]|0;
-  $6136 = $6135 ^ -118;
-  $6137 = $6136&255;
-  $6138 = (10432 + ($6137)|0);
-  $6139 = HEAP8[$6138>>0]|0;
-  $6140 = HEAP8[$40>>0]|0;
-  $6141 = $6140 ^ $6139;
-  $6142 = $6141&255;
-  $6143 = (11712 + ($6142<<2)|0);
-  $6144 = HEAP32[$6143>>2]|0;
-  $6145 = $6144 ^ $6134;
-  $6146 = HEAP8[$248>>0]|0;
-  $6147 = $6146 ^ -124;
-  $6148 = $6147&255;
-  $6149 = (10176 + ($6148)|0);
-  $6150 = HEAP8[$6149>>0]|0;
-  $6151 = HEAP8[$64>>0]|0;
-  $6152 = $6151 ^ $6150;
-  $6153 = $6152&255;
-  $6154 = (12736 + ($6153<<2)|0);
-  $6155 = HEAP32[$6154>>2]|0;
-  $6156 = $6145 ^ $6155;
-  $6157 = HEAP8[$272>>0]|0;
-  $6158 = $6157 ^ -118;
-  $6159 = $6158&255;
-  $6160 = (10176 + ($6159)|0);
-  $6161 = HEAP8[$6160>>0]|0;
-  $6162 = HEAP8[$88>>0]|0;
-  $6163 = $6162 ^ $6161;
-  $6164 = $6163&255;
-  $6165 = (13760 + ($6164<<2)|0);
-  $6166 = HEAP32[$6165>>2]|0;
-  $6167 = $6156 ^ $6166;
-  $6168 = HEAP8[$296>>0]|0;
-  $6169 = $6168 ^ 84;
-  $6170 = $6169&255;
-  $6171 = (10432 + ($6170)|0);
-  $6172 = HEAP8[$6171>>0]|0;
-  $6173 = HEAP8[$112>>0]|0;
-  $6174 = $6173 ^ $6172;
-  $6175 = $6174&255;
-  $6176 = (10688 + ($6175<<2)|0);
-  $6177 = HEAP32[$6176>>2]|0;
-  $6178 = HEAP8[$320>>0]|0;
-  $6179 = $6178&255;
-  $6180 = (10432 + ($6179)|0);
-  $6181 = HEAP8[$6180>>0]|0;
-  $6182 = HEAP8[$136>>0]|0;
-  $6183 = $6182 ^ $6181;
-  $6184 = $6183&255;
-  $6185 = (11712 + ($6184<<2)|0);
-  $6186 = HEAP32[$6185>>2]|0;
-  $6187 = $6186 ^ $6177;
-  $6188 = HEAP8[$344>>0]|0;
-  $6189 = $6188 ^ 84;
-  $6190 = $6189&255;
-  $6191 = (10176 + ($6190)|0);
-  $6192 = HEAP8[$6191>>0]|0;
-  $6193 = HEAP8[$160>>0]|0;
-  $6194 = $6193 ^ $6192;
-  $6195 = $6194&255;
-  $6196 = (12736 + ($6195<<2)|0);
-  $6197 = HEAP32[$6196>>2]|0;
-  $6198 = $6187 ^ $6197;
-  $6199 = HEAP8[$368>>0]|0;
-  $6200 = $6199&255;
-  $6201 = (10176 + ($6200)|0);
-  $6202 = HEAP8[$6201>>0]|0;
-  $6203 = HEAP8[$184>>0]|0;
-  $6204 = $6203 ^ $6202;
-  $6205 = $6204&255;
-  $6206 = (13760 + ($6205<<2)|0);
-  $6207 = HEAP32[$6206>>2]|0;
-  $6208 = $6198 ^ $6207;
-  $6209 = $6208 << 8;
-  $6210 = $6208 >>> 24;
-  $6211 = $6209 | $6210;
-  $6212 = (($6211) + ($6167))|0;
-  $6213 = (($6212) + ($6211))|0;
-  $6214 = ((($0)) + 4240|0);
-  HEAP32[$6214>>2] = $6212;
-  $6215 = $6213 << 9;
-  $6216 = $6213 >>> 23;
-  $6217 = $6215 | $6216;
-  $6218 = ((($0)) + 4244|0);
-  HEAP32[$6218>>2] = $6217;
-  $6219 = HEAP8[$208>>0]|0;
-  $6220 = $6219 ^ -33;
-  $6221 = $6220&255;
-  $6222 = (10432 + ($6221)|0);
-  $6223 = HEAP8[$6222>>0]|0;
-  $6224 = HEAP8[$1>>0]|0;
-  $6225 = $6224 ^ $6223;
-  $6226 = $6225&255;
-  $6227 = (10688 + ($6226<<2)|0);
-  $6228 = HEAP32[$6227>>2]|0;
-  $6229 = HEAP8[$224>>0]|0;
-  $6230 = $6229 ^ -68;
-  $6231 = $6230&255;
-  $6232 = (10432 + ($6231)|0);
-  $6233 = HEAP8[$6232>>0]|0;
-  $6234 = HEAP8[$40>>0]|0;
-  $6235 = $6234 ^ $6233;
-  $6236 = $6235&255;
-  $6237 = (11712 + ($6236<<2)|0);
-  $6238 = HEAP32[$6237>>2]|0;
-  $6239 = $6238 ^ $6228;
-  $6240 = HEAP8[$248>>0]|0;
-  $6241 = $6240 ^ -33;
-  $6242 = $6241&255;
-  $6243 = (10176 + ($6242)|0);
-  $6244 = HEAP8[$6243>>0]|0;
-  $6245 = HEAP8[$64>>0]|0;
-  $6246 = $6245 ^ $6244;
-  $6247 = $6246&255;
-  $6248 = (12736 + ($6247<<2)|0);
-  $6249 = HEAP32[$6248>>2]|0;
-  $6250 = $6239 ^ $6249;
-  $6251 = HEAP8[$272>>0]|0;
-  $6252 = $6251 ^ -68;
-  $6253 = $6252&255;
-  $6254 = (10176 + ($6253)|0);
-  $6255 = HEAP8[$6254>>0]|0;
-  $6256 = HEAP8[$88>>0]|0;
-  $6257 = $6256 ^ $6255;
-  $6258 = $6257&255;
-  $6259 = (13760 + ($6258<<2)|0);
-  $6260 = HEAP32[$6259>>2]|0;
-  $6261 = $6250 ^ $6260;
-  $6262 = HEAP8[$296>>0]|0;
-  $6263 = $6262 ^ 35;
-  $6264 = $6263&255;
-  $6265 = (10432 + ($6264)|0);
-  $6266 = HEAP8[$6265>>0]|0;
-  $6267 = HEAP8[$112>>0]|0;
-  $6268 = $6267 ^ $6266;
-  $6269 = $6268&255;
-  $6270 = (10688 + ($6269<<2)|0);
-  $6271 = HEAP32[$6270>>2]|0;
-  $6272 = HEAP8[$320>>0]|0;
-  $6273 = $6272 ^ -99;
-  $6274 = $6273&255;
-  $6275 = (10432 + ($6274)|0);
-  $6276 = HEAP8[$6275>>0]|0;
-  $6277 = HEAP8[$136>>0]|0;
-  $6278 = $6277 ^ $6276;
-  $6279 = $6278&255;
-  $6280 = (11712 + ($6279<<2)|0);
-  $6281 = HEAP32[$6280>>2]|0;
-  $6282 = $6281 ^ $6271;
-  $6283 = HEAP8[$344>>0]|0;
-  $6284 = $6283 ^ 35;
-  $6285 = $6284&255;
-  $6286 = (10176 + ($6285)|0);
-  $6287 = HEAP8[$6286>>0]|0;
-  $6288 = HEAP8[$160>>0]|0;
-  $6289 = $6288 ^ $6287;
-  $6290 = $6289&255;
-  $6291 = (12736 + ($6290<<2)|0);
-  $6292 = HEAP32[$6291>>2]|0;
-  $6293 = $6282 ^ $6292;
-  $6294 = HEAP8[$368>>0]|0;
-  $6295 = $6294 ^ -99;
-  $6296 = $6295&255;
-  $6297 = (10176 + ($6296)|0);
-  $6298 = HEAP8[$6297>>0]|0;
-  $6299 = HEAP8[$184>>0]|0;
-  $6300 = $6299 ^ $6298;
-  $6301 = $6300&255;
-  $6302 = (13760 + ($6301<<2)|0);
-  $6303 = HEAP32[$6302>>2]|0;
-  $6304 = $6293 ^ $6303;
-  $6305 = $6304 << 8;
-  $6306 = $6304 >>> 24;
-  $6307 = $6305 | $6306;
-  $6308 = (($6307) + ($6261))|0;
-  $6309 = (($6308) + ($6307))|0;
-  $6310 = ((($0)) + 4248|0);
-  HEAP32[$6310>>2] = $6308;
-  $6311 = $6309 << 9;
-  $6312 = $6309 >>> 23;
-  $6313 = $6311 | $6312;
-  $6314 = ((($0)) + 4252|0);
-  HEAP32[$6314>>2] = $6313;
-  $$01913 = 0;
-  STACKTOP = sp;return ($$01913|0);
- }
- $393 = ((($1)) + 16|0);
- $394 = HEAP8[$393>>0]|0;
- $395 = ($394<<24>>24)==(0);
- if ($395) {
-  $$01819 = 0;$$01827 = 0;$$01835 = 0;
- } else {
-  $396 = $394&255;
-  $397 = (($396) + -1)|0;
-  $398 = (8912 + ($397)|0);
-  $399 = HEAP8[$398>>0]|0;
-  $400 = $399&255;
-  $401 = (9168 + ($400)|0);
-  $402 = HEAP8[$401>>0]|0;
-  $403 = (($400) + 45)|0;
-  $404 = (9168 + ($403)|0);
-  $405 = HEAP8[$404>>0]|0;
-  $406 = (($400) + 1)|0;
-  $407 = (9168 + ($406)|0);
-  $408 = HEAP8[$407>>0]|0;
-  $$01819 = $408;$$01827 = $405;$$01835 = $402;
- }
- $409 = ((($1)) + 17|0);
- $410 = HEAP8[$409>>0]|0;
- $411 = ($410<<24>>24)==(0);
- if ($411) {
-  $$11812 = $$01827;$$11820 = $$01819;$$11828 = $$01827;$$11836 = $$01835;
- } else {
-  $412 = $410&255;
-  $413 = (($412) + -1)|0;
-  $414 = (8912 + ($413)|0);
-  $415 = HEAP8[$414>>0]|0;
-  $416 = $415&255;
-  $417 = (($416) + 45)|0;
-  $418 = (9168 + ($417)|0);
-  $419 = HEAP8[$418>>0]|0;
-  $420 = $419 ^ $$01835;
-  $421 = (($416) + 164)|0;
-  $422 = (9168 + ($421)|0);
-  $423 = HEAP8[$422>>0]|0;
-  $424 = $423 ^ $$01827;
-  $425 = (($416) + 68)|0;
-  $426 = (9168 + ($425)|0);
-  $427 = HEAP8[$426>>0]|0;
-  $428 = $427 ^ $$01819;
-  $429 = (($416) + 138)|0;
-  $430 = (9168 + ($429)|0);
-  $431 = HEAP8[$430>>0]|0;
-  $432 = $431 ^ $$01827;
-  $$11812 = $432;$$11820 = $428;$$11828 = $424;$$11836 = $420;
- }
- $433 = ((($1)) + 18|0);
- $434 = HEAP8[$433>>0]|0;
- $435 = ($434<<24>>24)==(0);
- if ($435) {
-  $$21813 = $$11812;$$21821 = $$11820;$$21829 = $$11828;$$21837 = $$11836;
- } else {
-  $436 = $434&255;
-  $437 = (($436) + -1)|0;
-  $438 = (8912 + ($437)|0);
-  $439 = HEAP8[$438>>0]|0;
-  $440 = $439&255;
-  $441 = (($440) + 138)|0;
-  $442 = (9168 + ($441)|0);
-  $443 = HEAP8[$442>>0]|0;
-  $444 = $443 ^ $$11836;
-  $445 = (($440) + 213)|0;
-  $446 = (9168 + ($445)|0);
-  $447 = HEAP8[$446>>0]|0;
-  $448 = $447 ^ $$11828;
-  $449 = (($440) + 191)|0;
-  $450 = (9168 + ($449)|0);
-  $451 = HEAP8[$450>>0]|0;
-  $452 = $451 ^ $$11820;
-  $453 = (($440) + 209)|0;
-  $454 = (9168 + ($453)|0);
-  $455 = HEAP8[$454>>0]|0;
-  $456 = $455 ^ $$11812;
-  $$21813 = $456;$$21821 = $452;$$21829 = $448;$$21837 = $444;
- }
- $457 = ((($1)) + 19|0);
- $458 = HEAP8[$457>>0]|0;
- $459 = ($458<<24>>24)==(0);
- if ($459) {
-  $$31814 = $$21813;$$31822 = $$21821;$$31830 = $$21829;$$31838 = $$21837;
- } else {
-  $460 = $458&255;
-  $461 = (($460) + -1)|0;
-  $462 = (8912 + ($461)|0);
-  $463 = HEAP8[$462>>0]|0;
-  $464 = $463&255;
-  $465 = (($464) + 209)|0;
-  $466 = (9168 + ($465)|0);
-  $467 = HEAP8[$466>>0]|0;
-  $468 = $467 ^ $$21837;
-  $469 = (($464) + 127)|0;
-  $470 = (9168 + ($469)|0);
-  $471 = HEAP8[$470>>0]|0;
-  $472 = $471 ^ $$21829;
-  $473 = (($464) + 61)|0;
-  $474 = (9168 + ($473)|0);
-  $475 = HEAP8[$474>>0]|0;
-  $476 = $475 ^ $$21821;
-  $477 = (($464) + 153)|0;
-  $478 = (9168 + ($477)|0);
-  $479 = HEAP8[$478>>0]|0;
-  $480 = $479 ^ $$21813;
-  $$31814 = $480;$$31822 = $476;$$31830 = $472;$$31838 = $468;
- }
- $481 = ((($1)) + 20|0);
- $482 = HEAP8[$481>>0]|0;
- $483 = ($482<<24>>24)==(0);
- if ($483) {
-  $$41815 = $$31814;$$41823 = $$31822;$$41831 = $$31830;$$41839 = $$31838;
- } else {
-  $484 = $482&255;
-  $485 = (($484) + -1)|0;
-  $486 = (8912 + ($485)|0);
-  $487 = HEAP8[$486>>0]|0;
-  $488 = $487&255;
-  $489 = (($488) + 153)|0;
-  $490 = (9168 + ($489)|0);
-  $491 = HEAP8[$490>>0]|0;
-  $492 = $491 ^ $$31838;
-  $493 = (($488) + 70)|0;
-  $494 = (9168 + ($493)|0);
-  $495 = HEAP8[$494>>0]|0;
-  $496 = $495 ^ $$31830;
-  $497 = (($488) + 102)|0;
-  $498 = (9168 + ($497)|0);
-  $499 = HEAP8[$498>>0]|0;
-  $500 = $499 ^ $$31822;
-  $501 = (($488) + 150)|0;
-  $502 = (9168 + ($501)|0);
-  $503 = HEAP8[$502>>0]|0;
-  $504 = $503 ^ $$31814;
-  $$41815 = $504;$$41823 = $500;$$41831 = $496;$$41839 = $492;
- }
- $505 = ((($1)) + 21|0);
- $506 = HEAP8[$505>>0]|0;
- $507 = ($506<<24>>24)==(0);
- if ($507) {
-  $$51816 = $$41815;$$51824 = $$41823;$$51832 = $$41831;$$51840 = $$41839;
- } else {
-  $508 = $506&255;
-  $509 = (($508) + -1)|0;
-  $510 = (8912 + ($509)|0);
-  $511 = HEAP8[$510>>0]|0;
-  $512 = $511&255;
-  $513 = (($512) + 150)|0;
-  $514 = (9168 + ($513)|0);
-  $515 = HEAP8[$514>>0]|0;
-  $516 = $515 ^ $$41839;
-  $517 = (($512) + 60)|0;
-  $518 = (9168 + ($517)|0);
-  $519 = HEAP8[$518>>0]|0;
-  $520 = $519 ^ $$41831;
-  $521 = (($512) + 91)|0;
-  $522 = (9168 + ($521)|0);
-  $523 = HEAP8[$522>>0]|0;
-  $524 = $523 ^ $$41823;
-  $525 = (($512) + 237)|0;
-  $526 = (9168 + ($525)|0);
-  $527 = HEAP8[$526>>0]|0;
-  $528 = $527 ^ $$41815;
-  $$51816 = $528;$$51824 = $524;$$51832 = $520;$$51840 = $516;
- }
- $529 = ((($1)) + 22|0);
- $530 = HEAP8[$529>>0]|0;
- $531 = ($530<<24>>24)==(0);
- if ($531) {
-  $$61817 = $$51816;$$61825 = $$51824;$$61833 = $$51832;$$61841 = $$51840;
- } else {
-  $532 = $530&255;
-  $533 = (($532) + -1)|0;
-  $534 = (8912 + ($533)|0);
-  $535 = HEAP8[$534>>0]|0;
-  $536 = $535&255;
-  $537 = (($536) + 237)|0;
-  $538 = (9168 + ($537)|0);
-  $539 = HEAP8[$538>>0]|0;
-  $540 = $539 ^ $$51840;
-  $541 = (($536) + 55)|0;
-  $542 = (9168 + ($541)|0);
-  $543 = HEAP8[$542>>0]|0;
-  $544 = $543 ^ $$51832;
-  $545 = (($536) + 79)|0;
-  $546 = (9168 + ($545)|0);
-  $547 = HEAP8[$546>>0]|0;
-  $548 = $547 ^ $$51824;
-  $549 = (($536) + 224)|0;
-  $550 = (9168 + ($549)|0);
-  $551 = HEAP8[$550>>0]|0;
-  $552 = $551 ^ $$51816;
-  $$61817 = $552;$$61825 = $548;$$61833 = $544;$$61841 = $540;
- }
- $553 = ((($1)) + 23|0);
- $554 = HEAP8[$553>>0]|0;
- $555 = ($554<<24>>24)==(0);
- if ($555) {
-  $$71818 = $$61817;$$71826 = $$61825;$$71834 = $$61833;$$71842 = $$61841;
- } else {
-  $556 = $554&255;
-  $557 = (($556) + -1)|0;
-  $558 = (8912 + ($557)|0);
-  $559 = HEAP8[$558>>0]|0;
-  $560 = $559&255;
-  $561 = (($560) + 224)|0;
-  $562 = (9168 + ($561)|0);
-  $563 = HEAP8[$562>>0]|0;
-  $564 = $563 ^ $$61841;
-  $565 = (($560) + 208)|0;
-  $566 = (9168 + ($565)|0);
-  $567 = HEAP8[$566>>0]|0;
-  $568 = $567 ^ $$61833;
-  $569 = (($560) + 140)|0;
-  $570 = (9168 + ($569)|0);
-  $571 = HEAP8[$570>>0]|0;
-  $572 = $571 ^ $$61825;
-  $573 = (($560) + 23)|0;
-  $574 = (9168 + ($573)|0);
-  $575 = HEAP8[$574>>0]|0;
-  $576 = $575 ^ $$61817;
-  $$71818 = $576;$$71826 = $572;$$71834 = $568;$$71842 = $564;
- }
- $577 = ((($1)) + 24|0);
- $578 = HEAP8[$577>>0]|0;
- $579 = ($578<<24>>24)==(0);
- if ($579) {
-  $$01787 = 0;$$01795 = 0;$$01803 = 0;
- } else {
-  $580 = $578&255;
-  $581 = (($580) + -1)|0;
-  $582 = (8912 + ($581)|0);
-  $583 = HEAP8[$582>>0]|0;
-  $584 = $583&255;
-  $585 = (9168 + ($584)|0);
-  $586 = HEAP8[$585>>0]|0;
-  $587 = (($584) + 45)|0;
-  $588 = (9168 + ($587)|0);
-  $589 = HEAP8[$588>>0]|0;
-  $590 = (($584) + 1)|0;
-  $591 = (9168 + ($590)|0);
-  $592 = HEAP8[$591>>0]|0;
-  $$01787 = $592;$$01795 = $589;$$01803 = $586;
- }
- $593 = ((($1)) + 25|0);
- $594 = HEAP8[$593>>0]|0;
- $595 = ($594<<24>>24)==(0);
- if ($595) {
-  $$1 = $$01795;$$11788 = $$01787;$$11796 = $$01795;$$11804 = $$01803;
- } else {
-  $596 = $594&255;
-  $597 = (($596) + -1)|0;
-  $598 = (8912 + ($597)|0);
-  $599 = HEAP8[$598>>0]|0;
-  $600 = $599&255;
-  $601 = (($600) + 45)|0;
-  $602 = (9168 + ($601)|0);
-  $603 = HEAP8[$602>>0]|0;
-  $604 = $603 ^ $$01803;
-  $605 = (($600) + 164)|0;
-  $606 = (9168 + ($605)|0);
-  $607 = HEAP8[$606>>0]|0;
-  $608 = $607 ^ $$01795;
-  $609 = (($600) + 68)|0;
-  $610 = (9168 + ($609)|0);
-  $611 = HEAP8[$610>>0]|0;
-  $612 = $611 ^ $$01787;
-  $613 = (($600) + 138)|0;
-  $614 = (9168 + ($613)|0);
-  $615 = HEAP8[$614>>0]|0;
-  $616 = $615 ^ $$01795;
-  $$1 = $616;$$11788 = $612;$$11796 = $608;$$11804 = $604;
- }
- $617 = ((($1)) + 26|0);
- $618 = HEAP8[$617>>0]|0;
- $619 = ($618<<24>>24)==(0);
- if ($619) {
-  $$2 = $$1;$$21789 = $$11788;$$21797 = $$11796;$$21805 = $$11804;
- } else {
-  $620 = $618&255;
-  $621 = (($620) + -1)|0;
-  $622 = (8912 + ($621)|0);
-  $623 = HEAP8[$622>>0]|0;
-  $624 = $623&255;
-  $625 = (($624) + 138)|0;
-  $626 = (9168 + ($625)|0);
-  $627 = HEAP8[$626>>0]|0;
-  $628 = $627 ^ $$11804;
-  $629 = (($624) + 213)|0;
-  $630 = (9168 + ($629)|0);
-  $631 = HEAP8[$630>>0]|0;
-  $632 = $631 ^ $$11796;
-  $633 = (($624) + 191)|0;
-  $634 = (9168 + ($633)|0);
-  $635 = HEAP8[$634>>0]|0;
-  $636 = $635 ^ $$11788;
-  $637 = (($624) + 209)|0;
-  $638 = (9168 + ($637)|0);
-  $639 = HEAP8[$638>>0]|0;
-  $640 = $639 ^ $$1;
-  $$2 = $640;$$21789 = $636;$$21797 = $632;$$21805 = $628;
- }
- $641 = ((($1)) + 27|0);
- $642 = HEAP8[$641>>0]|0;
- $643 = ($642<<24>>24)==(0);
- if ($643) {
-  $$3 = $$2;$$31790 = $$21789;$$31798 = $$21797;$$31806 = $$21805;
- } else {
-  $644 = $642&255;
-  $645 = (($644) + -1)|0;
-  $646 = (8912 + ($645)|0);
-  $647 = HEAP8[$646>>0]|0;
-  $648 = $647&255;
-  $649 = (($648) + 209)|0;
-  $650 = (9168 + ($649)|0);
-  $651 = HEAP8[$650>>0]|0;
-  $652 = $651 ^ $$21805;
-  $653 = (($648) + 127)|0;
-  $654 = (9168 + ($653)|0);
-  $655 = HEAP8[$654>>0]|0;
-  $656 = $655 ^ $$21797;
-  $657 = (($648) + 61)|0;
-  $658 = (9168 + ($657)|0);
-  $659 = HEAP8[$658>>0]|0;
-  $660 = $659 ^ $$21789;
-  $661 = (($648) + 153)|0;
-  $662 = (9168 + ($661)|0);
-  $663 = HEAP8[$662>>0]|0;
-  $664 = $663 ^ $$2;
-  $$3 = $664;$$31790 = $660;$$31798 = $656;$$31806 = $652;
- }
- $665 = ((($1)) + 28|0);
- $666 = HEAP8[$665>>0]|0;
- $667 = ($666<<24>>24)==(0);
- if ($667) {
-  $$4 = $$3;$$41791 = $$31790;$$41799 = $$31798;$$41807 = $$31806;
- } else {
-  $668 = $666&255;
-  $669 = (($668) + -1)|0;
-  $670 = (8912 + ($669)|0);
-  $671 = HEAP8[$670>>0]|0;
-  $672 = $671&255;
-  $673 = (($672) + 153)|0;
-  $674 = (9168 + ($673)|0);
-  $675 = HEAP8[$674>>0]|0;
-  $676 = $675 ^ $$31806;
-  $677 = (($672) + 70)|0;
-  $678 = (9168 + ($677)|0);
-  $679 = HEAP8[$678>>0]|0;
-  $680 = $679 ^ $$31798;
-  $681 = (($672) + 102)|0;
-  $682 = (9168 + ($681)|0);
-  $683 = HEAP8[$682>>0]|0;
-  $684 = $683 ^ $$31790;
-  $685 = (($672) + 150)|0;
-  $686 = (9168 + ($685)|0);
-  $687 = HEAP8[$686>>0]|0;
-  $688 = $687 ^ $$3;
-  $$4 = $688;$$41791 = $684;$$41799 = $680;$$41807 = $676;
- }
- $689 = ((($1)) + 29|0);
- $690 = HEAP8[$689>>0]|0;
- $691 = ($690<<24>>24)==(0);
- if ($691) {
-  $$5 = $$4;$$51792 = $$41791;$$51800 = $$41799;$$51808 = $$41807;
- } else {
-  $692 = $690&255;
-  $693 = (($692) + -1)|0;
-  $694 = (8912 + ($693)|0);
-  $695 = HEAP8[$694>>0]|0;
-  $696 = $695&255;
-  $697 = (($696) + 150)|0;
-  $698 = (9168 + ($697)|0);
-  $699 = HEAP8[$698>>0]|0;
-  $700 = $699 ^ $$41807;
-  $701 = (($696) + 60)|0;
-  $702 = (9168 + ($701)|0);
-  $703 = HEAP8[$702>>0]|0;
-  $704 = $703 ^ $$41799;
-  $705 = (($696) + 91)|0;
-  $706 = (9168 + ($705)|0);
-  $707 = HEAP8[$706>>0]|0;
-  $708 = $707 ^ $$41791;
-  $709 = (($696) + 237)|0;
-  $710 = (9168 + ($709)|0);
-  $711 = HEAP8[$710>>0]|0;
-  $712 = $711 ^ $$4;
-  $$5 = $712;$$51792 = $708;$$51800 = $704;$$51808 = $700;
- }
- $713 = ((($1)) + 30|0);
- $714 = HEAP8[$713>>0]|0;
- $715 = ($714<<24>>24)==(0);
- if ($715) {
-  $$6 = $$5;$$61793 = $$51792;$$61801 = $$51800;$$61809 = $$51808;
- } else {
-  $716 = $714&255;
-  $717 = (($716) + -1)|0;
-  $718 = (8912 + ($717)|0);
-  $719 = HEAP8[$718>>0]|0;
-  $720 = $719&255;
-  $721 = (($720) + 237)|0;
-  $722 = (9168 + ($721)|0);
-  $723 = HEAP8[$722>>0]|0;
-  $724 = $723 ^ $$51808;
-  $725 = (($720) + 55)|0;
-  $726 = (9168 + ($725)|0);
-  $727 = HEAP8[$726>>0]|0;
-  $728 = $727 ^ $$51800;
-  $729 = (($720) + 79)|0;
-  $730 = (9168 + ($729)|0);
-  $731 = HEAP8[$730>>0]|0;
-  $732 = $731 ^ $$51792;
-  $733 = (($720) + 224)|0;
-  $734 = (9168 + ($733)|0);
-  $735 = HEAP8[$734>>0]|0;
-  $736 = $735 ^ $$5;
-  $$6 = $736;$$61793 = $732;$$61801 = $728;$$61809 = $724;
- }
- $737 = ((($1)) + 31|0);
- $738 = HEAP8[$737>>0]|0;
- $739 = ($738<<24>>24)==(0);
- if ($739) {
-  $$7 = $$6;$$71794 = $$61793;$$71802 = $$61801;$$71810 = $$61809;
- } else {
-  $740 = $738&255;
-  $741 = (($740) + -1)|0;
-  $742 = (8912 + ($741)|0);
-  $743 = HEAP8[$742>>0]|0;
-  $744 = $743&255;
-  $745 = (($744) + 224)|0;
-  $746 = (9168 + ($745)|0);
-  $747 = HEAP8[$746>>0]|0;
-  $748 = $747 ^ $$61809;
-  $749 = (($744) + 208)|0;
-  $750 = (9168 + ($749)|0);
-  $751 = HEAP8[$750>>0]|0;
-  $752 = $751 ^ $$61801;
-  $753 = (($744) + 140)|0;
-  $754 = (9168 + ($753)|0);
-  $755 = HEAP8[$754>>0]|0;
-  $756 = $755 ^ $$61793;
-  $757 = (($744) + 23)|0;
-  $758 = (9168 + ($757)|0);
-  $759 = HEAP8[$758>>0]|0;
-  $760 = $759 ^ $$6;
-  $$7 = $760;$$71794 = $756;$$71802 = $752;$$71810 = $748;
- }
- $$019071917 = 1;$$019091916 = 0;$$019111915 = 0;
- while(1) {
-  $761 = (9664 + ($$019071917)|0);
-  $762 = HEAP8[$761>>0]|0;
-  $763 = $762 ^ $$71906;
-  $764 = $763&255;
-  $765 = (10176 + ($764)|0);
-  $766 = HEAP8[$765>>0]|0;
-  $767 = $766 ^ $$71874;
-  $768 = $767&255;
-  $769 = (10432 + ($768)|0);
-  $770 = HEAP8[$769>>0]|0;
-  $771 = $770 ^ $$71842;
-  $772 = $771&255;
-  $773 = (10432 + ($772)|0);
-  $774 = HEAP8[$773>>0]|0;
-  $775 = $774 ^ $$71810;
-  $776 = $775&255;
-  $777 = (10688 + ($776<<2)|0);
-  $778 = HEAP32[$777>>2]|0;
-  $779 = (($0) + ($$019111915<<2)|0);
-  HEAP32[$779>>2] = $778;
-  $780 = (9664 + ($$019091916)|0);
-  $781 = HEAP8[$780>>0]|0;
-  $782 = $781 ^ $$71898;
-  $783 = $782&255;
-  $784 = (10176 + ($783)|0);
-  $785 = HEAP8[$784>>0]|0;
-  $786 = $785 ^ $$71866;
-  $787 = $786&255;
-  $788 = (10176 + ($787)|0);
-  $789 = HEAP8[$788>>0]|0;
-  $790 = $789 ^ $$71834;
-  $791 = $790&255;
-  $792 = (10432 + ($791)|0);
-  $793 = HEAP8[$792>>0]|0;
-  $794 = $793 ^ $$71802;
-  $795 = $794&255;
-  $796 = (11712 + ($795<<2)|0);
-  $797 = HEAP32[$796>>2]|0;
-  $798 = (((($0)) + 1024|0) + ($$019111915<<2)|0);
-  HEAP32[$798>>2] = $797;
-  $799 = $781 ^ $$71890;
-  $800 = $799&255;
-  $801 = (10432 + ($800)|0);
-  $802 = HEAP8[$801>>0]|0;
-  $803 = $802 ^ $$71858;
-  $804 = $803&255;
-  $805 = (10432 + ($804)|0);
-  $806 = HEAP8[$805>>0]|0;
-  $807 = $806 ^ $$71826;
-  $808 = $807&255;
-  $809 = (10176 + ($808)|0);
-  $810 = HEAP8[$809>>0]|0;
-  $811 = $810 ^ $$71794;
-  $812 = $811&255;
-  $813 = (12736 + ($812<<2)|0);
-  $814 = HEAP32[$813>>2]|0;
-  $815 = (((($0)) + 2048|0) + ($$019111915<<2)|0);
-  HEAP32[$815>>2] = $814;
-  $816 = $762 ^ $$71882;
-  $817 = $816&255;
-  $818 = (10432 + ($817)|0);
-  $819 = HEAP8[$818>>0]|0;
-  $820 = $819 ^ $$71850;
-  $821 = $820&255;
-  $822 = (10176 + ($821)|0);
-  $823 = HEAP8[$822>>0]|0;
-  $824 = $823 ^ $$71818;
-  $825 = $824&255;
-  $826 = (10176 + ($825)|0);
-  $827 = HEAP8[$826>>0]|0;
-  $828 = $827 ^ $$7;
-  $829 = $828&255;
-  $830 = (13760 + ($829<<2)|0);
-  $831 = HEAP32[$830>>2]|0;
-  $832 = (((($0)) + 3072|0) + ($$019111915<<2)|0);
-  HEAP32[$832>>2] = $831;
-  $833 = (($$019111915) + 1)|0;
-  $834 = (($$019091916) + 2)|0;
-  $835 = (($$019071917) + 2)|0;
-  $exitcond = ($833|0)==(256);
-  if ($exitcond) {
-   break;
-  } else {
-   $$019071917 = $835;$$019091916 = $834;$$019111915 = $833;
-  }
- }
- $836 = HEAP8[$577>>0]|0;
- $837 = $836 ^ 117;
- $838 = $837&255;
- $839 = (10176 + ($838)|0);
- $840 = HEAP8[$839>>0]|0;
- $841 = HEAP8[$393>>0]|0;
- $842 = $841 ^ $840;
- $843 = $842&255;
- $844 = (10432 + ($843)|0);
- $845 = HEAP8[$844>>0]|0;
- $846 = HEAP8[$208>>0]|0;
- $847 = $846 ^ $845;
- $848 = $847&255;
- $849 = (10432 + ($848)|0);
- $850 = HEAP8[$849>>0]|0;
- $851 = HEAP8[$1>>0]|0;
- $852 = $851 ^ $850;
- $853 = $852&255;
- $854 = (10688 + ($853<<2)|0);
- $855 = HEAP32[$854>>2]|0;
- $856 = HEAP8[$593>>0]|0;
- $857 = $856 ^ -87;
- $858 = $857&255;
- $859 = (10176 + ($858)|0);
- $860 = HEAP8[$859>>0]|0;
- $861 = HEAP8[$409>>0]|0;
- $862 = $861 ^ $860;
- $863 = $862&255;
- $864 = (10176 + ($863)|0);
- $865 = HEAP8[$864>>0]|0;
- $866 = HEAP8[$224>>0]|0;
- $867 = $866 ^ $865;
- $868 = $867&255;
- $869 = (10432 + ($868)|0);
- $870 = HEAP8[$869>>0]|0;
- $871 = HEAP8[$40>>0]|0;
- $872 = $871 ^ $870;
- $873 = $872&255;
- $874 = (11712 + ($873<<2)|0);
- $875 = HEAP32[$874>>2]|0;
- $876 = $875 ^ $855;
- $877 = HEAP8[$617>>0]|0;
- $878 = $877 ^ -87;
- $879 = $878&255;
- $880 = (10432 + ($879)|0);
- $881 = HEAP8[$880>>0]|0;
- $882 = HEAP8[$433>>0]|0;
- $883 = $882 ^ $881;
- $884 = $883&255;
- $885 = (10432 + ($884)|0);
- $886 = HEAP8[$885>>0]|0;
- $887 = HEAP8[$248>>0]|0;
- $888 = $887 ^ $886;
- $889 = $888&255;
- $890 = (10176 + ($889)|0);
- $891 = HEAP8[$890>>0]|0;
- $892 = HEAP8[$64>>0]|0;
- $893 = $892 ^ $891;
- $894 = $893&255;
- $895 = (12736 + ($894<<2)|0);
- $896 = HEAP32[$895>>2]|0;
- $897 = $876 ^ $896;
- $898 = HEAP8[$641>>0]|0;
- $899 = $898 ^ 117;
- $900 = $899&255;
- $901 = (10432 + ($900)|0);
- $902 = HEAP8[$901>>0]|0;
- $903 = HEAP8[$457>>0]|0;
- $904 = $903 ^ $902;
- $905 = $904&255;
- $906 = (10176 + ($905)|0);
- $907 = HEAP8[$906>>0]|0;
- $908 = HEAP8[$272>>0]|0;
- $909 = $908 ^ $907;
- $910 = $909&255;
- $911 = (10176 + ($910)|0);
- $912 = HEAP8[$911>>0]|0;
- $913 = HEAP8[$88>>0]|0;
- $914 = $913 ^ $912;
- $915 = $914&255;
- $916 = (13760 + ($915<<2)|0);
- $917 = HEAP32[$916>>2]|0;
- $918 = $897 ^ $917;
- $919 = HEAP8[$665>>0]|0;
- $920 = $919 ^ -13;
- $921 = $920&255;
- $922 = (10176 + ($921)|0);
- $923 = HEAP8[$922>>0]|0;
- $924 = HEAP8[$481>>0]|0;
- $925 = $924 ^ $923;
- $926 = $925&255;
- $927 = (10432 + ($926)|0);
- $928 = HEAP8[$927>>0]|0;
- $929 = HEAP8[$296>>0]|0;
- $930 = $929 ^ $928;
- $931 = $930&255;
- $932 = (10432 + ($931)|0);
- $933 = HEAP8[$932>>0]|0;
- $934 = HEAP8[$112>>0]|0;
- $935 = $934 ^ $933;
- $936 = $935&255;
- $937 = (10688 + ($936<<2)|0);
- $938 = HEAP32[$937>>2]|0;
- $939 = HEAP8[$689>>0]|0;
- $940 = $939 ^ 103;
- $941 = $940&255;
- $942 = (10176 + ($941)|0);
- $943 = HEAP8[$942>>0]|0;
- $944 = HEAP8[$505>>0]|0;
- $945 = $944 ^ $943;
- $946 = $945&255;
- $947 = (10176 + ($946)|0);
- $948 = HEAP8[$947>>0]|0;
- $949 = HEAP8[$320>>0]|0;
- $950 = $949 ^ $948;
- $951 = $950&255;
- $952 = (10432 + ($951)|0);
- $953 = HEAP8[$952>>0]|0;
- $954 = HEAP8[$136>>0]|0;
- $955 = $954 ^ $953;
- $956 = $955&255;
- $957 = (11712 + ($956<<2)|0);
- $958 = HEAP32[$957>>2]|0;
- $959 = $958 ^ $938;
- $960 = HEAP8[$713>>0]|0;
- $961 = $960 ^ 103;
- $962 = $961&255;
- $963 = (10432 + ($962)|0);
- $964 = HEAP8[$963>>0]|0;
- $965 = HEAP8[$529>>0]|0;
- $966 = $965 ^ $964;
- $967 = $966&255;
- $968 = (10432 + ($967)|0);
- $969 = HEAP8[$968>>0]|0;
- $970 = HEAP8[$344>>0]|0;
- $971 = $970 ^ $969;
- $972 = $971&255;
- $973 = (10176 + ($972)|0);
- $974 = HEAP8[$973>>0]|0;
- $975 = HEAP8[$160>>0]|0;
- $976 = $975 ^ $974;
- $977 = $976&255;
- $978 = (12736 + ($977<<2)|0);
- $979 = HEAP32[$978>>2]|0;
- $980 = $959 ^ $979;
- $981 = HEAP8[$737>>0]|0;
- $982 = $981 ^ -13;
- $983 = $982&255;
- $984 = (10432 + ($983)|0);
- $985 = HEAP8[$984>>0]|0;
- $986 = HEAP8[$553>>0]|0;
- $987 = $986 ^ $985;
- $988 = $987&255;
- $989 = (10176 + ($988)|0);
- $990 = HEAP8[$989>>0]|0;
- $991 = HEAP8[$368>>0]|0;
- $992 = $991 ^ $990;
- $993 = $992&255;
- $994 = (10176 + ($993)|0);
- $995 = HEAP8[$994>>0]|0;
- $996 = HEAP8[$184>>0]|0;
- $997 = $996 ^ $995;
- $998 = $997&255;
- $999 = (13760 + ($998<<2)|0);
- $1000 = HEAP32[$999>>2]|0;
- $1001 = $980 ^ $1000;
- $1002 = $1001 << 8;
- $1003 = $1001 >>> 24;
- $1004 = $1002 | $1003;
- $1005 = (($1004) + ($918))|0;
- $1006 = (($1005) + ($1004))|0;
- $1007 = ((($0)) + 4096|0);
- HEAP32[$1007>>2] = $1005;
- $1008 = $1006 << 9;
- $1009 = $1006 >>> 23;
- $1010 = $1008 | $1009;
- $1011 = ((($0)) + 4100|0);
- HEAP32[$1011>>2] = $1010;
- $1012 = HEAP8[$577>>0]|0;
- $1013 = $1012 ^ -58;
- $1014 = $1013&255;
- $1015 = (10176 + ($1014)|0);
- $1016 = HEAP8[$1015>>0]|0;
- $1017 = HEAP8[$393>>0]|0;
- $1018 = $1017 ^ $1016;
- $1019 = $1018&255;
- $1020 = (10432 + ($1019)|0);
- $1021 = HEAP8[$1020>>0]|0;
- $1022 = HEAP8[$208>>0]|0;
- $1023 = $1022 ^ $1021;
- $1024 = $1023&255;
- $1025 = (10432 + ($1024)|0);
- $1026 = HEAP8[$1025>>0]|0;
- $1027 = HEAP8[$1>>0]|0;
- $1028 = $1027 ^ $1026;
- $1029 = $1028&255;
- $1030 = (10688 + ($1029<<2)|0);
- $1031 = HEAP32[$1030>>2]|0;
- $1032 = HEAP8[$593>>0]|0;
- $1033 = $1032 ^ -77;
- $1034 = $1033&255;
- $1035 = (10176 + ($1034)|0);
- $1036 = HEAP8[$1035>>0]|0;
- $1037 = HEAP8[$409>>0]|0;
- $1038 = $1037 ^ $1036;
- $1039 = $1038&255;
- $1040 = (10176 + ($1039)|0);
- $1041 = HEAP8[$1040>>0]|0;
- $1042 = HEAP8[$224>>0]|0;
- $1043 = $1042 ^ $1041;
- $1044 = $1043&255;
- $1045 = (10432 + ($1044)|0);
- $1046 = HEAP8[$1045>>0]|0;
- $1047 = HEAP8[$40>>0]|0;
- $1048 = $1047 ^ $1046;
- $1049 = $1048&255;
- $1050 = (11712 + ($1049<<2)|0);
- $1051 = HEAP32[$1050>>2]|0;
- $1052 = $1051 ^ $1031;
- $1053 = HEAP8[$617>>0]|0;
- $1054 = $1053 ^ -77;
- $1055 = $1054&255;
- $1056 = (10432 + ($1055)|0);
- $1057 = HEAP8[$1056>>0]|0;
- $1058 = HEAP8[$433>>0]|0;
- $1059 = $1058 ^ $1057;
- $1060 = $1059&255;
- $1061 = (10432 + ($1060)|0);
- $1062 = HEAP8[$1061>>0]|0;
- $1063 = HEAP8[$248>>0]|0;
- $1064 = $1063 ^ $1062;
- $1065 = $1064&255;
- $1066 = (10176 + ($1065)|0);
- $1067 = HEAP8[$1066>>0]|0;
- $1068 = HEAP8[$64>>0]|0;
- $1069 = $1068 ^ $1067;
- $1070 = $1069&255;
- $1071 = (12736 + ($1070<<2)|0);
- $1072 = HEAP32[$1071>>2]|0;
- $1073 = $1052 ^ $1072;
- $1074 = HEAP8[$641>>0]|0;
- $1075 = $1074 ^ -58;
- $1076 = $1075&255;
- $1077 = (10432 + ($1076)|0);
- $1078 = HEAP8[$1077>>0]|0;
- $1079 = HEAP8[$457>>0]|0;
- $1080 = $1079 ^ $1078;
- $1081 = $1080&255;
- $1082 = (10176 + ($1081)|0);
- $1083 = HEAP8[$1082>>0]|0;
- $1084 = HEAP8[$272>>0]|0;
- $1085 = $1084 ^ $1083;
- $1086 = $1085&255;
- $1087 = (10176 + ($1086)|0);
- $1088 = HEAP8[$1087>>0]|0;
- $1089 = HEAP8[$88>>0]|0;
- $1090 = $1089 ^ $1088;
- $1091 = $1090&255;
- $1092 = (13760 + ($1091<<2)|0);
- $1093 = HEAP32[$1092>>2]|0;
- $1094 = $1073 ^ $1093;
- $1095 = HEAP8[$665>>0]|0;
- $1096 = $1095 ^ -12;
- $1097 = $1096&255;
- $1098 = (10176 + ($1097)|0);
- $1099 = HEAP8[$1098>>0]|0;
- $1100 = HEAP8[$481>>0]|0;
- $1101 = $1100 ^ $1099;
- $1102 = $1101&255;
- $1103 = (10432 + ($1102)|0);
- $1104 = HEAP8[$1103>>0]|0;
- $1105 = HEAP8[$296>>0]|0;
- $1106 = $1105 ^ $1104;
- $1107 = $1106&255;
- $1108 = (10432 + ($1107)|0);
- $1109 = HEAP8[$1108>>0]|0;
- $1110 = HEAP8[$112>>0]|0;
- $1111 = $1110 ^ $1109;
- $1112 = $1111&255;
- $1113 = (10688 + ($1112<<2)|0);
- $1114 = HEAP32[$1113>>2]|0;
- $1115 = HEAP8[$689>>0]|0;
- $1116 = $1115 ^ -24;
- $1117 = $1116&255;
- $1118 = (10176 + ($1117)|0);
- $1119 = HEAP8[$1118>>0]|0;
- $1120 = HEAP8[$505>>0]|0;
- $1121 = $1120 ^ $1119;
- $1122 = $1121&255;
- $1123 = (10176 + ($1122)|0);
- $1124 = HEAP8[$1123>>0]|0;
- $1125 = HEAP8[$320>>0]|0;
- $1126 = $1125 ^ $1124;
- $1127 = $1126&255;
- $1128 = (10432 + ($1127)|0);
- $1129 = HEAP8[$1128>>0]|0;
- $1130 = HEAP8[$136>>0]|0;
- $1131 = $1130 ^ $1129;
- $1132 = $1131&255;
- $1133 = (11712 + ($1132<<2)|0);
- $1134 = HEAP32[$1133>>2]|0;
- $1135 = $1134 ^ $1114;
- $1136 = HEAP8[$713>>0]|0;
- $1137 = $1136 ^ -24;
- $1138 = $1137&255;
- $1139 = (10432 + ($1138)|0);
- $1140 = HEAP8[$1139>>0]|0;
- $1141 = HEAP8[$529>>0]|0;
- $1142 = $1141 ^ $1140;
- $1143 = $1142&255;
- $1144 = (10432 + ($1143)|0);
- $1145 = HEAP8[$1144>>0]|0;
- $1146 = HEAP8[$344>>0]|0;
- $1147 = $1146 ^ $1145;
- $1148 = $1147&255;
- $1149 = (10176 + ($1148)|0);
- $1150 = HEAP8[$1149>>0]|0;
- $1151 = HEAP8[$160>>0]|0;
- $1152 = $1151 ^ $1150;
- $1153 = $1152&255;
- $1154 = (12736 + ($1153<<2)|0);
- $1155 = HEAP32[$1154>>2]|0;
- $1156 = $1135 ^ $1155;
- $1157 = HEAP8[$737>>0]|0;
- $1158 = $1157 ^ -12;
- $1159 = $1158&255;
- $1160 = (10432 + ($1159)|0);
- $1161 = HEAP8[$1160>>0]|0;
- $1162 = HEAP8[$553>>0]|0;
- $1163 = $1162 ^ $1161;
- $1164 = $1163&255;
- $1165 = (10176 + ($1164)|0);
- $1166 = HEAP8[$1165>>0]|0;
- $1167 = HEAP8[$368>>0]|0;
- $1168 = $1167 ^ $1166;
- $1169 = $1168&255;
- $1170 = (10176 + ($1169)|0);
- $1171 = HEAP8[$1170>>0]|0;
- $1172 = HEAP8[$184>>0]|0;
- $1173 = $1172 ^ $1171;
- $1174 = $1173&255;
- $1175 = (13760 + ($1174<<2)|0);
- $1176 = HEAP32[$1175>>2]|0;
- $1177 = $1156 ^ $1176;
- $1178 = $1177 << 8;
- $1179 = $1177 >>> 24;
- $1180 = $1178 | $1179;
- $1181 = (($1180) + ($1094))|0;
- $1182 = (($1181) + ($1180))|0;
- $1183 = ((($0)) + 4104|0);
- HEAP32[$1183>>2] = $1181;
- $1184 = $1182 << 9;
- $1185 = $1182 >>> 23;
- $1186 = $1184 | $1185;
- $1187 = ((($0)) + 4108|0);
- HEAP32[$1187>>2] = $1186;
- $1188 = HEAP8[$577>>0]|0;
- $1189 = $1188 ^ -37;
- $1190 = $1189&255;
- $1191 = (10176 + ($1190)|0);
- $1192 = HEAP8[$1191>>0]|0;
- $1193 = HEAP8[$393>>0]|0;
- $1194 = $1193 ^ $1192;
- $1195 = $1194&255;
- $1196 = (10432 + ($1195)|0);
- $1197 = HEAP8[$1196>>0]|0;
- $1198 = HEAP8[$208>>0]|0;
- $1199 = $1198 ^ $1197;
- $1200 = $1199&255;
- $1201 = (10432 + ($1200)|0);
- $1202 = HEAP8[$1201>>0]|0;
- $1203 = HEAP8[$1>>0]|0;
- $1204 = $1203 ^ $1202;
- $1205 = $1204&255;
- $1206 = (10688 + ($1205<<2)|0);
- $1207 = HEAP32[$1206>>2]|0;
- $1208 = HEAP8[$593>>0]|0;
- $1209 = $1208 ^ 4;
- $1210 = $1209&255;
- $1211 = (10176 + ($1210)|0);
- $1212 = HEAP8[$1211>>0]|0;
- $1213 = HEAP8[$409>>0]|0;
- $1214 = $1213 ^ $1212;
- $1215 = $1214&255;
- $1216 = (10176 + ($1215)|0);
- $1217 = HEAP8[$1216>>0]|0;
- $1218 = HEAP8[$224>>0]|0;
- $1219 = $1218 ^ $1217;
- $1220 = $1219&255;
- $1221 = (10432 + ($1220)|0);
- $1222 = HEAP8[$1221>>0]|0;
- $1223 = HEAP8[$40>>0]|0;
- $1224 = $1223 ^ $1222;
- $1225 = $1224&255;
- $1226 = (11712 + ($1225<<2)|0);
- $1227 = HEAP32[$1226>>2]|0;
- $1228 = $1227 ^ $1207;
- $1229 = HEAP8[$617>>0]|0;
- $1230 = $1229 ^ 4;
- $1231 = $1230&255;
- $1232 = (10432 + ($1231)|0);
- $1233 = HEAP8[$1232>>0]|0;
- $1234 = HEAP8[$433>>0]|0;
- $1235 = $1234 ^ $1233;
- $1236 = $1235&255;
- $1237 = (10432 + ($1236)|0);
- $1238 = HEAP8[$1237>>0]|0;
- $1239 = HEAP8[$248>>0]|0;
- $1240 = $1239 ^ $1238;
- $1241 = $1240&255;
- $1242 = (10176 + ($1241)|0);
- $1243 = HEAP8[$1242>>0]|0;
- $1244 = HEAP8[$64>>0]|0;
- $1245 = $1244 ^ $1243;
- $1246 = $1245&255;
- $1247 = (12736 + ($1246<<2)|0);
- $1248 = HEAP32[$1247>>2]|0;
- $1249 = $1228 ^ $1248;
- $1250 = HEAP8[$641>>0]|0;
- $1251 = $1250 ^ -37;
- $1252 = $1251&255;
- $1253 = (10432 + ($1252)|0);
- $1254 = HEAP8[$1253>>0]|0;
- $1255 = HEAP8[$457>>0]|0;
- $1256 = $1255 ^ $1254;
- $1257 = $1256&255;
- $1258 = (10176 + ($1257)|0);
- $1259 = HEAP8[$1258>>0]|0;
- $1260 = HEAP8[$272>>0]|0;
- $1261 = $1260 ^ $1259;
- $1262 = $1261&255;
- $1263 = (10176 + ($1262)|0);
- $1264 = HEAP8[$1263>>0]|0;
- $1265 = HEAP8[$88>>0]|0;
- $1266 = $1265 ^ $1264;
- $1267 = $1266&255;
- $1268 = (13760 + ($1267<<2)|0);
- $1269 = HEAP32[$1268>>2]|0;
- $1270 = $1249 ^ $1269;
- $1271 = HEAP8[$665>>0]|0;
- $1272 = $1271 ^ 123;
- $1273 = $1272&255;
- $1274 = (10176 + ($1273)|0);
- $1275 = HEAP8[$1274>>0]|0;
- $1276 = HEAP8[$481>>0]|0;
- $1277 = $1276 ^ $1275;
- $1278 = $1277&255;
- $1279 = (10432 + ($1278)|0);
- $1280 = HEAP8[$1279>>0]|0;
- $1281 = HEAP8[$296>>0]|0;
- $1282 = $1281 ^ $1280;
- $1283 = $1282&255;
- $1284 = (10432 + ($1283)|0);
- $1285 = HEAP8[$1284>>0]|0;
- $1286 = HEAP8[$112>>0]|0;
- $1287 = $1286 ^ $1285;
- $1288 = $1287&255;
- $1289 = (10688 + ($1288<<2)|0);
- $1290 = HEAP32[$1289>>2]|0;
- $1291 = HEAP8[$689>>0]|0;
- $1292 = $1291 ^ -3;
- $1293 = $1292&255;
- $1294 = (10176 + ($1293)|0);
- $1295 = HEAP8[$1294>>0]|0;
- $1296 = HEAP8[$505>>0]|0;
- $1297 = $1296 ^ $1295;
- $1298 = $1297&255;
- $1299 = (10176 + ($1298)|0);
- $1300 = HEAP8[$1299>>0]|0;
- $1301 = HEAP8[$320>>0]|0;
- $1302 = $1301 ^ $1300;
- $1303 = $1302&255;
- $1304 = (10432 + ($1303)|0);
- $1305 = HEAP8[$1304>>0]|0;
- $1306 = HEAP8[$136>>0]|0;
- $1307 = $1306 ^ $1305;
- $1308 = $1307&255;
- $1309 = (11712 + ($1308<<2)|0);
- $1310 = HEAP32[$1309>>2]|0;
- $1311 = $1310 ^ $1290;
- $1312 = HEAP8[$713>>0]|0;
- $1313 = $1312 ^ -3;
- $1314 = $1313&255;
- $1315 = (10432 + ($1314)|0);
- $1316 = HEAP8[$1315>>0]|0;
- $1317 = HEAP8[$529>>0]|0;
- $1318 = $1317 ^ $1316;
- $1319 = $1318&255;
- $1320 = (10432 + ($1319)|0);
- $1321 = HEAP8[$1320>>0]|0;
- $1322 = HEAP8[$344>>0]|0;
- $1323 = $1322 ^ $1321;
- $1324 = $1323&255;
- $1325 = (10176 + ($1324)|0);
- $1326 = HEAP8[$1325>>0]|0;
- $1327 = HEAP8[$160>>0]|0;
- $1328 = $1327 ^ $1326;
- $1329 = $1328&255;
- $1330 = (12736 + ($1329<<2)|0);
- $1331 = HEAP32[$1330>>2]|0;
- $1332 = $1311 ^ $1331;
- $1333 = HEAP8[$737>>0]|0;
- $1334 = $1333 ^ 123;
- $1335 = $1334&255;
- $1336 = (10432 + ($1335)|0);
- $1337 = HEAP8[$1336>>0]|0;
- $1338 = HEAP8[$553>>0]|0;
- $1339 = $1338 ^ $1337;
- $1340 = $1339&255;
- $1341 = (10176 + ($1340)|0);
- $1342 = HEAP8[$1341>>0]|0;
- $1343 = HEAP8[$368>>0]|0;
- $1344 = $1343 ^ $1342;
- $1345 = $1344&255;
- $1346 = (10176 + ($1345)|0);
- $1347 = HEAP8[$1346>>0]|0;
- $1348 = HEAP8[$184>>0]|0;
- $1349 = $1348 ^ $1347;
- $1350 = $1349&255;
- $1351 = (13760 + ($1350<<2)|0);
- $1352 = HEAP32[$1351>>2]|0;
- $1353 = $1332 ^ $1352;
- $1354 = $1353 << 8;
- $1355 = $1353 >>> 24;
- $1356 = $1354 | $1355;
- $1357 = (($1356) + ($1270))|0;
- $1358 = (($1357) + ($1356))|0;
- $1359 = ((($0)) + 4112|0);
- HEAP32[$1359>>2] = $1357;
- $1360 = $1358 << 9;
- $1361 = $1358 >>> 23;
- $1362 = $1360 | $1361;
- $1363 = ((($0)) + 4116|0);
- HEAP32[$1363>>2] = $1362;
- $1364 = HEAP8[$577>>0]|0;
- $1365 = $1364 ^ -5;
- $1366 = $1365&255;
- $1367 = (10176 + ($1366)|0);
- $1368 = HEAP8[$1367>>0]|0;
- $1369 = HEAP8[$393>>0]|0;
- $1370 = $1369 ^ $1368;
- $1371 = $1370&255;
- $1372 = (10432 + ($1371)|0);
- $1373 = HEAP8[$1372>>0]|0;
- $1374 = HEAP8[$208>>0]|0;
- $1375 = $1374 ^ $1373;
- $1376 = $1375&255;
- $1377 = (10432 + ($1376)|0);
- $1378 = HEAP8[$1377>>0]|0;
- $1379 = HEAP8[$1>>0]|0;
- $1380 = $1379 ^ $1378;
- $1381 = $1380&255;
- $1382 = (10688 + ($1381<<2)|0);
- $1383 = HEAP32[$1382>>2]|0;
- $1384 = HEAP8[$593>>0]|0;
- $1385 = $1384 ^ -93;
- $1386 = $1385&255;
- $1387 = (10176 + ($1386)|0);
- $1388 = HEAP8[$1387>>0]|0;
- $1389 = HEAP8[$409>>0]|0;
- $1390 = $1389 ^ $1388;
- $1391 = $1390&255;
- $1392 = (10176 + ($1391)|0);
- $1393 = HEAP8[$1392>>0]|0;
- $1394 = HEAP8[$224>>0]|0;
- $1395 = $1394 ^ $1393;
- $1396 = $1395&255;
- $1397 = (10432 + ($1396)|0);
- $1398 = HEAP8[$1397>>0]|0;
- $1399 = HEAP8[$40>>0]|0;
- $1400 = $1399 ^ $1398;
- $1401 = $1400&255;
- $1402 = (11712 + ($1401<<2)|0);
- $1403 = HEAP32[$1402>>2]|0;
- $1404 = $1403 ^ $1383;
- $1405 = HEAP8[$617>>0]|0;
- $1406 = $1405 ^ -93;
- $1407 = $1406&255;
- $1408 = (10432 + ($1407)|0);
- $1409 = HEAP8[$1408>>0]|0;
- $1410 = HEAP8[$433>>0]|0;
- $1411 = $1410 ^ $1409;
- $1412 = $1411&255;
- $1413 = (10432 + ($1412)|0);
- $1414 = HEAP8[$1413>>0]|0;
- $1415 = HEAP8[$248>>0]|0;
- $1416 = $1415 ^ $1414;
- $1417 = $1416&255;
- $1418 = (10176 + ($1417)|0);
- $1419 = HEAP8[$1418>>0]|0;
- $1420 = HEAP8[$64>>0]|0;
- $1421 = $1420 ^ $1419;
- $1422 = $1421&255;
- $1423 = (12736 + ($1422<<2)|0);
- $1424 = HEAP32[$1423>>2]|0;
- $1425 = $1404 ^ $1424;
- $1426 = HEAP8[$641>>0]|0;
- $1427 = $1426 ^ -5;
- $1428 = $1427&255;
- $1429 = (10432 + ($1428)|0);
- $1430 = HEAP8[$1429>>0]|0;
- $1431 = HEAP8[$457>>0]|0;
- $1432 = $1431 ^ $1430;
- $1433 = $1432&255;
- $1434 = (10176 + ($1433)|0);
- $1435 = HEAP8[$1434>>0]|0;
- $1436 = HEAP8[$272>>0]|0;
- $1437 = $1436 ^ $1435;
- $1438 = $1437&255;
- $1439 = (10176 + ($1438)|0);
- $1440 = HEAP8[$1439>>0]|0;
- $1441 = HEAP8[$88>>0]|0;
- $1442 = $1441 ^ $1440;
- $1443 = $1442&255;
- $1444 = (13760 + ($1443<<2)|0);
- $1445 = HEAP32[$1444>>2]|0;
- $1446 = $1425 ^ $1445;
- $1447 = HEAP8[$665>>0]|0;
- $1448 = $1447 ^ -56;
- $1449 = $1448&255;
- $1450 = (10176 + ($1449)|0);
- $1451 = HEAP8[$1450>>0]|0;
- $1452 = HEAP8[$481>>0]|0;
- $1453 = $1452 ^ $1451;
- $1454 = $1453&255;
- $1455 = (10432 + ($1454)|0);
- $1456 = HEAP8[$1455>>0]|0;
- $1457 = HEAP8[$296>>0]|0;
- $1458 = $1457 ^ $1456;
- $1459 = $1458&255;
- $1460 = (10432 + ($1459)|0);
- $1461 = HEAP8[$1460>>0]|0;
- $1462 = HEAP8[$112>>0]|0;
- $1463 = $1462 ^ $1461;
- $1464 = $1463&255;
- $1465 = (10688 + ($1464<<2)|0);
- $1466 = HEAP32[$1465>>2]|0;
- $1467 = HEAP8[$689>>0]|0;
- $1468 = $1467 ^ 118;
- $1469 = $1468&255;
- $1470 = (10176 + ($1469)|0);
- $1471 = HEAP8[$1470>>0]|0;
- $1472 = HEAP8[$505>>0]|0;
- $1473 = $1472 ^ $1471;
- $1474 = $1473&255;
- $1475 = (10176 + ($1474)|0);
- $1476 = HEAP8[$1475>>0]|0;
- $1477 = HEAP8[$320>>0]|0;
- $1478 = $1477 ^ $1476;
- $1479 = $1478&255;
- $1480 = (10432 + ($1479)|0);
- $1481 = HEAP8[$1480>>0]|0;
- $1482 = HEAP8[$136>>0]|0;
- $1483 = $1482 ^ $1481;
- $1484 = $1483&255;
- $1485 = (11712 + ($1484<<2)|0);
- $1486 = HEAP32[$1485>>2]|0;
- $1487 = $1486 ^ $1466;
- $1488 = HEAP8[$713>>0]|0;
- $1489 = $1488 ^ 118;
- $1490 = $1489&255;
- $1491 = (10432 + ($1490)|0);
- $1492 = HEAP8[$1491>>0]|0;
- $1493 = HEAP8[$529>>0]|0;
- $1494 = $1493 ^ $1492;
- $1495 = $1494&255;
- $1496 = (10432 + ($1495)|0);
- $1497 = HEAP8[$1496>>0]|0;
- $1498 = HEAP8[$344>>0]|0;
- $1499 = $1498 ^ $1497;
- $1500 = $1499&255;
- $1501 = (10176 + ($1500)|0);
- $1502 = HEAP8[$1501>>0]|0;
- $1503 = HEAP8[$160>>0]|0;
- $1504 = $1503 ^ $1502;
- $1505 = $1504&255;
- $1506 = (12736 + ($1505<<2)|0);
- $1507 = HEAP32[$1506>>2]|0;
- $1508 = $1487 ^ $1507;
- $1509 = HEAP8[$737>>0]|0;
- $1510 = $1509 ^ -56;
- $1511 = $1510&255;
- $1512 = (10432 + ($1511)|0);
- $1513 = HEAP8[$1512>>0]|0;
- $1514 = HEAP8[$553>>0]|0;
- $1515 = $1514 ^ $1513;
- $1516 = $1515&255;
- $1517 = (10176 + ($1516)|0);
- $1518 = HEAP8[$1517>>0]|0;
- $1519 = HEAP8[$368>>0]|0;
- $1520 = $1519 ^ $1518;
- $1521 = $1520&255;
- $1522 = (10176 + ($1521)|0);
- $1523 = HEAP8[$1522>>0]|0;
- $1524 = HEAP8[$184>>0]|0;
- $1525 = $1524 ^ $1523;
- $1526 = $1525&255;
- $1527 = (13760 + ($1526<<2)|0);
- $1528 = HEAP32[$1527>>2]|0;
- $1529 = $1508 ^ $1528;
- $1530 = $1529 << 8;
- $1531 = $1529 >>> 24;
- $1532 = $1530 | $1531;
- $1533 = (($1532) + ($1446))|0;
- $1534 = (($1533) + ($1532))|0;
- $1535 = ((($0)) + 4120|0);
- HEAP32[$1535>>2] = $1533;
- $1536 = $1534 << 9;
- $1537 = $1534 >>> 23;
- $1538 = $1536 | $1537;
- $1539 = ((($0)) + 4124|0);
- HEAP32[$1539>>2] = $1538;
- $1540 = HEAP8[$577>>0]|0;
- $1541 = $1540 ^ 74;
- $1542 = $1541&255;
- $1543 = (10176 + ($1542)|0);
- $1544 = HEAP8[$1543>>0]|0;
- $1545 = HEAP8[$393>>0]|0;
- $1546 = $1545 ^ $1544;
- $1547 = $1546&255;
- $1548 = (10432 + ($1547)|0);
- $1549 = HEAP8[$1548>>0]|0;
- $1550 = HEAP8[$208>>0]|0;
- $1551 = $1550 ^ $1549;
- $1552 = $1551&255;
- $1553 = (10432 + ($1552)|0);
- $1554 = HEAP8[$1553>>0]|0;
- $1555 = HEAP8[$1>>0]|0;
- $1556 = $1555 ^ $1554;
- $1557 = $1556&255;
- $1558 = (10688 + ($1557<<2)|0);
- $1559 = HEAP32[$1558>>2]|0;
- $1560 = HEAP8[$593>>0]|0;
- $1561 = $1560 ^ -102;
- $1562 = $1561&255;
- $1563 = (10176 + ($1562)|0);
- $1564 = HEAP8[$1563>>0]|0;
- $1565 = HEAP8[$409>>0]|0;
- $1566 = $1565 ^ $1564;
- $1567 = $1566&255;
- $1568 = (10176 + ($1567)|0);
- $1569 = HEAP8[$1568>>0]|0;
- $1570 = HEAP8[$224>>0]|0;
- $1571 = $1570 ^ $1569;
- $1572 = $1571&255;
- $1573 = (10432 + ($1572)|0);
- $1574 = HEAP8[$1573>>0]|0;
- $1575 = HEAP8[$40>>0]|0;
- $1576 = $1575 ^ $1574;
- $1577 = $1576&255;
- $1578 = (11712 + ($1577<<2)|0);
- $1579 = HEAP32[$1578>>2]|0;
- $1580 = $1579 ^ $1559;
- $1581 = HEAP8[$617>>0]|0;
- $1582 = $1581 ^ -102;
- $1583 = $1582&255;
- $1584 = (10432 + ($1583)|0);
- $1585 = HEAP8[$1584>>0]|0;
- $1586 = HEAP8[$433>>0]|0;
- $1587 = $1586 ^ $1585;
- $1588 = $1587&255;
- $1589 = (10432 + ($1588)|0);
- $1590 = HEAP8[$1589>>0]|0;
- $1591 = HEAP8[$248>>0]|0;
- $1592 = $1591 ^ $1590;
- $1593 = $1592&255;
- $1594 = (10176 + ($1593)|0);
- $1595 = HEAP8[$1594>>0]|0;
- $1596 = HEAP8[$64>>0]|0;
- $1597 = $1596 ^ $1595;
- $1598 = $1597&255;
- $1599 = (12736 + ($1598<<2)|0);
- $1600 = HEAP32[$1599>>2]|0;
- $1601 = $1580 ^ $1600;
- $1602 = HEAP8[$641>>0]|0;
- $1603 = $1602 ^ 74;
- $1604 = $1603&255;
- $1605 = (10432 + ($1604)|0);
- $1606 = HEAP8[$1605>>0]|0;
- $1607 = HEAP8[$457>>0]|0;
- $1608 = $1607 ^ $1606;
- $1609 = $1608&255;
- $1610 = (10176 + ($1609)|0);
- $1611 = HEAP8[$1610>>0]|0;
- $1612 = HEAP8[$272>>0]|0;
- $1613 = $1612 ^ $1611;
- $1614 = $1613&255;
- $1615 = (10176 + ($1614)|0);
- $1616 = HEAP8[$1615>>0]|0;
- $1617 = HEAP8[$88>>0]|0;
- $1618 = $1617 ^ $1616;
- $1619 = $1618&255;
- $1620 = (13760 + ($1619<<2)|0);
- $1621 = HEAP32[$1620>>2]|0;
- $1622 = $1601 ^ $1621;
- $1623 = HEAP8[$665>>0]|0;
- $1624 = $1623 ^ -45;
- $1625 = $1624&255;
- $1626 = (10176 + ($1625)|0);
- $1627 = HEAP8[$1626>>0]|0;
- $1628 = HEAP8[$481>>0]|0;
- $1629 = $1628 ^ $1627;
- $1630 = $1629&255;
- $1631 = (10432 + ($1630)|0);
- $1632 = HEAP8[$1631>>0]|0;
- $1633 = HEAP8[$296>>0]|0;
- $1634 = $1633 ^ $1632;
- $1635 = $1634&255;
- $1636 = (10432 + ($1635)|0);
- $1637 = HEAP8[$1636>>0]|0;
- $1638 = HEAP8[$112>>0]|0;
- $1639 = $1638 ^ $1637;
- $1640 = $1639&255;
- $1641 = (10688 + ($1640<<2)|0);
- $1642 = HEAP32[$1641>>2]|0;
- $1643 = HEAP8[$689>>0]|0;
- $1644 = $1643 ^ -110;
- $1645 = $1644&255;
- $1646 = (10176 + ($1645)|0);
- $1647 = HEAP8[$1646>>0]|0;
- $1648 = HEAP8[$505>>0]|0;
- $1649 = $1648 ^ $1647;
- $1650 = $1649&255;
- $1651 = (10176 + ($1650)|0);
- $1652 = HEAP8[$1651>>0]|0;
- $1653 = HEAP8[$320>>0]|0;
- $1654 = $1653 ^ $1652;
- $1655 = $1654&255;
- $1656 = (10432 + ($1655)|0);
- $1657 = HEAP8[$1656>>0]|0;
- $1658 = HEAP8[$136>>0]|0;
- $1659 = $1658 ^ $1657;
- $1660 = $1659&255;
- $1661 = (11712 + ($1660<<2)|0);
- $1662 = HEAP32[$1661>>2]|0;
- $1663 = $1662 ^ $1642;
- $1664 = HEAP8[$713>>0]|0;
- $1665 = $1664 ^ -110;
- $1666 = $1665&255;
- $1667 = (10432 + ($1666)|0);
- $1668 = HEAP8[$1667>>0]|0;
- $1669 = HEAP8[$529>>0]|0;
- $1670 = $1669 ^ $1668;
- $1671 = $1670&255;
- $1672 = (10432 + ($1671)|0);
- $1673 = HEAP8[$1672>>0]|0;
- $1674 = HEAP8[$344>>0]|0;
- $1675 = $1674 ^ $1673;
- $1676 = $1675&255;
- $1677 = (10176 + ($1676)|0);
- $1678 = HEAP8[$1677>>0]|0;
- $1679 = HEAP8[$160>>0]|0;
- $1680 = $1679 ^ $1678;
- $1681 = $1680&255;
- $1682 = (12736 + ($1681<<2)|0);
- $1683 = HEAP32[$1682>>2]|0;
- $1684 = $1663 ^ $1683;
- $1685 = HEAP8[$737>>0]|0;
- $1686 = $1685 ^ -45;
- $1687 = $1686&255;
- $1688 = (10432 + ($1687)|0);
- $1689 = HEAP8[$1688>>0]|0;
- $1690 = HEAP8[$553>>0]|0;
- $1691 = $1690 ^ $1689;
- $1692 = $1691&255;
- $1693 = (10176 + ($1692)|0);
- $1694 = HEAP8[$1693>>0]|0;
- $1695 = HEAP8[$368>>0]|0;
- $1696 = $1695 ^ $1694;
- $1697 = $1696&255;
- $1698 = (10176 + ($1697)|0);
- $1699 = HEAP8[$1698>>0]|0;
- $1700 = HEAP8[$184>>0]|0;
- $1701 = $1700 ^ $1699;
- $1702 = $1701&255;
- $1703 = (13760 + ($1702<<2)|0);
- $1704 = HEAP32[$1703>>2]|0;
- $1705 = $1684 ^ $1704;
- $1706 = $1705 << 8;
- $1707 = $1705 >>> 24;
- $1708 = $1706 | $1707;
- $1709 = (($1708) + ($1622))|0;
- $1710 = (($1709) + ($1708))|0;
- $1711 = ((($0)) + 4128|0);
- HEAP32[$1711>>2] = $1709;
- $1712 = $1710 << 9;
- $1713 = $1710 >>> 23;
- $1714 = $1712 | $1713;
- $1715 = ((($0)) + 4132|0);
- HEAP32[$1715>>2] = $1714;
- $1716 = HEAP8[$577>>0]|0;
- $1717 = $1716 ^ -26;
- $1718 = $1717&255;
- $1719 = (10176 + ($1718)|0);
- $1720 = HEAP8[$1719>>0]|0;
- $1721 = HEAP8[$393>>0]|0;
- $1722 = $1721 ^ $1720;
- $1723 = $1722&255;
- $1724 = (10432 + ($1723)|0);
- $1725 = HEAP8[$1724>>0]|0;
- $1726 = HEAP8[$208>>0]|0;
- $1727 = $1726 ^ $1725;
- $1728 = $1727&255;
- $1729 = (10432 + ($1728)|0);
- $1730 = HEAP8[$1729>>0]|0;
- $1731 = HEAP8[$1>>0]|0;
- $1732 = $1731 ^ $1730;
- $1733 = $1732&255;
- $1734 = (10688 + ($1733<<2)|0);
- $1735 = HEAP32[$1734>>2]|0;
- $1736 = HEAP8[$593>>0]|0;
- $1737 = $1736 ^ -128;
- $1738 = $1737&255;
- $1739 = (10176 + ($1738)|0);
- $1740 = HEAP8[$1739>>0]|0;
- $1741 = HEAP8[$409>>0]|0;
- $1742 = $1741 ^ $1740;
- $1743 = $1742&255;
- $1744 = (10176 + ($1743)|0);
- $1745 = HEAP8[$1744>>0]|0;
- $1746 = HEAP8[$224>>0]|0;
- $1747 = $1746 ^ $1745;
- $1748 = $1747&255;
- $1749 = (10432 + ($1748)|0);
- $1750 = HEAP8[$1749>>0]|0;
- $1751 = HEAP8[$40>>0]|0;
- $1752 = $1751 ^ $1750;
- $1753 = $1752&255;
- $1754 = (11712 + ($1753<<2)|0);
- $1755 = HEAP32[$1754>>2]|0;
- $1756 = $1755 ^ $1735;
- $1757 = HEAP8[$617>>0]|0;
- $1758 = $1757 ^ -128;
- $1759 = $1758&255;
- $1760 = (10432 + ($1759)|0);
- $1761 = HEAP8[$1760>>0]|0;
- $1762 = HEAP8[$433>>0]|0;
- $1763 = $1762 ^ $1761;
- $1764 = $1763&255;
- $1765 = (10432 + ($1764)|0);
- $1766 = HEAP8[$1765>>0]|0;
- $1767 = HEAP8[$248>>0]|0;
- $1768 = $1767 ^ $1766;
- $1769 = $1768&255;
- $1770 = (10176 + ($1769)|0);
- $1771 = HEAP8[$1770>>0]|0;
- $1772 = HEAP8[$64>>0]|0;
- $1773 = $1772 ^ $1771;
- $1774 = $1773&255;
- $1775 = (12736 + ($1774<<2)|0);
- $1776 = HEAP32[$1775>>2]|0;
- $1777 = $1756 ^ $1776;
- $1778 = HEAP8[$641>>0]|0;
- $1779 = $1778 ^ -26;
- $1780 = $1779&255;
- $1781 = (10432 + ($1780)|0);
- $1782 = HEAP8[$1781>>0]|0;
- $1783 = HEAP8[$457>>0]|0;
- $1784 = $1783 ^ $1782;
- $1785 = $1784&255;
- $1786 = (10176 + ($1785)|0);
- $1787 = HEAP8[$1786>>0]|0;
- $1788 = HEAP8[$272>>0]|0;
- $1789 = $1788 ^ $1787;
- $1790 = $1789&255;
- $1791 = (10176 + ($1790)|0);
- $1792 = HEAP8[$1791>>0]|0;
- $1793 = HEAP8[$88>>0]|0;
- $1794 = $1793 ^ $1792;
- $1795 = $1794&255;
- $1796 = (13760 + ($1795<<2)|0);
- $1797 = HEAP32[$1796>>2]|0;
- $1798 = $1777 ^ $1797;
- $1799 = HEAP8[$665>>0]|0;
- $1800 = $1799 ^ 107;
- $1801 = $1800&255;
- $1802 = (10176 + ($1801)|0);
- $1803 = HEAP8[$1802>>0]|0;
- $1804 = HEAP8[$481>>0]|0;
- $1805 = $1804 ^ $1803;
- $1806 = $1805&255;
- $1807 = (10432 + ($1806)|0);
- $1808 = HEAP8[$1807>>0]|0;
- $1809 = HEAP8[$296>>0]|0;
- $1810 = $1809 ^ $1808;
- $1811 = $1810&255;
- $1812 = (10432 + ($1811)|0);
- $1813 = HEAP8[$1812>>0]|0;
- $1814 = HEAP8[$112>>0]|0;
- $1815 = $1814 ^ $1813;
- $1816 = $1815&255;
- $1817 = (10688 + ($1816<<2)|0);
- $1818 = HEAP32[$1817>>2]|0;
- $1819 = HEAP8[$689>>0]|0;
- $1820 = $1819 ^ 120;
- $1821 = $1820&255;
- $1822 = (10176 + ($1821)|0);
- $1823 = HEAP8[$1822>>0]|0;
- $1824 = HEAP8[$505>>0]|0;
- $1825 = $1824 ^ $1823;
- $1826 = $1825&255;
- $1827 = (10176 + ($1826)|0);
- $1828 = HEAP8[$1827>>0]|0;
- $1829 = HEAP8[$320>>0]|0;
- $1830 = $1829 ^ $1828;
- $1831 = $1830&255;
- $1832 = (10432 + ($1831)|0);
- $1833 = HEAP8[$1832>>0]|0;
- $1834 = HEAP8[$136>>0]|0;
- $1835 = $1834 ^ $1833;
- $1836 = $1835&255;
- $1837 = (11712 + ($1836<<2)|0);
- $1838 = HEAP32[$1837>>2]|0;
- $1839 = $1838 ^ $1818;
- $1840 = HEAP8[$713>>0]|0;
- $1841 = $1840 ^ 120;
- $1842 = $1841&255;
- $1843 = (10432 + ($1842)|0);
- $1844 = HEAP8[$1843>>0]|0;
- $1845 = HEAP8[$529>>0]|0;
- $1846 = $1845 ^ $1844;
- $1847 = $1846&255;
- $1848 = (10432 + ($1847)|0);
- $1849 = HEAP8[$1848>>0]|0;
- $1850 = HEAP8[$344>>0]|0;
- $1851 = $1850 ^ $1849;
- $1852 = $1851&255;
- $1853 = (10176 + ($1852)|0);
- $1854 = HEAP8[$1853>>0]|0;
- $1855 = HEAP8[$160>>0]|0;
- $1856 = $1855 ^ $1854;
- $1857 = $1856&255;
- $1858 = (12736 + ($1857<<2)|0);
- $1859 = HEAP32[$1858>>2]|0;
- $1860 = $1839 ^ $1859;
- $1861 = HEAP8[$737>>0]|0;
- $1862 = $1861 ^ 107;
- $1863 = $1862&255;
- $1864 = (10432 + ($1863)|0);
- $1865 = HEAP8[$1864>>0]|0;
- $1866 = HEAP8[$553>>0]|0;
- $1867 = $1866 ^ $1865;
- $1868 = $1867&255;
- $1869 = (10176 + ($1868)|0);
- $1870 = HEAP8[$1869>>0]|0;
- $1871 = HEAP8[$368>>0]|0;
- $1872 = $1871 ^ $1870;
- $1873 = $1872&255;
- $1874 = (10176 + ($1873)|0);
- $1875 = HEAP8[$1874>>0]|0;
- $1876 = HEAP8[$184>>0]|0;
- $1877 = $1876 ^ $1875;
- $1878 = $1877&255;
- $1879 = (13760 + ($1878<<2)|0);
- $1880 = HEAP32[$1879>>2]|0;
- $1881 = $1860 ^ $1880;
- $1882 = $1881 << 8;
- $1883 = $1881 >>> 24;
- $1884 = $1882 | $1883;
- $1885 = (($1884) + ($1798))|0;
- $1886 = (($1885) + ($1884))|0;
- $1887 = ((($0)) + 4136|0);
- HEAP32[$1887>>2] = $1885;
- $1888 = $1886 << 9;
- $1889 = $1886 >>> 23;
- $1890 = $1888 | $1889;
- $1891 = ((($0)) + 4140|0);
- HEAP32[$1891>>2] = $1890;
- $1892 = HEAP8[$577>>0]|0;
- $1893 = $1892 ^ 69;
- $1894 = $1893&255;
- $1895 = (10176 + ($1894)|0);
- $1896 = HEAP8[$1895>>0]|0;
- $1897 = HEAP8[$393>>0]|0;
- $1898 = $1897 ^ $1896;
- $1899 = $1898&255;
- $1900 = (10432 + ($1899)|0);
- $1901 = HEAP8[$1900>>0]|0;
- $1902 = HEAP8[$208>>0]|0;
- $1903 = $1902 ^ $1901;
- $1904 = $1903&255;
- $1905 = (10432 + ($1904)|0);
- $1906 = HEAP8[$1905>>0]|0;
- $1907 = HEAP8[$1>>0]|0;
- $1908 = $1907 ^ $1906;
- $1909 = $1908&255;
- $1910 = (10688 + ($1909<<2)|0);
- $1911 = HEAP32[$1910>>2]|0;
- $1912 = HEAP8[$593>>0]|0;
- $1913 = $1912 ^ -28;
- $1914 = $1913&255;
- $1915 = (10176 + ($1914)|0);
- $1916 = HEAP8[$1915>>0]|0;
- $1917 = HEAP8[$409>>0]|0;
- $1918 = $1917 ^ $1916;
- $1919 = $1918&255;
- $1920 = (10176 + ($1919)|0);
- $1921 = HEAP8[$1920>>0]|0;
- $1922 = HEAP8[$224>>0]|0;
- $1923 = $1922 ^ $1921;
- $1924 = $1923&255;
- $1925 = (10432 + ($1924)|0);
- $1926 = HEAP8[$1925>>0]|0;
- $1927 = HEAP8[$40>>0]|0;
- $1928 = $1927 ^ $1926;
- $1929 = $1928&255;
- $1930 = (11712 + ($1929<<2)|0);
- $1931 = HEAP32[$1930>>2]|0;
- $1932 = $1931 ^ $1911;
- $1933 = HEAP8[$617>>0]|0;
- $1934 = $1933 ^ -28;
- $1935 = $1934&255;
- $1936 = (10432 + ($1935)|0);
- $1937 = HEAP8[$1936>>0]|0;
- $1938 = HEAP8[$433>>0]|0;
- $1939 = $1938 ^ $1937;
- $1940 = $1939&255;
- $1941 = (10432 + ($1940)|0);
- $1942 = HEAP8[$1941>>0]|0;
- $1943 = HEAP8[$248>>0]|0;
- $1944 = $1943 ^ $1942;
- $1945 = $1944&255;
- $1946 = (10176 + ($1945)|0);
- $1947 = HEAP8[$1946>>0]|0;
- $1948 = HEAP8[$64>>0]|0;
- $1949 = $1948 ^ $1947;
- $1950 = $1949&255;
- $1951 = (12736 + ($1950<<2)|0);
- $1952 = HEAP32[$1951>>2]|0;
- $1953 = $1932 ^ $1952;
- $1954 = HEAP8[$641>>0]|0;
- $1955 = $1954 ^ 69;
- $1956 = $1955&255;
- $1957 = (10432 + ($1956)|0);
- $1958 = HEAP8[$1957>>0]|0;
- $1959 = HEAP8[$457>>0]|0;
- $1960 = $1959 ^ $1958;
- $1961 = $1960&255;
- $1962 = (10176 + ($1961)|0);
- $1963 = HEAP8[$1962>>0]|0;
- $1964 = HEAP8[$272>>0]|0;
- $1965 = $1964 ^ $1963;
- $1966 = $1965&255;
- $1967 = (10176 + ($1966)|0);
- $1968 = HEAP8[$1967>>0]|0;
- $1969 = HEAP8[$88>>0]|0;
- $1970 = $1969 ^ $1968;
- $1971 = $1970&255;
- $1972 = (13760 + ($1971<<2)|0);
- $1973 = HEAP32[$1972>>2]|0;
- $1974 = $1953 ^ $1973;
- $1975 = HEAP8[$665>>0]|0;
- $1976 = $1975 ^ 125;
- $1977 = $1976&255;
- $1978 = (10176 + ($1977)|0);
- $1979 = HEAP8[$1978>>0]|0;
- $1980 = HEAP8[$481>>0]|0;
- $1981 = $1980 ^ $1979;
- $1982 = $1981&255;
- $1983 = (10432 + ($1982)|0);
- $1984 = HEAP8[$1983>>0]|0;
- $1985 = HEAP8[$296>>0]|0;
- $1986 = $1985 ^ $1984;
- $1987 = $1986&255;
- $1988 = (10432 + ($1987)|0);
- $1989 = HEAP8[$1988>>0]|0;
- $1990 = HEAP8[$112>>0]|0;
- $1991 = $1990 ^ $1989;
- $1992 = $1991&255;
- $1993 = (10688 + ($1992<<2)|0);
- $1994 = HEAP32[$1993>>2]|0;
- $1995 = HEAP8[$689>>0]|0;
- $1996 = $1995 ^ -35;
- $1997 = $1996&255;
- $1998 = (10176 + ($1997)|0);
- $1999 = HEAP8[$1998>>0]|0;
- $2000 = HEAP8[$505>>0]|0;
- $2001 = $2000 ^ $1999;
- $2002 = $2001&255;
- $2003 = (10176 + ($2002)|0);
- $2004 = HEAP8[$2003>>0]|0;
- $2005 = HEAP8[$320>>0]|0;
- $2006 = $2005 ^ $2004;
- $2007 = $2006&255;
- $2008 = (10432 + ($2007)|0);
- $2009 = HEAP8[$2008>>0]|0;
- $2010 = HEAP8[$136>>0]|0;
- $2011 = $2010 ^ $2009;
- $2012 = $2011&255;
- $2013 = (11712 + ($2012<<2)|0);
- $2014 = HEAP32[$2013>>2]|0;
- $2015 = $2014 ^ $1994;
- $2016 = HEAP8[$713>>0]|0;
- $2017 = $2016 ^ -35;
- $2018 = $2017&255;
- $2019 = (10432 + ($2018)|0);
- $2020 = HEAP8[$2019>>0]|0;
- $2021 = HEAP8[$529>>0]|0;
- $2022 = $2021 ^ $2020;
- $2023 = $2022&255;
- $2024 = (10432 + ($2023)|0);
- $2025 = HEAP8[$2024>>0]|0;
- $2026 = HEAP8[$344>>0]|0;
- $2027 = $2026 ^ $2025;
- $2028 = $2027&255;
- $2029 = (10176 + ($2028)|0);
- $2030 = HEAP8[$2029>>0]|0;
- $2031 = HEAP8[$160>>0]|0;
- $2032 = $2031 ^ $2030;
- $2033 = $2032&255;
- $2034 = (12736 + ($2033<<2)|0);
- $2035 = HEAP32[$2034>>2]|0;
- $2036 = $2015 ^ $2035;
- $2037 = HEAP8[$737>>0]|0;
- $2038 = $2037 ^ 125;
- $2039 = $2038&255;
- $2040 = (10432 + ($2039)|0);
- $2041 = HEAP8[$2040>>0]|0;
- $2042 = HEAP8[$553>>0]|0;
- $2043 = $2042 ^ $2041;
- $2044 = $2043&255;
- $2045 = (10176 + ($2044)|0);
- $2046 = HEAP8[$2045>>0]|0;
- $2047 = HEAP8[$368>>0]|0;
- $2048 = $2047 ^ $2046;
- $2049 = $2048&255;
- $2050 = (10176 + ($2049)|0);
- $2051 = HEAP8[$2050>>0]|0;
- $2052 = HEAP8[$184>>0]|0;
- $2053 = $2052 ^ $2051;
- $2054 = $2053&255;
- $2055 = (13760 + ($2054<<2)|0);
- $2056 = HEAP32[$2055>>2]|0;
- $2057 = $2036 ^ $2056;
- $2058 = $2057 << 8;
- $2059 = $2057 >>> 24;
- $2060 = $2058 | $2059;
- $2061 = (($2060) + ($1974))|0;
- $2062 = (($2061) + ($2060))|0;
- $2063 = ((($0)) + 4144|0);
- HEAP32[$2063>>2] = $2061;
- $2064 = $2062 << 9;
- $2065 = $2062 >>> 23;
- $2066 = $2064 | $2065;
- $2067 = ((($0)) + 4148|0);
- HEAP32[$2067>>2] = $2066;
- $2068 = HEAP8[$577>>0]|0;
- $2069 = $2068 ^ -24;
- $2070 = $2069&255;
- $2071 = (10176 + ($2070)|0);
- $2072 = HEAP8[$2071>>0]|0;
- $2073 = HEAP8[$393>>0]|0;
- $2074 = $2073 ^ $2072;
- $2075 = $2074&255;
- $2076 = (10432 + ($2075)|0);
- $2077 = HEAP8[$2076>>0]|0;
- $2078 = HEAP8[$208>>0]|0;
- $2079 = $2078 ^ $2077;
- $2080 = $2079&255;
- $2081 = (10432 + ($2080)|0);
- $2082 = HEAP8[$2081>>0]|0;
- $2083 = HEAP8[$1>>0]|0;
- $2084 = $2083 ^ $2082;
- $2085 = $2084&255;
- $2086 = (10688 + ($2085<<2)|0);
- $2087 = HEAP32[$2086>>2]|0;
- $2088 = HEAP8[$593>>0]|0;
- $2089 = $2088 ^ -47;
- $2090 = $2089&255;
- $2091 = (10176 + ($2090)|0);
- $2092 = HEAP8[$2091>>0]|0;
- $2093 = HEAP8[$409>>0]|0;
- $2094 = $2093 ^ $2092;
- $2095 = $2094&255;
- $2096 = (10176 + ($2095)|0);
- $2097 = HEAP8[$2096>>0]|0;
- $2098 = HEAP8[$224>>0]|0;
- $2099 = $2098 ^ $2097;
- $2100 = $2099&255;
- $2101 = (10432 + ($2100)|0);
- $2102 = HEAP8[$2101>>0]|0;
- $2103 = HEAP8[$40>>0]|0;
- $2104 = $2103 ^ $2102;
- $2105 = $2104&255;
- $2106 = (11712 + ($2105<<2)|0);
- $2107 = HEAP32[$2106>>2]|0;
- $2108 = $2107 ^ $2087;
- $2109 = HEAP8[$617>>0]|0;
- $2110 = $2109 ^ -47;
- $2111 = $2110&255;
- $2112 = (10432 + ($2111)|0);
- $2113 = HEAP8[$2112>>0]|0;
- $2114 = HEAP8[$433>>0]|0;
- $2115 = $2114 ^ $2113;
- $2116 = $2115&255;
- $2117 = (10432 + ($2116)|0);
- $2118 = HEAP8[$2117>>0]|0;
- $2119 = HEAP8[$248>>0]|0;
- $2120 = $2119 ^ $2118;
- $2121 = $2120&255;
- $2122 = (10176 + ($2121)|0);
- $2123 = HEAP8[$2122>>0]|0;
- $2124 = HEAP8[$64>>0]|0;
- $2125 = $2124 ^ $2123;
- $2126 = $2125&255;
- $2127 = (12736 + ($2126<<2)|0);
- $2128 = HEAP32[$2127>>2]|0;
- $2129 = $2108 ^ $2128;
- $2130 = HEAP8[$641>>0]|0;
- $2131 = $2130 ^ -24;
- $2132 = $2131&255;
- $2133 = (10432 + ($2132)|0);
- $2134 = HEAP8[$2133>>0]|0;
- $2135 = HEAP8[$457>>0]|0;
- $2136 = $2135 ^ $2134;
- $2137 = $2136&255;
- $2138 = (10176 + ($2137)|0);
- $2139 = HEAP8[$2138>>0]|0;
- $2140 = HEAP8[$272>>0]|0;
- $2141 = $2140 ^ $2139;
- $2142 = $2141&255;
- $2143 = (10176 + ($2142)|0);
- $2144 = HEAP8[$2143>>0]|0;
- $2145 = HEAP8[$88>>0]|0;
- $2146 = $2145 ^ $2144;
- $2147 = $2146&255;
- $2148 = (13760 + ($2147<<2)|0);
- $2149 = HEAP32[$2148>>2]|0;
- $2150 = $2129 ^ $2149;
- $2151 = HEAP8[$665>>0]|0;
- $2152 = $2151 ^ 75;
- $2153 = $2152&255;
- $2154 = (10176 + ($2153)|0);
- $2155 = HEAP8[$2154>>0]|0;
- $2156 = HEAP8[$481>>0]|0;
- $2157 = $2156 ^ $2155;
- $2158 = $2157&255;
- $2159 = (10432 + ($2158)|0);
- $2160 = HEAP8[$2159>>0]|0;
- $2161 = HEAP8[$296>>0]|0;
- $2162 = $2161 ^ $2160;
- $2163 = $2162&255;
- $2164 = (10432 + ($2163)|0);
- $2165 = HEAP8[$2164>>0]|0;
- $2166 = HEAP8[$112>>0]|0;
- $2167 = $2166 ^ $2165;
- $2168 = $2167&255;
- $2169 = (10688 + ($2168<<2)|0);
- $2170 = HEAP32[$2169>>2]|0;
- $2171 = HEAP8[$689>>0]|0;
- $2172 = $2171 ^ 56;
- $2173 = $2172&255;
- $2174 = (10176 + ($2173)|0);
- $2175 = HEAP8[$2174>>0]|0;
- $2176 = HEAP8[$505>>0]|0;
- $2177 = $2176 ^ $2175;
- $2178 = $2177&255;
- $2179 = (10176 + ($2178)|0);
- $2180 = HEAP8[$2179>>0]|0;
- $2181 = HEAP8[$320>>0]|0;
- $2182 = $2181 ^ $2180;
- $2183 = $2182&255;
- $2184 = (10432 + ($2183)|0);
- $2185 = HEAP8[$2184>>0]|0;
- $2186 = HEAP8[$136>>0]|0;
- $2187 = $2186 ^ $2185;
- $2188 = $2187&255;
- $2189 = (11712 + ($2188<<2)|0);
- $2190 = HEAP32[$2189>>2]|0;
- $2191 = $2190 ^ $2170;
- $2192 = HEAP8[$713>>0]|0;
- $2193 = $2192 ^ 56;
- $2194 = $2193&255;
- $2195 = (10432 + ($2194)|0);
- $2196 = HEAP8[$2195>>0]|0;
- $2197 = HEAP8[$529>>0]|0;
- $2198 = $2197 ^ $2196;
- $2199 = $2198&255;
- $2200 = (10432 + ($2199)|0);
- $2201 = HEAP8[$2200>>0]|0;
- $2202 = HEAP8[$344>>0]|0;
- $2203 = $2202 ^ $2201;
- $2204 = $2203&255;
- $2205 = (10176 + ($2204)|0);
- $2206 = HEAP8[$2205>>0]|0;
- $2207 = HEAP8[$160>>0]|0;
- $2208 = $2207 ^ $2206;
- $2209 = $2208&255;
- $2210 = (12736 + ($2209<<2)|0);
- $2211 = HEAP32[$2210>>2]|0;
- $2212 = $2191 ^ $2211;
- $2213 = HEAP8[$737>>0]|0;
- $2214 = $2213 ^ 75;
- $2215 = $2214&255;
- $2216 = (10432 + ($2215)|0);
- $2217 = HEAP8[$2216>>0]|0;
- $2218 = HEAP8[$553>>0]|0;
- $2219 = $2218 ^ $2217;
- $2220 = $2219&255;
- $2221 = (10176 + ($2220)|0);
- $2222 = HEAP8[$2221>>0]|0;
- $2223 = HEAP8[$368>>0]|0;
- $2224 = $2223 ^ $2222;
- $2225 = $2224&255;
- $2226 = (10176 + ($2225)|0);
- $2227 = HEAP8[$2226>>0]|0;
- $2228 = HEAP8[$184>>0]|0;
- $2229 = $2228 ^ $2227;
- $2230 = $2229&255;
- $2231 = (13760 + ($2230<<2)|0);
- $2232 = HEAP32[$2231>>2]|0;
- $2233 = $2212 ^ $2232;
- $2234 = $2233 << 8;
- $2235 = $2233 >>> 24;
- $2236 = $2234 | $2235;
- $2237 = (($2236) + ($2150))|0;
- $2238 = (($2237) + ($2236))|0;
- $2239 = ((($0)) + 4152|0);
- HEAP32[$2239>>2] = $2237;
- $2240 = $2238 << 9;
- $2241 = $2238 >>> 23;
- $2242 = $2240 | $2241;
- $2243 = ((($0)) + 4156|0);
- HEAP32[$2243>>2] = $2242;
- $2244 = HEAP8[$577>>0]|0;
- $2245 = $2244 ^ -42;
- $2246 = $2245&255;
- $2247 = (10176 + ($2246)|0);
- $2248 = HEAP8[$2247>>0]|0;
- $2249 = HEAP8[$393>>0]|0;
- $2250 = $2249 ^ $2248;
- $2251 = $2250&255;
- $2252 = (10432 + ($2251)|0);
- $2253 = HEAP8[$2252>>0]|0;
- $2254 = HEAP8[$208>>0]|0;
- $2255 = $2254 ^ $2253;
- $2256 = $2255&255;
- $2257 = (10432 + ($2256)|0);
- $2258 = HEAP8[$2257>>0]|0;
- $2259 = HEAP8[$1>>0]|0;
- $2260 = $2259 ^ $2258;
- $2261 = $2260&255;
- $2262 = (10688 + ($2261<<2)|0);
- $2263 = HEAP32[$2262>>2]|0;
- $2264 = HEAP8[$593>>0]|0;
- $2265 = $2264 ^ 13;
- $2266 = $2265&255;
- $2267 = (10176 + ($2266)|0);
- $2268 = HEAP8[$2267>>0]|0;
- $2269 = HEAP8[$409>>0]|0;
- $2270 = $2269 ^ $2268;
- $2271 = $2270&255;
- $2272 = (10176 + ($2271)|0);
- $2273 = HEAP8[$2272>>0]|0;
- $2274 = HEAP8[$224>>0]|0;
- $2275 = $2274 ^ $2273;
- $2276 = $2275&255;
- $2277 = (10432 + ($2276)|0);
- $2278 = HEAP8[$2277>>0]|0;
- $2279 = HEAP8[$40>>0]|0;
- $2280 = $2279 ^ $2278;
- $2281 = $2280&255;
- $2282 = (11712 + ($2281<<2)|0);
- $2283 = HEAP32[$2282>>2]|0;
- $2284 = $2283 ^ $2263;
- $2285 = HEAP8[$617>>0]|0;
- $2286 = $2285 ^ 13;
- $2287 = $2286&255;
- $2288 = (10432 + ($2287)|0);
- $2289 = HEAP8[$2288>>0]|0;
- $2290 = HEAP8[$433>>0]|0;
- $2291 = $2290 ^ $2289;
- $2292 = $2291&255;
- $2293 = (10432 + ($2292)|0);
- $2294 = HEAP8[$2293>>0]|0;
- $2295 = HEAP8[$248>>0]|0;
- $2296 = $2295 ^ $2294;
- $2297 = $2296&255;
- $2298 = (10176 + ($2297)|0);
- $2299 = HEAP8[$2298>>0]|0;
- $2300 = HEAP8[$64>>0]|0;
- $2301 = $2300 ^ $2299;
- $2302 = $2301&255;
- $2303 = (12736 + ($2302<<2)|0);
- $2304 = HEAP32[$2303>>2]|0;
- $2305 = $2284 ^ $2304;
- $2306 = HEAP8[$641>>0]|0;
- $2307 = $2306 ^ -42;
- $2308 = $2307&255;
- $2309 = (10432 + ($2308)|0);
- $2310 = HEAP8[$2309>>0]|0;
- $2311 = HEAP8[$457>>0]|0;
- $2312 = $2311 ^ $2310;
- $2313 = $2312&255;
- $2314 = (10176 + ($2313)|0);
- $2315 = HEAP8[$2314>>0]|0;
- $2316 = HEAP8[$272>>0]|0;
- $2317 = $2316 ^ $2315;
- $2318 = $2317&255;
- $2319 = (10176 + ($2318)|0);
- $2320 = HEAP8[$2319>>0]|0;
- $2321 = HEAP8[$88>>0]|0;
- $2322 = $2321 ^ $2320;
- $2323 = $2322&255;
- $2324 = (13760 + ($2323<<2)|0);
- $2325 = HEAP32[$2324>>2]|0;
- $2326 = $2305 ^ $2325;
- $2327 = HEAP8[$665>>0]|0;
- $2328 = $2327 ^ 50;
- $2329 = $2328&255;
- $2330 = (10176 + ($2329)|0);
- $2331 = HEAP8[$2330>>0]|0;
- $2332 = HEAP8[$481>>0]|0;
- $2333 = $2332 ^ $2331;
- $2334 = $2333&255;
- $2335 = (10432 + ($2334)|0);
- $2336 = HEAP8[$2335>>0]|0;
- $2337 = HEAP8[$296>>0]|0;
- $2338 = $2337 ^ $2336;
- $2339 = $2338&255;
- $2340 = (10432 + ($2339)|0);
- $2341 = HEAP8[$2340>>0]|0;
- $2342 = HEAP8[$112>>0]|0;
- $2343 = $2342 ^ $2341;
- $2344 = $2343&255;
- $2345 = (10688 + ($2344<<2)|0);
- $2346 = HEAP32[$2345>>2]|0;
- $2347 = HEAP8[$689>>0]|0;
- $2348 = $2347 ^ -58;
- $2349 = $2348&255;
- $2350 = (10176 + ($2349)|0);
- $2351 = HEAP8[$2350>>0]|0;
- $2352 = HEAP8[$505>>0]|0;
- $2353 = $2352 ^ $2351;
- $2354 = $2353&255;
- $2355 = (10176 + ($2354)|0);
- $2356 = HEAP8[$2355>>0]|0;
- $2357 = HEAP8[$320>>0]|0;
- $2358 = $2357 ^ $2356;
- $2359 = $2358&255;
- $2360 = (10432 + ($2359)|0);
- $2361 = HEAP8[$2360>>0]|0;
- $2362 = HEAP8[$136>>0]|0;
- $2363 = $2362 ^ $2361;
- $2364 = $2363&255;
- $2365 = (11712 + ($2364<<2)|0);
- $2366 = HEAP32[$2365>>2]|0;
- $2367 = $2366 ^ $2346;
- $2368 = HEAP8[$713>>0]|0;
- $2369 = $2368 ^ -58;
- $2370 = $2369&255;
- $2371 = (10432 + ($2370)|0);
- $2372 = HEAP8[$2371>>0]|0;
- $2373 = HEAP8[$529>>0]|0;
- $2374 = $2373 ^ $2372;
- $2375 = $2374&255;
- $2376 = (10432 + ($2375)|0);
- $2377 = HEAP8[$2376>>0]|0;
- $2378 = HEAP8[$344>>0]|0;
- $2379 = $2378 ^ $2377;
- $2380 = $2379&255;
- $2381 = (10176 + ($2380)|0);
- $2382 = HEAP8[$2381>>0]|0;
- $2383 = HEAP8[$160>>0]|0;
- $2384 = $2383 ^ $2382;
- $2385 = $2384&255;
- $2386 = (12736 + ($2385<<2)|0);
- $2387 = HEAP32[$2386>>2]|0;
- $2388 = $2367 ^ $2387;
- $2389 = HEAP8[$737>>0]|0;
- $2390 = $2389 ^ 50;
- $2391 = $2390&255;
- $2392 = (10432 + ($2391)|0);
- $2393 = HEAP8[$2392>>0]|0;
- $2394 = HEAP8[$553>>0]|0;
- $2395 = $2394 ^ $2393;
- $2396 = $2395&255;
- $2397 = (10176 + ($2396)|0);
- $2398 = HEAP8[$2397>>0]|0;
- $2399 = HEAP8[$368>>0]|0;
- $2400 = $2399 ^ $2398;
- $2401 = $2400&255;
- $2402 = (10176 + ($2401)|0);
- $2403 = HEAP8[$2402>>0]|0;
- $2404 = HEAP8[$184>>0]|0;
- $2405 = $2404 ^ $2403;
- $2406 = $2405&255;
- $2407 = (13760 + ($2406<<2)|0);
- $2408 = HEAP32[$2407>>2]|0;
- $2409 = $2388 ^ $2408;
- $2410 = $2409 << 8;
- $2411 = $2409 >>> 24;
- $2412 = $2410 | $2411;
- $2413 = (($2412) + ($2326))|0;
- $2414 = (($2413) + ($2412))|0;
- $2415 = ((($0)) + 4160|0);
- HEAP32[$2415>>2] = $2413;
- $2416 = $2414 << 9;
- $2417 = $2414 >>> 23;
- $2418 = $2416 | $2417;
- $2419 = ((($0)) + 4164|0);
- HEAP32[$2419>>2] = $2418;
- $2420 = HEAP8[$577>>0]|0;
- $2421 = $2420 ^ -40;
- $2422 = $2421&255;
- $2423 = (10176 + ($2422)|0);
- $2424 = HEAP8[$2423>>0]|0;
- $2425 = HEAP8[$393>>0]|0;
- $2426 = $2425 ^ $2424;
- $2427 = $2426&255;
- $2428 = (10432 + ($2427)|0);
- $2429 = HEAP8[$2428>>0]|0;
- $2430 = HEAP8[$208>>0]|0;
- $2431 = $2430 ^ $2429;
- $2432 = $2431&255;
- $2433 = (10432 + ($2432)|0);
- $2434 = HEAP8[$2433>>0]|0;
- $2435 = HEAP8[$1>>0]|0;
- $2436 = $2435 ^ $2434;
- $2437 = $2436&255;
- $2438 = (10688 + ($2437<<2)|0);
- $2439 = HEAP32[$2438>>2]|0;
- $2440 = HEAP8[$593>>0]|0;
- $2441 = $2440 ^ 53;
- $2442 = $2441&255;
- $2443 = (10176 + ($2442)|0);
- $2444 = HEAP8[$2443>>0]|0;
- $2445 = HEAP8[$409>>0]|0;
- $2446 = $2445 ^ $2444;
- $2447 = $2446&255;
- $2448 = (10176 + ($2447)|0);
- $2449 = HEAP8[$2448>>0]|0;
- $2450 = HEAP8[$224>>0]|0;
- $2451 = $2450 ^ $2449;
- $2452 = $2451&255;
- $2453 = (10432 + ($2452)|0);
- $2454 = HEAP8[$2453>>0]|0;
- $2455 = HEAP8[$40>>0]|0;
- $2456 = $2455 ^ $2454;
- $2457 = $2456&255;
- $2458 = (11712 + ($2457<<2)|0);
- $2459 = HEAP32[$2458>>2]|0;
- $2460 = $2459 ^ $2439;
- $2461 = HEAP8[$617>>0]|0;
- $2462 = $2461 ^ 53;
- $2463 = $2462&255;
- $2464 = (10432 + ($2463)|0);
- $2465 = HEAP8[$2464>>0]|0;
- $2466 = HEAP8[$433>>0]|0;
- $2467 = $2466 ^ $2465;
- $2468 = $2467&255;
- $2469 = (10432 + ($2468)|0);
- $2470 = HEAP8[$2469>>0]|0;
- $2471 = HEAP8[$248>>0]|0;
- $2472 = $2471 ^ $2470;
- $2473 = $2472&255;
- $2474 = (10176 + ($2473)|0);
- $2475 = HEAP8[$2474>>0]|0;
- $2476 = HEAP8[$64>>0]|0;
- $2477 = $2476 ^ $2475;
- $2478 = $2477&255;
- $2479 = (12736 + ($2478<<2)|0);
- $2480 = HEAP32[$2479>>2]|0;
- $2481 = $2460 ^ $2480;
- $2482 = HEAP8[$641>>0]|0;
- $2483 = $2482 ^ -40;
- $2484 = $2483&255;
- $2485 = (10432 + ($2484)|0);
- $2486 = HEAP8[$2485>>0]|0;
- $2487 = HEAP8[$457>>0]|0;
- $2488 = $2487 ^ $2486;
- $2489 = $2488&255;
- $2490 = (10176 + ($2489)|0);
- $2491 = HEAP8[$2490>>0]|0;
- $2492 = HEAP8[$272>>0]|0;
- $2493 = $2492 ^ $2491;
- $2494 = $2493&255;
- $2495 = (10176 + ($2494)|0);
- $2496 = HEAP8[$2495>>0]|0;
- $2497 = HEAP8[$88>>0]|0;
- $2498 = $2497 ^ $2496;
- $2499 = $2498&255;
- $2500 = (13760 + ($2499<<2)|0);
- $2501 = HEAP32[$2500>>2]|0;
- $2502 = $2481 ^ $2501;
- $2503 = HEAP8[$665>>0]|0;
- $2504 = $2503 ^ -3;
- $2505 = $2504&255;
- $2506 = (10176 + ($2505)|0);
- $2507 = HEAP8[$2506>>0]|0;
- $2508 = HEAP8[$481>>0]|0;
- $2509 = $2508 ^ $2507;
- $2510 = $2509&255;
- $2511 = (10432 + ($2510)|0);
- $2512 = HEAP8[$2511>>0]|0;
- $2513 = HEAP8[$296>>0]|0;
- $2514 = $2513 ^ $2512;
- $2515 = $2514&255;
- $2516 = (10432 + ($2515)|0);
- $2517 = HEAP8[$2516>>0]|0;
- $2518 = HEAP8[$112>>0]|0;
- $2519 = $2518 ^ $2517;
- $2520 = $2519&255;
- $2521 = (10688 + ($2520<<2)|0);
- $2522 = HEAP32[$2521>>2]|0;
- $2523 = HEAP8[$689>>0]|0;
- $2524 = $2523 ^ -104;
- $2525 = $2524&255;
- $2526 = (10176 + ($2525)|0);
- $2527 = HEAP8[$2526>>0]|0;
- $2528 = HEAP8[$505>>0]|0;
- $2529 = $2528 ^ $2527;
- $2530 = $2529&255;
- $2531 = (10176 + ($2530)|0);
- $2532 = HEAP8[$2531>>0]|0;
- $2533 = HEAP8[$320>>0]|0;
- $2534 = $2533 ^ $2532;
- $2535 = $2534&255;
- $2536 = (10432 + ($2535)|0);
- $2537 = HEAP8[$2536>>0]|0;
- $2538 = HEAP8[$136>>0]|0;
- $2539 = $2538 ^ $2537;
- $2540 = $2539&255;
- $2541 = (11712 + ($2540<<2)|0);
- $2542 = HEAP32[$2541>>2]|0;
- $2543 = $2542 ^ $2522;
- $2544 = HEAP8[$713>>0]|0;
- $2545 = $2544 ^ -104;
- $2546 = $2545&255;
- $2547 = (10432 + ($2546)|0);
- $2548 = HEAP8[$2547>>0]|0;
- $2549 = HEAP8[$529>>0]|0;
- $2550 = $2549 ^ $2548;
- $2551 = $2550&255;
- $2552 = (10432 + ($2551)|0);
- $2553 = HEAP8[$2552>>0]|0;
- $2554 = HEAP8[$344>>0]|0;
- $2555 = $2554 ^ $2553;
- $2556 = $2555&255;
- $2557 = (10176 + ($2556)|0);
- $2558 = HEAP8[$2557>>0]|0;
- $2559 = HEAP8[$160>>0]|0;
- $2560 = $2559 ^ $2558;
- $2561 = $2560&255;
- $2562 = (12736 + ($2561<<2)|0);
- $2563 = HEAP32[$2562>>2]|0;
- $2564 = $2543 ^ $2563;
- $2565 = HEAP8[$737>>0]|0;
- $2566 = $2565 ^ -3;
- $2567 = $2566&255;
- $2568 = (10432 + ($2567)|0);
- $2569 = HEAP8[$2568>>0]|0;
- $2570 = HEAP8[$553>>0]|0;
- $2571 = $2570 ^ $2569;
- $2572 = $2571&255;
- $2573 = (10176 + ($2572)|0);
- $2574 = HEAP8[$2573>>0]|0;
- $2575 = HEAP8[$368>>0]|0;
- $2576 = $2575 ^ $2574;
- $2577 = $2576&255;
- $2578 = (10176 + ($2577)|0);
- $2579 = HEAP8[$2578>>0]|0;
- $2580 = HEAP8[$184>>0]|0;
- $2581 = $2580 ^ $2579;
- $2582 = $2581&255;
- $2583 = (13760 + ($2582<<2)|0);
- $2584 = HEAP32[$2583>>2]|0;
- $2585 = $2564 ^ $2584;
- $2586 = $2585 << 8;
- $2587 = $2585 >>> 24;
- $2588 = $2586 | $2587;
- $2589 = (($2588) + ($2502))|0;
- $2590 = (($2589) + ($2588))|0;
- $2591 = ((($0)) + 4168|0);
- HEAP32[$2591>>2] = $2589;
- $2592 = $2590 << 9;
- $2593 = $2590 >>> 23;
- $2594 = $2592 | $2593;
- $2595 = ((($0)) + 4172|0);
- HEAP32[$2595>>2] = $2594;
- $2596 = HEAP8[$577>>0]|0;
- $2597 = $2596 ^ 55;
- $2598 = $2597&255;
- $2599 = (10176 + ($2598)|0);
- $2600 = HEAP8[$2599>>0]|0;
- $2601 = HEAP8[$393>>0]|0;
- $2602 = $2601 ^ $2600;
- $2603 = $2602&255;
- $2604 = (10432 + ($2603)|0);
- $2605 = HEAP8[$2604>>0]|0;
- $2606 = HEAP8[$208>>0]|0;
- $2607 = $2606 ^ $2605;
- $2608 = $2607&255;
- $2609 = (10432 + ($2608)|0);
- $2610 = HEAP8[$2609>>0]|0;
- $2611 = HEAP8[$1>>0]|0;
- $2612 = $2611 ^ $2610;
- $2613 = $2612&255;
- $2614 = (10688 + ($2613<<2)|0);
- $2615 = HEAP32[$2614>>2]|0;
- $2616 = HEAP8[$593>>0]|0;
- $2617 = $2616 ^ 24;
- $2618 = $2617&255;
- $2619 = (10176 + ($2618)|0);
- $2620 = HEAP8[$2619>>0]|0;
- $2621 = HEAP8[$409>>0]|0;
- $2622 = $2621 ^ $2620;
- $2623 = $2622&255;
- $2624 = (10176 + ($2623)|0);
- $2625 = HEAP8[$2624>>0]|0;
- $2626 = HEAP8[$224>>0]|0;
- $2627 = $2626 ^ $2625;
- $2628 = $2627&255;
- $2629 = (10432 + ($2628)|0);
- $2630 = HEAP8[$2629>>0]|0;
- $2631 = HEAP8[$40>>0]|0;
- $2632 = $2631 ^ $2630;
- $2633 = $2632&255;
- $2634 = (11712 + ($2633<<2)|0);
- $2635 = HEAP32[$2634>>2]|0;
- $2636 = $2635 ^ $2615;
- $2637 = HEAP8[$617>>0]|0;
- $2638 = $2637 ^ 24;
- $2639 = $2638&255;
- $2640 = (10432 + ($2639)|0);
- $2641 = HEAP8[$2640>>0]|0;
- $2642 = HEAP8[$433>>0]|0;
- $2643 = $2642 ^ $2641;
- $2644 = $2643&255;
- $2645 = (10432 + ($2644)|0);
- $2646 = HEAP8[$2645>>0]|0;
- $2647 = HEAP8[$248>>0]|0;
- $2648 = $2647 ^ $2646;
- $2649 = $2648&255;
- $2650 = (10176 + ($2649)|0);
- $2651 = HEAP8[$2650>>0]|0;
- $2652 = HEAP8[$64>>0]|0;
- $2653 = $2652 ^ $2651;
- $2654 = $2653&255;
- $2655 = (12736 + ($2654<<2)|0);
- $2656 = HEAP32[$2655>>2]|0;
- $2657 = $2636 ^ $2656;
- $2658 = HEAP8[$641>>0]|0;
- $2659 = $2658 ^ 55;
- $2660 = $2659&255;
- $2661 = (10432 + ($2660)|0);
- $2662 = HEAP8[$2661>>0]|0;
- $2663 = HEAP8[$457>>0]|0;
- $2664 = $2663 ^ $2662;
- $2665 = $2664&255;
- $2666 = (10176 + ($2665)|0);
- $2667 = HEAP8[$2666>>0]|0;
- $2668 = HEAP8[$272>>0]|0;
- $2669 = $2668 ^ $2667;
- $2670 = $2669&255;
- $2671 = (10176 + ($2670)|0);
- $2672 = HEAP8[$2671>>0]|0;
- $2673 = HEAP8[$88>>0]|0;
- $2674 = $2673 ^ $2672;
- $2675 = $2674&255;
- $2676 = (13760 + ($2675<<2)|0);
- $2677 = HEAP32[$2676>>2]|0;
- $2678 = $2657 ^ $2677;
- $2679 = HEAP8[$665>>0]|0;
- $2680 = $2679 ^ 113;
- $2681 = $2680&255;
- $2682 = (10176 + ($2681)|0);
- $2683 = HEAP8[$2682>>0]|0;
- $2684 = HEAP8[$481>>0]|0;
- $2685 = $2684 ^ $2683;
- $2686 = $2685&255;
- $2687 = (10432 + ($2686)|0);
- $2688 = HEAP8[$2687>>0]|0;
- $2689 = HEAP8[$296>>0]|0;
- $2690 = $2689 ^ $2688;
- $2691 = $2690&255;
- $2692 = (10432 + ($2691)|0);
- $2693 = HEAP8[$2692>>0]|0;
- $2694 = HEAP8[$112>>0]|0;
- $2695 = $2694 ^ $2693;
- $2696 = $2695&255;
- $2697 = (10688 + ($2696<<2)|0);
- $2698 = HEAP32[$2697>>2]|0;
- $2699 = HEAP8[$689>>0]|0;
- $2700 = $2699 ^ -9;
- $2701 = $2700&255;
- $2702 = (10176 + ($2701)|0);
- $2703 = HEAP8[$2702>>0]|0;
- $2704 = HEAP8[$505>>0]|0;
- $2705 = $2704 ^ $2703;
- $2706 = $2705&255;
- $2707 = (10176 + ($2706)|0);
- $2708 = HEAP8[$2707>>0]|0;
- $2709 = HEAP8[$320>>0]|0;
- $2710 = $2709 ^ $2708;
- $2711 = $2710&255;
- $2712 = (10432 + ($2711)|0);
- $2713 = HEAP8[$2712>>0]|0;
- $2714 = HEAP8[$136>>0]|0;
- $2715 = $2714 ^ $2713;
- $2716 = $2715&255;
- $2717 = (11712 + ($2716<<2)|0);
- $2718 = HEAP32[$2717>>2]|0;
- $2719 = $2718 ^ $2698;
- $2720 = HEAP8[$713>>0]|0;
- $2721 = $2720 ^ -9;
- $2722 = $2721&255;
- $2723 = (10432 + ($2722)|0);
- $2724 = HEAP8[$2723>>0]|0;
- $2725 = HEAP8[$529>>0]|0;
- $2726 = $2725 ^ $2724;
- $2727 = $2726&255;
- $2728 = (10432 + ($2727)|0);
- $2729 = HEAP8[$2728>>0]|0;
- $2730 = HEAP8[$344>>0]|0;
- $2731 = $2730 ^ $2729;
- $2732 = $2731&255;
- $2733 = (10176 + ($2732)|0);
- $2734 = HEAP8[$2733>>0]|0;
- $2735 = HEAP8[$160>>0]|0;
- $2736 = $2735 ^ $2734;
- $2737 = $2736&255;
- $2738 = (12736 + ($2737<<2)|0);
- $2739 = HEAP32[$2738>>2]|0;
- $2740 = $2719 ^ $2739;
- $2741 = HEAP8[$737>>0]|0;
- $2742 = $2741 ^ 113;
- $2743 = $2742&255;
- $2744 = (10432 + ($2743)|0);
- $2745 = HEAP8[$2744>>0]|0;
- $2746 = HEAP8[$553>>0]|0;
- $2747 = $2746 ^ $2745;
- $2748 = $2747&255;
- $2749 = (10176 + ($2748)|0);
- $2750 = HEAP8[$2749>>0]|0;
- $2751 = HEAP8[$368>>0]|0;
- $2752 = $2751 ^ $2750;
- $2753 = $2752&255;
- $2754 = (10176 + ($2753)|0);
- $2755 = HEAP8[$2754>>0]|0;
- $2756 = HEAP8[$184>>0]|0;
- $2757 = $2756 ^ $2755;
- $2758 = $2757&255;
- $2759 = (13760 + ($2758<<2)|0);
- $2760 = HEAP32[$2759>>2]|0;
- $2761 = $2740 ^ $2760;
- $2762 = $2761 << 8;
- $2763 = $2761 >>> 24;
- $2764 = $2762 | $2763;
- $2765 = (($2764) + ($2678))|0;
- $2766 = (($2765) + ($2764))|0;
- $2767 = ((($0)) + 4176|0);
- HEAP32[$2767>>2] = $2765;
- $2768 = $2766 << 9;
- $2769 = $2766 >>> 23;
- $2770 = $2768 | $2769;
- $2771 = ((($0)) + 4180|0);
- HEAP32[$2771>>2] = $2770;
- $2772 = HEAP8[$577>>0]|0;
- $2773 = $2772 ^ -15;
- $2774 = $2773&255;
- $2775 = (10176 + ($2774)|0);
- $2776 = HEAP8[$2775>>0]|0;
- $2777 = HEAP8[$393>>0]|0;
- $2778 = $2777 ^ $2776;
- $2779 = $2778&255;
- $2780 = (10432 + ($2779)|0);
- $2781 = HEAP8[$2780>>0]|0;
- $2782 = HEAP8[$208>>0]|0;
- $2783 = $2782 ^ $2781;
- $2784 = $2783&255;
- $2785 = (10432 + ($2784)|0);
- $2786 = HEAP8[$2785>>0]|0;
- $2787 = HEAP8[$1>>0]|0;
- $2788 = $2787 ^ $2786;
- $2789 = $2788&255;
- $2790 = (10688 + ($2789<<2)|0);
- $2791 = HEAP32[$2790>>2]|0;
- $2792 = HEAP8[$593>>0]|0;
- $2793 = $2792 ^ -20;
- $2794 = $2793&255;
- $2795 = (10176 + ($2794)|0);
- $2796 = HEAP8[$2795>>0]|0;
- $2797 = HEAP8[$409>>0]|0;
- $2798 = $2797 ^ $2796;
- $2799 = $2798&255;
- $2800 = (10176 + ($2799)|0);
- $2801 = HEAP8[$2800>>0]|0;
- $2802 = HEAP8[$224>>0]|0;
- $2803 = $2802 ^ $2801;
- $2804 = $2803&255;
- $2805 = (10432 + ($2804)|0);
- $2806 = HEAP8[$2805>>0]|0;
- $2807 = HEAP8[$40>>0]|0;
- $2808 = $2807 ^ $2806;
- $2809 = $2808&255;
- $2810 = (11712 + ($2809<<2)|0);
- $2811 = HEAP32[$2810>>2]|0;
- $2812 = $2811 ^ $2791;
- $2813 = HEAP8[$617>>0]|0;
- $2814 = $2813 ^ -20;
- $2815 = $2814&255;
- $2816 = (10432 + ($2815)|0);
- $2817 = HEAP8[$2816>>0]|0;
- $2818 = HEAP8[$433>>0]|0;
- $2819 = $2818 ^ $2817;
- $2820 = $2819&255;
- $2821 = (10432 + ($2820)|0);
- $2822 = HEAP8[$2821>>0]|0;
- $2823 = HEAP8[$248>>0]|0;
- $2824 = $2823 ^ $2822;
- $2825 = $2824&255;
- $2826 = (10176 + ($2825)|0);
- $2827 = HEAP8[$2826>>0]|0;
- $2828 = HEAP8[$64>>0]|0;
- $2829 = $2828 ^ $2827;
- $2830 = $2829&255;
- $2831 = (12736 + ($2830<<2)|0);
- $2832 = HEAP32[$2831>>2]|0;
- $2833 = $2812 ^ $2832;
- $2834 = HEAP8[$641>>0]|0;
- $2835 = $2834 ^ -15;
- $2836 = $2835&255;
- $2837 = (10432 + ($2836)|0);
- $2838 = HEAP8[$2837>>0]|0;
- $2839 = HEAP8[$457>>0]|0;
- $2840 = $2839 ^ $2838;
- $2841 = $2840&255;
- $2842 = (10176 + ($2841)|0);
- $2843 = HEAP8[$2842>>0]|0;
- $2844 = HEAP8[$272>>0]|0;
- $2845 = $2844 ^ $2843;
- $2846 = $2845&255;
- $2847 = (10176 + ($2846)|0);
- $2848 = HEAP8[$2847>>0]|0;
- $2849 = HEAP8[$88>>0]|0;
- $2850 = $2849 ^ $2848;
- $2851 = $2850&255;
- $2852 = (13760 + ($2851<<2)|0);
- $2853 = HEAP32[$2852>>2]|0;
- $2854 = $2833 ^ $2853;
- $2855 = HEAP8[$665>>0]|0;
- $2856 = $2855 ^ -31;
- $2857 = $2856&255;
- $2858 = (10176 + ($2857)|0);
- $2859 = HEAP8[$2858>>0]|0;
- $2860 = HEAP8[$481>>0]|0;
- $2861 = $2860 ^ $2859;
- $2862 = $2861&255;
- $2863 = (10432 + ($2862)|0);
- $2864 = HEAP8[$2863>>0]|0;
- $2865 = HEAP8[$296>>0]|0;
- $2866 = $2865 ^ $2864;
- $2867 = $2866&255;
- $2868 = (10432 + ($2867)|0);
- $2869 = HEAP8[$2868>>0]|0;
- $2870 = HEAP8[$112>>0]|0;
- $2871 = $2870 ^ $2869;
- $2872 = $2871&255;
- $2873 = (10688 + ($2872<<2)|0);
- $2874 = HEAP32[$2873>>2]|0;
- $2875 = HEAP8[$689>>0]|0;
- $2876 = $2875 ^ 108;
- $2877 = $2876&255;
- $2878 = (10176 + ($2877)|0);
- $2879 = HEAP8[$2878>>0]|0;
- $2880 = HEAP8[$505>>0]|0;
- $2881 = $2880 ^ $2879;
- $2882 = $2881&255;
- $2883 = (10176 + ($2882)|0);
- $2884 = HEAP8[$2883>>0]|0;
- $2885 = HEAP8[$320>>0]|0;
- $2886 = $2885 ^ $2884;
- $2887 = $2886&255;
- $2888 = (10432 + ($2887)|0);
- $2889 = HEAP8[$2888>>0]|0;
- $2890 = HEAP8[$136>>0]|0;
- $2891 = $2890 ^ $2889;
- $2892 = $2891&255;
- $2893 = (11712 + ($2892<<2)|0);
- $2894 = HEAP32[$2893>>2]|0;
- $2895 = $2894 ^ $2874;
- $2896 = HEAP8[$713>>0]|0;
- $2897 = $2896 ^ 108;
- $2898 = $2897&255;
- $2899 = (10432 + ($2898)|0);
- $2900 = HEAP8[$2899>>0]|0;
- $2901 = HEAP8[$529>>0]|0;
- $2902 = $2901 ^ $2900;
- $2903 = $2902&255;
- $2904 = (10432 + ($2903)|0);
- $2905 = HEAP8[$2904>>0]|0;
- $2906 = HEAP8[$344>>0]|0;
- $2907 = $2906 ^ $2905;
- $2908 = $2907&255;
- $2909 = (10176 + ($2908)|0);
- $2910 = HEAP8[$2909>>0]|0;
- $2911 = HEAP8[$160>>0]|0;
- $2912 = $2911 ^ $2910;
- $2913 = $2912&255;
- $2914 = (12736 + ($2913<<2)|0);
- $2915 = HEAP32[$2914>>2]|0;
- $2916 = $2895 ^ $2915;
- $2917 = HEAP8[$737>>0]|0;
- $2918 = $2917 ^ -31;
- $2919 = $2918&255;
- $2920 = (10432 + ($2919)|0);
- $2921 = HEAP8[$2920>>0]|0;
- $2922 = HEAP8[$553>>0]|0;
- $2923 = $2922 ^ $2921;
- $2924 = $2923&255;
- $2925 = (10176 + ($2924)|0);
- $2926 = HEAP8[$2925>>0]|0;
- $2927 = HEAP8[$368>>0]|0;
- $2928 = $2927 ^ $2926;
- $2929 = $2928&255;
- $2930 = (10176 + ($2929)|0);
- $2931 = HEAP8[$2930>>0]|0;
- $2932 = HEAP8[$184>>0]|0;
- $2933 = $2932 ^ $2931;
- $2934 = $2933&255;
- $2935 = (13760 + ($2934<<2)|0);
- $2936 = HEAP32[$2935>>2]|0;
- $2937 = $2916 ^ $2936;
- $2938 = $2937 << 8;
- $2939 = $2937 >>> 24;
- $2940 = $2938 | $2939;
- $2941 = (($2940) + ($2854))|0;
- $2942 = (($2941) + ($2940))|0;
- $2943 = ((($0)) + 4184|0);
- HEAP32[$2943>>2] = $2941;
- $2944 = $2942 << 9;
- $2945 = $2942 >>> 23;
- $2946 = $2944 | $2945;
- $2947 = ((($0)) + 4188|0);
- HEAP32[$2947>>2] = $2946;
- $2948 = HEAP8[$577>>0]|0;
- $2949 = $2948 ^ 48;
- $2950 = $2949&255;
- $2951 = (10176 + ($2950)|0);
- $2952 = HEAP8[$2951>>0]|0;
- $2953 = HEAP8[$393>>0]|0;
- $2954 = $2953 ^ $2952;
- $2955 = $2954&255;
- $2956 = (10432 + ($2955)|0);
- $2957 = HEAP8[$2956>>0]|0;
- $2958 = HEAP8[$208>>0]|0;
- $2959 = $2958 ^ $2957;
- $2960 = $2959&255;
- $2961 = (10432 + ($2960)|0);
- $2962 = HEAP8[$2961>>0]|0;
- $2963 = HEAP8[$1>>0]|0;
- $2964 = $2963 ^ $2962;
- $2965 = $2964&255;
- $2966 = (10688 + ($2965<<2)|0);
- $2967 = HEAP32[$2966>>2]|0;
- $2968 = HEAP8[$593>>0]|0;
- $2969 = $2968 ^ 67;
- $2970 = $2969&255;
- $2971 = (10176 + ($2970)|0);
- $2972 = HEAP8[$2971>>0]|0;
- $2973 = HEAP8[$409>>0]|0;
- $2974 = $2973 ^ $2972;
- $2975 = $2974&255;
- $2976 = (10176 + ($2975)|0);
- $2977 = HEAP8[$2976>>0]|0;
- $2978 = HEAP8[$224>>0]|0;
- $2979 = $2978 ^ $2977;
- $2980 = $2979&255;
- $2981 = (10432 + ($2980)|0);
- $2982 = HEAP8[$2981>>0]|0;
- $2983 = HEAP8[$40>>0]|0;
- $2984 = $2983 ^ $2982;
- $2985 = $2984&255;
- $2986 = (11712 + ($2985<<2)|0);
- $2987 = HEAP32[$2986>>2]|0;
- $2988 = $2987 ^ $2967;
- $2989 = HEAP8[$617>>0]|0;
- $2990 = $2989 ^ 67;
- $2991 = $2990&255;
- $2992 = (10432 + ($2991)|0);
- $2993 = HEAP8[$2992>>0]|0;
- $2994 = HEAP8[$433>>0]|0;
- $2995 = $2994 ^ $2993;
- $2996 = $2995&255;
- $2997 = (10432 + ($2996)|0);
- $2998 = HEAP8[$2997>>0]|0;
- $2999 = HEAP8[$248>>0]|0;
- $3000 = $2999 ^ $2998;
- $3001 = $3000&255;
- $3002 = (10176 + ($3001)|0);
- $3003 = HEAP8[$3002>>0]|0;
- $3004 = HEAP8[$64>>0]|0;
- $3005 = $3004 ^ $3003;
- $3006 = $3005&255;
- $3007 = (12736 + ($3006<<2)|0);
- $3008 = HEAP32[$3007>>2]|0;
- $3009 = $2988 ^ $3008;
- $3010 = HEAP8[$641>>0]|0;
- $3011 = $3010 ^ 48;
- $3012 = $3011&255;
- $3013 = (10432 + ($3012)|0);
- $3014 = HEAP8[$3013>>0]|0;
- $3015 = HEAP8[$457>>0]|0;
- $3016 = $3015 ^ $3014;
- $3017 = $3016&255;
- $3018 = (10176 + ($3017)|0);
- $3019 = HEAP8[$3018>>0]|0;
- $3020 = HEAP8[$272>>0]|0;
- $3021 = $3020 ^ $3019;
- $3022 = $3021&255;
- $3023 = (10176 + ($3022)|0);
- $3024 = HEAP8[$3023>>0]|0;
- $3025 = HEAP8[$88>>0]|0;
- $3026 = $3025 ^ $3024;
- $3027 = $3026&255;
- $3028 = (13760 + ($3027<<2)|0);
- $3029 = HEAP32[$3028>>2]|0;
- $3030 = $3009 ^ $3029;
- $3031 = HEAP8[$665>>0]|0;
- $3032 = $3031 ^ 15;
- $3033 = $3032&255;
- $3034 = (10176 + ($3033)|0);
- $3035 = HEAP8[$3034>>0]|0;
- $3036 = HEAP8[$481>>0]|0;
- $3037 = $3036 ^ $3035;
- $3038 = $3037&255;
- $3039 = (10432 + ($3038)|0);
- $3040 = HEAP8[$3039>>0]|0;
- $3041 = HEAP8[$296>>0]|0;
- $3042 = $3041 ^ $3040;
- $3043 = $3042&255;
- $3044 = (10432 + ($3043)|0);
- $3045 = HEAP8[$3044>>0]|0;
- $3046 = HEAP8[$112>>0]|0;
- $3047 = $3046 ^ $3045;
- $3048 = $3047&255;
- $3049 = (10688 + ($3048<<2)|0);
- $3050 = HEAP32[$3049>>2]|0;
- $3051 = HEAP8[$689>>0]|0;
- $3052 = $3051 ^ 117;
- $3053 = $3052&255;
- $3054 = (10176 + ($3053)|0);
- $3055 = HEAP8[$3054>>0]|0;
- $3056 = HEAP8[$505>>0]|0;
- $3057 = $3056 ^ $3055;
- $3058 = $3057&255;
- $3059 = (10176 + ($3058)|0);
- $3060 = HEAP8[$3059>>0]|0;
- $3061 = HEAP8[$320>>0]|0;
- $3062 = $3061 ^ $3060;
- $3063 = $3062&255;
- $3064 = (10432 + ($3063)|0);
- $3065 = HEAP8[$3064>>0]|0;
- $3066 = HEAP8[$136>>0]|0;
- $3067 = $3066 ^ $3065;
- $3068 = $3067&255;
- $3069 = (11712 + ($3068<<2)|0);
- $3070 = HEAP32[$3069>>2]|0;
- $3071 = $3070 ^ $3050;
- $3072 = HEAP8[$713>>0]|0;
- $3073 = $3072 ^ 117;
- $3074 = $3073&255;
- $3075 = (10432 + ($3074)|0);
- $3076 = HEAP8[$3075>>0]|0;
- $3077 = HEAP8[$529>>0]|0;
- $3078 = $3077 ^ $3076;
- $3079 = $3078&255;
- $3080 = (10432 + ($3079)|0);
- $3081 = HEAP8[$3080>>0]|0;
- $3082 = HEAP8[$344>>0]|0;
- $3083 = $3082 ^ $3081;
- $3084 = $3083&255;
- $3085 = (10176 + ($3084)|0);
- $3086 = HEAP8[$3085>>0]|0;
- $3087 = HEAP8[$160>>0]|0;
- $3088 = $3087 ^ $3086;
- $3089 = $3088&255;
- $3090 = (12736 + ($3089<<2)|0);
- $3091 = HEAP32[$3090>>2]|0;
- $3092 = $3071 ^ $3091;
- $3093 = HEAP8[$737>>0]|0;
- $3094 = $3093 ^ 15;
- $3095 = $3094&255;
- $3096 = (10432 + ($3095)|0);
- $3097 = HEAP8[$3096>>0]|0;
- $3098 = HEAP8[$553>>0]|0;
- $3099 = $3098 ^ $3097;
- $3100 = $3099&255;
- $3101 = (10176 + ($3100)|0);
- $3102 = HEAP8[$3101>>0]|0;
- $3103 = HEAP8[$368>>0]|0;
- $3104 = $3103 ^ $3102;
- $3105 = $3104&255;
- $3106 = (10176 + ($3105)|0);
- $3107 = HEAP8[$3106>>0]|0;
- $3108 = HEAP8[$184>>0]|0;
- $3109 = $3108 ^ $3107;
- $3110 = $3109&255;
- $3111 = (13760 + ($3110<<2)|0);
- $3112 = HEAP32[$3111>>2]|0;
- $3113 = $3092 ^ $3112;
- $3114 = $3113 << 8;
- $3115 = $3113 >>> 24;
- $3116 = $3114 | $3115;
- $3117 = (($3116) + ($3030))|0;
- $3118 = (($3117) + ($3116))|0;
- $3119 = ((($0)) + 4192|0);
- HEAP32[$3119>>2] = $3117;
- $3120 = $3118 << 9;
- $3121 = $3118 >>> 23;
- $3122 = $3120 | $3121;
- $3123 = ((($0)) + 4196|0);
- HEAP32[$3123>>2] = $3122;
- $3124 = HEAP8[$577>>0]|0;
- $3125 = $3124 ^ -8;
- $3126 = $3125&255;
- $3127 = (10176 + ($3126)|0);
- $3128 = HEAP8[$3127>>0]|0;
- $3129 = HEAP8[$393>>0]|0;
- $3130 = $3129 ^ $3128;
- $3131 = $3130&255;
- $3132 = (10432 + ($3131)|0);
- $3133 = HEAP8[$3132>>0]|0;
- $3134 = HEAP8[$208>>0]|0;
- $3135 = $3134 ^ $3133;
- $3136 = $3135&255;
- $3137 = (10432 + ($3136)|0);
- $3138 = HEAP8[$3137>>0]|0;
- $3139 = HEAP8[$1>>0]|0;
- $3140 = $3139 ^ $3138;
- $3141 = $3140&255;
- $3142 = (10688 + ($3141<<2)|0);
- $3143 = HEAP32[$3142>>2]|0;
- $3144 = HEAP8[$593>>0]|0;
- $3145 = $3144 ^ 55;
- $3146 = $3145&255;
- $3147 = (10176 + ($3146)|0);
- $3148 = HEAP8[$3147>>0]|0;
- $3149 = HEAP8[$409>>0]|0;
- $3150 = $3149 ^ $3148;
- $3151 = $3150&255;
- $3152 = (10176 + ($3151)|0);
- $3153 = HEAP8[$3152>>0]|0;
- $3154 = HEAP8[$224>>0]|0;
- $3155 = $3154 ^ $3153;
- $3156 = $3155&255;
- $3157 = (10432 + ($3156)|0);
- $3158 = HEAP8[$3157>>0]|0;
- $3159 = HEAP8[$40>>0]|0;
- $3160 = $3159 ^ $3158;
- $3161 = $3160&255;
- $3162 = (11712 + ($3161<<2)|0);
- $3163 = HEAP32[$3162>>2]|0;
- $3164 = $3163 ^ $3143;
- $3165 = HEAP8[$617>>0]|0;
- $3166 = $3165 ^ 55;
- $3167 = $3166&255;
- $3168 = (10432 + ($3167)|0);
- $3169 = HEAP8[$3168>>0]|0;
- $3170 = HEAP8[$433>>0]|0;
- $3171 = $3170 ^ $3169;
- $3172 = $3171&255;
- $3173 = (10432 + ($3172)|0);
- $3174 = HEAP8[$3173>>0]|0;
- $3175 = HEAP8[$248>>0]|0;
- $3176 = $3175 ^ $3174;
- $3177 = $3176&255;
- $3178 = (10176 + ($3177)|0);
- $3179 = HEAP8[$3178>>0]|0;
- $3180 = HEAP8[$64>>0]|0;
- $3181 = $3180 ^ $3179;
- $3182 = $3181&255;
- $3183 = (12736 + ($3182<<2)|0);
- $3184 = HEAP32[$3183>>2]|0;
- $3185 = $3164 ^ $3184;
- $3186 = HEAP8[$641>>0]|0;
- $3187 = $3186 ^ -8;
- $3188 = $3187&255;
- $3189 = (10432 + ($3188)|0);
- $3190 = HEAP8[$3189>>0]|0;
- $3191 = HEAP8[$457>>0]|0;
- $3192 = $3191 ^ $3190;
- $3193 = $3192&255;
- $3194 = (10176 + ($3193)|0);
- $3195 = HEAP8[$3194>>0]|0;
- $3196 = HEAP8[$272>>0]|0;
- $3197 = $3196 ^ $3195;
- $3198 = $3197&255;
- $3199 = (10176 + ($3198)|0);
- $3200 = HEAP8[$3199>>0]|0;
- $3201 = HEAP8[$88>>0]|0;
- $3202 = $3201 ^ $3200;
- $3203 = $3202&255;
- $3204 = (13760 + ($3203<<2)|0);
- $3205 = HEAP32[$3204>>2]|0;
- $3206 = $3185 ^ $3205;
- $3207 = HEAP8[$665>>0]|0;
- $3208 = $3207 ^ 27;
- $3209 = $3208&255;
- $3210 = (10176 + ($3209)|0);
- $3211 = HEAP8[$3210>>0]|0;
- $3212 = HEAP8[$481>>0]|0;
- $3213 = $3212 ^ $3211;
- $3214 = $3213&255;
- $3215 = (10432 + ($3214)|0);
- $3216 = HEAP8[$3215>>0]|0;
- $3217 = HEAP8[$296>>0]|0;
- $3218 = $3217 ^ $3216;
- $3219 = $3218&255;
- $3220 = (10432 + ($3219)|0);
- $3221 = HEAP8[$3220>>0]|0;
- $3222 = HEAP8[$112>>0]|0;
- $3223 = $3222 ^ $3221;
- $3224 = $3223&255;
- $3225 = (10688 + ($3224<<2)|0);
- $3226 = HEAP32[$3225>>2]|0;
- $3227 = HEAP8[$689>>0]|0;
- $3228 = $3227 ^ 38;
- $3229 = $3228&255;
- $3230 = (10176 + ($3229)|0);
- $3231 = HEAP8[$3230>>0]|0;
- $3232 = HEAP8[$505>>0]|0;
- $3233 = $3232 ^ $3231;
- $3234 = $3233&255;
- $3235 = (10176 + ($3234)|0);
- $3236 = HEAP8[$3235>>0]|0;
- $3237 = HEAP8[$320>>0]|0;
- $3238 = $3237 ^ $3236;
- $3239 = $3238&255;
- $3240 = (10432 + ($3239)|0);
- $3241 = HEAP8[$3240>>0]|0;
- $3242 = HEAP8[$136>>0]|0;
- $3243 = $3242 ^ $3241;
- $3244 = $3243&255;
- $3245 = (11712 + ($3244<<2)|0);
- $3246 = HEAP32[$3245>>2]|0;
- $3247 = $3246 ^ $3226;
- $3248 = HEAP8[$713>>0]|0;
- $3249 = $3248 ^ 38;
- $3250 = $3249&255;
- $3251 = (10432 + ($3250)|0);
- $3252 = HEAP8[$3251>>0]|0;
- $3253 = HEAP8[$529>>0]|0;
- $3254 = $3253 ^ $3252;
- $3255 = $3254&255;
- $3256 = (10432 + ($3255)|0);
- $3257 = HEAP8[$3256>>0]|0;
- $3258 = HEAP8[$344>>0]|0;
- $3259 = $3258 ^ $3257;
- $3260 = $3259&255;
- $3261 = (10176 + ($3260)|0);
- $3262 = HEAP8[$3261>>0]|0;
- $3263 = HEAP8[$160>>0]|0;
- $3264 = $3263 ^ $3262;
- $3265 = $3264&255;
- $3266 = (12736 + ($3265<<2)|0);
- $3267 = HEAP32[$3266>>2]|0;
- $3268 = $3247 ^ $3267;
- $3269 = HEAP8[$737>>0]|0;
- $3270 = $3269 ^ 27;
- $3271 = $3270&255;
- $3272 = (10432 + ($3271)|0);
- $3273 = HEAP8[$3272>>0]|0;
- $3274 = HEAP8[$553>>0]|0;
- $3275 = $3274 ^ $3273;
- $3276 = $3275&255;
- $3277 = (10176 + ($3276)|0);
- $3278 = HEAP8[$3277>>0]|0;
- $3279 = HEAP8[$368>>0]|0;
- $3280 = $3279 ^ $3278;
- $3281 = $3280&255;
- $3282 = (10176 + ($3281)|0);
- $3283 = HEAP8[$3282>>0]|0;
- $3284 = HEAP8[$184>>0]|0;
- $3285 = $3284 ^ $3283;
- $3286 = $3285&255;
- $3287 = (13760 + ($3286<<2)|0);
- $3288 = HEAP32[$3287>>2]|0;
- $3289 = $3268 ^ $3288;
- $3290 = $3289 << 8;
- $3291 = $3289 >>> 24;
- $3292 = $3290 | $3291;
- $3293 = (($3292) + ($3206))|0;
- $3294 = (($3293) + ($3292))|0;
- $3295 = ((($0)) + 4200|0);
- HEAP32[$3295>>2] = $3293;
- $3296 = $3294 << 9;
- $3297 = $3294 >>> 23;
- $3298 = $3296 | $3297;
- $3299 = ((($0)) + 4204|0);
- HEAP32[$3299>>2] = $3298;
- $3300 = HEAP8[$577>>0]|0;
- $3301 = $3300 ^ -121;
- $3302 = $3301&255;
- $3303 = (10176 + ($3302)|0);
- $3304 = HEAP8[$3303>>0]|0;
- $3305 = HEAP8[$393>>0]|0;
- $3306 = $3305 ^ $3304;
- $3307 = $3306&255;
- $3308 = (10432 + ($3307)|0);
- $3309 = HEAP8[$3308>>0]|0;
- $3310 = HEAP8[$208>>0]|0;
- $3311 = $3310 ^ $3309;
- $3312 = $3311&255;
- $3313 = (10432 + ($3312)|0);
- $3314 = HEAP8[$3313>>0]|0;
- $3315 = HEAP8[$1>>0]|0;
- $3316 = $3315 ^ $3314;
- $3317 = $3316&255;
- $3318 = (10688 + ($3317<<2)|0);
- $3319 = HEAP32[$3318>>2]|0;
- $3320 = HEAP8[$593>>0]|0;
- $3321 = $3320 ^ -6;
- $3322 = $3321&255;
- $3323 = (10176 + ($3322)|0);
- $3324 = HEAP8[$3323>>0]|0;
- $3325 = HEAP8[$409>>0]|0;
- $3326 = $3325 ^ $3324;
- $3327 = $3326&255;
- $3328 = (10176 + ($3327)|0);
- $3329 = HEAP8[$3328>>0]|0;
- $3330 = HEAP8[$224>>0]|0;
- $3331 = $3330 ^ $3329;
- $3332 = $3331&255;
- $3333 = (10432 + ($3332)|0);
- $3334 = HEAP8[$3333>>0]|0;
- $3335 = HEAP8[$40>>0]|0;
- $3336 = $3335 ^ $3334;
- $3337 = $3336&255;
- $3338 = (11712 + ($3337<<2)|0);
- $3339 = HEAP32[$3338>>2]|0;
- $3340 = $3339 ^ $3319;
- $3341 = HEAP8[$617>>0]|0;
- $3342 = $3341 ^ -6;
- $3343 = $3342&255;
- $3344 = (10432 + ($3343)|0);
- $3345 = HEAP8[$3344>>0]|0;
- $3346 = HEAP8[$433>>0]|0;
- $3347 = $3346 ^ $3345;
- $3348 = $3347&255;
- $3349 = (10432 + ($3348)|0);
- $3350 = HEAP8[$3349>>0]|0;
- $3351 = HEAP8[$248>>0]|0;
- $3352 = $3351 ^ $3350;
- $3353 = $3352&255;
- $3354 = (10176 + ($3353)|0);
- $3355 = HEAP8[$3354>>0]|0;
- $3356 = HEAP8[$64>>0]|0;
- $3357 = $3356 ^ $3355;
- $3358 = $3357&255;
- $3359 = (12736 + ($3358<<2)|0);
- $3360 = HEAP32[$3359>>2]|0;
- $3361 = $3340 ^ $3360;
- $3362 = HEAP8[$641>>0]|0;
- $3363 = $3362 ^ -121;
- $3364 = $3363&255;
- $3365 = (10432 + ($3364)|0);
- $3366 = HEAP8[$3365>>0]|0;
- $3367 = HEAP8[$457>>0]|0;
- $3368 = $3367 ^ $3366;
- $3369 = $3368&255;
- $3370 = (10176 + ($3369)|0);
- $3371 = HEAP8[$3370>>0]|0;
- $3372 = HEAP8[$272>>0]|0;
- $3373 = $3372 ^ $3371;
- $3374 = $3373&255;
- $3375 = (10176 + ($3374)|0);
- $3376 = HEAP8[$3375>>0]|0;
- $3377 = HEAP8[$88>>0]|0;
- $3378 = $3377 ^ $3376;
- $3379 = $3378&255;
- $3380 = (13760 + ($3379<<2)|0);
- $3381 = HEAP32[$3380>>2]|0;
- $3382 = $3361 ^ $3381;
- $3383 = HEAP8[$665>>0]|0;
- $3384 = $3383 ^ -6;
- $3385 = $3384&255;
- $3386 = (10176 + ($3385)|0);
- $3387 = HEAP8[$3386>>0]|0;
- $3388 = HEAP8[$481>>0]|0;
- $3389 = $3388 ^ $3387;
- $3390 = $3389&255;
- $3391 = (10432 + ($3390)|0);
- $3392 = HEAP8[$3391>>0]|0;
- $3393 = HEAP8[$296>>0]|0;
- $3394 = $3393 ^ $3392;
- $3395 = $3394&255;
- $3396 = (10432 + ($3395)|0);
- $3397 = HEAP8[$3396>>0]|0;
- $3398 = HEAP8[$112>>0]|0;
- $3399 = $3398 ^ $3397;
- $3400 = $3399&255;
- $3401 = (10688 + ($3400<<2)|0);
- $3402 = HEAP32[$3401>>2]|0;
- $3403 = HEAP8[$689>>0]|0;
- $3404 = $3403 ^ 19;
- $3405 = $3404&255;
- $3406 = (10176 + ($3405)|0);
- $3407 = HEAP8[$3406>>0]|0;
- $3408 = HEAP8[$505>>0]|0;
- $3409 = $3408 ^ $3407;
- $3410 = $3409&255;
- $3411 = (10176 + ($3410)|0);
- $3412 = HEAP8[$3411>>0]|0;
- $3413 = HEAP8[$320>>0]|0;
- $3414 = $3413 ^ $3412;
- $3415 = $3414&255;
- $3416 = (10432 + ($3415)|0);
- $3417 = HEAP8[$3416>>0]|0;
- $3418 = HEAP8[$136>>0]|0;
- $3419 = $3418 ^ $3417;
- $3420 = $3419&255;
- $3421 = (11712 + ($3420<<2)|0);
- $3422 = HEAP32[$3421>>2]|0;
- $3423 = $3422 ^ $3402;
- $3424 = HEAP8[$713>>0]|0;
- $3425 = $3424 ^ 19;
- $3426 = $3425&255;
- $3427 = (10432 + ($3426)|0);
- $3428 = HEAP8[$3427>>0]|0;
- $3429 = HEAP8[$529>>0]|0;
- $3430 = $3429 ^ $3428;
- $3431 = $3430&255;
- $3432 = (10432 + ($3431)|0);
- $3433 = HEAP8[$3432>>0]|0;
- $3434 = HEAP8[$344>>0]|0;
- $3435 = $3434 ^ $3433;
- $3436 = $3435&255;
- $3437 = (10176 + ($3436)|0);
- $3438 = HEAP8[$3437>>0]|0;
- $3439 = HEAP8[$160>>0]|0;
- $3440 = $3439 ^ $3438;
- $3441 = $3440&255;
- $3442 = (12736 + ($3441<<2)|0);
- $3443 = HEAP32[$3442>>2]|0;
- $3444 = $3423 ^ $3443;
- $3445 = HEAP8[$737>>0]|0;
- $3446 = $3445 ^ -6;
- $3447 = $3446&255;
- $3448 = (10432 + ($3447)|0);
- $3449 = HEAP8[$3448>>0]|0;
- $3450 = HEAP8[$553>>0]|0;
- $3451 = $3450 ^ $3449;
- $3452 = $3451&255;
- $3453 = (10176 + ($3452)|0);
- $3454 = HEAP8[$3453>>0]|0;
- $3455 = HEAP8[$368>>0]|0;
- $3456 = $3455 ^ $3454;
- $3457 = $3456&255;
- $3458 = (10176 + ($3457)|0);
- $3459 = HEAP8[$3458>>0]|0;
- $3460 = HEAP8[$184>>0]|0;
- $3461 = $3460 ^ $3459;
- $3462 = $3461&255;
- $3463 = (13760 + ($3462<<2)|0);
- $3464 = HEAP32[$3463>>2]|0;
- $3465 = $3444 ^ $3464;
- $3466 = $3465 << 8;
- $3467 = $3465 >>> 24;
- $3468 = $3466 | $3467;
- $3469 = (($3468) + ($3382))|0;
- $3470 = (($3469) + ($3468))|0;
- $3471 = ((($0)) + 4208|0);
- HEAP32[$3471>>2] = $3469;
- $3472 = $3470 << 9;
- $3473 = $3470 >>> 23;
- $3474 = $3472 | $3473;
- $3475 = ((($0)) + 4212|0);
- HEAP32[$3475>>2] = $3474;
- $3476 = HEAP8[$577>>0]|0;
- $3477 = $3476 ^ 6;
- $3478 = $3477&255;
- $3479 = (10176 + ($3478)|0);
- $3480 = HEAP8[$3479>>0]|0;
- $3481 = HEAP8[$393>>0]|0;
- $3482 = $3481 ^ $3480;
- $3483 = $3482&255;
- $3484 = (10432 + ($3483)|0);
- $3485 = HEAP8[$3484>>0]|0;
- $3486 = HEAP8[$208>>0]|0;
- $3487 = $3486 ^ $3485;
- $3488 = $3487&255;
- $3489 = (10432 + ($3488)|0);
- $3490 = HEAP8[$3489>>0]|0;
- $3491 = HEAP8[$1>>0]|0;
- $3492 = $3491 ^ $3490;
- $3493 = $3492&255;
- $3494 = (10688 + ($3493<<2)|0);
- $3495 = HEAP32[$3494>>2]|0;
- $3496 = HEAP8[$593>>0]|0;
- $3497 = $3496 ^ -108;
- $3498 = $3497&255;
- $3499 = (10176 + ($3498)|0);
- $3500 = HEAP8[$3499>>0]|0;
- $3501 = HEAP8[$409>>0]|0;
- $3502 = $3501 ^ $3500;
- $3503 = $3502&255;
- $3504 = (10176 + ($3503)|0);
- $3505 = HEAP8[$3504>>0]|0;
- $3506 = HEAP8[$224>>0]|0;
- $3507 = $3506 ^ $3505;
- $3508 = $3507&255;
- $3509 = (10432 + ($3508)|0);
- $3510 = HEAP8[$3509>>0]|0;
- $3511 = HEAP8[$40>>0]|0;
- $3512 = $3511 ^ $3510;
- $3513 = $3512&255;
- $3514 = (11712 + ($3513<<2)|0);
- $3515 = HEAP32[$3514>>2]|0;
- $3516 = $3515 ^ $3495;
- $3517 = HEAP8[$617>>0]|0;
- $3518 = $3517 ^ -108;
- $3519 = $3518&255;
- $3520 = (10432 + ($3519)|0);
- $3521 = HEAP8[$3520>>0]|0;
- $3522 = HEAP8[$433>>0]|0;
- $3523 = $3522 ^ $3521;
- $3524 = $3523&255;
- $3525 = (10432 + ($3524)|0);
- $3526 = HEAP8[$3525>>0]|0;
- $3527 = HEAP8[$248>>0]|0;
- $3528 = $3527 ^ $3526;
- $3529 = $3528&255;
- $3530 = (10176 + ($3529)|0);
- $3531 = HEAP8[$3530>>0]|0;
- $3532 = HEAP8[$64>>0]|0;
- $3533 = $3532 ^ $3531;
- $3534 = $3533&255;
- $3535 = (12736 + ($3534<<2)|0);
- $3536 = HEAP32[$3535>>2]|0;
- $3537 = $3516 ^ $3536;
- $3538 = HEAP8[$641>>0]|0;
- $3539 = $3538 ^ 6;
- $3540 = $3539&255;
- $3541 = (10432 + ($3540)|0);
- $3542 = HEAP8[$3541>>0]|0;
- $3543 = HEAP8[$457>>0]|0;
- $3544 = $3543 ^ $3542;
- $3545 = $3544&255;
- $3546 = (10176 + ($3545)|0);
- $3547 = HEAP8[$3546>>0]|0;
- $3548 = HEAP8[$272>>0]|0;
- $3549 = $3548 ^ $3547;
- $3550 = $3549&255;
- $3551 = (10176 + ($3550)|0);
- $3552 = HEAP8[$3551>>0]|0;
- $3553 = HEAP8[$88>>0]|0;
- $3554 = $3553 ^ $3552;
- $3555 = $3554&255;
- $3556 = (13760 + ($3555<<2)|0);
- $3557 = HEAP32[$3556>>2]|0;
- $3558 = $3537 ^ $3557;
- $3559 = HEAP8[$665>>0]|0;
- $3560 = $3559 ^ 63;
- $3561 = $3560&255;
- $3562 = (10176 + ($3561)|0);
- $3563 = HEAP8[$3562>>0]|0;
- $3564 = HEAP8[$481>>0]|0;
- $3565 = $3564 ^ $3563;
- $3566 = $3565&255;
- $3567 = (10432 + ($3566)|0);
- $3568 = HEAP8[$3567>>0]|0;
- $3569 = HEAP8[$296>>0]|0;
- $3570 = $3569 ^ $3568;
- $3571 = $3570&255;
- $3572 = (10432 + ($3571)|0);
- $3573 = HEAP8[$3572>>0]|0;
- $3574 = HEAP8[$112>>0]|0;
- $3575 = $3574 ^ $3573;
- $3576 = $3575&255;
- $3577 = (10688 + ($3576<<2)|0);
- $3578 = HEAP32[$3577>>2]|0;
- $3579 = HEAP8[$689>>0]|0;
- $3580 = $3579 ^ 72;
- $3581 = $3580&255;
- $3582 = (10176 + ($3581)|0);
- $3583 = HEAP8[$3582>>0]|0;
- $3584 = HEAP8[$505>>0]|0;
- $3585 = $3584 ^ $3583;
- $3586 = $3585&255;
- $3587 = (10176 + ($3586)|0);
- $3588 = HEAP8[$3587>>0]|0;
- $3589 = HEAP8[$320>>0]|0;
- $3590 = $3589 ^ $3588;
- $3591 = $3590&255;
- $3592 = (10432 + ($3591)|0);
- $3593 = HEAP8[$3592>>0]|0;
- $3594 = HEAP8[$136>>0]|0;
- $3595 = $3594 ^ $3593;
- $3596 = $3595&255;
- $3597 = (11712 + ($3596<<2)|0);
- $3598 = HEAP32[$3597>>2]|0;
- $3599 = $3598 ^ $3578;
- $3600 = HEAP8[$713>>0]|0;
- $3601 = $3600 ^ 72;
- $3602 = $3601&255;
- $3603 = (10432 + ($3602)|0);
- $3604 = HEAP8[$3603>>0]|0;
- $3605 = HEAP8[$529>>0]|0;
- $3606 = $3605 ^ $3604;
- $3607 = $3606&255;
- $3608 = (10432 + ($3607)|0);
- $3609 = HEAP8[$3608>>0]|0;
- $3610 = HEAP8[$344>>0]|0;
- $3611 = $3610 ^ $3609;
- $3612 = $3611&255;
- $3613 = (10176 + ($3612)|0);
- $3614 = HEAP8[$3613>>0]|0;
- $3615 = HEAP8[$160>>0]|0;
- $3616 = $3615 ^ $3614;
- $3617 = $3616&255;
- $3618 = (12736 + ($3617<<2)|0);
- $3619 = HEAP32[$3618>>2]|0;
- $3620 = $3599 ^ $3619;
- $3621 = HEAP8[$737>>0]|0;
- $3622 = $3621 ^ 63;
- $3623 = $3622&255;
- $3624 = (10432 + ($3623)|0);
- $3625 = HEAP8[$3624>>0]|0;
- $3626 = HEAP8[$553>>0]|0;
- $3627 = $3626 ^ $3625;
- $3628 = $3627&255;
- $3629 = (10176 + ($3628)|0);
- $3630 = HEAP8[$3629>>0]|0;
- $3631 = HEAP8[$368>>0]|0;
- $3632 = $3631 ^ $3630;
- $3633 = $3632&255;
- $3634 = (10176 + ($3633)|0);
- $3635 = HEAP8[$3634>>0]|0;
- $3636 = HEAP8[$184>>0]|0;
- $3637 = $3636 ^ $3635;
- $3638 = $3637&255;
- $3639 = (13760 + ($3638<<2)|0);
- $3640 = HEAP32[$3639>>2]|0;
- $3641 = $3620 ^ $3640;
- $3642 = $3641 << 8;
- $3643 = $3641 >>> 24;
- $3644 = $3642 | $3643;
- $3645 = (($3644) + ($3558))|0;
- $3646 = (($3645) + ($3644))|0;
- $3647 = ((($0)) + 4216|0);
- HEAP32[$3647>>2] = $3645;
- $3648 = $3646 << 9;
- $3649 = $3646 >>> 23;
- $3650 = $3648 | $3649;
- $3651 = ((($0)) + 4220|0);
- HEAP32[$3651>>2] = $3650;
- $3652 = HEAP8[$577>>0]|0;
- $3653 = $3652 ^ 94;
- $3654 = $3653&255;
- $3655 = (10176 + ($3654)|0);
- $3656 = HEAP8[$3655>>0]|0;
- $3657 = HEAP8[$393>>0]|0;
- $3658 = $3657 ^ $3656;
- $3659 = $3658&255;
- $3660 = (10432 + ($3659)|0);
- $3661 = HEAP8[$3660>>0]|0;
- $3662 = HEAP8[$208>>0]|0;
- $3663 = $3662 ^ $3661;
- $3664 = $3663&255;
- $3665 = (10432 + ($3664)|0);
- $3666 = HEAP8[$3665>>0]|0;
- $3667 = HEAP8[$1>>0]|0;
- $3668 = $3667 ^ $3666;
- $3669 = $3668&255;
- $3670 = (10688 + ($3669<<2)|0);
- $3671 = HEAP32[$3670>>2]|0;
- $3672 = HEAP8[$593>>0]|0;
- $3673 = $3672 ^ -14;
- $3674 = $3673&255;
- $3675 = (10176 + ($3674)|0);
- $3676 = HEAP8[$3675>>0]|0;
- $3677 = HEAP8[$409>>0]|0;
- $3678 = $3677 ^ $3676;
- $3679 = $3678&255;
- $3680 = (10176 + ($3679)|0);
- $3681 = HEAP8[$3680>>0]|0;
- $3682 = HEAP8[$224>>0]|0;
- $3683 = $3682 ^ $3681;
- $3684 = $3683&255;
- $3685 = (10432 + ($3684)|0);
- $3686 = HEAP8[$3685>>0]|0;
- $3687 = HEAP8[$40>>0]|0;
- $3688 = $3687 ^ $3686;
- $3689 = $3688&255;
- $3690 = (11712 + ($3689<<2)|0);
- $3691 = HEAP32[$3690>>2]|0;
- $3692 = $3691 ^ $3671;
- $3693 = HEAP8[$617>>0]|0;
- $3694 = $3693 ^ -14;
- $3695 = $3694&255;
- $3696 = (10432 + ($3695)|0);
- $3697 = HEAP8[$3696>>0]|0;
- $3698 = HEAP8[$433>>0]|0;
- $3699 = $3698 ^ $3697;
- $3700 = $3699&255;
- $3701 = (10432 + ($3700)|0);
- $3702 = HEAP8[$3701>>0]|0;
- $3703 = HEAP8[$248>>0]|0;
- $3704 = $3703 ^ $3702;
- $3705 = $3704&255;
- $3706 = (10176 + ($3705)|0);
- $3707 = HEAP8[$3706>>0]|0;
- $3708 = HEAP8[$64>>0]|0;
- $3709 = $3708 ^ $3707;
- $3710 = $3709&255;
- $3711 = (12736 + ($3710<<2)|0);
- $3712 = HEAP32[$3711>>2]|0;
- $3713 = $3692 ^ $3712;
- $3714 = HEAP8[$641>>0]|0;
- $3715 = $3714 ^ 94;
- $3716 = $3715&255;
- $3717 = (10432 + ($3716)|0);
- $3718 = HEAP8[$3717>>0]|0;
- $3719 = HEAP8[$457>>0]|0;
- $3720 = $3719 ^ $3718;
- $3721 = $3720&255;
- $3722 = (10176 + ($3721)|0);
- $3723 = HEAP8[$3722>>0]|0;
- $3724 = HEAP8[$272>>0]|0;
- $3725 = $3724 ^ $3723;
- $3726 = $3725&255;
- $3727 = (10176 + ($3726)|0);
- $3728 = HEAP8[$3727>>0]|0;
- $3729 = HEAP8[$88>>0]|0;
- $3730 = $3729 ^ $3728;
- $3731 = $3730&255;
- $3732 = (13760 + ($3731<<2)|0);
- $3733 = HEAP32[$3732>>2]|0;
- $3734 = $3713 ^ $3733;
- $3735 = HEAP8[$665>>0]|0;
- $3736 = $3735 ^ -70;
- $3737 = $3736&255;
- $3738 = (10176 + ($3737)|0);
- $3739 = HEAP8[$3738>>0]|0;
- $3740 = HEAP8[$481>>0]|0;
- $3741 = $3740 ^ $3739;
- $3742 = $3741&255;
- $3743 = (10432 + ($3742)|0);
- $3744 = HEAP8[$3743>>0]|0;
- $3745 = HEAP8[$296>>0]|0;
- $3746 = $3745 ^ $3744;
- $3747 = $3746&255;
- $3748 = (10432 + ($3747)|0);
- $3749 = HEAP8[$3748>>0]|0;
- $3750 = HEAP8[$112>>0]|0;
- $3751 = $3750 ^ $3749;
- $3752 = $3751&255;
- $3753 = (10688 + ($3752<<2)|0);
- $3754 = HEAP32[$3753>>2]|0;
- $3755 = HEAP8[$689>>0]|0;
- $3756 = $3755 ^ -48;
- $3757 = $3756&255;
- $3758 = (10176 + ($3757)|0);
- $3759 = HEAP8[$3758>>0]|0;
- $3760 = HEAP8[$505>>0]|0;
- $3761 = $3760 ^ $3759;
- $3762 = $3761&255;
- $3763 = (10176 + ($3762)|0);
- $3764 = HEAP8[$3763>>0]|0;
- $3765 = HEAP8[$320>>0]|0;
- $3766 = $3765 ^ $3764;
- $3767 = $3766&255;
- $3768 = (10432 + ($3767)|0);
- $3769 = HEAP8[$3768>>0]|0;
- $3770 = HEAP8[$136>>0]|0;
- $3771 = $3770 ^ $3769;
- $3772 = $3771&255;
- $3773 = (11712 + ($3772<<2)|0);
- $3774 = HEAP32[$3773>>2]|0;
- $3775 = $3774 ^ $3754;
- $3776 = HEAP8[$713>>0]|0;
- $3777 = $3776 ^ -48;
- $3778 = $3777&255;
- $3779 = (10432 + ($3778)|0);
- $3780 = HEAP8[$3779>>0]|0;
- $3781 = HEAP8[$529>>0]|0;
- $3782 = $3781 ^ $3780;
- $3783 = $3782&255;
- $3784 = (10432 + ($3783)|0);
- $3785 = HEAP8[$3784>>0]|0;
- $3786 = HEAP8[$344>>0]|0;
- $3787 = $3786 ^ $3785;
- $3788 = $3787&255;
- $3789 = (10176 + ($3788)|0);
- $3790 = HEAP8[$3789>>0]|0;
- $3791 = HEAP8[$160>>0]|0;
- $3792 = $3791 ^ $3790;
- $3793 = $3792&255;
- $3794 = (12736 + ($3793<<2)|0);
- $3795 = HEAP32[$3794>>2]|0;
- $3796 = $3775 ^ $3795;
- $3797 = HEAP8[$737>>0]|0;
- $3798 = $3797 ^ -70;
- $3799 = $3798&255;
- $3800 = (10432 + ($3799)|0);
- $3801 = HEAP8[$3800>>0]|0;
- $3802 = HEAP8[$553>>0]|0;
- $3803 = $3802 ^ $3801;
- $3804 = $3803&255;
- $3805 = (10176 + ($3804)|0);
- $3806 = HEAP8[$3805>>0]|0;
- $3807 = HEAP8[$368>>0]|0;
- $3808 = $3807 ^ $3806;
- $3809 = $3808&255;
- $3810 = (10176 + ($3809)|0);
- $3811 = HEAP8[$3810>>0]|0;
- $3812 = HEAP8[$184>>0]|0;
- $3813 = $3812 ^ $3811;
- $3814 = $3813&255;
- $3815 = (13760 + ($3814<<2)|0);
- $3816 = HEAP32[$3815>>2]|0;
- $3817 = $3796 ^ $3816;
- $3818 = $3817 << 8;
- $3819 = $3817 >>> 24;
- $3820 = $3818 | $3819;
- $3821 = (($3820) + ($3734))|0;
- $3822 = (($3821) + ($3820))|0;
- $3823 = ((($0)) + 4224|0);
- HEAP32[$3823>>2] = $3821;
- $3824 = $3822 << 9;
- $3825 = $3822 >>> 23;
- $3826 = $3824 | $3825;
- $3827 = ((($0)) + 4228|0);
- HEAP32[$3827>>2] = $3826;
- $3828 = HEAP8[$577>>0]|0;
- $3829 = $3828 ^ -82;
- $3830 = $3829&255;
- $3831 = (10176 + ($3830)|0);
- $3832 = HEAP8[$3831>>0]|0;
- $3833 = HEAP8[$393>>0]|0;
- $3834 = $3833 ^ $3832;
- $3835 = $3834&255;
- $3836 = (10432 + ($3835)|0);
- $3837 = HEAP8[$3836>>0]|0;
- $3838 = HEAP8[$208>>0]|0;
- $3839 = $3838 ^ $3837;
- $3840 = $3839&255;
- $3841 = (10432 + ($3840)|0);
- $3842 = HEAP8[$3841>>0]|0;
- $3843 = HEAP8[$1>>0]|0;
- $3844 = $3843 ^ $3842;
- $3845 = $3844&255;
- $3846 = (10688 + ($3845<<2)|0);
- $3847 = HEAP32[$3846>>2]|0;
- $3848 = HEAP8[$593>>0]|0;
- $3849 = $3848 ^ -117;
- $3850 = $3849&255;
- $3851 = (10176 + ($3850)|0);
- $3852 = HEAP8[$3851>>0]|0;
- $3853 = HEAP8[$409>>0]|0;
- $3854 = $3853 ^ $3852;
- $3855 = $3854&255;
- $3856 = (10176 + ($3855)|0);
- $3857 = HEAP8[$3856>>0]|0;
- $3858 = HEAP8[$224>>0]|0;
- $3859 = $3858 ^ $3857;
- $3860 = $3859&255;
- $3861 = (10432 + ($3860)|0);
- $3862 = HEAP8[$3861>>0]|0;
- $3863 = HEAP8[$40>>0]|0;
- $3864 = $3863 ^ $3862;
- $3865 = $3864&255;
- $3866 = (11712 + ($3865<<2)|0);
- $3867 = HEAP32[$3866>>2]|0;
- $3868 = $3867 ^ $3847;
- $3869 = HEAP8[$617>>0]|0;
- $3870 = $3869 ^ -117;
- $3871 = $3870&255;
- $3872 = (10432 + ($3871)|0);
- $3873 = HEAP8[$3872>>0]|0;
- $3874 = HEAP8[$433>>0]|0;
- $3875 = $3874 ^ $3873;
- $3876 = $3875&255;
- $3877 = (10432 + ($3876)|0);
- $3878 = HEAP8[$3877>>0]|0;
- $3879 = HEAP8[$248>>0]|0;
- $3880 = $3879 ^ $3878;
- $3881 = $3880&255;
- $3882 = (10176 + ($3881)|0);
- $3883 = HEAP8[$3882>>0]|0;
- $3884 = HEAP8[$64>>0]|0;
- $3885 = $3884 ^ $3883;
- $3886 = $3885&255;
- $3887 = (12736 + ($3886<<2)|0);
- $3888 = HEAP32[$3887>>2]|0;
- $3889 = $3868 ^ $3888;
- $3890 = HEAP8[$641>>0]|0;
- $3891 = $3890 ^ -82;
- $3892 = $3891&255;
- $3893 = (10432 + ($3892)|0);
- $3894 = HEAP8[$3893>>0]|0;
- $3895 = HEAP8[$457>>0]|0;
- $3896 = $3895 ^ $3894;
- $3897 = $3896&255;
- $3898 = (10176 + ($3897)|0);
- $3899 = HEAP8[$3898>>0]|0;
- $3900 = HEAP8[$272>>0]|0;
- $3901 = $3900 ^ $3899;
- $3902 = $3901&255;
- $3903 = (10176 + ($3902)|0);
- $3904 = HEAP8[$3903>>0]|0;
- $3905 = HEAP8[$88>>0]|0;
- $3906 = $3905 ^ $3904;
- $3907 = $3906&255;
- $3908 = (13760 + ($3907<<2)|0);
- $3909 = HEAP32[$3908>>2]|0;
- $3910 = $3889 ^ $3909;
- $3911 = HEAP8[$665>>0]|0;
- $3912 = $3911 ^ 91;
- $3913 = $3912&255;
- $3914 = (10176 + ($3913)|0);
- $3915 = HEAP8[$3914>>0]|0;
- $3916 = HEAP8[$481>>0]|0;
- $3917 = $3916 ^ $3915;
- $3918 = $3917&255;
- $3919 = (10432 + ($3918)|0);
- $3920 = HEAP8[$3919>>0]|0;
- $3921 = HEAP8[$296>>0]|0;
- $3922 = $3921 ^ $3920;
- $3923 = $3922&255;
- $3924 = (10432 + ($3923)|0);
- $3925 = HEAP8[$3924>>0]|0;
- $3926 = HEAP8[$112>>0]|0;
- $3927 = $3926 ^ $3925;
- $3928 = $3927&255;
- $3929 = (10688 + ($3928<<2)|0);
- $3930 = HEAP32[$3929>>2]|0;
- $3931 = HEAP8[$689>>0]|0;
- $3932 = $3931 ^ 48;
- $3933 = $3932&255;
- $3934 = (10176 + ($3933)|0);
- $3935 = HEAP8[$3934>>0]|0;
- $3936 = HEAP8[$505>>0]|0;
- $3937 = $3936 ^ $3935;
- $3938 = $3937&255;
- $3939 = (10176 + ($3938)|0);
- $3940 = HEAP8[$3939>>0]|0;
- $3941 = HEAP8[$320>>0]|0;
- $3942 = $3941 ^ $3940;
- $3943 = $3942&255;
- $3944 = (10432 + ($3943)|0);
- $3945 = HEAP8[$3944>>0]|0;
- $3946 = HEAP8[$136>>0]|0;
- $3947 = $3946 ^ $3945;
- $3948 = $3947&255;
- $3949 = (11712 + ($3948<<2)|0);
- $3950 = HEAP32[$3949>>2]|0;
- $3951 = $3950 ^ $3930;
- $3952 = HEAP8[$713>>0]|0;
- $3953 = $3952 ^ 48;
- $3954 = $3953&255;
- $3955 = (10432 + ($3954)|0);
- $3956 = HEAP8[$3955>>0]|0;
- $3957 = HEAP8[$529>>0]|0;
- $3958 = $3957 ^ $3956;
- $3959 = $3958&255;
- $3960 = (10432 + ($3959)|0);
- $3961 = HEAP8[$3960>>0]|0;
- $3962 = HEAP8[$344>>0]|0;
- $3963 = $3962 ^ $3961;
- $3964 = $3963&255;
- $3965 = (10176 + ($3964)|0);
- $3966 = HEAP8[$3965>>0]|0;
- $3967 = HEAP8[$160>>0]|0;
- $3968 = $3967 ^ $3966;
- $3969 = $3968&255;
- $3970 = (12736 + ($3969<<2)|0);
- $3971 = HEAP32[$3970>>2]|0;
- $3972 = $3951 ^ $3971;
- $3973 = HEAP8[$737>>0]|0;
- $3974 = $3973 ^ 91;
- $3975 = $3974&255;
- $3976 = (10432 + ($3975)|0);
- $3977 = HEAP8[$3976>>0]|0;
- $3978 = HEAP8[$553>>0]|0;
- $3979 = $3978 ^ $3977;
- $3980 = $3979&255;
- $3981 = (10176 + ($3980)|0);
- $3982 = HEAP8[$3981>>0]|0;
- $3983 = HEAP8[$368>>0]|0;
- $3984 = $3983 ^ $3982;
- $3985 = $3984&255;
- $3986 = (10176 + ($3985)|0);
- $3987 = HEAP8[$3986>>0]|0;
- $3988 = HEAP8[$184>>0]|0;
- $3989 = $3988 ^ $3987;
- $3990 = $3989&255;
- $3991 = (13760 + ($3990<<2)|0);
- $3992 = HEAP32[$3991>>2]|0;
- $3993 = $3972 ^ $3992;
- $3994 = $3993 << 8;
- $3995 = $3993 >>> 24;
- $3996 = $3994 | $3995;
- $3997 = (($3996) + ($3910))|0;
- $3998 = (($3997) + ($3996))|0;
- $3999 = ((($0)) + 4232|0);
- HEAP32[$3999>>2] = $3997;
- $4000 = $3998 << 9;
- $4001 = $3998 >>> 23;
- $4002 = $4000 | $4001;
- $4003 = ((($0)) + 4236|0);
- HEAP32[$4003>>2] = $4002;
- $4004 = HEAP8[$577>>0]|0;
- $4005 = $4004 ^ -118;
- $4006 = $4005&255;
- $4007 = (10176 + ($4006)|0);
- $4008 = HEAP8[$4007>>0]|0;
- $4009 = HEAP8[$393>>0]|0;
- $4010 = $4009 ^ $4008;
- $4011 = $4010&255;
- $4012 = (10432 + ($4011)|0);
- $4013 = HEAP8[$4012>>0]|0;
- $4014 = HEAP8[$208>>0]|0;
- $4015 = $4014 ^ $4013;
- $4016 = $4015&255;
- $4017 = (10432 + ($4016)|0);
- $4018 = HEAP8[$4017>>0]|0;
- $4019 = HEAP8[$1>>0]|0;
- $4020 = $4019 ^ $4018;
- $4021 = $4020&255;
- $4022 = (10688 + ($4021<<2)|0);
- $4023 = HEAP32[$4022>>2]|0;
- $4024 = HEAP8[$593>>0]|0;
- $4025 = $4024 ^ -124;
- $4026 = $4025&255;
- $4027 = (10176 + ($4026)|0);
- $4028 = HEAP8[$4027>>0]|0;
- $4029 = HEAP8[$409>>0]|0;
- $4030 = $4029 ^ $4028;
- $4031 = $4030&255;
- $4032 = (10176 + ($4031)|0);
- $4033 = HEAP8[$4032>>0]|0;
- $4034 = HEAP8[$224>>0]|0;
- $4035 = $4034 ^ $4033;
- $4036 = $4035&255;
- $4037 = (10432 + ($4036)|0);
- $4038 = HEAP8[$4037>>0]|0;
- $4039 = HEAP8[$40>>0]|0;
- $4040 = $4039 ^ $4038;
- $4041 = $4040&255;
- $4042 = (11712 + ($4041<<2)|0);
- $4043 = HEAP32[$4042>>2]|0;
- $4044 = $4043 ^ $4023;
- $4045 = HEAP8[$617>>0]|0;
- $4046 = $4045 ^ -124;
- $4047 = $4046&255;
- $4048 = (10432 + ($4047)|0);
- $4049 = HEAP8[$4048>>0]|0;
- $4050 = HEAP8[$433>>0]|0;
- $4051 = $4050 ^ $4049;
- $4052 = $4051&255;
- $4053 = (10432 + ($4052)|0);
- $4054 = HEAP8[$4053>>0]|0;
- $4055 = HEAP8[$248>>0]|0;
- $4056 = $4055 ^ $4054;
- $4057 = $4056&255;
- $4058 = (10176 + ($4057)|0);
- $4059 = HEAP8[$4058>>0]|0;
- $4060 = HEAP8[$64>>0]|0;
- $4061 = $4060 ^ $4059;
- $4062 = $4061&255;
- $4063 = (12736 + ($4062<<2)|0);
- $4064 = HEAP32[$4063>>2]|0;
- $4065 = $4044 ^ $4064;
- $4066 = HEAP8[$641>>0]|0;
- $4067 = $4066 ^ -118;
- $4068 = $4067&255;
- $4069 = (10432 + ($4068)|0);
- $4070 = HEAP8[$4069>>0]|0;
- $4071 = HEAP8[$457>>0]|0;
- $4072 = $4071 ^ $4070;
- $4073 = $4072&255;
- $4074 = (10176 + ($4073)|0);
- $4075 = HEAP8[$4074>>0]|0;
- $4076 = HEAP8[$272>>0]|0;
- $4077 = $4076 ^ $4075;
- $4078 = $4077&255;
- $4079 = (10176 + ($4078)|0);
- $4080 = HEAP8[$4079>>0]|0;
- $4081 = HEAP8[$88>>0]|0;
- $4082 = $4081 ^ $4080;
- $4083 = $4082&255;
- $4084 = (13760 + ($4083<<2)|0);
- $4085 = HEAP32[$4084>>2]|0;
- $4086 = $4065 ^ $4085;
- $4087 = HEAP8[$665>>0]|0;
- $4088 = $4087&255;
- $4089 = (10176 + ($4088)|0);
- $4090 = HEAP8[$4089>>0]|0;
- $4091 = HEAP8[$481>>0]|0;
- $4092 = $4091 ^ $4090;
- $4093 = $4092&255;
- $4094 = (10432 + ($4093)|0);
- $4095 = HEAP8[$4094>>0]|0;
- $4096 = HEAP8[$296>>0]|0;
- $4097 = $4096 ^ $4095;
- $4098 = $4097&255;
- $4099 = (10432 + ($4098)|0);
- $4100 = HEAP8[$4099>>0]|0;
- $4101 = HEAP8[$112>>0]|0;
- $4102 = $4101 ^ $4100;
- $4103 = $4102&255;
- $4104 = (10688 + ($4103<<2)|0);
- $4105 = HEAP32[$4104>>2]|0;
- $4106 = HEAP8[$689>>0]|0;
- $4107 = $4106 ^ 84;
- $4108 = $4107&255;
- $4109 = (10176 + ($4108)|0);
- $4110 = HEAP8[$4109>>0]|0;
- $4111 = HEAP8[$505>>0]|0;
- $4112 = $4111 ^ $4110;
- $4113 = $4112&255;
- $4114 = (10176 + ($4113)|0);
- $4115 = HEAP8[$4114>>0]|0;
- $4116 = HEAP8[$320>>0]|0;
- $4117 = $4116 ^ $4115;
- $4118 = $4117&255;
- $4119 = (10432 + ($4118)|0);
- $4120 = HEAP8[$4119>>0]|0;
- $4121 = HEAP8[$136>>0]|0;
- $4122 = $4121 ^ $4120;
- $4123 = $4122&255;
- $4124 = (11712 + ($4123<<2)|0);
- $4125 = HEAP32[$4124>>2]|0;
- $4126 = $4125 ^ $4105;
- $4127 = HEAP8[$713>>0]|0;
- $4128 = $4127 ^ 84;
- $4129 = $4128&255;
- $4130 = (10432 + ($4129)|0);
- $4131 = HEAP8[$4130>>0]|0;
- $4132 = HEAP8[$529>>0]|0;
- $4133 = $4132 ^ $4131;
- $4134 = $4133&255;
- $4135 = (10432 + ($4134)|0);
- $4136 = HEAP8[$4135>>0]|0;
- $4137 = HEAP8[$344>>0]|0;
- $4138 = $4137 ^ $4136;
- $4139 = $4138&255;
- $4140 = (10176 + ($4139)|0);
- $4141 = HEAP8[$4140>>0]|0;
- $4142 = HEAP8[$160>>0]|0;
- $4143 = $4142 ^ $4141;
- $4144 = $4143&255;
- $4145 = (12736 + ($4144<<2)|0);
- $4146 = HEAP32[$4145>>2]|0;
- $4147 = $4126 ^ $4146;
- $4148 = HEAP8[$737>>0]|0;
- $4149 = $4148&255;
- $4150 = (10432 + ($4149)|0);
- $4151 = HEAP8[$4150>>0]|0;
- $4152 = HEAP8[$553>>0]|0;
- $4153 = $4152 ^ $4151;
- $4154 = $4153&255;
- $4155 = (10176 + ($4154)|0);
- $4156 = HEAP8[$4155>>0]|0;
- $4157 = HEAP8[$368>>0]|0;
- $4158 = $4157 ^ $4156;
- $4159 = $4158&255;
- $4160 = (10176 + ($4159)|0);
- $4161 = HEAP8[$4160>>0]|0;
- $4162 = HEAP8[$184>>0]|0;
- $4163 = $4162 ^ $4161;
- $4164 = $4163&255;
- $4165 = (13760 + ($4164<<2)|0);
- $4166 = HEAP32[$4165>>2]|0;
- $4167 = $4147 ^ $4166;
- $4168 = $4167 << 8;
- $4169 = $4167 >>> 24;
- $4170 = $4168 | $4169;
- $4171 = (($4170) + ($4086))|0;
- $4172 = (($4171) + ($4170))|0;
- $4173 = ((($0)) + 4240|0);
- HEAP32[$4173>>2] = $4171;
- $4174 = $4172 << 9;
- $4175 = $4172 >>> 23;
- $4176 = $4174 | $4175;
- $4177 = ((($0)) + 4244|0);
- HEAP32[$4177>>2] = $4176;
- $4178 = HEAP8[$577>>0]|0;
- $4179 = $4178 ^ -68;
- $4180 = $4179&255;
- $4181 = (10176 + ($4180)|0);
- $4182 = HEAP8[$4181>>0]|0;
- $4183 = HEAP8[$393>>0]|0;
- $4184 = $4183 ^ $4182;
- $4185 = $4184&255;
- $4186 = (10432 + ($4185)|0);
- $4187 = HEAP8[$4186>>0]|0;
- $4188 = HEAP8[$208>>0]|0;
- $4189 = $4188 ^ $4187;
- $4190 = $4189&255;
- $4191 = (10432 + ($4190)|0);
- $4192 = HEAP8[$4191>>0]|0;
- $4193 = HEAP8[$1>>0]|0;
- $4194 = $4193 ^ $4192;
- $4195 = $4194&255;
- $4196 = (10688 + ($4195<<2)|0);
- $4197 = HEAP32[$4196>>2]|0;
- $4198 = HEAP8[$593>>0]|0;
- $4199 = $4198 ^ -33;
- $4200 = $4199&255;
- $4201 = (10176 + ($4200)|0);
- $4202 = HEAP8[$4201>>0]|0;
- $4203 = HEAP8[$409>>0]|0;
- $4204 = $4203 ^ $4202;
- $4205 = $4204&255;
- $4206 = (10176 + ($4205)|0);
- $4207 = HEAP8[$4206>>0]|0;
- $4208 = HEAP8[$224>>0]|0;
- $4209 = $4208 ^ $4207;
- $4210 = $4209&255;
- $4211 = (10432 + ($4210)|0);
- $4212 = HEAP8[$4211>>0]|0;
- $4213 = HEAP8[$40>>0]|0;
- $4214 = $4213 ^ $4212;
- $4215 = $4214&255;
- $4216 = (11712 + ($4215<<2)|0);
- $4217 = HEAP32[$4216>>2]|0;
- $4218 = $4217 ^ $4197;
- $4219 = HEAP8[$617>>0]|0;
- $4220 = $4219 ^ -33;
- $4221 = $4220&255;
- $4222 = (10432 + ($4221)|0);
- $4223 = HEAP8[$4222>>0]|0;
- $4224 = HEAP8[$433>>0]|0;
- $4225 = $4224 ^ $4223;
- $4226 = $4225&255;
- $4227 = (10432 + ($4226)|0);
- $4228 = HEAP8[$4227>>0]|0;
- $4229 = HEAP8[$248>>0]|0;
- $4230 = $4229 ^ $4228;
- $4231 = $4230&255;
- $4232 = (10176 + ($4231)|0);
- $4233 = HEAP8[$4232>>0]|0;
- $4234 = HEAP8[$64>>0]|0;
- $4235 = $4234 ^ $4233;
- $4236 = $4235&255;
- $4237 = (12736 + ($4236<<2)|0);
- $4238 = HEAP32[$4237>>2]|0;
- $4239 = $4218 ^ $4238;
- $4240 = HEAP8[$641>>0]|0;
- $4241 = $4240 ^ -68;
- $4242 = $4241&255;
- $4243 = (10432 + ($4242)|0);
- $4244 = HEAP8[$4243>>0]|0;
- $4245 = HEAP8[$457>>0]|0;
- $4246 = $4245 ^ $4244;
- $4247 = $4246&255;
- $4248 = (10176 + ($4247)|0);
- $4249 = HEAP8[$4248>>0]|0;
- $4250 = HEAP8[$272>>0]|0;
- $4251 = $4250 ^ $4249;
- $4252 = $4251&255;
- $4253 = (10176 + ($4252)|0);
- $4254 = HEAP8[$4253>>0]|0;
- $4255 = HEAP8[$88>>0]|0;
- $4256 = $4255 ^ $4254;
- $4257 = $4256&255;
- $4258 = (13760 + ($4257<<2)|0);
- $4259 = HEAP32[$4258>>2]|0;
- $4260 = $4239 ^ $4259;
- $4261 = HEAP8[$665>>0]|0;
- $4262 = $4261 ^ -99;
- $4263 = $4262&255;
- $4264 = (10176 + ($4263)|0);
- $4265 = HEAP8[$4264>>0]|0;
- $4266 = HEAP8[$481>>0]|0;
- $4267 = $4266 ^ $4265;
- $4268 = $4267&255;
- $4269 = (10432 + ($4268)|0);
- $4270 = HEAP8[$4269>>0]|0;
- $4271 = HEAP8[$296>>0]|0;
- $4272 = $4271 ^ $4270;
- $4273 = $4272&255;
- $4274 = (10432 + ($4273)|0);
- $4275 = HEAP8[$4274>>0]|0;
- $4276 = HEAP8[$112>>0]|0;
- $4277 = $4276 ^ $4275;
- $4278 = $4277&255;
- $4279 = (10688 + ($4278<<2)|0);
- $4280 = HEAP32[$4279>>2]|0;
- $4281 = HEAP8[$689>>0]|0;
- $4282 = $4281 ^ 35;
- $4283 = $4282&255;
- $4284 = (10176 + ($4283)|0);
- $4285 = HEAP8[$4284>>0]|0;
- $4286 = HEAP8[$505>>0]|0;
- $4287 = $4286 ^ $4285;
- $4288 = $4287&255;
- $4289 = (10176 + ($4288)|0);
- $4290 = HEAP8[$4289>>0]|0;
- $4291 = HEAP8[$320>>0]|0;
- $4292 = $4291 ^ $4290;
- $4293 = $4292&255;
- $4294 = (10432 + ($4293)|0);
- $4295 = HEAP8[$4294>>0]|0;
- $4296 = HEAP8[$136>>0]|0;
- $4297 = $4296 ^ $4295;
- $4298 = $4297&255;
- $4299 = (11712 + ($4298<<2)|0);
- $4300 = HEAP32[$4299>>2]|0;
- $4301 = $4300 ^ $4280;
- $4302 = HEAP8[$713>>0]|0;
- $4303 = $4302 ^ 35;
- $4304 = $4303&255;
- $4305 = (10432 + ($4304)|0);
- $4306 = HEAP8[$4305>>0]|0;
- $4307 = HEAP8[$529>>0]|0;
- $4308 = $4307 ^ $4306;
- $4309 = $4308&255;
- $4310 = (10432 + ($4309)|0);
- $4311 = HEAP8[$4310>>0]|0;
- $4312 = HEAP8[$344>>0]|0;
- $4313 = $4312 ^ $4311;
- $4314 = $4313&255;
- $4315 = (10176 + ($4314)|0);
- $4316 = HEAP8[$4315>>0]|0;
- $4317 = HEAP8[$160>>0]|0;
- $4318 = $4317 ^ $4316;
- $4319 = $4318&255;
- $4320 = (12736 + ($4319<<2)|0);
- $4321 = HEAP32[$4320>>2]|0;
- $4322 = $4301 ^ $4321;
- $4323 = HEAP8[$737>>0]|0;
- $4324 = $4323 ^ -99;
- $4325 = $4324&255;
- $4326 = (10432 + ($4325)|0);
- $4327 = HEAP8[$4326>>0]|0;
- $4328 = HEAP8[$553>>0]|0;
- $4329 = $4328 ^ $4327;
- $4330 = $4329&255;
- $4331 = (10176 + ($4330)|0);
- $4332 = HEAP8[$4331>>0]|0;
- $4333 = HEAP8[$368>>0]|0;
- $4334 = $4333 ^ $4332;
- $4335 = $4334&255;
- $4336 = (10176 + ($4335)|0);
- $4337 = HEAP8[$4336>>0]|0;
- $4338 = HEAP8[$184>>0]|0;
- $4339 = $4338 ^ $4337;
- $4340 = $4339&255;
- $4341 = (13760 + ($4340<<2)|0);
- $4342 = HEAP32[$4341>>2]|0;
- $4343 = $4322 ^ $4342;
- $4344 = $4343 << 8;
- $4345 = $4343 >>> 24;
- $4346 = $4344 | $4345;
- $4347 = (($4346) + ($4260))|0;
- $4348 = (($4347) + ($4346))|0;
- $4349 = ((($0)) + 4248|0);
- HEAP32[$4349>>2] = $4347;
- $4350 = $4348 << 9;
- $4351 = $4348 >>> 23;
- $4352 = $4350 | $4351;
- $4353 = ((($0)) + 4252|0);
- HEAP32[$4353>>2] = $4352;
- $$01913 = 0;
- STACKTOP = sp;return ($$01913|0);
-}
-function __gcry_twofish_ctr_enc($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$06183 = 0, $$06780 = 0, $$068$lcssa = 0, $$06882 = 0, $$07081 = 0, 
$$084 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, 
$106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0;
- var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, 
$137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, 
$144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0;
- var $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 
0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ($4|0)==(0);
- if ($6) {
-  $$068$lcssa = 0;
-  $137 = $5;
-  $138 = $137;
-  HEAP32[$138>>2] = 0;
-  $139 = (($137) + 4)|0;
-  $140 = $139;
-  HEAP32[$140>>2] = 0;
-  $141 = ((($5)) + 8|0);
-  $142 = $141;
-  $143 = $142;
-  HEAP32[$143>>2] = 0;
-  $144 = (($142) + 4)|0;
-  $145 = $144;
-  HEAP32[$145>>2] = 0;
-  ___gcry_burn_stack($$068$lcssa);
-  STACKTOP = sp;return;
- }
- $7 = ((($5)) + 4|0);
- $8 = ((($5)) + 8|0);
- $9 = ((($5)) + 12|0);
- $10 = ((($5)) + 1|0);
- $11 = ((($5)) + 2|0);
- $12 = ((($5)) + 3|0);
- $13 = ((($5)) + 4|0);
- $14 = ((($5)) + 5|0);
- $15 = ((($5)) + 6|0);
- $16 = ((($5)) + 7|0);
- $17 = ((($5)) + 8|0);
- $18 = ((($5)) + 9|0);
- $19 = ((($5)) + 10|0);
- $20 = ((($5)) + 11|0);
- $21 = ((($5)) + 12|0);
- $22 = ((($5)) + 13|0);
- $23 = ((($5)) + 14|0);
- $24 = ((($5)) + 15|0);
- $$06183 = $2;$$06882 = 0;$$07081 = $3;$$084 = $4;
- while(1) {
-  (_twofish_encrypt($0,$5,$1)|0);
-  $25 = ($$06882>>>0)>(36);
-  $spec$select = $25 ? $$06882 : 36;
-  $26 = $$06183;
-  $27 = $$07081;
-  $28 = $26 | $27;
-  $29 = $28 & 3;
-  $30 = ($29|0)==(0);
-  if ($30) {
-   $31 = HEAP32[$5>>2]|0;
-   $32 = ((($$07081)) + 4|0);
-   $33 = HEAP32[$$07081>>2]|0;
-   $34 = $33 ^ $31;
-   $35 = ((($$06183)) + 4|0);
-   HEAP32[$$06183>>2] = $34;
-   $36 = HEAP32[$7>>2]|0;
-   $37 = ((($$07081)) + 8|0);
-   $38 = HEAP32[$32>>2]|0;
-   $39 = $38 ^ $36;
-   $40 = ((($$06183)) + 8|0);
-   HEAP32[$35>>2] = $39;
-   $41 = HEAP32[$8>>2]|0;
-   $42 = ((($$07081)) + 12|0);
-   $43 = HEAP32[$37>>2]|0;
-   $44 = $43 ^ $41;
-   $45 = ((($$06183)) + 12|0);
-   HEAP32[$40>>2] = $44;
-   $46 = HEAP32[$9>>2]|0;
-   $47 = HEAP32[$42>>2]|0;
-   $48 = $47 ^ $46;
-   HEAP32[$45>>2] = $48;
-  } else {
-   $49 = HEAP8[$5>>0]|0;
-   $50 = ((($$07081)) + 1|0);
-   $51 = HEAP8[$$07081>>0]|0;
-   $52 = $51 ^ $49;
-   $53 = ((($$06183)) + 1|0);
-   HEAP8[$$06183>>0] = $52;
-   $54 = HEAP8[$10>>0]|0;
-   $55 = ((($$07081)) + 2|0);
-   $56 = HEAP8[$50>>0]|0;
-   $57 = $56 ^ $54;
-   $58 = ((($$06183)) + 2|0);
-   HEAP8[$53>>0] = $57;
-   $59 = HEAP8[$11>>0]|0;
-   $60 = ((($$07081)) + 3|0);
-   $61 = HEAP8[$55>>0]|0;
-   $62 = $61 ^ $59;
-   $63 = ((($$06183)) + 3|0);
-   HEAP8[$58>>0] = $62;
-   $64 = HEAP8[$12>>0]|0;
-   $65 = ((($$07081)) + 4|0);
-   $66 = HEAP8[$60>>0]|0;
-   $67 = $66 ^ $64;
-   $68 = ((($$06183)) + 4|0);
-   HEAP8[$63>>0] = $67;
-   $69 = HEAP8[$13>>0]|0;
-   $70 = ((($$07081)) + 5|0);
-   $71 = HEAP8[$65>>0]|0;
-   $72 = $71 ^ $69;
-   $73 = ((($$06183)) + 5|0);
-   HEAP8[$68>>0] = $72;
-   $74 = HEAP8[$14>>0]|0;
-   $75 = ((($$07081)) + 6|0);
-   $76 = HEAP8[$70>>0]|0;
-   $77 = $76 ^ $74;
-   $78 = ((($$06183)) + 6|0);
-   HEAP8[$73>>0] = $77;
-   $79 = HEAP8[$15>>0]|0;
-   $80 = ((($$07081)) + 7|0);
-   $81 = HEAP8[$75>>0]|0;
-   $82 = $81 ^ $79;
-   $83 = ((($$06183)) + 7|0);
-   HEAP8[$78>>0] = $82;
-   $84 = HEAP8[$16>>0]|0;
-   $85 = ((($$07081)) + 8|0);
-   $86 = HEAP8[$80>>0]|0;
-   $87 = $86 ^ $84;
-   $88 = ((($$06183)) + 8|0);
-   HEAP8[$83>>0] = $87;
-   $89 = HEAP8[$17>>0]|0;
-   $90 = ((($$07081)) + 9|0);
-   $91 = HEAP8[$85>>0]|0;
-   $92 = $91 ^ $89;
-   $93 = ((($$06183)) + 9|0);
-   HEAP8[$88>>0] = $92;
-   $94 = HEAP8[$18>>0]|0;
-   $95 = ((($$07081)) + 10|0);
-   $96 = HEAP8[$90>>0]|0;
-   $97 = $96 ^ $94;
-   $98 = ((($$06183)) + 10|0);
-   HEAP8[$93>>0] = $97;
-   $99 = HEAP8[$19>>0]|0;
-   $100 = ((($$07081)) + 11|0);
-   $101 = HEAP8[$95>>0]|0;
-   $102 = $101 ^ $99;
-   $103 = ((($$06183)) + 11|0);
-   HEAP8[$98>>0] = $102;
-   $104 = HEAP8[$20>>0]|0;
-   $105 = ((($$07081)) + 12|0);
-   $106 = HEAP8[$100>>0]|0;
-   $107 = $106 ^ $104;
-   $108 = ((($$06183)) + 12|0);
-   HEAP8[$103>>0] = $107;
-   $109 = HEAP8[$21>>0]|0;
-   $110 = ((($$07081)) + 13|0);
-   $111 = HEAP8[$105>>0]|0;
-   $112 = $111 ^ $109;
-   $113 = ((($$06183)) + 13|0);
-   HEAP8[$108>>0] = $112;
-   $114 = HEAP8[$22>>0]|0;
-   $115 = ((($$07081)) + 14|0);
-   $116 = HEAP8[$110>>0]|0;
-   $117 = $116 ^ $114;
-   $118 = ((($$06183)) + 14|0);
-   HEAP8[$113>>0] = $117;
-   $119 = HEAP8[$23>>0]|0;
-   $120 = ((($$07081)) + 15|0);
-   $121 = HEAP8[$115>>0]|0;
-   $122 = $121 ^ $119;
-   $123 = ((($$06183)) + 15|0);
-   HEAP8[$118>>0] = $122;
-   $124 = HEAP8[$24>>0]|0;
-   $125 = HEAP8[$120>>0]|0;
-   $126 = $125 ^ $124;
-   HEAP8[$123>>0] = $126;
-  }
-  $127 = ((($$06183)) + 16|0);
-  $$06780 = 16;
-  while(1) {
-   $128 = (($$06780) + -1)|0;
-   $129 = (($1) + ($128)|0);
-   $130 = HEAP8[$129>>0]|0;
-   $131 = (($130) + 1)<<24>>24;
-   HEAP8[$129>>0] = $131;
-   $132 = ($131<<24>>24)==(0);
-   $133 = ($$06780>>>0)>(1);
-   $or$cond = $132 & $133;
-   if ($or$cond) {
-    $$06780 = $128;
-   } else {
-    break;
-   }
-  }
-  $134 = ((($$07081)) + 16|0);
-  $135 = (($$084) + -1)|0;
-  $136 = ($135|0)==(0);
-  if ($136) {
-   $$068$lcssa = $spec$select;
-   break;
-  } else {
-   $$06183 = $127;$$06882 = $spec$select;$$07081 = $134;$$084 = $135;
-  }
- }
- $137 = $5;
- $138 = $137;
- HEAP32[$138>>2] = 0;
- $139 = (($137) + 4)|0;
- $140 = $139;
- HEAP32[$140>>2] = 0;
- $141 = ((($5)) + 8|0);
- $142 = $141;
- $143 = $142;
- HEAP32[$143>>2] = 0;
- $144 = (($142) + 4)|0;
- $145 = $144;
- HEAP32[$145>>2] = 0;
- ___gcry_burn_stack($$068$lcssa);
- STACKTOP = sp;return;
-}
-function __gcry_twofish_cbc_dec($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$05474 = 0, $$060$lcssa = 0, $$06073 = 0, $$06272 = 0, $$075 = 0, $10 = 
0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 
0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0;
- var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, 
$138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, 
$145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0;
- var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 
= 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0;
- var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 
= 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ($4|0)==(0);
- if ($6) {
-  $$060$lcssa = 0;
-  $171 = $5;
-  $172 = $171;
-  HEAP32[$172>>2] = 0;
-  $173 = (($171) + 4)|0;
-  $174 = $173;
-  HEAP32[$174>>2] = 0;
-  $175 = ((($5)) + 8|0);
-  $176 = $175;
-  $177 = $176;
-  HEAP32[$177>>2] = 0;
-  $178 = (($176) + 4)|0;
-  $179 = $178;
-  HEAP32[$179>>2] = 0;
-  ___gcry_burn_stack($$060$lcssa);
-  STACKTOP = sp;return;
- }
- $7 = $1;
- $8 = ((($5)) + 4|0);
- $9 = ((($1)) + 4|0);
- $10 = ((($5)) + 8|0);
- $11 = ((($1)) + 8|0);
- $12 = ((($5)) + 12|0);
- $13 = ((($1)) + 12|0);
- $14 = ((($5)) + 1|0);
- $15 = ((($1)) + 1|0);
- $16 = ((($5)) + 2|0);
- $17 = ((($1)) + 2|0);
- $18 = ((($5)) + 3|0);
- $19 = ((($1)) + 3|0);
- $20 = ((($5)) + 4|0);
- $21 = ((($1)) + 4|0);
- $22 = ((($5)) + 5|0);
- $23 = ((($1)) + 5|0);
- $24 = ((($5)) + 6|0);
- $25 = ((($1)) + 6|0);
- $26 = ((($5)) + 7|0);
- $27 = ((($1)) + 7|0);
- $28 = ((($5)) + 8|0);
- $29 = ((($1)) + 8|0);
- $30 = ((($5)) + 9|0);
- $31 = ((($1)) + 9|0);
- $32 = ((($5)) + 10|0);
- $33 = ((($1)) + 10|0);
- $34 = ((($5)) + 11|0);
- $35 = ((($1)) + 11|0);
- $36 = ((($5)) + 12|0);
- $37 = ((($1)) + 12|0);
- $38 = ((($5)) + 13|0);
- $39 = ((($1)) + 13|0);
- $40 = ((($5)) + 14|0);
- $41 = ((($1)) + 14|0);
- $42 = ((($5)) + 15|0);
- $43 = ((($1)) + 15|0);
- $$05474 = $2;$$06073 = 0;$$06272 = $3;$$075 = $4;
- while(1) {
-  (_twofish_decrypt($0,$5,$$06272)|0);
-  $44 = ($$06073>>>0)>(36);
-  $spec$select = $44 ? $$06073 : 36;
-  $45 = $$06272;
-  $46 = $$05474;
-  $47 = $45 | $7;
-  $48 = $47 | $46;
-  $49 = $48 & 3;
-  $50 = ($49|0)==(0);
-  if ($50) {
-   $51 = ((($$06272)) + 4|0);
-   $52 = HEAP32[$$06272>>2]|0;
-   $53 = HEAP32[$1>>2]|0;
-   $54 = HEAP32[$5>>2]|0;
-   $55 = $54 ^ $53;
-   $56 = ((($$05474)) + 4|0);
-   HEAP32[$$05474>>2] = $55;
-   HEAP32[$1>>2] = $52;
-   $57 = ((($$06272)) + 8|0);
-   $58 = HEAP32[$51>>2]|0;
-   $59 = HEAP32[$9>>2]|0;
-   $60 = HEAP32[$8>>2]|0;
-   $61 = $60 ^ $59;
-   $62 = ((($$05474)) + 8|0);
-   HEAP32[$56>>2] = $61;
-   HEAP32[$9>>2] = $58;
-   $63 = ((($$06272)) + 12|0);
-   $64 = HEAP32[$57>>2]|0;
-   $65 = HEAP32[$11>>2]|0;
-   $66 = HEAP32[$10>>2]|0;
-   $67 = $66 ^ $65;
-   $68 = ((($$05474)) + 12|0);
-   HEAP32[$62>>2] = $67;
-   HEAP32[$11>>2] = $64;
-   $69 = HEAP32[$63>>2]|0;
-   $70 = HEAP32[$13>>2]|0;
-   $71 = HEAP32[$12>>2]|0;
-   $72 = $71 ^ $70;
-   HEAP32[$68>>2] = $72;
-   HEAP32[$13>>2] = $69;
-  } else {
-   $73 = ((($$06272)) + 1|0);
-   $74 = HEAP8[$$06272>>0]|0;
-   $75 = HEAP8[$1>>0]|0;
-   $76 = HEAP8[$5>>0]|0;
-   $77 = $76 ^ $75;
-   $78 = ((($$05474)) + 1|0);
-   HEAP8[$$05474>>0] = $77;
-   HEAP8[$1>>0] = $74;
-   $79 = ((($$06272)) + 2|0);
-   $80 = HEAP8[$73>>0]|0;
-   $81 = HEAP8[$15>>0]|0;
-   $82 = HEAP8[$14>>0]|0;
-   $83 = $82 ^ $81;
-   $84 = ((($$05474)) + 2|0);
-   HEAP8[$78>>0] = $83;
-   HEAP8[$15>>0] = $80;
-   $85 = ((($$06272)) + 3|0);
-   $86 = HEAP8[$79>>0]|0;
-   $87 = HEAP8[$17>>0]|0;
-   $88 = HEAP8[$16>>0]|0;
-   $89 = $88 ^ $87;
-   $90 = ((($$05474)) + 3|0);
-   HEAP8[$84>>0] = $89;
-   HEAP8[$17>>0] = $86;
-   $91 = ((($$06272)) + 4|0);
-   $92 = HEAP8[$85>>0]|0;
-   $93 = HEAP8[$19>>0]|0;
-   $94 = HEAP8[$18>>0]|0;
-   $95 = $94 ^ $93;
-   $96 = ((($$05474)) + 4|0);
-   HEAP8[$90>>0] = $95;
-   HEAP8[$19>>0] = $92;
-   $97 = ((($$06272)) + 5|0);
-   $98 = HEAP8[$91>>0]|0;
-   $99 = HEAP8[$21>>0]|0;
-   $100 = HEAP8[$20>>0]|0;
-   $101 = $100 ^ $99;
-   $102 = ((($$05474)) + 5|0);
-   HEAP8[$96>>0] = $101;
-   HEAP8[$21>>0] = $98;
-   $103 = ((($$06272)) + 6|0);
-   $104 = HEAP8[$97>>0]|0;
-   $105 = HEAP8[$23>>0]|0;
-   $106 = HEAP8[$22>>0]|0;
-   $107 = $106 ^ $105;
-   $108 = ((($$05474)) + 6|0);
-   HEAP8[$102>>0] = $107;
-   HEAP8[$23>>0] = $104;
-   $109 = ((($$06272)) + 7|0);
-   $110 = HEAP8[$103>>0]|0;
-   $111 = HEAP8[$25>>0]|0;
-   $112 = HEAP8[$24>>0]|0;
-   $113 = $112 ^ $111;
-   $114 = ((($$05474)) + 7|0);
-   HEAP8[$108>>0] = $113;
-   HEAP8[$25>>0] = $110;
-   $115 = ((($$06272)) + 8|0);
-   $116 = HEAP8[$109>>0]|0;
-   $117 = HEAP8[$27>>0]|0;
-   $118 = HEAP8[$26>>0]|0;
-   $119 = $118 ^ $117;
-   $120 = ((($$05474)) + 8|0);
-   HEAP8[$114>>0] = $119;
-   HEAP8[$27>>0] = $116;
-   $121 = ((($$06272)) + 9|0);
-   $122 = HEAP8[$115>>0]|0;
-   $123 = HEAP8[$29>>0]|0;
-   $124 = HEAP8[$28>>0]|0;
-   $125 = $124 ^ $123;
-   $126 = ((($$05474)) + 9|0);
-   HEAP8[$120>>0] = $125;
-   HEAP8[$29>>0] = $122;
-   $127 = ((($$06272)) + 10|0);
-   $128 = HEAP8[$121>>0]|0;
-   $129 = HEAP8[$31>>0]|0;
-   $130 = HEAP8[$30>>0]|0;
-   $131 = $130 ^ $129;
-   $132 = ((($$05474)) + 10|0);
-   HEAP8[$126>>0] = $131;
-   HEAP8[$31>>0] = $128;
-   $133 = ((($$06272)) + 11|0);
-   $134 = HEAP8[$127>>0]|0;
-   $135 = HEAP8[$33>>0]|0;
-   $136 = HEAP8[$32>>0]|0;
-   $137 = $136 ^ $135;
-   $138 = ((($$05474)) + 11|0);
-   HEAP8[$132>>0] = $137;
-   HEAP8[$33>>0] = $134;
-   $139 = ((($$06272)) + 12|0);
-   $140 = HEAP8[$133>>0]|0;
-   $141 = HEAP8[$35>>0]|0;
-   $142 = HEAP8[$34>>0]|0;
-   $143 = $142 ^ $141;
-   $144 = ((($$05474)) + 12|0);
-   HEAP8[$138>>0] = $143;
-   HEAP8[$35>>0] = $140;
-   $145 = ((($$06272)) + 13|0);
-   $146 = HEAP8[$139>>0]|0;
-   $147 = HEAP8[$37>>0]|0;
-   $148 = HEAP8[$36>>0]|0;
-   $149 = $148 ^ $147;
-   $150 = ((($$05474)) + 13|0);
-   HEAP8[$144>>0] = $149;
-   HEAP8[$37>>0] = $146;
-   $151 = ((($$06272)) + 14|0);
-   $152 = HEAP8[$145>>0]|0;
-   $153 = HEAP8[$39>>0]|0;
-   $154 = HEAP8[$38>>0]|0;
-   $155 = $154 ^ $153;
-   $156 = ((($$05474)) + 14|0);
-   HEAP8[$150>>0] = $155;
-   HEAP8[$39>>0] = $152;
-   $157 = ((($$06272)) + 15|0);
-   $158 = HEAP8[$151>>0]|0;
-   $159 = HEAP8[$41>>0]|0;
-   $160 = HEAP8[$40>>0]|0;
-   $161 = $160 ^ $159;
-   $162 = ((($$05474)) + 15|0);
-   HEAP8[$156>>0] = $161;
-   HEAP8[$41>>0] = $158;
-   $163 = HEAP8[$157>>0]|0;
-   $164 = HEAP8[$43>>0]|0;
-   $165 = HEAP8[$42>>0]|0;
-   $166 = $165 ^ $164;
-   HEAP8[$162>>0] = $166;
-   HEAP8[$43>>0] = $163;
-  }
-  $167 = ((($$06272)) + 16|0);
-  $168 = ((($$05474)) + 16|0);
-  $169 = (($$075) + -1)|0;
-  $170 = ($169|0)==(0);
-  if ($170) {
-   $$060$lcssa = $spec$select;
-   break;
-  } else {
-   $$05474 = $168;$$06073 = $spec$select;$$06272 = $167;$$075 = $169;
-  }
- }
- $171 = $5;
- $172 = $171;
- HEAP32[$172>>2] = 0;
- $173 = (($171) + 4)|0;
- $174 = $173;
- HEAP32[$174>>2] = 0;
- $175 = ((($5)) + 8|0);
- $176 = $175;
- $177 = $176;
- HEAP32[$177>>2] = 0;
- $178 = (($176) + 4)|0;
- $179 = $178;
- HEAP32[$179>>2] = 0;
- ___gcry_burn_stack($$060$lcssa);
- STACKTOP = sp;return;
-}
-function __gcry_twofish_cfb_dec($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0$lcssa = 0, $$02530 = 0, $$02629 = 0, $$02728 = 0, $$031 = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ($4|0)==(0);
- if ($5) {
-  $$0$lcssa = 0;
-  ___gcry_burn_stack($$0$lcssa);
-  return;
- }
- $6 = $1;
- $7 = ((($1)) + 4|0);
- $8 = ((($1)) + 8|0);
- $9 = ((($1)) + 12|0);
- $10 = ((($1)) + 1|0);
- $11 = ((($1)) + 2|0);
- $12 = ((($1)) + 3|0);
- $13 = ((($1)) + 5|0);
- $14 = ((($1)) + 6|0);
- $15 = ((($1)) + 7|0);
- $16 = ((($1)) + 9|0);
- $17 = ((($1)) + 10|0);
- $18 = ((($1)) + 11|0);
- $19 = ((($1)) + 13|0);
- $20 = ((($1)) + 14|0);
- $21 = ((($1)) + 15|0);
- $$02530 = $4;$$02629 = $3;$$02728 = $2;$$031 = 0;
- while(1) {
-  (_twofish_encrypt($0,$1,$1)|0);
-  $22 = ($$031>>>0)>(36);
-  $spec$select = $22 ? $$031 : 36;
-  $23 = $$02629;
-  $24 = $$02728;
-  $25 = $24 | $6;
-  $26 = $25 | $23;
-  $27 = $26 & 3;
-  $28 = ($27|0)==(0);
-  if ($28) {
-   $29 = ((($$02629)) + 4|0);
-   $30 = HEAP32[$$02629>>2]|0;
-   $31 = HEAP32[$1>>2]|0;
-   $32 = $31 ^ $30;
-   $33 = ((($$02728)) + 4|0);
-   HEAP32[$$02728>>2] = $32;
-   HEAP32[$1>>2] = $30;
-   $34 = ((($$02629)) + 8|0);
-   $35 = HEAP32[$29>>2]|0;
-   $36 = HEAP32[$7>>2]|0;
-   $37 = $36 ^ $35;
-   $38 = ((($$02728)) + 8|0);
-   HEAP32[$33>>2] = $37;
-   HEAP32[$7>>2] = $35;
-   $39 = ((($$02629)) + 12|0);
-   $40 = HEAP32[$34>>2]|0;
-   $41 = HEAP32[$8>>2]|0;
-   $42 = $41 ^ $40;
-   $43 = ((($$02728)) + 12|0);
-   HEAP32[$38>>2] = $42;
-   HEAP32[$8>>2] = $40;
-   $44 = HEAP32[$39>>2]|0;
-   $45 = HEAP32[$9>>2]|0;
-   $46 = $45 ^ $44;
-   HEAP32[$43>>2] = $46;
-   HEAP32[$9>>2] = $44;
-  } else {
-   $47 = ((($$02629)) + 1|0);
-   $48 = HEAP8[$$02629>>0]|0;
-   $49 = HEAP8[$1>>0]|0;
-   $50 = $49 ^ $48;
-   $51 = ((($$02728)) + 1|0);
-   HEAP8[$$02728>>0] = $50;
-   HEAP8[$1>>0] = $48;
-   $52 = ((($$02629)) + 2|0);
-   $53 = HEAP8[$47>>0]|0;
-   $54 = HEAP8[$10>>0]|0;
-   $55 = $54 ^ $53;
-   $56 = ((($$02728)) + 2|0);
-   HEAP8[$51>>0] = $55;
-   HEAP8[$10>>0] = $53;
-   $57 = ((($$02629)) + 3|0);
-   $58 = HEAP8[$52>>0]|0;
-   $59 = HEAP8[$11>>0]|0;
-   $60 = $59 ^ $58;
-   $61 = ((($$02728)) + 3|0);
-   HEAP8[$56>>0] = $60;
-   HEAP8[$11>>0] = $58;
-   $62 = ((($$02629)) + 4|0);
-   $63 = HEAP8[$57>>0]|0;
-   $64 = HEAP8[$12>>0]|0;
-   $65 = $64 ^ $63;
-   $66 = ((($$02728)) + 4|0);
-   HEAP8[$61>>0] = $65;
-   HEAP8[$12>>0] = $63;
-   $67 = ((($$02629)) + 5|0);
-   $68 = HEAP8[$62>>0]|0;
-   $69 = HEAP8[$7>>0]|0;
-   $70 = $69 ^ $68;
-   $71 = ((($$02728)) + 5|0);
-   HEAP8[$66>>0] = $70;
-   HEAP8[$7>>0] = $68;
-   $72 = ((($$02629)) + 6|0);
-   $73 = HEAP8[$67>>0]|0;
-   $74 = HEAP8[$13>>0]|0;
-   $75 = $74 ^ $73;
-   $76 = ((($$02728)) + 6|0);
-   HEAP8[$71>>0] = $75;
-   HEAP8[$13>>0] = $73;
-   $77 = ((($$02629)) + 7|0);
-   $78 = HEAP8[$72>>0]|0;
-   $79 = HEAP8[$14>>0]|0;
-   $80 = $79 ^ $78;
-   $81 = ((($$02728)) + 7|0);
-   HEAP8[$76>>0] = $80;
-   HEAP8[$14>>0] = $78;
-   $82 = ((($$02629)) + 8|0);
-   $83 = HEAP8[$77>>0]|0;
-   $84 = HEAP8[$15>>0]|0;
-   $85 = $84 ^ $83;
-   $86 = ((($$02728)) + 8|0);
-   HEAP8[$81>>0] = $85;
-   HEAP8[$15>>0] = $83;
-   $87 = ((($$02629)) + 9|0);
-   $88 = HEAP8[$82>>0]|0;
-   $89 = HEAP8[$8>>0]|0;
-   $90 = $89 ^ $88;
-   $91 = ((($$02728)) + 9|0);
-   HEAP8[$86>>0] = $90;
-   HEAP8[$8>>0] = $88;
-   $92 = ((($$02629)) + 10|0);
-   $93 = HEAP8[$87>>0]|0;
-   $94 = HEAP8[$16>>0]|0;
-   $95 = $94 ^ $93;
-   $96 = ((($$02728)) + 10|0);
-   HEAP8[$91>>0] = $95;
-   HEAP8[$16>>0] = $93;
-   $97 = ((($$02629)) + 11|0);
-   $98 = HEAP8[$92>>0]|0;
-   $99 = HEAP8[$17>>0]|0;
-   $100 = $99 ^ $98;
-   $101 = ((($$02728)) + 11|0);
-   HEAP8[$96>>0] = $100;
-   HEAP8[$17>>0] = $98;
-   $102 = ((($$02629)) + 12|0);
-   $103 = HEAP8[$97>>0]|0;
-   $104 = HEAP8[$18>>0]|0;
-   $105 = $104 ^ $103;
-   $106 = ((($$02728)) + 12|0);
-   HEAP8[$101>>0] = $105;
-   HEAP8[$18>>0] = $103;
-   $107 = ((($$02629)) + 13|0);
-   $108 = HEAP8[$102>>0]|0;
-   $109 = HEAP8[$9>>0]|0;
-   $110 = $109 ^ $108;
-   $111 = ((($$02728)) + 13|0);
-   HEAP8[$106>>0] = $110;
-   HEAP8[$9>>0] = $108;
-   $112 = ((($$02629)) + 14|0);
-   $113 = HEAP8[$107>>0]|0;
-   $114 = HEAP8[$19>>0]|0;
-   $115 = $114 ^ $113;
-   $116 = ((($$02728)) + 14|0);
-   HEAP8[$111>>0] = $115;
-   HEAP8[$19>>0] = $113;
-   $117 = ((($$02629)) + 15|0);
-   $118 = HEAP8[$112>>0]|0;
-   $119 = HEAP8[$20>>0]|0;
-   $120 = $119 ^ $118;
-   $121 = ((($$02728)) + 15|0);
-   HEAP8[$116>>0] = $120;
-   HEAP8[$20>>0] = $118;
-   $122 = HEAP8[$117>>0]|0;
-   $123 = HEAP8[$21>>0]|0;
-   $124 = $123 ^ $122;
-   HEAP8[$121>>0] = $124;
-   HEAP8[$21>>0] = $122;
-  }
-  $125 = ((($$02728)) + 16|0);
-  $126 = ((($$02629)) + 16|0);
-  $127 = (($$02530) + -1)|0;
-  $128 = ($127|0)==(0);
-  if ($128) {
-   $$0$lcssa = $spec$select;
-   break;
-  } else {
-   $$02530 = $127;$$02629 = $126;$$02728 = $125;$$031 = $spec$select;
-  }
- }
- ___gcry_burn_stack($$0$lcssa);
- return;
-}
-function __gcry_register_random_progress($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18120] = $0;
- HEAP32[18121] = $1;
- return;
-}
-function __gcry_random_progress($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = HEAP32[18120]|0;
- $5 = ($4|0)==(0|0);
- if ($5) {
-  return;
- }
- $6 = HEAP32[18121]|0;
- FUNCTION_TABLE_viiiii[$4 & 127]($6,$0,$1,$2,$3);
- return;
-}
-function __gcry_set_preferred_rng_type($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- L1: do {
-  switch ($0|0) {
-  case 0:  {
-   HEAP32[18122] = 1;
-   break;
-  }
-  case 1:  {
-   HEAP32[18123] = 1;
-   break;
-  }
-  default: {
-   $1 = HEAP32[18122]|0;
-   $2 = ($1|0)==(0);
-   if ($2) {
-    switch ($0|0) {
-    case 2:  {
-     HEAP32[18124] = 1;
-     break L1;
-     break;
-    }
-    case 3:  {
-     HEAP32[18125] = 1;
-     break L1;
-     break;
-    }
-    default: {
-     break L1;
-    }
-    }
-   }
-  }
-  }
- } while(0);
- return;
-}
-function __gcry_random_initialize($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  __gcry_rngfips_initialize($0);
-  return;
- }
- $3 = HEAP32[18123]|0;
- $4 = ($3|0)==(0);
- if (!($4)) {
-  __gcry_rngcsprng_initialize($0);
-  return;
- }
- $5 = HEAP32[18124]|0;
- $6 = ($5|0)==(0);
- if (!($6)) {
-  __gcry_rngfips_initialize($0);
-  return;
- }
- $7 = HEAP32[18125]|0;
- $8 = ($7|0)==(0);
- if ($8) {
-  __gcry_rngcsprng_initialize($0);
-  return;
- } else {
-  __gcry_rngsystem_initialize($0);
-  return;
- }
-}
-function __gcry_random_close_fds() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  __gcry_rngfips_close_fds();
-  return;
- }
- $2 = HEAP32[18123]|0;
- $3 = ($2|0)==(0);
- if (!($3)) {
-  __gcry_rngcsprng_close_fds();
-  return;
- }
- $4 = HEAP32[18124]|0;
- $5 = ($4|0)==(0);
- if (!($5)) {
-  __gcry_rngfips_close_fds();
-  return;
- }
- $6 = HEAP32[18125]|0;
- $7 = ($6|0)==(0);
- if ($7) {
-  __gcry_rngcsprng_close_fds();
-  return;
- } else {
-  __gcry_rngsystem_close_fds();
-  return;
- }
-}
-function __gcry_get_rng_type($0) {
- $0 = $0|0;
- var $$ = 0, $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if ($1) {
-  $2 = (__gcry_fips_mode()|0);
-  $3 = ($2|0)==(0);
-  if ($3) {
-   label = 3;
-  } else {
-   $$0 = 2;
-  }
- } else {
-  label = 3;
- }
- if ((label|0) == 3) {
-  $4 = HEAP32[18123]|0;
-  $5 = ($4|0)==(0);
-  if ($5) {
-   $6 = HEAP32[18124]|0;
-   $7 = ($6|0)==(0);
-   if ($7) {
-    $8 = HEAP32[18125]|0;
-    $9 = ($8|0)==(0);
-    $$ = $9 ? 1 : 3;
-    $$0 = $$;
-   } else {
-    $$0 = 2;
-   }
-  } else {
-   $$0 = 1;
-  }
- }
- return ($$0|0);
-}
-function __gcry_random_dump_stats() {
- var $0 = 0, $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if ($1) {
-  __gcry_rngcsprng_dump_stats();
-  return;
- } else {
-  return;
- }
-}
-function __gcry_secure_random_alloc() {
- var $0 = 0, $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return;
- }
- __gcry_rngcsprng_secure_alloc();
- return;
-}
-function __gcry_enable_quick_random_gen() {
- var $0 = 0, $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return;
- }
- __gcry_rngcsprng_enable_quick_gen();
- return;
-}
-function __gcry_set_random_daemon_socket($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  return;
- }
- return;
-}
-function __gcry_use_random_daemon($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $3 = (__gcry_rngcsprng_use_daemon($0)|0);
- $$0 = $3;
- return ($$0|0);
-}
-function __gcry_random_is_faked() {
- var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if ($1) {
-  $3 = (__gcry_rngcsprng_is_faked()|0);
-  $$0 = $3;
-  return ($$0|0);
- } else {
-  $2 = (__gcry_rngfips_is_faked()|0);
-  $$0 = $2;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_random_bytes($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_xmalloc($0)|0);
- _do_randomize($2,$0,$1);
- return ($2|0);
-}
-function _do_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_fips_mode()|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  __gcry_rngfips_randomize($0,$1,$2);
-  return;
- }
- $5 = HEAP32[18123]|0;
- $6 = ($5|0)==(0);
- if (!($6)) {
-  __gcry_rngcsprng_randomize($0,$1,$2);
-  return;
- }
- $7 = HEAP32[18124]|0;
- $8 = ($7|0)==(0);
- if (!($8)) {
-  __gcry_rngfips_randomize($0,$1,$2);
-  return;
- }
- $9 = HEAP32[18125]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  __gcry_rngcsprng_randomize($0,$1,$2);
-  return;
- } else {
-  __gcry_rngsystem_randomize($0,$1,$2);
-  return;
- }
-}
-function __gcry_random_bytes_secure($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_xmalloc_secure($0)|0);
- _do_randomize($2,$0,$1);
- return ($2|0);
-}
-function __gcry_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- _do_randomize($0,$1,$2);
- return;
-}
-function __gcry_set_random_seed_file($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if (!($2)) {
-  return;
- }
- $3 = HEAP32[18123]|0;
- $4 = ($3|0)==(0);
- if (!($4)) {
-  __gcry_rngcsprng_set_seed_file($0);
-  return;
- }
- $5 = HEAP32[18124]|0;
- $6 = HEAP32[18125]|0;
- $7 = $6 | $5;
- $8 = ($7|0)==(0);
- if (!($8)) {
-  return;
- }
- __gcry_rngcsprng_set_seed_file($0);
- return;
-}
-function __gcry_update_random_seed_file() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return;
- }
- $2 = HEAP32[18123]|0;
- $3 = ($2|0)==(0);
- if (!($3)) {
-  __gcry_rngcsprng_update_seed_file();
-  return;
- }
- $4 = HEAP32[18124]|0;
- $5 = HEAP32[18125]|0;
- $6 = $5 | $4;
- $7 = ($6|0)==(0);
- if (!($7)) {
-  return;
- }
- __gcry_rngcsprng_update_seed_file();
- return;
-}
-function __gcry_fast_random_poll() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $0 = (__gcry_fips_mode()|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return;
- }
- $2 = HEAP32[18123]|0;
- $3 = ($2|0)==(0);
- if (!($3)) {
-  __gcry_rngcsprng_fast_poll();
-  return;
- }
- $4 = HEAP32[18124]|0;
- $5 = HEAP32[18125]|0;
- $6 = $5 | $4;
- $7 = ($6|0)==(0);
- if (!($7)) {
-  return;
- }
- __gcry_rngcsprng_fast_poll();
- return;
-}
-function __gcry_create_nonce($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$$0$22 = 0, $$0$$0$23 = 0, $$0$$0$24 = 0, $$0$$0$25 = 0, $$03537 = 0, 
$$038 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 
0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 12|0;
- $3 = (__gcry_fips_mode()|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  __gcry_rngfips_create_nonce($0,$1);
-  STACKTOP = sp;return;
- }
- $5 = (__gcry_fips_mode()|0);
- $6 = ($5|0)==(0);
- do {
-  if ($6) {
-   $7 = HEAP32[18123]|0;
-   $8 = ($7|0)==(0);
-   if (!($8)) {
-    __gcry_rngcsprng_initialize(1);
-    break;
-   }
-   $9 = HEAP32[18124]|0;
-   $10 = ($9|0)==(0);
-   if (!($10)) {
-    __gcry_rngfips_initialize(1);
-    break;
-   }
-   $11 = HEAP32[18125]|0;
-   $12 = ($11|0)==(0);
-   if ($12) {
-    __gcry_rngcsprng_initialize(1);
-    break;
-   } else {
-    __gcry_rngsystem_initialize(1);
-    break;
-   }
-  } else {
-   __gcry_rngfips_initialize(1);
-  }
- } while(0);
- $13 = (_gpgrt_lock_lock(40064)|0);
- $14 = ($13|0)==(0);
- if (!($14)) {
-  $15 = (_gpg_strerror($13)|0);
-  HEAP32[$vararg_buffer>>2] = $15;
-  __gcry_log_fatal(63691,$vararg_buffer);
-  // unreachable;
- }
- $16 = (_getpid()|0);
- HEAP32[$2>>2] = $16;
- $17 = HEAP32[18126]|0;
- $18 = ($17|0)==(0);
- if ($18) {
-  $19 = (_time((0|0))|0);
-  $$0$$0$22 = HEAP32[$2>>2]|0;
-  $$0$$0$23 = HEAP32[$2>>2]|0;
-  HEAP32[18127] = $$0$$0$23;
-  HEAP32[17780] = $$0$$0$22;
-  HEAP32[(71124)>>2] = $19;
-  _do_randomize((71140),8,0);
-  HEAP32[18126] = 1;
- } else {
-  $20 = HEAP32[18127]|0;
-  $$0$$0$24 = HEAP32[$2>>2]|0;
-  $21 = ($20|0)==($$0$$0$24|0);
-  if (!($21)) {
-   _do_randomize((71140),8,0);
-   $$0$$0$25 = HEAP32[$2>>2]|0;
-   HEAP32[18127] = $$0$$0$25;
-  }
- }
- $22 = ($1|0)==(0);
- if (!($22)) {
-  $$03537 = $0;$$038 = $1;
-  while(1) {
-   __gcry_sha1_hash_buffer(71120,71120,28);
-   $23 = ($$038>>>0)<(20);
-   $24 = $23 ? $$038 : 20;
-   _memcpy(($$03537|0),(71120|0),($24|0))|0;
-   $25 = (($$038) - ($24))|0;
-   $26 = (($$03537) + ($24)|0);
-   $27 = ($25|0)==(0);
-   if ($27) {
-    break;
-   } else {
-    $$03537 = $26;$$038 = $25;
-   }
-  }
- }
- $28 = (_gpgrt_lock_unlock(40064)|0);
- $29 = ($28|0)==(0);
- if ($29) {
-  STACKTOP = sp;return;
- } else {
-  $30 = (_gpg_strerror($28)|0);
-  HEAP32[$vararg_buffer1>>2] = $30;
-  __gcry_log_fatal(63736,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_random_selftest($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $3 = (__gcry_rngfips_selftest($0)|0);
- $$0 = $3;
- return ($$0|0);
-}
-function __gcry_random_init_external_test($0,$1,$2,$3,$4,$5,$6,$7) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- var $$0 = 0, $10 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $8 = (__gcry_fips_mode()|0);
- $9 = ($8|0)==(0);
- if ($9) {
-  $$0 = 60;
-  return ($$0|0);
- }
- $10 = (__gcry_rngfips_init_external_test($0,$1,$2,$3,$4,$5,$6,$7)|0);
- $$0 = $10;
- return ($$0|0);
-}
-function __gcry_random_run_external_test($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_fips_mode()|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 60;
-  return ($$0|0);
- }
- $5 = (__gcry_rngfips_run_external_test($0,$1,$2)|0);
- $$0 = $5;
- return ($$0|0);
-}
-function __gcry_random_deinit_external_test($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_fips_mode()|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  return;
- }
- __gcry_rngfips_deinit_external_test($0);
- return;
-}
-function __gcry_mpi_point_log($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0192127 = 0, $$01922 = 0, $$02426 = 0, $$025 = 0, $10 = 0, $11 = 0, $12 
= 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $vararg_buffer1 = sp + 112|0;
- $vararg_buffer = sp + 104|0;
- $3 = sp;
- $4 = ($1|0)==(0|0);
- if ($4) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  (_snprintf($3,99,63781,$vararg_buffer)|0);
-  __gcry_log_printmpi($3,0);
-  STACKTOP = sp;return;
- }
- HEAP32[$vararg_buffer1>>2] = $0;
- (_snprintf($3,99,63786,$vararg_buffer1)|0);
- $5 = ($2|0)!=(0|0);
- if ($5) {
-  $6 = (__gcry_mpi_new(0)|0);
-  $7 = (__gcry_mpi_new(0)|0);
-  $8 = (__gcry_mpi_ec_get_affine($6,$7,$1,$2)|0);
-  $9 = ($8|0)==(0);
-  if ($9) {
-   $10 = (_strlen($3)|0);
-   $11 = (($10) + -1)|0;
-   $12 = (($3) + ($11)|0);
-   HEAP8[$12>>0] = 120;
-   __gcry_log_printmpi($3,$6);
-   $13 = (_strlen($3)|0);
-   $14 = (($13) + -1)|0;
-   $15 = (($3) + ($14)|0);
-   HEAP8[$15>>0] = 121;
-   __gcry_log_printmpi($3,$7);
-   $$0192127 = $6;$$02426 = $7;
-  } else {
-   $$01922 = $6;$$025 = $7;
-   label = 6;
-  }
- } else {
-  $$01922 = 0;$$025 = 0;
-  label = 6;
- }
- if ((label|0) == 6) {
-  $16 = HEAP32[$1>>2]|0;
-  __gcry_log_printmpi($3,$16);
-  $17 = (_strlen($3)|0);
-  $18 = (($17) + -1)|0;
-  $19 = (($3) + ($18)|0);
-  HEAP8[$19>>0] = 89;
-  $20 = ((($1)) + 4|0);
-  $21 = HEAP32[$20>>2]|0;
-  __gcry_log_printmpi($3,$21);
-  $22 = (_strlen($3)|0);
-  $23 = (($22) + -1)|0;
-  $24 = (($3) + ($23)|0);
-  HEAP8[$24>>0] = 90;
-  $25 = ((($1)) + 8|0);
-  $26 = HEAP32[$25>>2]|0;
-  __gcry_log_printmpi($3,$26);
-  if ($5) {
-   $$0192127 = $$01922;$$02426 = $$025;
-  } else {
-   STACKTOP = sp;return;
-  }
- }
- __gcry_mpi_release($$0192127);
- __gcry_mpi_release($$02426);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_ec_get_affine($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, $vararg_ptr3 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = ((($2)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = (__gcry_mpi_cmp_ui($5,0)|0);
- $7 = ($6|0)==(0);
- if ($7) {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = HEAP32[$3>>2]|0;
- switch ($8|0) {
- case 0:  {
-  $9 = (__gcry_mpi_new(0)|0);
-  $10 = (__gcry_mpi_new(0)|0);
-  $11 = HEAP32[$4>>2]|0;
-  $12 = ((($3)) + 16|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = (__gcry_mpi_invm($9,$11,$13)|0);
-  $15 = ($14|0)==(0);
-  if ($15) {
-   __gcry_log_error(63791,$vararg_buffer);
-   __gcry_log_printmpi(63825,$11);
-   $16 = HEAP32[$12>>2]|0;
-   __gcry_log_printmpi(63829,$16);
-  }
-  __gcry_mpi_mul($10,$9,$9);
-  $17 = ((($3)) + 60|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = ($18|0)==(0|0);
-  if ($19) {
-   $20 = HEAP32[$12>>2]|0;
-   __gcry_mpi_mod($10,$10,$20);
-  } else {
-   __gcry_mpi_mod_barrett($10,$10,$18);
-  }
-  $21 = ($0|0)==(0|0);
-  do {
-   if (!($21)) {
-    $22 = HEAP32[$2>>2]|0;
-    __gcry_mpi_mul($0,$22,$10);
-    $23 = HEAP32[$17>>2]|0;
-    $24 = ($23|0)==(0|0);
-    if ($24) {
-     $25 = HEAP32[$12>>2]|0;
-     __gcry_mpi_mod($0,$0,$25);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($0,$0,$23);
-     break;
-    }
-   }
-  } while(0);
-  $26 = ($1|0)==(0|0);
-  if (!($26)) {
-   $27 = (__gcry_mpi_new(0)|0);
-   __gcry_mpi_mul($27,$10,$9);
-   $28 = HEAP32[$17>>2]|0;
-   $29 = ($28|0)==(0|0);
-   if ($29) {
-    $30 = HEAP32[$12>>2]|0;
-    __gcry_mpi_mod($27,$27,$30);
-   } else {
-    __gcry_mpi_mod_barrett($27,$27,$28);
-   }
-   $31 = ((($2)) + 4|0);
-   $32 = HEAP32[$31>>2]|0;
-   __gcry_mpi_mul($1,$32,$27);
-   $33 = HEAP32[$17>>2]|0;
-   $34 = ($33|0)==(0|0);
-   if ($34) {
-    $35 = HEAP32[$12>>2]|0;
-    __gcry_mpi_mod($1,$1,$35);
-   } else {
-    __gcry_mpi_mod_barrett($1,$1,$33);
-   }
-   __gcry_mpi_free($27);
-  }
-  __gcry_mpi_free($10);
-  __gcry_mpi_free($9);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- case 1:  {
-  $36 = ($0|0)==(0|0);
-  if (!($36)) {
-   $37 = HEAP32[$2>>2]|0;
-   (__gcry_mpi_set($0,$37)|0);
-  }
-  $38 = ($1|0)==(0|0);
-  if ($38) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  } else {
-   HEAP32[$vararg_buffer1>>2] = 63882;
-   $vararg_ptr3 = ((($vararg_buffer1)) + 4|0);
-   HEAP32[$vararg_ptr3>>2] = 63906;
-   __gcry_log_fatal(63833,$vararg_buffer1);
-   // unreachable;
-  }
-  break;
- }
- case 2:  {
-  $39 = (__gcry_mpi_new(0)|0);
-  $40 = HEAP32[$4>>2]|0;
-  $41 = ((($3)) + 16|0);
-  $42 = HEAP32[$41>>2]|0;
-  $43 = (__gcry_mpi_invm($39,$40,$42)|0);
-  $44 = ($43|0)==(0);
-  if ($44) {
-   __gcry_log_error(63791,$vararg_buffer4);
-   __gcry_log_printmpi(63825,$40);
-   $45 = HEAP32[$41>>2]|0;
-   __gcry_log_printmpi(63829,$45);
-  }
-  $46 = ($0|0)==(0|0);
-  do {
-   if (!($46)) {
-    $47 = HEAP32[$2>>2]|0;
-    __gcry_mpi_mul($0,$47,$39);
-    $48 = ((($3)) + 60|0);
-    $49 = HEAP32[$48>>2]|0;
-    $50 = ($49|0)==(0|0);
-    if ($50) {
-     $51 = HEAP32[$41>>2]|0;
-     __gcry_mpi_mod($0,$0,$51);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($0,$0,$49);
-     break;
-    }
-   }
-  } while(0);
-  $52 = ($1|0)==(0|0);
-  do {
-   if (!($52)) {
-    $53 = ((($2)) + 4|0);
-    $54 = HEAP32[$53>>2]|0;
-    __gcry_mpi_mul($1,$54,$39);
-    $55 = ((($3)) + 60|0);
-    $56 = HEAP32[$55>>2]|0;
-    $57 = ($56|0)==(0|0);
-    if ($57) {
-     $58 = HEAP32[$41>>2]|0;
-     __gcry_mpi_mod($1,$1,$58);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($1,$1,$56);
-     break;
-    }
-   }
-  } while(0);
-  __gcry_mpi_release($39);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
-  break;
- }
- default: {
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- return (0)|0;
-}
-function __gcry_mpi_point_new($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_xmalloc(12)|0);
- $2 = (__gcry_mpi_new(0)|0);
- HEAP32[$1>>2] = $2;
- $3 = (__gcry_mpi_new(0)|0);
- $4 = ((($1)) + 4|0);
- HEAP32[$4>>2] = $3;
- $5 = (__gcry_mpi_new(0)|0);
- $6 = ((($1)) + 8|0);
- HEAP32[$6>>2] = $5;
- return ($1|0);
-}
-function __gcry_mpi_point_init($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_mpi_new(0)|0);
- HEAP32[$0>>2] = $1;
- $2 = (__gcry_mpi_new(0)|0);
- $3 = ((($0)) + 4|0);
- HEAP32[$3>>2] = $2;
- $4 = (__gcry_mpi_new(0)|0);
- $5 = ((($0)) + 8|0);
- HEAP32[$5>>2] = $4;
- return;
-}
-function __gcry_mpi_point_release($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = HEAP32[$0>>2]|0;
- __gcry_mpi_free($2);
- HEAP32[$0>>2] = 0;
- $3 = ((($0)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- __gcry_mpi_free($4);
- HEAP32[$3>>2] = 0;
- $5 = ((($0)) + 8|0);
- $6 = HEAP32[$5>>2]|0;
- __gcry_mpi_free($6);
- HEAP32[$5>>2] = 0;
- __gcry_free($0);
- return;
-}
-function __gcry_mpi_point_free_parts($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- __gcry_mpi_free($1);
- HEAP32[$0>>2] = 0;
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- __gcry_mpi_free($3);
- HEAP32[$2>>2] = 0;
- $4 = ((($0)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- __gcry_mpi_free($5);
- HEAP32[$4>>2] = 0;
- return;
-}
-function __gcry_mpi_point_set($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $4 = ($0|0)==(0|0);
- if ($4) {
-  $5 = (__gcry_xmalloc(12)|0);
-  $6 = (__gcry_mpi_new(0)|0);
-  HEAP32[$5>>2] = $6;
-  $7 = (__gcry_mpi_new(0)|0);
-  $8 = ((($5)) + 4|0);
-  HEAP32[$8>>2] = $7;
-  $9 = (__gcry_mpi_new(0)|0);
-  $10 = ((($5)) + 8|0);
-  HEAP32[$10>>2] = $9;
-  $$0 = $5;
- } else {
-  $$0 = $0;
- }
- $11 = ($1|0)==(0|0);
- $12 = HEAP32[$$0>>2]|0;
- if ($11) {
-  __gcry_mpi_clear($12);
- } else {
-  (__gcry_mpi_set($12,$1)|0);
- }
- $13 = ($2|0)==(0|0);
- $14 = ((($$0)) + 4|0);
- $15 = HEAP32[$14>>2]|0;
- if ($13) {
-  __gcry_mpi_clear($15);
- } else {
-  (__gcry_mpi_set($15,$2)|0);
- }
- $16 = ($3|0)==(0|0);
- $17 = ((($$0)) + 8|0);
- $18 = HEAP32[$17>>2]|0;
- if ($16) {
-  __gcry_mpi_clear($18);
-  return ($$0|0);
- } else {
-  (__gcry_mpi_set($18,$3)|0);
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_mpi_point_snatch_set($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $4 = ($0|0)==(0|0);
- if ($4) {
-  $5 = (__gcry_xmalloc(12)|0);
-  $6 = (__gcry_mpi_new(0)|0);
-  HEAP32[$5>>2] = $6;
-  $7 = (__gcry_mpi_new(0)|0);
-  $8 = ((($5)) + 4|0);
-  HEAP32[$8>>2] = $7;
-  $9 = (__gcry_mpi_new(0)|0);
-  $10 = ((($5)) + 8|0);
-  HEAP32[$10>>2] = $9;
-  $$0 = $5;
- } else {
-  $$0 = $0;
- }
- $11 = ($1|0)==(0|0);
- $12 = HEAP32[$$0>>2]|0;
- if ($11) {
-  __gcry_mpi_clear($12);
- } else {
-  __gcry_mpi_snatch($12,$1);
- }
- $13 = ($2|0)==(0|0);
- $14 = ((($$0)) + 4|0);
- $15 = HEAP32[$14>>2]|0;
- if ($13) {
-  __gcry_mpi_clear($15);
- } else {
-  __gcry_mpi_snatch($15,$2);
- }
- $16 = ($3|0)==(0|0);
- $17 = ((($$0)) + 8|0);
- $18 = HEAP32[$17>>2]|0;
- if ($16) {
-  __gcry_mpi_clear($18);
-  return ($$0|0);
- } else {
-  __gcry_mpi_snatch($18,$3);
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_mpi_ec_p_internal_new($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $6 = (__gcry_xcalloc(1,108)|0);
- _ec_p_init($6,$0,$1,$2,$3,$4,$5);
- return ($6|0);
-}
-function _ec_p_init($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$ = 0, $$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 
0, $45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $7 = HEAP32[18128]|0;
- $8 = ($7|0)==(0);
- if ($8) {
-  $9 = (_getenv((63917|0))|0);
-  $10 = ($9|0)==(0|0);
-  $$ = $10 ? -1 : 1;
-  HEAP32[18128] = $$;
- }
- HEAP32[$0>>2] = $1;
- $11 = ((($0)) + 4|0);
- HEAP32[$11>>2] = $2;
- $12 = ((($0)) + 8|0);
- HEAP32[$12>>2] = $3;
- $13 = ($2|0)==(1);
- if ($13) {
-  $$sink = 256;
- } else {
-  $14 = (__gcry_mpi_get_nbits($4)|0);
-  $$sink = $14;
- }
- $15 = ((($0)) + 12|0);
- HEAP32[$15>>2] = $$sink;
- $16 = (__gcry_mpi_copy($4)|0);
- $17 = ((($0)) + 16|0);
- HEAP32[$17>>2] = $16;
- $18 = (__gcry_mpi_copy($5)|0);
- $19 = ((($0)) + 20|0);
- HEAP32[$19>>2] = $18;
- $20 = (__gcry_mpi_copy($6)|0);
- $21 = ((($0)) + 24|0);
- HEAP32[$21>>2] = $20;
- $22 = HEAP32[18128]|0;
- $23 = ($22|0)>(0);
- if ($23) {
-  $24 = HEAP32[$17>>2]|0;
-  $25 = (__gcry_mpi_barrett_init($24,0)|0);
-  $27 = $25;
- } else {
-  $27 = 0;
- }
- $26 = ((($0)) + 60|0);
- HEAP32[$26>>2] = $27;
- $28 = ((($0)) + 48|0);
- $29 = HEAP8[$28>>0]|0;
- $30 = $29 & -4;
- HEAP8[$28>>0] = $30;
- $31 = HEAP32[$17>>2]|0;
- $32 = (__gcry_mpi_alloc_like($31)|0);
- $33 = ((($0)) + 64|0);
- HEAP32[$33>>2] = $32;
- $34 = HEAP32[$17>>2]|0;
- $35 = (__gcry_mpi_alloc_like($34)|0);
- $36 = ((($0)) + 68|0);
- HEAP32[$36>>2] = $35;
- $37 = HEAP32[$17>>2]|0;
- $38 = (__gcry_mpi_alloc_like($37)|0);
- $39 = ((($0)) + 72|0);
- HEAP32[$39>>2] = $38;
- $40 = HEAP32[$17>>2]|0;
- $41 = (__gcry_mpi_alloc_like($40)|0);
- $42 = ((($0)) + 76|0);
- HEAP32[$42>>2] = $41;
- $43 = HEAP32[$17>>2]|0;
- $44 = (__gcry_mpi_alloc_like($43)|0);
- $45 = ((($0)) + 80|0);
- HEAP32[$45>>2] = $44;
- $46 = HEAP32[$17>>2]|0;
- $47 = (__gcry_mpi_alloc_like($46)|0);
- $48 = ((($0)) + 84|0);
- HEAP32[$48>>2] = $47;
- $49 = HEAP32[$17>>2]|0;
- $50 = (__gcry_mpi_alloc_like($49)|0);
- $51 = ((($0)) + 88|0);
- HEAP32[$51>>2] = $50;
- $52 = HEAP32[$17>>2]|0;
- $53 = (__gcry_mpi_alloc_like($52)|0);
- $54 = ((($0)) + 92|0);
- HEAP32[$54>>2] = $53;
- $55 = HEAP32[$17>>2]|0;
- $56 = (__gcry_mpi_alloc_like($55)|0);
- $57 = ((($0)) + 96|0);
- HEAP32[$57>>2] = $56;
- $58 = HEAP32[$17>>2]|0;
- $59 = (__gcry_mpi_alloc_like($58)|0);
- $60 = ((($0)) + 100|0);
- HEAP32[$60>>2] = $59;
- $61 = HEAP32[$17>>2]|0;
- $62 = (__gcry_mpi_alloc_like($61)|0);
- $63 = ((($0)) + 104|0);
- HEAP32[$63>>2] = $62;
- return;
-}
-function __gcry_mpi_ec_p_new($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[$0>>2] = 0;
- $7 = ($4|0)!=(0|0);
- $8 = ($5|0)!=(0|0);
- $or$cond = $7 & $8;
- if (!($or$cond)) {
-  $$0 = 32816;
-  return ($$0|0);
- }
- $9 = (__gcry_ctx_alloc(1,108,81)|0);
- $10 = ($9|0)==(0|0);
- if ($10) {
-  $11 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $11;
-  return ($$0|0);
- } else {
-  $12 = (__gcry_ctx_get_pointer($9,1)|0);
-  _ec_p_init($12,$1,$2,$3,$4,$5,$6);
-  HEAP32[$0>>2] = $9;
-  $$0 = 0;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _ec_deinit($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 60|0);
- $2 = HEAP32[$1>>2]|0;
- __gcry_mpi_barrett_free($2);
- $3 = ((($0)) + 16|0);
- $4 = HEAP32[$3>>2]|0;
- __gcry_mpi_free($4);
- $5 = ((($0)) + 20|0);
- $6 = HEAP32[$5>>2]|0;
- __gcry_mpi_free($6);
- $7 = ((($0)) + 24|0);
- $8 = HEAP32[$7>>2]|0;
- __gcry_mpi_free($8);
- $9 = ((($0)) + 28|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($10|0)==(0|0);
- if (!($11)) {
-  $12 = HEAP32[$10>>2]|0;
-  __gcry_mpi_free($12);
-  HEAP32[$10>>2] = 0;
-  $13 = ((($10)) + 4|0);
-  $14 = HEAP32[$13>>2]|0;
-  __gcry_mpi_free($14);
-  HEAP32[$13>>2] = 0;
-  $15 = ((($10)) + 8|0);
-  $16 = HEAP32[$15>>2]|0;
-  __gcry_mpi_free($16);
-  HEAP32[$15>>2] = 0;
-  __gcry_free($10);
- }
- $17 = ((($0)) + 32|0);
- $18 = HEAP32[$17>>2]|0;
- __gcry_mpi_free($18);
- $19 = ((($0)) + 36|0);
- $20 = HEAP32[$19>>2]|0;
- __gcry_mpi_free($20);
- $21 = ((($0)) + 40|0);
- $22 = HEAP32[$21>>2]|0;
- $23 = ($22|0)==(0|0);
- if (!($23)) {
-  $24 = HEAP32[$22>>2]|0;
-  __gcry_mpi_free($24);
-  HEAP32[$22>>2] = 0;
-  $25 = ((($22)) + 4|0);
-  $26 = HEAP32[$25>>2]|0;
-  __gcry_mpi_free($26);
-  HEAP32[$25>>2] = 0;
-  $27 = ((($22)) + 8|0);
-  $28 = HEAP32[$27>>2]|0;
-  __gcry_mpi_free($28);
-  HEAP32[$27>>2] = 0;
-  __gcry_free($22);
- }
- $29 = ((($0)) + 44|0);
- $30 = HEAP32[$29>>2]|0;
- __gcry_mpi_free($30);
- $31 = ((($0)) + 56|0);
- $32 = HEAP32[$31>>2]|0;
- __gcry_mpi_free($32);
- $33 = ((($0)) + 64|0);
- $34 = HEAP32[$33>>2]|0;
- __gcry_mpi_free($34);
- $35 = ((($0)) + 68|0);
- $36 = HEAP32[$35>>2]|0;
- __gcry_mpi_free($36);
- $37 = ((($0)) + 72|0);
- $38 = HEAP32[$37>>2]|0;
- __gcry_mpi_free($38);
- $39 = ((($0)) + 76|0);
- $40 = HEAP32[$39>>2]|0;
- __gcry_mpi_free($40);
- $41 = ((($0)) + 80|0);
- $42 = HEAP32[$41>>2]|0;
- __gcry_mpi_free($42);
- $43 = ((($0)) + 84|0);
- $44 = HEAP32[$43>>2]|0;
- __gcry_mpi_free($44);
- $45 = ((($0)) + 88|0);
- $46 = HEAP32[$45>>2]|0;
- __gcry_mpi_free($46);
- $47 = ((($0)) + 92|0);
- $48 = HEAP32[$47>>2]|0;
- __gcry_mpi_free($48);
- $49 = ((($0)) + 96|0);
- $50 = HEAP32[$49>>2]|0;
- __gcry_mpi_free($50);
- $51 = ((($0)) + 100|0);
- $52 = HEAP32[$51>>2]|0;
- __gcry_mpi_free($52);
- $53 = ((($0)) + 104|0);
- $54 = HEAP32[$53>>2]|0;
- __gcry_mpi_free($54);
- return;
-}
-function __gcry_mpi_ec_free($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- _ec_deinit($0);
- __gcry_free($0);
- return;
-}
-function __gcry_mpi_ec_get_mpi($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_ctx_get_pointer($1,1)|0);
- $4 = (__gcry_ecc_get_mpi($0,$3,$2)|0);
- return ($4|0);
-}
-function __gcry_mpi_ec_get_point($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_ctx_get_pointer($1,1)|0);
- $4 = (__gcry_ecc_get_point($0,$3)|0);
- return ($4|0);
-}
-function __gcry_mpi_ec_dup_point($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$idx$pre$phi$iZZ2D = 0, $$idx$val$i = 0, $$pre$i = 0, $$pre$i$i = 0, 
$$pre$phi$i$iZ2D = 0, $$pre$phi$iZ2D = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 
0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0;
- var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, 
$137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, 
$144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0;
- var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 
= 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0;
- var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 
= 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0;
- var $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 
= 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 
= 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0;
- var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 
= 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 
= 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0;
- var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, 
$228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, 
$235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0;
- var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 
= 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 
= 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0;
- var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 
= 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 
= 0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0;
- var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 
0, $9 = 0, $90 = 0, $91 = 0;
- var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$2>>2]|0;
- switch ($3|0) {
- case 0:  {
-  $4 = ((($1)) + 4|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = (__gcry_mpi_cmp_ui($5,0)|0);
-  $7 = ($6|0)==(0);
-  if (!($7)) {
-   $8 = ((($1)) + 8|0);
-   $9 = HEAP32[$8>>2]|0;
-   $10 = (__gcry_mpi_cmp_ui($9,0)|0);
-   $11 = ($10|0)==(0);
-   if (!($11)) {
-    $17 = ((($2)) + 48|0);
-    $18 = HEAP8[$17>>0]|0;
-    $19 = $18 & 1;
-    $20 = ($19<<24>>24)==(0);
-    if ($20) {
-     $21 = $18 | 1;
-     HEAP8[$17>>0] = $21;
-     $22 = ((($2)) + 16|0);
-     $23 = HEAP32[$22>>2]|0;
-     $24 = (__gcry_mpi_alloc_like($23)|0);
-     $25 = HEAP32[$22>>2]|0;
-     __gcry_mpi_sub_ui($24,$25,3);
-     $26 = ((($2)) + 20|0);
-     $27 = HEAP32[$26>>2]|0;
-     $28 = (__gcry_mpi_cmp($27,$24)|0);
-     $29 = ($28|0)==(0);
-     $30 = $29&1;
-     $31 = ((($2)) + 52|0);
-     HEAP32[$31>>2] = $30;
-     __gcry_mpi_free($24);
-     $$pre$phi$i$iZ2D = $31;
-    } else {
-     $$pre$i$i = ((($2)) + 52|0);
-     $$pre$phi$i$iZ2D = $$pre$i$i;
-    }
-    $32 = HEAP32[$$pre$phi$i$iZ2D>>2]|0;
-    $33 = ($32|0)==(0);
-    $34 = ((($2)) + 64|0);
-    do {
-     if ($33) {
-      $66 = ((($2)) + 76|0);
-      $67 = HEAP32[$66>>2]|0;
-      $68 = HEAP32[$1>>2]|0;
-      __gcry_mpi_mul($67,$68,$68);
-      $69 = ((($2)) + 60|0);
-      $70 = HEAP32[$69>>2]|0;
-      $71 = ($70|0)==(0|0);
-      if ($71) {
-       $72 = ((($2)) + 16|0);
-       $73 = HEAP32[$72>>2]|0;
-       __gcry_mpi_mod($67,$67,$73);
-      } else {
-       __gcry_mpi_mod_barrett($67,$67,$70);
-      }
-      $74 = HEAP32[$66>>2]|0;
-      $75 = (__gcry_mpi_const(3)|0);
-      __gcry_mpi_mul($74,$74,$75);
-      $76 = HEAP32[$69>>2]|0;
-      $77 = ($76|0)==(0|0);
-      if ($77) {
-       $78 = ((($2)) + 16|0);
-       $79 = HEAP32[$78>>2]|0;
-       __gcry_mpi_mod($74,$74,$79);
-       $$idx$pre$phi$iZZ2D = $78;
-      } else {
-       __gcry_mpi_mod_barrett($74,$74,$76);
-       $$pre$i = ((($2)) + 16|0);
-       $$idx$pre$phi$iZZ2D = $$pre$i;
-      }
-      $80 = HEAP32[$34>>2]|0;
-      $81 = HEAP32[$8>>2]|0;
-      $82 = (__gcry_mpi_const(4)|0);
-      $$idx$val$i = HEAP32[$$idx$pre$phi$iZZ2D>>2]|0;
-      __gcry_mpi_powm($80,$81,$82,$$idx$val$i);
-      $83 = HEAP32[$34>>2]|0;
-      $84 = ((($2)) + 20|0);
-      $85 = HEAP32[$84>>2]|0;
-      __gcry_mpi_mul($83,$83,$85);
-      $86 = HEAP32[$69>>2]|0;
-      $87 = ($86|0)==(0|0);
-      if ($87) {
-       $88 = HEAP32[$$idx$pre$phi$iZZ2D>>2]|0;
-       __gcry_mpi_mod($83,$83,$88);
-      } else {
-       __gcry_mpi_mod_barrett($83,$83,$86);
-      }
-      $89 = HEAP32[$66>>2]|0;
-      $90 = HEAP32[$34>>2]|0;
-      __gcry_mpi_add($89,$89,$90);
-      $91 = HEAP32[$69>>2]|0;
-      $92 = ($91|0)==(0|0);
-      if ($92) {
-       $93 = HEAP32[$$idx$pre$phi$iZZ2D>>2]|0;
-       __gcry_mpi_mod($89,$89,$93);
-       $$pre$phi$iZ2D = $69;
-       break;
-      } else {
-       __gcry_mpi_mod_barrett($89,$89,$91);
-       $$pre$phi$iZ2D = $69;
-       break;
-      }
-     } else {
-      $35 = HEAP32[$34>>2]|0;
-      $36 = HEAP32[$8>>2]|0;
-      __gcry_mpi_mul($35,$36,$36);
-      $37 = ((($2)) + 60|0);
-      $38 = HEAP32[$37>>2]|0;
-      $39 = ($38|0)==(0|0);
-      if ($39) {
-       $40 = ((($2)) + 16|0);
-       $41 = HEAP32[$40>>2]|0;
-       __gcry_mpi_mod($35,$35,$41);
-      } else {
-       __gcry_mpi_mod_barrett($35,$35,$38);
-      }
-      $42 = ((($2)) + 76|0);
-      $43 = HEAP32[$42>>2]|0;
-      $44 = HEAP32[$1>>2]|0;
-      $45 = HEAP32[$34>>2]|0;
-      __gcry_mpi_sub($43,$44,$45);
-      $46 = HEAP32[$42>>2]|0;
-      $47 = (__gcry_mpi_const(3)|0);
-      __gcry_mpi_mul($46,$46,$47);
-      $48 = HEAP32[$37>>2]|0;
-      $49 = ($48|0)==(0|0);
-      if ($49) {
-       $50 = ((($2)) + 16|0);
-       $51 = HEAP32[$50>>2]|0;
-       __gcry_mpi_mod($46,$46,$51);
-      } else {
-       __gcry_mpi_mod_barrett($46,$46,$48);
-      }
-      $52 = ((($2)) + 68|0);
-      $53 = HEAP32[$52>>2]|0;
-      $54 = HEAP32[$1>>2]|0;
-      $55 = HEAP32[$34>>2]|0;
-      __gcry_mpi_add($53,$54,$55);
-      $56 = HEAP32[$37>>2]|0;
-      $57 = ($56|0)==(0|0);
-      if ($57) {
-       $58 = ((($2)) + 16|0);
-       $59 = HEAP32[$58>>2]|0;
-       __gcry_mpi_mod($53,$53,$59);
-      } else {
-       __gcry_mpi_mod_barrett($53,$53,$56);
-      }
-      $60 = HEAP32[$42>>2]|0;
-      $61 = HEAP32[$52>>2]|0;
-      __gcry_mpi_mul($60,$60,$61);
-      $62 = HEAP32[$37>>2]|0;
-      $63 = ($62|0)==(0|0);
-      if ($63) {
-       $64 = ((($2)) + 16|0);
-       $65 = HEAP32[$64>>2]|0;
-       __gcry_mpi_mod($60,$60,$65);
-       $$pre$phi$iZ2D = $37;
-       break;
-      } else {
-       __gcry_mpi_mod_barrett($60,$60,$62);
-       $$pre$phi$iZ2D = $37;
-       break;
-      }
-     }
-    } while(0);
-    $94 = ((($0)) + 8|0);
-    $95 = HEAP32[$94>>2]|0;
-    $96 = HEAP32[$4>>2]|0;
-    $97 = HEAP32[$8>>2]|0;
-    __gcry_mpi_mul($95,$96,$97);
-    $98 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $99 = ($98|0)==(0|0);
-    if ($99) {
-     $100 = ((($2)) + 16|0);
-     $101 = HEAP32[$100>>2]|0;
-     __gcry_mpi_mod($95,$95,$101);
-    } else {
-     __gcry_mpi_mod_barrett($95,$95,$98);
-    }
-    $102 = HEAP32[$94>>2]|0;
-    __gcry_mpi_lshift($102,$102,1);
-    $103 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $104 = ($103|0)==(0|0);
-    if ($104) {
-     $105 = ((($2)) + 16|0);
-     $106 = HEAP32[$105>>2]|0;
-     __gcry_mpi_mod($102,$102,$106);
-    } else {
-     __gcry_mpi_mod_barrett($102,$102,$103);
-    }
-    $107 = ((($2)) + 68|0);
-    $108 = HEAP32[$107>>2]|0;
-    $109 = HEAP32[$4>>2]|0;
-    __gcry_mpi_mul($108,$109,$109);
-    $110 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $111 = ($110|0)==(0|0);
-    if ($111) {
-     $112 = ((($2)) + 16|0);
-     $113 = HEAP32[$112>>2]|0;
-     __gcry_mpi_mod($108,$108,$113);
-    } else {
-     __gcry_mpi_mod_barrett($108,$108,$110);
-    }
-    $114 = ((($2)) + 80|0);
-    $115 = HEAP32[$114>>2]|0;
-    $116 = HEAP32[$107>>2]|0;
-    $117 = HEAP32[$1>>2]|0;
-    __gcry_mpi_mul($115,$116,$117);
-    $118 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $119 = ($118|0)==(0|0);
-    if ($119) {
-     $120 = ((($2)) + 16|0);
-     $121 = HEAP32[$120>>2]|0;
-     __gcry_mpi_mod($115,$115,$121);
-    } else {
-     __gcry_mpi_mod_barrett($115,$115,$118);
-    }
-    $122 = HEAP32[$114>>2]|0;
-    $123 = (__gcry_mpi_const(4)|0);
-    __gcry_mpi_mul($122,$122,$123);
-    $124 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $125 = ($124|0)==(0|0);
-    if ($125) {
-     $126 = ((($2)) + 16|0);
-     $127 = HEAP32[$126>>2]|0;
-     __gcry_mpi_mod($122,$122,$127);
-    } else {
-     __gcry_mpi_mod_barrett($122,$122,$124);
-    }
-    $128 = HEAP32[$0>>2]|0;
-    $129 = ((($2)) + 76|0);
-    $130 = HEAP32[$129>>2]|0;
-    __gcry_mpi_mul($128,$130,$130);
-    $131 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $132 = ($131|0)==(0|0);
-    if ($132) {
-     $133 = ((($2)) + 16|0);
-     $134 = HEAP32[$133>>2]|0;
-     __gcry_mpi_mod($128,$128,$134);
-    } else {
-     __gcry_mpi_mod_barrett($128,$128,$131);
-    }
-    $135 = HEAP32[$34>>2]|0;
-    $136 = HEAP32[$114>>2]|0;
-    __gcry_mpi_lshift($135,$136,1);
-    $137 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $138 = ($137|0)==(0|0);
-    if ($138) {
-     $139 = ((($2)) + 16|0);
-     $140 = HEAP32[$139>>2]|0;
-     __gcry_mpi_mod($135,$135,$140);
-    } else {
-     __gcry_mpi_mod_barrett($135,$135,$137);
-    }
-    $141 = HEAP32[$0>>2]|0;
-    $142 = HEAP32[$34>>2]|0;
-    __gcry_mpi_sub($141,$141,$142);
-    $143 = HEAP32[$107>>2]|0;
-    __gcry_mpi_mul($143,$143,$143);
-    $144 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $145 = ($144|0)==(0|0);
-    if ($145) {
-     $146 = ((($2)) + 16|0);
-     $147 = HEAP32[$146>>2]|0;
-     __gcry_mpi_mod($143,$143,$147);
-    } else {
-     __gcry_mpi_mod_barrett($143,$143,$144);
-    }
-    $148 = ((($2)) + 84|0);
-    $149 = HEAP32[$148>>2]|0;
-    $150 = HEAP32[$107>>2]|0;
-    $151 = (__gcry_mpi_const(5)|0);
-    __gcry_mpi_mul($149,$150,$151);
-    $152 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $153 = ($152|0)==(0|0);
-    if ($153) {
-     $154 = ((($2)) + 16|0);
-     $155 = HEAP32[$154>>2]|0;
-     __gcry_mpi_mod($149,$149,$155);
-    } else {
-     __gcry_mpi_mod_barrett($149,$149,$152);
-    }
-    $156 = ((($0)) + 4|0);
-    $157 = HEAP32[$156>>2]|0;
-    $158 = HEAP32[$114>>2]|0;
-    $159 = HEAP32[$0>>2]|0;
-    __gcry_mpi_sub($157,$158,$159);
-    $160 = HEAP32[$156>>2]|0;
-    $161 = HEAP32[$129>>2]|0;
-    __gcry_mpi_mul($160,$160,$161);
-    $162 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-    $163 = ($162|0)==(0|0);
-    if ($163) {
-     $164 = ((($2)) + 16|0);
-     $165 = HEAP32[$164>>2]|0;
-     __gcry_mpi_mod($160,$160,$165);
-    } else {
-     __gcry_mpi_mod_barrett($160,$160,$162);
-    }
-    $166 = HEAP32[$156>>2]|0;
-    $167 = HEAP32[$148>>2]|0;
-    __gcry_mpi_sub($166,$166,$167);
-    return;
-   }
-  }
-  $12 = HEAP32[$0>>2]|0;
-  (__gcry_mpi_set_ui($12,1)|0);
-  $13 = ((($0)) + 4|0);
-  $14 = HEAP32[$13>>2]|0;
-  (__gcry_mpi_set_ui($14,1)|0);
-  $15 = ((($0)) + 8|0);
-  $16 = HEAP32[$15>>2]|0;
-  (__gcry_mpi_set_ui($16,0)|0);
-  return;
-  break;
- }
- case 1:  {
-  _dup_point_montgomery();
-  // unreachable;
-  break;
- }
- case 2:  {
-  $168 = ((($2)) + 64|0);
-  $169 = HEAP32[$168>>2]|0;
-  $170 = HEAP32[$1>>2]|0;
-  $171 = ((($1)) + 4|0);
-  $172 = HEAP32[$171>>2]|0;
-  __gcry_mpi_add($169,$170,$172);
-  $173 = ((($2)) + 60|0);
-  $174 = HEAP32[$173>>2]|0;
-  $175 = ($174|0)==(0|0);
-  if ($175) {
-   $176 = ((($2)) + 16|0);
-   $177 = HEAP32[$176>>2]|0;
-   __gcry_mpi_mod($169,$169,$177);
-  } else {
-   __gcry_mpi_mod_barrett($169,$169,$174);
-  }
-  $178 = HEAP32[$168>>2]|0;
-  __gcry_mpi_mul($178,$178,$178);
-  $179 = HEAP32[$173>>2]|0;
-  $180 = ($179|0)==(0|0);
-  if ($180) {
-   $181 = ((($2)) + 16|0);
-   $182 = HEAP32[$181>>2]|0;
-   __gcry_mpi_mod($178,$178,$182);
-  } else {
-   __gcry_mpi_mod_barrett($178,$178,$179);
-  }
-  $183 = ((($2)) + 68|0);
-  $184 = HEAP32[$183>>2]|0;
-  $185 = HEAP32[$1>>2]|0;
-  __gcry_mpi_mul($184,$185,$185);
-  $186 = HEAP32[$173>>2]|0;
-  $187 = ($186|0)==(0|0);
-  if ($187) {
-   $188 = ((($2)) + 16|0);
-   $189 = HEAP32[$188>>2]|0;
-   __gcry_mpi_mod($184,$184,$189);
-  } else {
-   __gcry_mpi_mod_barrett($184,$184,$186);
-  }
-  $190 = ((($2)) + 72|0);
-  $191 = HEAP32[$190>>2]|0;
-  $192 = HEAP32[$171>>2]|0;
-  __gcry_mpi_mul($191,$192,$192);
-  $193 = HEAP32[$173>>2]|0;
-  $194 = ($193|0)==(0|0);
-  if ($194) {
-   $195 = ((($2)) + 16|0);
-   $196 = HEAP32[$195>>2]|0;
-   __gcry_mpi_mod($191,$191,$196);
-  } else {
-   __gcry_mpi_mod_barrett($191,$191,$193);
-  }
-  $197 = ((($2)) + 4|0);
-  $198 = HEAP32[$197>>2]|0;
-  $199 = ($198|0)==(1);
-  $200 = ((($2)) + 76|0);
-  $201 = HEAP32[$200>>2]|0;
-  do {
-   if ($199) {
-    $202 = HEAP32[$183>>2]|0;
-    (__gcry_mpi_set($201,$202)|0);
-    $203 = HEAP32[$200>>2]|0;
-    __gcry_mpi_neg($203,$203);
-   } else {
-    $204 = ((($2)) + 20|0);
-    $205 = HEAP32[$204>>2]|0;
-    $206 = HEAP32[$183>>2]|0;
-    __gcry_mpi_mul($201,$205,$206);
-    $207 = HEAP32[$173>>2]|0;
-    $208 = ($207|0)==(0|0);
-    if ($208) {
-     $209 = ((($2)) + 16|0);
-     $210 = HEAP32[$209>>2]|0;
-     __gcry_mpi_mod($201,$201,$210);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($201,$201,$207);
-     break;
-    }
-   }
-  } while(0);
-  $211 = ((($2)) + 80|0);
-  $212 = HEAP32[$211>>2]|0;
-  $213 = HEAP32[$200>>2]|0;
-  $214 = HEAP32[$190>>2]|0;
-  __gcry_mpi_add($212,$213,$214);
-  $215 = HEAP32[$173>>2]|0;
-  $216 = ($215|0)==(0|0);
-  if ($216) {
-   $217 = ((($2)) + 16|0);
-   $218 = HEAP32[$217>>2]|0;
-   __gcry_mpi_mod($212,$212,$218);
-  } else {
-   __gcry_mpi_mod_barrett($212,$212,$215);
-  }
-  $219 = ((($2)) + 84|0);
-  $220 = HEAP32[$219>>2]|0;
-  $221 = ((($1)) + 8|0);
-  $222 = HEAP32[$221>>2]|0;
-  __gcry_mpi_mul($220,$222,$222);
-  $223 = HEAP32[$173>>2]|0;
-  $224 = ($223|0)==(0|0);
-  if ($224) {
-   $225 = ((($2)) + 16|0);
-   $226 = HEAP32[$225>>2]|0;
-   __gcry_mpi_mod($220,$220,$226);
-  } else {
-   __gcry_mpi_mod_barrett($220,$220,$223);
-  }
-  $227 = ((($2)) + 88|0);
-  $228 = HEAP32[$227>>2]|0;
-  $229 = HEAP32[$219>>2]|0;
-  __gcry_mpi_lshift($228,$229,1);
-  $230 = HEAP32[$173>>2]|0;
-  $231 = ($230|0)==(0|0);
-  if ($231) {
-   $232 = ((($2)) + 16|0);
-   $233 = HEAP32[$232>>2]|0;
-   __gcry_mpi_mod($228,$228,$233);
-  } else {
-   __gcry_mpi_mod_barrett($228,$228,$230);
-  }
-  $234 = HEAP32[$227>>2]|0;
-  $235 = HEAP32[$211>>2]|0;
-  __gcry_mpi_sub($234,$235,$234);
-  $236 = HEAP32[$0>>2]|0;
-  $237 = HEAP32[$168>>2]|0;
-  $238 = HEAP32[$183>>2]|0;
-  __gcry_mpi_sub($236,$237,$238);
-  $239 = HEAP32[$0>>2]|0;
-  $240 = HEAP32[$190>>2]|0;
-  __gcry_mpi_sub($239,$239,$240);
-  $241 = HEAP32[$0>>2]|0;
-  $242 = HEAP32[$227>>2]|0;
-  __gcry_mpi_mul($241,$241,$242);
-  $243 = HEAP32[$173>>2]|0;
-  $244 = ($243|0)==(0|0);
-  if ($244) {
-   $245 = ((($2)) + 16|0);
-   $246 = HEAP32[$245>>2]|0;
-   __gcry_mpi_mod($241,$241,$246);
-  } else {
-   __gcry_mpi_mod_barrett($241,$241,$243);
-  }
-  $247 = ((($0)) + 4|0);
-  $248 = HEAP32[$247>>2]|0;
-  $249 = HEAP32[$200>>2]|0;
-  $250 = HEAP32[$190>>2]|0;
-  __gcry_mpi_sub($248,$249,$250);
-  $251 = HEAP32[$247>>2]|0;
-  $252 = HEAP32[$211>>2]|0;
-  __gcry_mpi_mul($251,$251,$252);
-  $253 = HEAP32[$173>>2]|0;
-  $254 = ($253|0)==(0|0);
-  if ($254) {
-   $255 = ((($2)) + 16|0);
-   $256 = HEAP32[$255>>2]|0;
-   __gcry_mpi_mod($251,$251,$256);
-  } else {
-   __gcry_mpi_mod_barrett($251,$251,$253);
-  }
-  $257 = ((($0)) + 8|0);
-  $258 = HEAP32[$257>>2]|0;
-  $259 = HEAP32[$211>>2]|0;
-  $260 = HEAP32[$227>>2]|0;
-  __gcry_mpi_mul($258,$259,$260);
-  $261 = HEAP32[$173>>2]|0;
-  $262 = ($261|0)==(0|0);
-  if ($262) {
-   $263 = ((($2)) + 16|0);
-   $264 = HEAP32[$263>>2]|0;
-   __gcry_mpi_mod($258,$258,$264);
-   return;
-  } else {
-   __gcry_mpi_mod_barrett($258,$258,$261);
-   return;
-  }
-  break;
- }
- default: {
-  return;
- }
- }
-}
-function _dup_point_montgomery() {
- var $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- HEAP32[$vararg_buffer>>2] = 63958;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 63906;
- __gcry_log_fatal(63932,$vararg_buffer);
- // unreachable;
-}
-function __gcry_mpi_ec_add_points($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$idx$val$i = 0, $$idx129$val$i = 0, $$idx130$i = 0, $$idx130$val$i = 0, 
$$pre$i = 0, $$pre$i$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$iZ2D = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0;
- var $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, 
$117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, 
$124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0;
- var $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 
= 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 
= 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0;
- var $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 
= 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 
= 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0;
- var $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 
= 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 
= 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0;
- var $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 
= 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 
= 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0;
- var $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, 
$208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $vararg_buffer = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $4 = HEAP32[$3>>2]|0;
- switch ($4|0) {
- case 0:  {
-  $5 = HEAP32[$1>>2]|0;
-  $6 = HEAP32[$2>>2]|0;
-  $7 = (__gcry_mpi_cmp($5,$6)|0);
-  $8 = ($7|0)==(0);
-  if ($8) {
-   $9 = ((($1)) + 4|0);
-   $10 = HEAP32[$9>>2]|0;
-   $11 = ((($2)) + 4|0);
-   $12 = HEAP32[$11>>2]|0;
-   $13 = (__gcry_mpi_cmp($10,$12)|0);
-   $14 = ($13|0)==(0);
-   if ($14) {
-    $15 = ((($1)) + 8|0);
-    $16 = HEAP32[$15>>2]|0;
-    $17 = ((($2)) + 8|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = (__gcry_mpi_cmp($16,$18)|0);
-    $20 = ($19|0)==(0);
-    if ($20) {
-     __gcry_mpi_ec_dup_point($0,$1,$3);
-     STACKTOP = sp;return;
-    }
-   }
-  }
-  $21 = ((($1)) + 8|0);
-  $22 = HEAP32[$21>>2]|0;
-  $23 = (__gcry_mpi_cmp_ui($22,0)|0);
-  $24 = ($23|0)==(0);
-  if ($24) {
-   $25 = HEAP32[$0>>2]|0;
-   $26 = HEAP32[$2>>2]|0;
-   (__gcry_mpi_set($25,$26)|0);
-   $27 = ((($0)) + 4|0);
-   $28 = HEAP32[$27>>2]|0;
-   $29 = ((($2)) + 4|0);
-   $30 = HEAP32[$29>>2]|0;
-   (__gcry_mpi_set($28,$30)|0);
-   $31 = ((($0)) + 8|0);
-   $32 = HEAP32[$31>>2]|0;
-   $33 = ((($2)) + 8|0);
-   $34 = HEAP32[$33>>2]|0;
-   (__gcry_mpi_set($32,$34)|0);
-   STACKTOP = sp;return;
-  }
-  $35 = ((($2)) + 8|0);
-  $36 = HEAP32[$35>>2]|0;
-  $37 = (__gcry_mpi_cmp_ui($36,0)|0);
-  $38 = ($37|0)==(0);
-  if ($38) {
-   $39 = HEAP32[$0>>2]|0;
-   $40 = HEAP32[$1>>2]|0;
-   (__gcry_mpi_set($39,$40)|0);
-   $41 = ((($0)) + 4|0);
-   $42 = HEAP32[$41>>2]|0;
-   $43 = ((($1)) + 4|0);
-   $44 = HEAP32[$43>>2]|0;
-   (__gcry_mpi_set($42,$44)|0);
-   $45 = ((($0)) + 8|0);
-   $46 = HEAP32[$45>>2]|0;
-   $47 = HEAP32[$21>>2]|0;
-   (__gcry_mpi_set($46,$47)|0);
-   STACKTOP = sp;return;
-  }
-  $48 = HEAP32[$21>>2]|0;
-  $49 = (__gcry_mpi_cmp_ui($48,1)|0);
-  $50 = ($49|0)==(0);
-  $51 = HEAP32[$35>>2]|0;
-  $52 = (__gcry_mpi_cmp_ui($51,1)|0);
-  $53 = ($52|0)==(0);
-  $54 = ((($3)) + 64|0);
-  $55 = HEAP32[$54>>2]|0;
-  do {
-   if ($53) {
-    $56 = HEAP32[$1>>2]|0;
-    (__gcry_mpi_set($55,$56)|0);
-   } else {
-    $57 = HEAP32[$35>>2]|0;
-    __gcry_mpi_mul($55,$57,$57);
-    $58 = ((($3)) + 60|0);
-    $59 = HEAP32[$58>>2]|0;
-    $60 = ($59|0)==(0|0);
-    if ($60) {
-     $61 = ((($3)) + 16|0);
-     $62 = HEAP32[$61>>2]|0;
-     __gcry_mpi_mod($55,$55,$62);
-    } else {
-     __gcry_mpi_mod_barrett($55,$55,$59);
-    }
-    $63 = HEAP32[$54>>2]|0;
-    $64 = HEAP32[$1>>2]|0;
-    __gcry_mpi_mul($63,$63,$64);
-    $65 = HEAP32[$58>>2]|0;
-    $66 = ($65|0)==(0|0);
-    if ($66) {
-     $67 = ((($3)) + 16|0);
-     $68 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($63,$63,$68);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($63,$63,$65);
-     break;
-    }
-   }
-  } while(0);
-  $69 = ((($3)) + 68|0);
-  $70 = HEAP32[$69>>2]|0;
-  do {
-   if ($50) {
-    $71 = HEAP32[$2>>2]|0;
-    (__gcry_mpi_set($70,$71)|0);
-    $$pre$i = ((($3)) + 60|0);
-    $$pre$phi$iZ2D = $$pre$i;
-   } else {
-    $72 = HEAP32[$21>>2]|0;
-    __gcry_mpi_mul($70,$72,$72);
-    $73 = ((($3)) + 60|0);
-    $74 = HEAP32[$73>>2]|0;
-    $75 = ($74|0)==(0|0);
-    if ($75) {
-     $76 = ((($3)) + 16|0);
-     $77 = HEAP32[$76>>2]|0;
-     __gcry_mpi_mod($70,$70,$77);
-    } else {
-     __gcry_mpi_mod_barrett($70,$70,$74);
-    }
-    $78 = HEAP32[$69>>2]|0;
-    $79 = HEAP32[$2>>2]|0;
-    __gcry_mpi_mul($78,$78,$79);
-    $80 = HEAP32[$73>>2]|0;
-    $81 = ($80|0)==(0|0);
-    if ($81) {
-     $82 = ((($3)) + 16|0);
-     $83 = HEAP32[$82>>2]|0;
-     __gcry_mpi_mod($78,$78,$83);
-     $$pre$phi$iZ2D = $73;
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($78,$78,$80);
-     $$pre$phi$iZ2D = $73;
-     break;
-    }
-   }
-  } while(0);
-  $84 = ((($3)) + 72|0);
-  $85 = HEAP32[$84>>2]|0;
-  $86 = HEAP32[$54>>2]|0;
-  $87 = HEAP32[$69>>2]|0;
-  __gcry_mpi_sub($85,$86,$87);
-  $88 = ((($3)) + 76|0);
-  $89 = HEAP32[$88>>2]|0;
-  $90 = HEAP32[$35>>2]|0;
-  $91 = (__gcry_mpi_const(3)|0);
-  $$idx130$i = ((($3)) + 16|0);
-  $$idx130$val$i = HEAP32[$$idx130$i>>2]|0;
-  __gcry_mpi_powm($89,$90,$91,$$idx130$val$i);
-  $92 = HEAP32[$88>>2]|0;
-  $93 = ((($1)) + 4|0);
-  $94 = HEAP32[$93>>2]|0;
-  __gcry_mpi_mul($92,$92,$94);
-  $95 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $96 = ($95|0)==(0|0);
-  if ($96) {
-   $97 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($92,$92,$97);
-  } else {
-   __gcry_mpi_mod_barrett($92,$92,$95);
-  }
-  $98 = ((($3)) + 80|0);
-  $99 = HEAP32[$98>>2]|0;
-  $100 = HEAP32[$21>>2]|0;
-  $101 = (__gcry_mpi_const(3)|0);
-  $$idx129$val$i = HEAP32[$$idx130$i>>2]|0;
-  __gcry_mpi_powm($99,$100,$101,$$idx129$val$i);
-  $102 = HEAP32[$98>>2]|0;
-  $103 = ((($2)) + 4|0);
-  $104 = HEAP32[$103>>2]|0;
-  __gcry_mpi_mul($102,$102,$104);
-  $105 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $106 = ($105|0)==(0|0);
-  if ($106) {
-   $107 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($102,$102,$107);
-  } else {
-   __gcry_mpi_mod_barrett($102,$102,$105);
-  }
-  $108 = ((($3)) + 84|0);
-  $109 = HEAP32[$108>>2]|0;
-  $110 = HEAP32[$88>>2]|0;
-  $111 = HEAP32[$98>>2]|0;
-  __gcry_mpi_sub($109,$110,$111);
-  $112 = HEAP32[$84>>2]|0;
-  $113 = (__gcry_mpi_cmp_ui($112,0)|0);
-  $114 = ($113|0)==(0);
-  if ($114) {
-   $115 = HEAP32[$108>>2]|0;
-   $116 = (__gcry_mpi_cmp_ui($115,0)|0);
-   $117 = ($116|0)==(0);
-   if ($117) {
-    __gcry_mpi_ec_dup_point($0,$1,$3);
-    STACKTOP = sp;return;
-   } else {
-    $118 = HEAP32[$0>>2]|0;
-    (__gcry_mpi_set_ui($118,1)|0);
-    $119 = ((($0)) + 4|0);
-    $120 = HEAP32[$119>>2]|0;
-    (__gcry_mpi_set_ui($120,1)|0);
-    $121 = ((($0)) + 8|0);
-    $122 = HEAP32[$121>>2]|0;
-    (__gcry_mpi_set_ui($122,0)|0);
-    STACKTOP = sp;return;
-   }
-  }
-  $123 = ((($3)) + 88|0);
-  $124 = HEAP32[$123>>2]|0;
-  $125 = HEAP32[$54>>2]|0;
-  $126 = HEAP32[$69>>2]|0;
-  __gcry_mpi_add($124,$125,$126);
-  $127 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $128 = ($127|0)==(0|0);
-  if ($128) {
-   $129 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($124,$124,$129);
-  } else {
-   __gcry_mpi_mod_barrett($124,$124,$127);
-  }
-  $130 = ((($3)) + 92|0);
-  $131 = HEAP32[$130>>2]|0;
-  $132 = HEAP32[$88>>2]|0;
-  $133 = HEAP32[$98>>2]|0;
-  __gcry_mpi_add($131,$132,$133);
-  $134 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $135 = ($134|0)==(0|0);
-  if ($135) {
-   $136 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($131,$131,$136);
-  } else {
-   __gcry_mpi_mod_barrett($131,$131,$134);
-  }
-  $137 = ((($0)) + 8|0);
-  $138 = HEAP32[$137>>2]|0;
-  $139 = HEAP32[$21>>2]|0;
-  $140 = HEAP32[$35>>2]|0;
-  __gcry_mpi_mul($138,$139,$140);
-  $141 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $142 = ($141|0)==(0|0);
-  if ($142) {
-   $143 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($138,$138,$143);
-  } else {
-   __gcry_mpi_mod_barrett($138,$138,$141);
-  }
-  $144 = HEAP32[$137>>2]|0;
-  $145 = HEAP32[$84>>2]|0;
-  __gcry_mpi_mul($144,$144,$145);
-  $146 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $147 = ($146|0)==(0|0);
-  if ($147) {
-   $148 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($144,$144,$148);
-  } else {
-   __gcry_mpi_mod_barrett($144,$144,$146);
-  }
-  $149 = ((($3)) + 100|0);
-  $150 = HEAP32[$149>>2]|0;
-  $151 = HEAP32[$108>>2]|0;
-  __gcry_mpi_mul($150,$151,$151);
-  $152 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $153 = ($152|0)==(0|0);
-  if ($153) {
-   $154 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($150,$150,$154);
-  } else {
-   __gcry_mpi_mod_barrett($150,$150,$152);
-  }
-  $155 = ((($3)) + 104|0);
-  $156 = HEAP32[$155>>2]|0;
-  $157 = HEAP32[$84>>2]|0;
-  __gcry_mpi_mul($156,$157,$157);
-  $158 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $159 = ($158|0)==(0|0);
-  if ($159) {
-   $160 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($156,$156,$160);
-  } else {
-   __gcry_mpi_mod_barrett($156,$156,$158);
-  }
-  $161 = HEAP32[$155>>2]|0;
-  $162 = HEAP32[$123>>2]|0;
-  __gcry_mpi_mul($161,$161,$162);
-  $163 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $164 = ($163|0)==(0|0);
-  if ($164) {
-   $165 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($161,$161,$165);
-  } else {
-   __gcry_mpi_mod_barrett($161,$161,$163);
-  }
-  $166 = HEAP32[$0>>2]|0;
-  $167 = HEAP32[$149>>2]|0;
-  $168 = HEAP32[$155>>2]|0;
-  __gcry_mpi_sub($166,$167,$168);
-  $169 = HEAP32[$149>>2]|0;
-  $170 = HEAP32[$0>>2]|0;
-  __gcry_mpi_lshift($169,$170,1);
-  $171 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $172 = ($171|0)==(0|0);
-  if ($172) {
-   $173 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($169,$169,$173);
-  } else {
-   __gcry_mpi_mod_barrett($169,$169,$171);
-  }
-  $174 = ((($3)) + 96|0);
-  $175 = HEAP32[$174>>2]|0;
-  $176 = HEAP32[$155>>2]|0;
-  $177 = HEAP32[$149>>2]|0;
-  __gcry_mpi_sub($175,$176,$177);
-  $178 = HEAP32[$174>>2]|0;
-  $179 = HEAP32[$108>>2]|0;
-  __gcry_mpi_mul($178,$178,$179);
-  $180 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $181 = ($180|0)==(0|0);
-  if ($181) {
-   $182 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($178,$178,$182);
-  } else {
-   __gcry_mpi_mod_barrett($178,$178,$180);
-  }
-  $183 = HEAP32[$149>>2]|0;
-  $184 = HEAP32[$84>>2]|0;
-  $185 = (__gcry_mpi_const(3)|0);
-  $$idx$val$i = HEAP32[$$idx130$i>>2]|0;
-  __gcry_mpi_powm($183,$184,$185,$$idx$val$i);
-  $186 = HEAP32[$149>>2]|0;
-  $187 = HEAP32[$130>>2]|0;
-  __gcry_mpi_mul($186,$186,$187);
-  $188 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $189 = ($188|0)==(0|0);
-  if ($189) {
-   $190 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($186,$186,$190);
-  } else {
-   __gcry_mpi_mod_barrett($186,$186,$188);
-  }
-  $191 = ((($0)) + 4|0);
-  $192 = HEAP32[$191>>2]|0;
-  $193 = HEAP32[$174>>2]|0;
-  $194 = HEAP32[$149>>2]|0;
-  __gcry_mpi_sub($192,$193,$194);
-  $195 = HEAP32[$191>>2]|0;
-  $196 = ((($3)) + 48|0);
-  $197 = HEAP8[$196>>0]|0;
-  $198 = $197 & 2;
-  $199 = ($198<<24>>24)==(0);
-  do {
-   if ($199) {
-    $200 = $197 | 2;
-    HEAP8[$196>>0] = $200;
-    $201 = ((($3)) + 56|0);
-    $202 = HEAP32[$201>>2]|0;
-    $203 = ($202|0)==(0|0);
-    if ($203) {
-     $204 = (__gcry_mpi_alloc(0)|0);
-     HEAP32[$201>>2] = $204;
-     $207 = $204;
-    } else {
-     $207 = $202;
-    }
-    $205 = (__gcry_mpi_const(2)|0);
-    $206 = HEAP32[$$idx130$i>>2]|0;
-    $208 = (__gcry_mpi_invm($207,$205,$206)|0);
-    $209 = ($208|0)==(0);
-    if (!($209)) {
-     $$pre$phi$i$iZ2D = $201;
-     break;
-    }
-    __gcry_log_error(63791,$vararg_buffer);
-    __gcry_log_printmpi(63825,$205);
-    $210 = HEAP32[$$idx130$i>>2]|0;
-    __gcry_log_printmpi(63829,$210);
-    $$pre$phi$i$iZ2D = $201;
-   } else {
-    $$pre$i$i = ((($3)) + 56|0);
-    $$pre$phi$i$iZ2D = $$pre$i$i;
-   }
-  } while(0);
-  $211 = HEAP32[$$pre$phi$i$iZ2D>>2]|0;
-  __gcry_mpi_mul($195,$195,$211);
-  $212 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-  $213 = ($212|0)==(0|0);
-  if ($213) {
-   $214 = HEAP32[$$idx130$i>>2]|0;
-   __gcry_mpi_mod($195,$195,$214);
-   STACKTOP = sp;return;
-  } else {
-   __gcry_mpi_mod_barrett($195,$195,$212);
-   STACKTOP = sp;return;
-  }
-  break;
- }
- case 1:  {
-  _add_points_montgomery();
-  // unreachable;
-  break;
- }
- case 2:  {
-  _add_points_edwards($0,$1,$2,$3);
-  STACKTOP = sp;return;
-  break;
- }
- default: {
-  STACKTOP = sp;return;
- }
- }
-}
-function _add_points_montgomery() {
- var $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- HEAP32[$vararg_buffer>>2] = 63981;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 63906;
- __gcry_log_fatal(63932,$vararg_buffer);
- // unreachable;
-}
-function _add_points_edwards($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0;
- var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 
= 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0;
- var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = ((($3)) + 64|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ((($1)) + 8|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($2)) + 8|0);
- $9 = HEAP32[$8>>2]|0;
- __gcry_mpi_mul($5,$7,$9);
- $10 = ((($3)) + 60|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ($11|0)==(0|0);
- if ($12) {
-  $13 = ((($3)) + 16|0);
-  $14 = HEAP32[$13>>2]|0;
-  __gcry_mpi_mod($5,$5,$14);
- } else {
-  __gcry_mpi_mod_barrett($5,$5,$11);
- }
- $15 = ((($3)) + 68|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = HEAP32[$4>>2]|0;
- __gcry_mpi_mul($16,$17,$17);
- $18 = HEAP32[$10>>2]|0;
- $19 = ($18|0)==(0|0);
- if ($19) {
-  $20 = ((($3)) + 16|0);
-  $21 = HEAP32[$20>>2]|0;
-  __gcry_mpi_mod($16,$16,$21);
- } else {
-  __gcry_mpi_mod_barrett($16,$16,$18);
- }
- $22 = ((($3)) + 72|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = HEAP32[$1>>2]|0;
- $25 = HEAP32[$2>>2]|0;
- __gcry_mpi_mul($23,$24,$25);
- $26 = HEAP32[$10>>2]|0;
- $27 = ($26|0)==(0|0);
- if ($27) {
-  $28 = ((($3)) + 16|0);
-  $29 = HEAP32[$28>>2]|0;
-  __gcry_mpi_mod($23,$23,$29);
- } else {
-  __gcry_mpi_mod_barrett($23,$23,$26);
- }
- $30 = ((($3)) + 76|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = ((($1)) + 4|0);
- $33 = HEAP32[$32>>2]|0;
- $34 = ((($2)) + 4|0);
- $35 = HEAP32[$34>>2]|0;
- __gcry_mpi_mul($31,$33,$35);
- $36 = HEAP32[$10>>2]|0;
- $37 = ($36|0)==(0|0);
- if ($37) {
-  $38 = ((($3)) + 16|0);
-  $39 = HEAP32[$38>>2]|0;
-  __gcry_mpi_mod($31,$31,$39);
- } else {
-  __gcry_mpi_mod_barrett($31,$31,$36);
- }
- $40 = ((($3)) + 80|0);
- $41 = HEAP32[$40>>2]|0;
- $42 = ((($3)) + 24|0);
- $43 = HEAP32[$42>>2]|0;
- $44 = HEAP32[$22>>2]|0;
- __gcry_mpi_mul($41,$43,$44);
- $45 = HEAP32[$10>>2]|0;
- $46 = ($45|0)==(0|0);
- if ($46) {
-  $47 = ((($3)) + 16|0);
-  $48 = HEAP32[$47>>2]|0;
-  __gcry_mpi_mod($41,$41,$48);
- } else {
-  __gcry_mpi_mod_barrett($41,$41,$45);
- }
- $49 = HEAP32[$40>>2]|0;
- $50 = HEAP32[$30>>2]|0;
- __gcry_mpi_mul($49,$49,$50);
- $51 = HEAP32[$10>>2]|0;
- $52 = ($51|0)==(0|0);
- if ($52) {
-  $53 = ((($3)) + 16|0);
-  $54 = HEAP32[$53>>2]|0;
-  __gcry_mpi_mod($49,$49,$54);
- } else {
-  __gcry_mpi_mod_barrett($49,$49,$51);
- }
- $55 = ((($3)) + 84|0);
- $56 = HEAP32[$55>>2]|0;
- $57 = HEAP32[$15>>2]|0;
- $58 = HEAP32[$40>>2]|0;
- __gcry_mpi_sub($56,$57,$58);
- $59 = ((($3)) + 88|0);
- $60 = HEAP32[$59>>2]|0;
- $61 = HEAP32[$15>>2]|0;
- $62 = HEAP32[$40>>2]|0;
- __gcry_mpi_add($60,$61,$62);
- $63 = HEAP32[$10>>2]|0;
- $64 = ($63|0)==(0|0);
- if ($64) {
-  $65 = ((($3)) + 16|0);
-  $66 = HEAP32[$65>>2]|0;
-  __gcry_mpi_mod($60,$60,$66);
- } else {
-  __gcry_mpi_mod_barrett($60,$60,$63);
- }
- $67 = ((($3)) + 92|0);
- $68 = HEAP32[$67>>2]|0;
- $69 = HEAP32[$1>>2]|0;
- $70 = HEAP32[$32>>2]|0;
- __gcry_mpi_add($68,$69,$70);
- $71 = HEAP32[$10>>2]|0;
- $72 = ($71|0)==(0|0);
- if ($72) {
-  $73 = ((($3)) + 16|0);
-  $74 = HEAP32[$73>>2]|0;
-  __gcry_mpi_mod($68,$68,$74);
- } else {
-  __gcry_mpi_mod_barrett($68,$68,$71);
- }
- $75 = HEAP32[$0>>2]|0;
- $76 = HEAP32[$2>>2]|0;
- $77 = HEAP32[$34>>2]|0;
- __gcry_mpi_add($75,$76,$77);
- $78 = HEAP32[$10>>2]|0;
- $79 = ($78|0)==(0|0);
- if ($79) {
-  $80 = ((($3)) + 16|0);
-  $81 = HEAP32[$80>>2]|0;
-  __gcry_mpi_mod($75,$75,$81);
- } else {
-  __gcry_mpi_mod_barrett($75,$75,$78);
- }
- $82 = HEAP32[$0>>2]|0;
- $83 = HEAP32[$67>>2]|0;
- __gcry_mpi_mul($82,$82,$83);
- $84 = HEAP32[$10>>2]|0;
- $85 = ($84|0)==(0|0);
- if ($85) {
-  $86 = ((($3)) + 16|0);
-  $87 = HEAP32[$86>>2]|0;
-  __gcry_mpi_mod($82,$82,$87);
- } else {
-  __gcry_mpi_mod_barrett($82,$82,$84);
- }
- $88 = HEAP32[$0>>2]|0;
- $89 = HEAP32[$22>>2]|0;
- __gcry_mpi_sub($88,$88,$89);
- $90 = HEAP32[$0>>2]|0;
- $91 = HEAP32[$30>>2]|0;
- __gcry_mpi_sub($90,$90,$91);
- $92 = HEAP32[$0>>2]|0;
- $93 = HEAP32[$55>>2]|0;
- __gcry_mpi_mul($92,$92,$93);
- $94 = HEAP32[$10>>2]|0;
- $95 = ($94|0)==(0|0);
- if ($95) {
-  $96 = ((($3)) + 16|0);
-  $97 = HEAP32[$96>>2]|0;
-  __gcry_mpi_mod($92,$92,$97);
- } else {
-  __gcry_mpi_mod_barrett($92,$92,$94);
- }
- $98 = HEAP32[$0>>2]|0;
- $99 = HEAP32[$4>>2]|0;
- __gcry_mpi_mul($98,$98,$99);
- $100 = HEAP32[$10>>2]|0;
- $101 = ($100|0)==(0|0);
- if ($101) {
-  $102 = ((($3)) + 16|0);
-  $103 = HEAP32[$102>>2]|0;
-  __gcry_mpi_mod($98,$98,$103);
- } else {
-  __gcry_mpi_mod_barrett($98,$98,$100);
- }
- $104 = ((($3)) + 4|0);
- $105 = HEAP32[$104>>2]|0;
- $106 = ($105|0)==(1);
- $107 = ((($0)) + 4|0);
- $108 = HEAP32[$107>>2]|0;
- if ($106) {
-  $109 = HEAP32[$22>>2]|0;
-  (__gcry_mpi_set($108,$109)|0);
-  $110 = HEAP32[$107>>2]|0;
-  __gcry_mpi_neg($110,$110);
-  $111 = HEAP32[$107>>2]|0;
-  $112 = HEAP32[$30>>2]|0;
-  __gcry_mpi_sub($111,$112,$111);
- } else {
-  $113 = ((($3)) + 20|0);
-  $114 = HEAP32[$113>>2]|0;
-  $115 = HEAP32[$22>>2]|0;
-  __gcry_mpi_mul($108,$114,$115);
-  $116 = HEAP32[$10>>2]|0;
-  $117 = ($116|0)==(0|0);
-  if ($117) {
-   $118 = ((($3)) + 16|0);
-   $119 = HEAP32[$118>>2]|0;
-   __gcry_mpi_mod($108,$108,$119);
-  } else {
-   __gcry_mpi_mod_barrett($108,$108,$116);
-  }
-  $120 = HEAP32[$107>>2]|0;
-  $121 = HEAP32[$30>>2]|0;
-  __gcry_mpi_sub($120,$121,$120);
- }
- $122 = HEAP32[$107>>2]|0;
- $123 = HEAP32[$59>>2]|0;
- __gcry_mpi_mul($122,$122,$123);
- $124 = HEAP32[$10>>2]|0;
- $125 = ($124|0)==(0|0);
- if ($125) {
-  $126 = ((($3)) + 16|0);
-  $127 = HEAP32[$126>>2]|0;
-  __gcry_mpi_mod($122,$122,$127);
- } else {
-  __gcry_mpi_mod_barrett($122,$122,$124);
- }
- $128 = HEAP32[$107>>2]|0;
- $129 = HEAP32[$4>>2]|0;
- __gcry_mpi_mul($128,$128,$129);
- $130 = HEAP32[$10>>2]|0;
- $131 = ($130|0)==(0|0);
- if ($131) {
-  $132 = ((($3)) + 16|0);
-  $133 = HEAP32[$132>>2]|0;
-  __gcry_mpi_mod($128,$128,$133);
- } else {
-  __gcry_mpi_mod_barrett($128,$128,$130);
- }
- $134 = ((($0)) + 8|0);
- $135 = HEAP32[$134>>2]|0;
- $136 = HEAP32[$55>>2]|0;
- $137 = HEAP32[$59>>2]|0;
- __gcry_mpi_mul($135,$136,$137);
- $138 = HEAP32[$10>>2]|0;
- $139 = ($138|0)==(0|0);
- if ($139) {
-  $140 = ((($3)) + 16|0);
-  $141 = HEAP32[$140>>2]|0;
-  __gcry_mpi_mod($135,$135,$141);
-  return;
- } else {
-  __gcry_mpi_mod_barrett($135,$135,$138);
-  return;
- }
-}
-function __gcry_mpi_ec_mul_point($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0207234 = 0, $$0207234$phi = 0, $$0208233 = 0, $$0208233$phi = 0, 
$$0209232 = 0, $$0209232$phi = 0, $$0210 = 0, $$0210231 = 0, $$0210236 = 0, 
$$0211221 = 0, $$0212 = 0, $$0212226 = 0, $$0212227 = 0, $$0213 = 0, $$0235 = 
0, $$0235$phi = 0, $$1 = 0, $$1222 = 0, $$1223 = 0, $10 = 0;
- var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, 
$114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0;
- var $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 
= 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0;
- var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0;
- var $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 
= 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0;
- var $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 
= 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0;
- var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, 
$198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, 
$205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0;
- var $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 
= 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 
= 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0;
- var $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 
= 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 
= 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0;
- var $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 
= 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0;
- var $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 
= 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0;
- var $282 = 0, $283 = 0, $284 = 0, $285 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 
0, $41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0;
- var $99 = 0, $phitmp = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer3 = 0, $vararg_buffer5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(112|0);
- $vararg_buffer5 = sp + 24|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = sp + 88|0;
- $5 = sp + 76|0;
- $6 = sp + 64|0;
- $7 = sp + 52|0;
- $8 = sp + 40|0;
- $9 = sp + 28|0;
- $10 = HEAP32[$3>>2]|0;
- switch ($10|0) {
- case 2:  {
-  $11 = (__gcry_mpi_get_nbits($1)|0);
-  $12 = HEAP32[$0>>2]|0;
-  (__gcry_mpi_set_ui($12,0)|0);
-  $13 = ((($0)) + 4|0);
-  $14 = HEAP32[$13>>2]|0;
-  (__gcry_mpi_set_ui($14,1)|0);
-  $15 = ((($0)) + 8|0);
-  $16 = HEAP32[$15>>2]|0;
-  (__gcry_mpi_set_ui($16,1)|0);
-  $17 = ($1|0)==(0|0);
-  if (!($17)) {
-   $18 = ((($1)) + 12|0);
-   $19 = HEAP32[$18>>2]|0;
-   $20 = $19 & 1;
-   $21 = ($20|0)==(0);
-   if (!($21)) {
-    $22 = (__gcry_mpi_new(0)|0);
-    HEAP32[$7>>2] = $22;
-    $23 = (__gcry_mpi_new(0)|0);
-    $24 = ((($7)) + 4|0);
-    HEAP32[$24>>2] = $23;
-    $25 = (__gcry_mpi_new(0)|0);
-    $26 = ((($7)) + 8|0);
-    HEAP32[$26>>2] = $25;
-    $$0212226 = (($11) + -1)|0;
-    $27 = ($$0212226|0)>(-1);
-    if ($27) {
-     $$0212227 = $$0212226;
-     while(1) {
-      __gcry_mpi_ec_dup_point($0,$0,$3);
-      __gcry_mpi_ec_add_points($7,$0,$2,$3);
-      $28 = (__gcry_mpi_test_bit($1,$$0212227)|0);
-      $29 = ($28|0)==(0);
-      if (!($29)) {
-       $30 = HEAP32[$0>>2]|0;
-       (__gcry_mpi_set($30,$22)|0);
-       $31 = HEAP32[$13>>2]|0;
-       (__gcry_mpi_set($31,$23)|0);
-       $32 = HEAP32[$15>>2]|0;
-       (__gcry_mpi_set($32,$25)|0);
-      }
-      $$0212 = (($$0212227) + -1)|0;
-      $33 = ($$0212|0)>(-1);
-      if ($33) {
-       $$0212227 = $$0212;
-      } else {
-       break;
-      }
-     }
-    }
-    __gcry_mpi_free($22);
-    __gcry_mpi_free($23);
-    __gcry_mpi_free($25);
-    STACKTOP = sp;return;
-   }
-  }
-  $$1222 = (($11) + -1)|0;
-  $34 = ($$1222|0)>(-1);
-  if (!($34)) {
-   STACKTOP = sp;return;
-  }
-  $$1223 = $$1222;
-  while(1) {
-   __gcry_mpi_ec_dup_point($0,$0,$3);
-   $35 = (__gcry_mpi_test_bit($1,$$1223)|0);
-   $36 = ($35|0)==(0);
-   if (!($36)) {
-    __gcry_mpi_ec_add_points($0,$0,$2,$3);
-   }
-   $$1 = (($$1223) + -1)|0;
-   $37 = ($$1|0)>(-1);
-   if ($37) {
-    $$1223 = $$1;
-   } else {
-    break;
-   }
-  }
-  STACKTOP = sp;return;
-  break;
- }
- case 1:  {
-  $38 = (__gcry_mpi_get_nbits($1)|0);
-  $39 = (__gcry_mpi_new(0)|0);
-  HEAP32[$4>>2] = $39;
-  $40 = (__gcry_mpi_new(0)|0);
-  $41 = ((($4)) + 4|0);
-  HEAP32[$41>>2] = $40;
-  $42 = (__gcry_mpi_new(0)|0);
-  $43 = ((($4)) + 8|0);
-  HEAP32[$43>>2] = $42;
-  $44 = (__gcry_mpi_new(0)|0);
-  $45 = (__gcry_mpi_new(0)|0);
-  $46 = ((($5)) + 4|0);
-  HEAP32[$46>>2] = $45;
-  $47 = (__gcry_mpi_new(0)|0);
-  $48 = ((($5)) + 8|0);
-  HEAP32[$48>>2] = $47;
-  $49 = (__gcry_mpi_new(0)|0);
-  HEAP32[$8>>2] = $49;
-  $50 = (__gcry_mpi_new(0)|0);
-  $51 = ((($8)) + 4|0);
-  HEAP32[$51>>2] = $50;
-  $52 = (__gcry_mpi_new(0)|0);
-  $53 = ((($8)) + 8|0);
-  HEAP32[$53>>2] = $52;
-  $54 = (__gcry_mpi_new(0)|0);
-  HEAP32[$9>>2] = $54;
-  $55 = (__gcry_mpi_new(0)|0);
-  $56 = ((($9)) + 4|0);
-  HEAP32[$56>>2] = $55;
-  $57 = (__gcry_mpi_new(0)|0);
-  $58 = ((($9)) + 8|0);
-  HEAP32[$58>>2] = $57;
-  (__gcry_mpi_set_ui($39,1)|0);
-  __gcry_mpi_free($44);
-  $59 = HEAP32[$2>>2]|0;
-  $60 = (__gcry_mpi_copy($59)|0);
-  HEAP32[$5>>2] = $60;
-  (__gcry_mpi_set_ui($47,1)|0);
-  $61 = $38 << 1;
-  $62 = (($61) + 62)|0;
-  $63 = $62 >>> 5;
-  $64 = (($63) + 1)|0;
-  __gcry_mpi_resize($39,$64);
-  __gcry_mpi_resize($42,$64);
-  __gcry_mpi_resize($60,$64);
-  __gcry_mpi_resize($47,$64);
-  __gcry_mpi_resize($49,$64);
-  __gcry_mpi_resize($52,$64);
-  __gcry_mpi_resize($54,$64);
-  __gcry_mpi_resize($57,$64);
-  $$0210231 = (($38) + -1)|0;
-  $65 = ($$0210231|0)>(-1);
-  if ($65) {
-   $66 = ((($3)) + 60|0);
-   $67 = ((($3)) + 16|0);
-   $68 = ((($3)) + 20|0);
-   $$0207234 = $8;$$0208233 = $5;$$0209232 = $4;$$0210236 = $$0210231;$$0235 = 
$9;
-   while(1) {
-    $69 = (__gcry_mpi_test_bit($1,$$0210236)|0);
-    $70 = HEAP32[$$0209232>>2]|0;
-    $71 = HEAP32[$$0208233>>2]|0;
-    __gcry_mpi_swap_cond($70,$71,$69);
-    $72 = ((($$0209232)) + 8|0);
-    $73 = HEAP32[$72>>2]|0;
-    $74 = ((($$0208233)) + 8|0);
-    $75 = HEAP32[$74>>2]|0;
-    __gcry_mpi_swap_cond($73,$75,$69);
-    $76 = HEAP32[$2>>2]|0;
-    $77 = HEAP32[$$0235>>2]|0;
-    $78 = HEAP32[$$0208233>>2]|0;
-    $79 = HEAP32[$74>>2]|0;
-    __gcry_mpi_add($77,$78,$79);
-    $80 = HEAP32[$66>>2]|0;
-    $81 = ($80|0)==(0|0);
-    if ($81) {
-     $82 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($77,$77,$82);
-    } else {
-     __gcry_mpi_mod_barrett($77,$77,$80);
-    }
-    $83 = HEAP32[$74>>2]|0;
-    $84 = HEAP32[$$0208233>>2]|0;
-    __gcry_mpi_sub($83,$84,$83);
-    $85 = HEAP32[$$0207234>>2]|0;
-    $86 = HEAP32[$$0209232>>2]|0;
-    $87 = HEAP32[$72>>2]|0;
-    __gcry_mpi_add($85,$86,$87);
-    $88 = HEAP32[$66>>2]|0;
-    $89 = ($88|0)==(0|0);
-    if ($89) {
-     $90 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($85,$85,$90);
-    } else {
-     __gcry_mpi_mod_barrett($85,$85,$88);
-    }
-    $91 = HEAP32[$72>>2]|0;
-    $92 = HEAP32[$$0209232>>2]|0;
-    __gcry_mpi_sub($91,$92,$91);
-    $93 = HEAP32[$$0208233>>2]|0;
-    $94 = HEAP32[$72>>2]|0;
-    $95 = HEAP32[$$0235>>2]|0;
-    __gcry_mpi_mul($93,$94,$95);
-    $96 = HEAP32[$66>>2]|0;
-    $97 = ($96|0)==(0|0);
-    if ($97) {
-     $98 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($93,$93,$98);
-    } else {
-     __gcry_mpi_mod_barrett($93,$93,$96);
-    }
-    $99 = HEAP32[$74>>2]|0;
-    $100 = HEAP32[$$0207234>>2]|0;
-    __gcry_mpi_mul($99,$100,$99);
-    $101 = HEAP32[$66>>2]|0;
-    $102 = ($101|0)==(0|0);
-    if ($102) {
-     $103 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($99,$99,$103);
-    } else {
-     __gcry_mpi_mod_barrett($99,$99,$101);
-    }
-    $104 = HEAP32[$$0209232>>2]|0;
-    $105 = HEAP32[$$0207234>>2]|0;
-    __gcry_mpi_mul($104,$105,$105);
-    $106 = HEAP32[$66>>2]|0;
-    $107 = ($106|0)==(0|0);
-    if ($107) {
-     $108 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($104,$104,$108);
-    } else {
-     __gcry_mpi_mod_barrett($104,$104,$106);
-    }
-    $109 = HEAP32[$72>>2]|0;
-    __gcry_mpi_mul($109,$109,$109);
-    $110 = HEAP32[$66>>2]|0;
-    $111 = ($110|0)==(0|0);
-    if ($111) {
-     $112 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($109,$109,$112);
-    } else {
-     __gcry_mpi_mod_barrett($109,$109,$110);
-    }
-    $113 = HEAP32[$$0235>>2]|0;
-    $114 = HEAP32[$$0208233>>2]|0;
-    $115 = HEAP32[$74>>2]|0;
-    __gcry_mpi_add($113,$114,$115);
-    $116 = HEAP32[$66>>2]|0;
-    $117 = ($116|0)==(0|0);
-    if ($117) {
-     $118 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($113,$113,$118);
-    } else {
-     __gcry_mpi_mod_barrett($113,$113,$116);
-    }
-    $119 = HEAP32[$74>>2]|0;
-    $120 = HEAP32[$$0208233>>2]|0;
-    __gcry_mpi_sub($119,$120,$119);
-    $121 = HEAP32[$$0207234>>2]|0;
-    $122 = HEAP32[$$0209232>>2]|0;
-    $123 = HEAP32[$72>>2]|0;
-    __gcry_mpi_mul($121,$122,$123);
-    $124 = HEAP32[$66>>2]|0;
-    $125 = ($124|0)==(0|0);
-    if ($125) {
-     $126 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($121,$121,$126);
-    } else {
-     __gcry_mpi_mod_barrett($121,$121,$124);
-    }
-    $127 = HEAP32[$72>>2]|0;
-    $128 = HEAP32[$$0209232>>2]|0;
-    __gcry_mpi_sub($127,$128,$127);
-    $129 = HEAP32[$$0235>>2]|0;
-    __gcry_mpi_mul($129,$129,$129);
-    $130 = HEAP32[$66>>2]|0;
-    $131 = ($130|0)==(0|0);
-    if ($131) {
-     $132 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($129,$129,$132);
-    } else {
-     __gcry_mpi_mod_barrett($129,$129,$130);
-    }
-    $133 = ((($$0235)) + 8|0);
-    $134 = HEAP32[$133>>2]|0;
-    $135 = HEAP32[$74>>2]|0;
-    __gcry_mpi_mul($134,$135,$135);
-    $136 = HEAP32[$66>>2]|0;
-    $137 = ($136|0)==(0|0);
-    if ($137) {
-     $138 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($134,$134,$138);
-    } else {
-     __gcry_mpi_mod_barrett($134,$134,$136);
-    }
-    $139 = ((($$0207234)) + 8|0);
-    $140 = HEAP32[$139>>2]|0;
-    $141 = HEAP32[$72>>2]|0;
-    $142 = HEAP32[$68>>2]|0;
-    __gcry_mpi_mul($140,$141,$142);
-    $143 = HEAP32[$66>>2]|0;
-    $144 = ($143|0)==(0|0);
-    if ($144) {
-     $145 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($140,$140,$145);
-    } else {
-     __gcry_mpi_mod_barrett($140,$140,$143);
-    }
-    $146 = HEAP32[$133>>2]|0;
-    __gcry_mpi_mul($146,$146,$76);
-    $147 = HEAP32[$66>>2]|0;
-    $148 = ($147|0)==(0|0);
-    if ($148) {
-     $149 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($146,$146,$149);
-    } else {
-     __gcry_mpi_mod_barrett($146,$146,$147);
-    }
-    $150 = HEAP32[$139>>2]|0;
-    $151 = HEAP32[$$0209232>>2]|0;
-    __gcry_mpi_add($150,$151,$150);
-    $152 = HEAP32[$66>>2]|0;
-    $153 = ($152|0)==(0|0);
-    if ($153) {
-     $154 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($150,$150,$154);
-    } else {
-     __gcry_mpi_mod_barrett($150,$150,$152);
-    }
-    $155 = HEAP32[$139>>2]|0;
-    $156 = HEAP32[$72>>2]|0;
-    __gcry_mpi_mul($155,$155,$156);
-    $157 = HEAP32[$66>>2]|0;
-    $158 = ($157|0)==(0|0);
-    if ($158) {
-     $159 = HEAP32[$67>>2]|0;
-     __gcry_mpi_mod($155,$155,$159);
-    } else {
-     __gcry_mpi_mod_barrett($155,$155,$157);
-    }
-    $160 = HEAP32[$$0207234>>2]|0;
-    $161 = HEAP32[$$0235>>2]|0;
-    __gcry_mpi_swap_cond($160,$161,$69);
-    $162 = HEAP32[$139>>2]|0;
-    $163 = HEAP32[$133>>2]|0;
-    __gcry_mpi_swap_cond($162,$163,$69);
-    $$0210 = (($$0210236) + -1)|0;
-    $164 = ($$0210|0)>(-1);
-    if ($164) {
-     $$0235$phi = $$0208233;$$0209232$phi = $$0207234;$$0208233$phi = 
$$0235;$$0207234$phi = $$0209232;$$0210236 = $$0210;$$0235 = 
$$0235$phi;$$0209232 = $$0209232$phi;$$0208233 = $$0208233$phi;$$0207234 = 
$$0207234$phi;
-    } else {
-     break;
-    }
-   }
-  }
-  $165 = ((($0)) + 4|0);
-  $166 = HEAP32[$165>>2]|0;
-  __gcry_mpi_clear($166);
-  $167 = $38 & 1;
-  __gcry_mpi_swap_cond($39,$49,$167);
-  __gcry_mpi_swap_cond($42,$52,$167);
-  $168 = ((($42)) + 4|0);
-  $169 = HEAP32[$168>>2]|0;
-  $170 = ($169|0)==(0);
-  if ($170) {
-   $171 = HEAP32[$0>>2]|0;
-   (__gcry_mpi_set_ui($171,1)|0);
-   $172 = ((($0)) + 8|0);
-   $173 = HEAP32[$172>>2]|0;
-   (__gcry_mpi_set_ui($173,0)|0);
-  } else {
-   $174 = (__gcry_mpi_new(0)|0);
-   $175 = ((($3)) + 16|0);
-   $176 = HEAP32[$175>>2]|0;
-   $177 = (__gcry_mpi_invm($174,$42,$176)|0);
-   $178 = ($177|0)==(0);
-   if ($178) {
-    __gcry_log_error(63791,$vararg_buffer);
-    __gcry_log_printmpi(63825,$42);
-    $179 = HEAP32[$175>>2]|0;
-    __gcry_log_printmpi(63829,$179);
-   }
-   $180 = HEAP32[$0>>2]|0;
-   __gcry_mpi_mul($180,$39,$174);
-   $181 = ((($3)) + 60|0);
-   $182 = HEAP32[$181>>2]|0;
-   $183 = ($182|0)==(0|0);
-   if ($183) {
-    $184 = HEAP32[$175>>2]|0;
-    __gcry_mpi_mod($180,$180,$184);
-   } else {
-    __gcry_mpi_mod_barrett($180,$180,$182);
-   }
-   $185 = ((($0)) + 8|0);
-   $186 = HEAP32[$185>>2]|0;
-   (__gcry_mpi_set_ui($186,1)|0);
-   __gcry_mpi_free($174);
-  }
-  __gcry_mpi_free($39);
-  HEAP32[$4>>2] = 0;
-  __gcry_mpi_free($40);
-  HEAP32[$41>>2] = 0;
-  __gcry_mpi_free($42);
-  HEAP32[$43>>2] = 0;
-  __gcry_mpi_free($60);
-  HEAP32[$5>>2] = 0;
-  __gcry_mpi_free($45);
-  HEAP32[$46>>2] = 0;
-  __gcry_mpi_free($47);
-  HEAP32[$48>>2] = 0;
-  __gcry_mpi_free($49);
-  __gcry_mpi_free($50);
-  __gcry_mpi_free($52);
-  __gcry_mpi_free($54);
-  __gcry_mpi_free($55);
-  __gcry_mpi_free($57);
-  STACKTOP = sp;return;
-  break;
- }
- default: {
-  $187 = ((($3)) + 16|0);
-  $188 = HEAP32[$187>>2]|0;
-  $189 = (__gcry_mpi_alloc_like($188)|0);
-  $190 = HEAP32[$187>>2]|0;
-  $191 = (__gcry_mpi_alloc_like($190)|0);
-  $192 = HEAP32[$187>>2]|0;
-  $193 = (__gcry_mpi_alloc_like($192)|0);
-  $194 = (__gcry_mpi_copy($1)|0);
-  $195 = ((($2)) + 4|0);
-  $196 = HEAP32[$195>>2]|0;
-  $197 = (__gcry_mpi_copy($196)|0);
-  $198 = ((($194)) + 8|0);
-  $199 = HEAP32[$198>>2]|0;
-  $200 = ($199|0)==(0);
-  if (!($200)) {
-   HEAP32[$198>>2] = 0;
-   $201 = HEAP32[$187>>2]|0;
-   $202 = (__gcry_mpi_invm($197,$197,$201)|0);
-   $203 = ($202|0)==(0);
-   if ($203) {
-    __gcry_log_error(63791,$vararg_buffer1);
-    __gcry_log_printmpi(63825,$197);
-    $204 = HEAP32[$187>>2]|0;
-    __gcry_log_printmpi(63829,$204);
-   }
-  }
-  $205 = ((($2)) + 8|0);
-  $206 = HEAP32[$205>>2]|0;
-  $207 = (__gcry_mpi_cmp_ui($206,1)|0);
-  $208 = ($207|0)==(0);
-  if ($208) {
-   $209 = HEAP32[$2>>2]|0;
-   (__gcry_mpi_set($189,$209)|0);
-   (__gcry_mpi_set($191,$197)|0);
-  } else {
-   $210 = HEAP32[$187>>2]|0;
-   $211 = (__gcry_mpi_alloc_like($210)|0);
-   $212 = HEAP32[$187>>2]|0;
-   $213 = (__gcry_mpi_alloc_like($212)|0);
-   $214 = HEAP32[$205>>2]|0;
-   __gcry_mpi_mul($211,$214,$214);
-   $215 = ((($3)) + 60|0);
-   $216 = HEAP32[$215>>2]|0;
-   $217 = ($216|0)==(0|0);
-   if ($217) {
-    $218 = HEAP32[$187>>2]|0;
-    __gcry_mpi_mod($211,$211,$218);
-   } else {
-    __gcry_mpi_mod_barrett($211,$211,$216);
-   }
-   $219 = HEAP32[$205>>2]|0;
-   __gcry_mpi_mul($213,$219,$211);
-   $220 = HEAP32[$215>>2]|0;
-   $221 = ($220|0)==(0|0);
-   if ($221) {
-    $222 = HEAP32[$187>>2]|0;
-    __gcry_mpi_mod($213,$213,$222);
-   } else {
-    __gcry_mpi_mod_barrett($213,$213,$220);
-   }
-   $223 = HEAP32[$187>>2]|0;
-   $224 = (__gcry_mpi_invm($211,$211,$223)|0);
-   $225 = ($224|0)==(0);
-   if ($225) {
-    __gcry_log_error(63791,$vararg_buffer3);
-    __gcry_log_printmpi(63825,$211);
-    $226 = HEAP32[$187>>2]|0;
-    __gcry_log_printmpi(63829,$226);
-   }
-   $227 = HEAP32[$2>>2]|0;
-   __gcry_mpi_mul($189,$227,$211);
-   $228 = HEAP32[$215>>2]|0;
-   $229 = ($228|0)==(0|0);
-   if ($229) {
-    $230 = HEAP32[$187>>2]|0;
-    __gcry_mpi_mod($189,$189,$230);
-   } else {
-    __gcry_mpi_mod_barrett($189,$189,$228);
-   }
-   $231 = HEAP32[$187>>2]|0;
-   $232 = (__gcry_mpi_invm($213,$213,$231)|0);
-   $233 = ($232|0)==(0);
-   if ($233) {
-    __gcry_log_error(63791,$vararg_buffer5);
-    __gcry_log_printmpi(63825,$213);
-    $234 = HEAP32[$187>>2]|0;
-    __gcry_log_printmpi(63829,$234);
-   }
-   __gcry_mpi_mul($191,$197,$213);
-   $235 = HEAP32[$215>>2]|0;
-   $236 = ($235|0)==(0|0);
-   if ($236) {
-    $237 = HEAP32[$187>>2]|0;
-    __gcry_mpi_mod($191,$191,$237);
-   } else {
-    __gcry_mpi_mod_barrett($191,$191,$235);
-   }
-   __gcry_mpi_free($211);
-   __gcry_mpi_free($213);
-  }
-  $238 = (__gcry_mpi_const(1)|0);
-  $239 = (__gcry_mpi_copy($238)|0);
-  $240 = (__gcry_mpi_const(3)|0);
-  __gcry_mpi_mul($193,$194,$240);
-  $241 = (__gcry_mpi_get_nbits($193)|0);
-  $242 = ($241>>>0)<(2);
-  $243 = HEAP32[$0>>2]|0;
-  if ($242) {
-   __gcry_mpi_clear($243);
-   $244 = ((($0)) + 4|0);
-   $245 = HEAP32[$244>>2]|0;
-   __gcry_mpi_clear($245);
-   $246 = ((($0)) + 8|0);
-   $247 = HEAP32[$246>>2]|0;
-   __gcry_mpi_clear($247);
-   $$0213 = 0;
-  } else {
-   $248 = HEAP32[$2>>2]|0;
-   (__gcry_mpi_set($243,$248)|0);
-   $249 = ((($0)) + 4|0);
-   $250 = HEAP32[$249>>2]|0;
-   (__gcry_mpi_set($250,$197)|0);
-   $251 = ((($0)) + 8|0);
-   $252 = HEAP32[$251>>2]|0;
-   $253 = HEAP32[$205>>2]|0;
-   (__gcry_mpi_set($252,$253)|0);
-   $phitmp = (($241) + -2)|0;
-   $$0213 = $phitmp;
-  }
-  __gcry_mpi_free($197);
-  HEAP32[$4>>2] = $189;
-  $254 = ((($4)) + 4|0);
-  HEAP32[$254>>2] = $191;
-  $255 = ((($4)) + 8|0);
-  HEAP32[$255>>2] = $239;
-  $256 = (__gcry_mpi_new(0)|0);
-  HEAP32[$5>>2] = $256;
-  $257 = (__gcry_mpi_new(0)|0);
-  $258 = ((($5)) + 4|0);
-  HEAP32[$258>>2] = $257;
-  $259 = (__gcry_mpi_new(0)|0);
-  $260 = ((($5)) + 8|0);
-  HEAP32[$260>>2] = $259;
-  $261 = (__gcry_mpi_new(0)|0);
-  HEAP32[$6>>2] = $261;
-  $262 = (__gcry_mpi_new(0)|0);
-  $263 = ((($6)) + 4|0);
-  HEAP32[$263>>2] = $262;
-  $264 = (__gcry_mpi_new(0)|0);
-  $265 = ((($6)) + 8|0);
-  HEAP32[$265>>2] = $264;
-  $266 = ($$0213|0)==(0);
-  if (!($266)) {
-   $267 = ((($0)) + 4|0);
-   $268 = ((($0)) + 8|0);
-   $$0211221 = $$0213;
-   while(1) {
-    __gcry_mpi_ec_dup_point($0,$0,$3);
-    $269 = (__gcry_mpi_test_bit($193,$$0211221)|0);
-    $270 = ($269|0)==(1);
-    if ($270) {
-     $271 = (__gcry_mpi_test_bit($194,$$0211221)|0);
-     $272 = ($271|0)==(0);
-     if ($272) {
-      $273 = HEAP32[$0>>2]|0;
-      (__gcry_mpi_set($256,$273)|0);
-      $274 = HEAP32[$267>>2]|0;
-      (__gcry_mpi_set($257,$274)|0);
-      $275 = HEAP32[$268>>2]|0;
-      (__gcry_mpi_set($259,$275)|0);
-      __gcry_mpi_ec_add_points($0,$5,$4,$3);
-     }
-    }
-    $276 = (__gcry_mpi_test_bit($193,$$0211221)|0);
-    $277 = ($276|0)==(0);
-    if ($277) {
-     $278 = (__gcry_mpi_test_bit($194,$$0211221)|0);
-     $279 = ($278|0)==(1);
-     if ($279) {
-      $280 = HEAP32[$0>>2]|0;
-      (__gcry_mpi_set($256,$280)|0);
-      $281 = HEAP32[$267>>2]|0;
-      (__gcry_mpi_set($257,$281)|0);
-      $282 = HEAP32[$268>>2]|0;
-      (__gcry_mpi_set($259,$282)|0);
-      (__gcry_mpi_set($261,$189)|0);
-      (__gcry_mpi_set($262,$191)|0);
-      (__gcry_mpi_set($264,$239)|0);
-      $283 = HEAP32[$187>>2]|0;
-      __gcry_mpi_sub($262,$283,$262);
-      __gcry_mpi_ec_add_points($0,$5,$6,$3);
-     }
-    }
-    $284 = (($$0211221) + -1)|0;
-    $285 = ($284|0)==(0);
-    if ($285) {
-     break;
-    } else {
-     $$0211221 = $284;
-    }
-   }
-  }
-  __gcry_mpi_free($189);
-  HEAP32[$4>>2] = 0;
-  __gcry_mpi_free($191);
-  HEAP32[$254>>2] = 0;
-  __gcry_mpi_free($239);
-  HEAP32[$255>>2] = 0;
-  __gcry_mpi_free($256);
-  HEAP32[$5>>2] = 0;
-  __gcry_mpi_free($257);
-  HEAP32[$258>>2] = 0;
-  __gcry_mpi_free($259);
-  HEAP32[$260>>2] = 0;
-  __gcry_mpi_free($261);
-  HEAP32[$6>>2] = 0;
-  __gcry_mpi_free($262);
-  HEAP32[$263>>2] = 0;
-  __gcry_mpi_free($264);
-  HEAP32[$265>>2] = 0;
-  __gcry_mpi_free($193);
-  __gcry_mpi_free($194);
-  STACKTOP = sp;return;
- }
- }
-}
-function __gcry_mpi_ec_curve_point($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$1 = 0, $$2 = 0, $$idx$val = 0, $$pre = 0, $$pre$phi139Z2D = 0, 
$$pre$phiZ2D = 0, $$pre138 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 
0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 
0;
- var $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, $spec$select = 0, $spec$select122 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (__gcry_mpi_new(0)|0);
- $3 = (__gcry_mpi_new(0)|0);
- $4 = (__gcry_mpi_new(0)|0);
- $5 = HEAP32[$1>>2]|0;
- switch ($5|0) {
- case 0:  {
-  $6 = (__gcry_mpi_new(0)|0);
-  $7 = (__gcry_mpi_ec_get_affine($2,$3,$0,$1)|0);
-  $8 = ($7|0)==(0);
-  if (!($8)) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  __gcry_mpi_mul($3,$3,$3);
-  $9 = ((($1)) + 60|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)==(0|0);
-  if ($11) {
-   $12 = ((($1)) + 16|0);
-   $13 = HEAP32[$12>>2]|0;
-   __gcry_mpi_mod($3,$3,$13);
-   $$pre$phiZ2D = $12;
-  } else {
-   __gcry_mpi_mod_barrett($3,$3,$10);
-   $$pre = ((($1)) + 16|0);
-   $$pre$phiZ2D = $$pre;
-  }
-  $14 = (__gcry_mpi_const(3)|0);
-  $15 = HEAP32[$$pre$phiZ2D>>2]|0;
-  __gcry_mpi_powm($6,$2,$14,$15);
-  $16 = ((($1)) + 20|0);
-  $17 = HEAP32[$16>>2]|0;
-  __gcry_mpi_mul($4,$17,$2);
-  $18 = HEAP32[$9>>2]|0;
-  $19 = ($18|0)==(0|0);
-  if ($19) {
-   $20 = HEAP32[$$pre$phiZ2D>>2]|0;
-   __gcry_mpi_mod($4,$4,$20);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$18);
-  }
-  $21 = ((($1)) + 24|0);
-  $22 = HEAP32[$21>>2]|0;
-  __gcry_mpi_add($4,$4,$22);
-  $23 = HEAP32[$9>>2]|0;
-  $24 = ($23|0)==(0|0);
-  if ($24) {
-   $25 = HEAP32[$$pre$phiZ2D>>2]|0;
-   __gcry_mpi_mod($4,$4,$25);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$23);
-  }
-  __gcry_mpi_add($4,$4,$6);
-  $26 = HEAP32[$9>>2]|0;
-  $27 = ($26|0)==(0|0);
-  if ($27) {
-   $28 = HEAP32[$$pre$phiZ2D>>2]|0;
-   __gcry_mpi_mod($4,$4,$28);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$26);
-  }
-  $29 = (__gcry_mpi_cmp($3,$4)|0);
-  $30 = ($29|0)==(0);
-  $spec$select = $30&1;
-  __gcry_mpi_release($6);
-  $$2 = $spec$select;
-  break;
- }
- case 1:  {
-  $31 = (__gcry_mpi_ec_get_affine($2,0,$0,$1)|0);
-  $32 = ($31|0)==(0);
-  if (!($32)) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  $33 = ((($1)) + 20|0);
-  $34 = HEAP32[$33>>2]|0;
-  $35 = (__gcry_mpi_const(4)|0);
-  __gcry_mpi_mul($4,$34,$35);
-  $36 = ((($1)) + 60|0);
-  $37 = HEAP32[$36>>2]|0;
-  $38 = ($37|0)==(0|0);
-  if ($38) {
-   $39 = ((($1)) + 16|0);
-   $40 = HEAP32[$39>>2]|0;
-   __gcry_mpi_mod($4,$4,$40);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$37);
-  }
-  $41 = (__gcry_mpi_const(2)|0);
-  __gcry_mpi_add($4,$4,$41);
-  $42 = HEAP32[$36>>2]|0;
-  $43 = ($42|0)==(0|0);
-  if ($43) {
-   $44 = ((($1)) + 16|0);
-   $45 = HEAP32[$44>>2]|0;
-   __gcry_mpi_mod($4,$4,$45);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$42);
-  }
-  __gcry_mpi_mul($4,$4,$2);
-  $46 = HEAP32[$36>>2]|0;
-  $47 = ($46|0)==(0|0);
-  if ($47) {
-   $48 = ((($1)) + 16|0);
-   $49 = HEAP32[$48>>2]|0;
-   __gcry_mpi_mod($4,$4,$49);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$46);
-  }
-  __gcry_mpi_mul($3,$2,$2);
-  $50 = HEAP32[$36>>2]|0;
-  $51 = ($50|0)==(0|0);
-  if ($51) {
-   $52 = ((($1)) + 16|0);
-   $53 = HEAP32[$52>>2]|0;
-   __gcry_mpi_mod($3,$3,$53);
-  } else {
-   __gcry_mpi_mod_barrett($3,$3,$50);
-  }
-  __gcry_mpi_add($4,$4,$3);
-  $54 = HEAP32[$36>>2]|0;
-  $55 = ($54|0)==(0|0);
-  if ($55) {
-   $56 = ((($1)) + 16|0);
-   $57 = HEAP32[$56>>2]|0;
-   __gcry_mpi_mod($4,$4,$57);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$54);
-  }
-  $58 = (__gcry_mpi_const(1)|0);
-  __gcry_mpi_add($4,$4,$58);
-  $59 = HEAP32[$36>>2]|0;
-  $60 = ($59|0)==(0|0);
-  if ($60) {
-   $61 = ((($1)) + 16|0);
-   $62 = HEAP32[$61>>2]|0;
-   __gcry_mpi_mod($4,$4,$62);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$59);
-  }
-  __gcry_mpi_mul($4,$4,$2);
-  $63 = HEAP32[$36>>2]|0;
-  $64 = ($63|0)==(0|0);
-  if ($64) {
-   $65 = ((($1)) + 16|0);
-   $66 = HEAP32[$65>>2]|0;
-   __gcry_mpi_mod($4,$4,$66);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$63);
-  }
-  $67 = ((($1)) + 24|0);
-  $68 = HEAP32[$67>>2]|0;
-  __gcry_mpi_mul($4,$4,$68);
-  $69 = HEAP32[$36>>2]|0;
-  $70 = ($69|0)==(0|0);
-  if ($70) {
-   $71 = ((($1)) + 16|0);
-   $72 = HEAP32[$71>>2]|0;
-   __gcry_mpi_mod($4,$4,$72);
-   $$pre$phi139Z2D = $71;
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$69);
-   $$pre138 = ((($1)) + 16|0);
-   $$pre$phi139Z2D = $$pre138;
-  }
-  $73 = HEAP32[$$pre$phi139Z2D>>2]|0;
-  $74 = (__gcry_mpi_const(1)|0);
-  __gcry_mpi_sub($3,$73,$74);
-  __gcry_mpi_rshift($3,$3,1);
-  $$idx$val = HEAP32[$$pre$phi139Z2D>>2]|0;
-  __gcry_mpi_powm($4,$4,$3,$$idx$val);
-  $75 = (__gcry_mpi_cmp_ui($4,1)|0);
-  $$2 = $75;
-  break;
- }
- case 2:  {
-  $76 = (__gcry_mpi_ec_get_affine($2,$3,$0,$1)|0);
-  $77 = ($76|0)==(0);
-  if (!($77)) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  __gcry_mpi_mul($2,$2,$2);
-  $78 = ((($1)) + 60|0);
-  $79 = HEAP32[$78>>2]|0;
-  $80 = ($79|0)==(0|0);
-  if ($80) {
-   $81 = ((($1)) + 16|0);
-   $82 = HEAP32[$81>>2]|0;
-   __gcry_mpi_mod($2,$2,$82);
-  } else {
-   __gcry_mpi_mod_barrett($2,$2,$79);
-  }
-  __gcry_mpi_mul($3,$3,$3);
-  $83 = HEAP32[$78>>2]|0;
-  $84 = ($83|0)==(0|0);
-  if ($84) {
-   $85 = ((($1)) + 16|0);
-   $86 = HEAP32[$85>>2]|0;
-   __gcry_mpi_mod($3,$3,$86);
-  } else {
-   __gcry_mpi_mod_barrett($3,$3,$83);
-  }
-  $87 = ((($1)) + 4|0);
-  $88 = HEAP32[$87>>2]|0;
-  $89 = ($88|0)==(1);
-  do {
-   if ($89) {
-    (__gcry_mpi_set($4,$2)|0);
-    __gcry_mpi_neg($4,$4);
-   } else {
-    $90 = ((($1)) + 20|0);
-    $91 = HEAP32[$90>>2]|0;
-    __gcry_mpi_mul($4,$91,$2);
-    $92 = HEAP32[$78>>2]|0;
-    $93 = ($92|0)==(0|0);
-    if ($93) {
-     $94 = ((($1)) + 16|0);
-     $95 = HEAP32[$94>>2]|0;
-     __gcry_mpi_mod($4,$4,$95);
-     break;
-    } else {
-     __gcry_mpi_mod_barrett($4,$4,$92);
-     break;
-    }
-   }
-  } while(0);
-  __gcry_mpi_add($4,$4,$3);
-  $96 = HEAP32[$78>>2]|0;
-  $97 = ($96|0)==(0|0);
-  if ($97) {
-   $98 = ((($1)) + 16|0);
-   $99 = HEAP32[$98>>2]|0;
-   __gcry_mpi_mod($4,$4,$99);
-  } else {
-   __gcry_mpi_mod_barrett($4,$4,$96);
-  }
-  $100 = (__gcry_mpi_const(1)|0);
-  __gcry_mpi_sub($4,$4,$100);
-  __gcry_mpi_mul($2,$2,$3);
-  $101 = HEAP32[$78>>2]|0;
-  $102 = ($101|0)==(0|0);
-  if ($102) {
-   $103 = ((($1)) + 16|0);
-   $104 = HEAP32[$103>>2]|0;
-   __gcry_mpi_mod($2,$2,$104);
-  } else {
-   __gcry_mpi_mod_barrett($2,$2,$101);
-  }
-  $105 = ((($1)) + 24|0);
-  $106 = HEAP32[$105>>2]|0;
-  __gcry_mpi_mul($2,$2,$106);
-  $107 = HEAP32[$78>>2]|0;
-  $108 = ($107|0)==(0|0);
-  if ($108) {
-   $109 = ((($1)) + 16|0);
-   $110 = HEAP32[$109>>2]|0;
-   __gcry_mpi_mod($2,$2,$110);
-  } else {
-   __gcry_mpi_mod_barrett($2,$2,$107);
-  }
-  __gcry_mpi_sub($4,$4,$2);
-  $111 = (__gcry_mpi_cmp_ui($4,0)|0);
-  $112 = ($111|0)==(0);
-  $spec$select122 = $112&1;
-  $$2 = $spec$select122;
-  break;
- }
- default: {
-  $$2 = 0;
- }
- }
- __gcry_mpi_release($4);
- __gcry_mpi_release($2);
- __gcry_mpi_release($3);
- $$1 = $$2;
- return ($$1|0);
-}
-function __gcry_mpi_add_ui($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$024$i = 0, $$02637$i = 0, $$02637$i62 = 0, $$02836$i = 0, 
$$02836$i63 = 0, $$035$i = 0, $$035$i69 = 0, $$052 = 0, $$1$i = 0, $$1$i66 = 0, 
$$127$i = 0, $$127$i65 = 0, $$129$i = 0, $$129$i64 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, 
$exitcond$i = 0, $exitcond$i70 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($1)) + 8|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = HEAP32[$0>>2]|0;
- $8 = ($7|0)>($4|0);
- if (!($8)) {
-  $9 = (($4) + 1)|0;
-  __gcry_mpi_resize($0,$9);
- }
- $10 = ((($1)) + 16|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($0)) + 16|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ($4|0)==(0);
- if ($14) {
-  HEAP32[$13>>2] = $2;
-  $15 = ($2|0)!=(0);
-  $16 = $15&1;
-  $$0 = $16;$$052 = 0;
-  $74 = ((($0)) + 4|0);
-  HEAP32[$74>>2] = $$0;
-  $75 = ((($0)) + 8|0);
-  HEAP32[$75>>2] = $$052;
-  return;
- }
- $17 = ($6|0)==(0);
- if ($17) {
-  $18 = ((($11)) + 4|0);
-  $19 = HEAP32[$11>>2]|0;
-  $20 = (($19) + ($2))|0;
-  $21 = ((($13)) + 4|0);
-  HEAP32[$13>>2] = $20;
-  $22 = ($20>>>0)<($19>>>0);
-  L10: do {
-   if ($22) {
-    $23 = (($4) + -1)|0;
-    $24 = ($23|0)==(0);
-    if ($24) {
-     $$024$i = 1;
-    } else {
-     $$02637$i = $18;$$02836$i = $21;$26 = $23;
-     while(1) {
-      $28 = ((($$02637$i)) + 4|0);
-      $29 = HEAP32[$$02637$i>>2]|0;
-      $30 = (($29) + 1)|0;
-      $31 = ((($$02836$i)) + 4|0);
-      HEAP32[$$02836$i>>2] = $30;
-      $32 = ($30|0)==(0);
-      if (!($32)) {
-       $$1$i = $26;$$127$i = $28;$$129$i = $31;
-       label = 11;
-       break L10;
-      }
-      $25 = (($26) + -1)|0;
-      $27 = ($25|0)==(0);
-      if ($27) {
-       $$024$i = 1;
-       break;
-      } else {
-       $$02637$i = $28;$$02836$i = $31;$26 = $25;
-      }
-     }
-    }
-   } else {
-    $$1$i = $4;$$127$i = $18;$$129$i = $21;
-    label = 11;
-   }
-  } while(0);
-  if ((label|0) == 11) {
-   $33 = ($$129$i|0)==($$127$i|0);
-   if ($33) {
-    $$024$i = 0;
-   } else {
-    $34 = (($$1$i) + -1)|0;
-    $35 = ($$1$i|0)>(1);
-    if ($35) {
-     $$035$i = 0;
-     while(1) {
-      $36 = (($$127$i) + ($$035$i<<2)|0);
-      $37 = HEAP32[$36>>2]|0;
-      $38 = (($$129$i) + ($$035$i<<2)|0);
-      HEAP32[$38>>2] = $37;
-      $39 = (($$035$i) + 1)|0;
-      $exitcond$i = ($39|0)==($34|0);
-      if ($exitcond$i) {
-       $$024$i = 0;
-       break;
-      } else {
-       $$035$i = $39;
-      }
-     }
-    } else {
-     $$024$i = 0;
-    }
-   }
-  }
-  $40 = (($13) + ($4<<2)|0);
-  HEAP32[$40>>2] = $$024$i;
-  $41 = (($$024$i) + ($4))|0;
-  $$0 = $41;$$052 = 0;
-  $74 = ((($0)) + 4|0);
-  HEAP32[$74>>2] = $$0;
-  $75 = ((($0)) + 8|0);
-  HEAP32[$75>>2] = $$052;
-  return;
- }
- $42 = ($4|0)==(1);
- L25: do {
-  if ($42) {
-   $43 = HEAP32[$11>>2]|0;
-   $44 = ($43>>>0)<($2>>>0);
-   if (!($44)) {
-    $67 = (($43) - ($2))|0;
-    HEAP32[$13>>2] = $67;
-    break;
-   }
-   $45 = (($2) - ($43))|0;
-   HEAP32[$13>>2] = $45;
-   $$0 = 1;$$052 = 0;
-   $74 = ((($0)) + 4|0);
-   HEAP32[$74>>2] = $$0;
-   $75 = ((($0)) + 8|0);
-   HEAP32[$75>>2] = $$052;
-   return;
-  } else {
-   $46 = ((($11)) + 4|0);
-   $47 = HEAP32[$11>>2]|0;
-   $48 = (($47) - ($2))|0;
-   $49 = ((($13)) + 4|0);
-   HEAP32[$13>>2] = $48;
-   $50 = ($48>>>0)>($47>>>0);
-   L32: do {
-    if ($50) {
-     $51 = (($4) + -1)|0;
-     $$02637$i62 = $46;$$02836$i63 = $49;$53 = $51;
-     while(1) {
-      $55 = ((($$02637$i62)) + 4|0);
-      $56 = HEAP32[$$02637$i62>>2]|0;
-      $57 = (($56) + -1)|0;
-      $58 = ((($$02836$i63)) + 4|0);
-      HEAP32[$$02836$i63>>2] = $57;
-      $59 = ($56|0)==(0);
-      if (!($59)) {
-       $$1$i66 = $53;$$127$i65 = $55;$$129$i64 = $58;
-       break L32;
-      }
-      $52 = (($53) + -1)|0;
-      $54 = ($52|0)==(0);
-      if ($54) {
-       break L25;
-      } else {
-       $$02637$i62 = $55;$$02836$i63 = $58;$53 = $52;
-      }
-     }
-    } else {
-     $$1$i66 = $4;$$127$i65 = $46;$$129$i64 = $49;
-    }
-   } while(0);
-   $60 = ($$129$i64|0)==($$127$i65|0);
-   if (!($60)) {
-    $61 = (($$1$i66) + -1)|0;
-    $62 = ($$1$i66|0)>(1);
-    if ($62) {
-     $$035$i69 = 0;
-     while(1) {
-      $63 = (($$127$i65) + ($$035$i69<<2)|0);
-      $64 = HEAP32[$63>>2]|0;
-      $65 = (($$129$i64) + ($$035$i69<<2)|0);
-      HEAP32[$65>>2] = $64;
-      $66 = (($$035$i69) + 1)|0;
-      $exitcond$i70 = ($66|0)==($61|0);
-      if ($exitcond$i70) {
-       break;
-      } else {
-       $$035$i69 = $66;
-      }
-     }
-    }
-   }
-  }
- } while(0);
- $68 = (($4) + -1)|0;
- $69 = (($13) + ($68<<2)|0);
- $70 = HEAP32[$69>>2]|0;
- $71 = ($70|0)==(0);
- $72 = $71&1;
- $73 = (($4) - ($72))|0;
- $$0 = $73;$$052 = 1;
- $74 = ((($0)) + 4|0);
- HEAP32[$74>>2] = $$0;
- $75 = ((($0)) + 8|0);
- HEAP32[$75>>2] = $$052;
- return;
-}
-function __gcry_mpi_add($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$in = 0, $$0107150 = 0, $$0109 = 0, $$0110 = 0, $$0111161 = 
0, $$0113 = 0, $$0114 = 0, $$0115 = 0, $$0115$in = 0, $$01619$i = 0, 
$$01619$in$i = 0, $$02637$i$i = 0, $$02637$i$i122 = 0, $$02836$i$i = 0, 
$$02836$i$i123 = 0, $$035$i$i = 0, $$035$i$i129 = 0, $$1 = 0, $$1$i$i = 0;
- var $$1$i$i126 = 0, $$1$i131 = 0, $$1112$lcssa$ph = 0, $$1112155 = 0, 
$$127$i$i = 0, $$127$i$i125 = 0, $$129$i$i = 0, $$129$i$i124 = 0, $$2$lcssa = 
0, $$2151 = 0, $$3 = 0, $$pn = 0, $$pn116 = 0, $10 = 0, $100 = 0, $101 = 0, 
$102 = 0, $103 = 0, $104 = 0, $105 = 0;
- var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 
= 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond 
= 0, $exitcond$i$i = 0, $exitcond$i$i130 = 0, $spec$select = 0, $spec$select117 
= 0, $spec$select118 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($2)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($4|0)<($6|0);
- if ($7) {
-  $8 = ((($2)) + 8|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ((($1)) + 8|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = HEAP32[$0>>2]|0;
-  $13 = ($12|0)>($6|0);
-  if ($13) {
-   $$0109 = $11;$$0110 = $9;$$0113 = $4;$$0114 = $6;$$pn = $1;$$pn116 = $2;
-  } else {
-   $14 = (($6) + 1)|0;
-   __gcry_mpi_resize($0,$14);
-   $$0109 = $11;$$0110 = $9;$$0113 = $4;$$0114 = $6;$$pn = $1;$$pn116 = $2;
-  }
- } else {
-  $15 = ((($1)) + 8|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = ((($2)) + 8|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = HEAP32[$0>>2]|0;
-  $20 = ($19|0)>($4|0);
-  if ($20) {
-   $$0109 = $18;$$0110 = $16;$$0113 = $6;$$0114 = $4;$$pn = $2;$$pn116 = $1;
-  } else {
-   $21 = (($4) + 1)|0;
-   __gcry_mpi_resize($0,$21);
-   $$0109 = $18;$$0110 = $16;$$0113 = $6;$$0114 = $4;$$pn = $2;$$pn116 = $1;
-  }
- }
- $$0$in = ((($$pn116)) + 16|0);
- $$0115$in = ((($$pn)) + 16|0);
- $$0 = HEAP32[$$0$in>>2]|0;
- $$0115 = HEAP32[$$0115$in>>2]|0;
- $22 = ((($0)) + 16|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = ($$0113|0)==(0);
- if ($24) {
-  $25 = ($$0114|0)>(0);
-  if (!($25)) {
-   $$1 = $$0110;$$3 = $$0114;
-   $115 = ((($0)) + 4|0);
-   HEAP32[$115>>2] = $$3;
-   $116 = ((($0)) + 8|0);
-   HEAP32[$116>>2] = $$1;
-   return;
-  }
-  $$0107150 = 0;
-  while(1) {
-   $26 = (($$0) + ($$0107150<<2)|0);
-   $27 = HEAP32[$26>>2]|0;
-   $28 = (($23) + ($$0107150<<2)|0);
-   HEAP32[$28>>2] = $27;
-   $29 = (($$0107150) + 1)|0;
-   $exitcond = ($29|0)==($$0114|0);
-   if ($exitcond) {
-    $$1 = $$0110;$$3 = $$0114;
-    break;
-   } else {
-    $$0107150 = $29;
-   }
-  }
-  $115 = ((($0)) + 4|0);
-  HEAP32[$115>>2] = $$3;
-  $116 = ((($0)) + 8|0);
-  HEAP32[$116>>2] = $$1;
-  return;
- }
- $30 = ($$0110|0)==($$0109|0);
- if ($30) {
-  $85 = (__gcry_mpih_add_n($23,$$0,$$0115,$$0113)|0);
-  $86 = (($$0114) - ($$0113))|0;
-  $87 = ($86|0)==(0);
-  L18: do {
-   if ($87) {
-    $$1$i131 = $85;
-   } else {
-    $88 = (($23) + ($$0113<<2)|0);
-    $89 = (($$0) + ($$0113<<2)|0);
-    $90 = ((($89)) + 4|0);
-    $91 = HEAP32[$89>>2]|0;
-    $92 = (($91) + ($85))|0;
-    $93 = ((($88)) + 4|0);
-    HEAP32[$88>>2] = $92;
-    $94 = ($92>>>0)<($91>>>0);
-    L20: do {
-     if ($94) {
-      $95 = (($86) + -1)|0;
-      $96 = ($95|0)==(0);
-      if ($96) {
-       $$1$i131 = 1;
-       break L18;
-      }
-      $$02637$i$i122 = $90;$$02836$i$i123 = $93;$98 = $95;
-      while(1) {
-       $100 = ((($$02637$i$i122)) + 4|0);
-       $101 = HEAP32[$$02637$i$i122>>2]|0;
-       $102 = (($101) + 1)|0;
-       $103 = ((($$02836$i$i123)) + 4|0);
-       HEAP32[$$02836$i$i123>>2] = $102;
-       $104 = ($102|0)==(0);
-       if (!($104)) {
-        $$1$i$i126 = $98;$$127$i$i125 = $100;$$129$i$i124 = $103;
-        break L20;
-       }
-       $97 = (($98) + -1)|0;
-       $99 = ($97|0)==(0);
-       if ($99) {
-        $$1$i131 = 1;
-        break L18;
-       } else {
-        $$02637$i$i122 = $100;$$02836$i$i123 = $103;$98 = $97;
-       }
-      }
-     } else {
-      $$1$i$i126 = $86;$$127$i$i125 = $90;$$129$i$i124 = $93;
-     }
-    } while(0);
-    $105 = ($$129$i$i124|0)==($$127$i$i125|0);
-    if ($105) {
-     $$1$i131 = 0;
-    } else {
-     $106 = (($$1$i$i126) + -1)|0;
-     $107 = ($$1$i$i126|0)>(1);
-     if ($107) {
-      $$035$i$i129 = 0;
-      while(1) {
-       $108 = (($$127$i$i125) + ($$035$i$i129<<2)|0);
-       $109 = HEAP32[$108>>2]|0;
-       $110 = (($$129$i$i124) + ($$035$i$i129<<2)|0);
-       HEAP32[$110>>2] = $109;
-       $111 = (($$035$i$i129) + 1)|0;
-       $exitcond$i$i130 = ($111|0)==($106|0);
-       if ($exitcond$i$i130) {
-        $$1$i131 = 0;
-        break;
-       } else {
-        $$035$i$i129 = $111;
-       }
-      }
-     } else {
-      $$1$i131 = 0;
-     }
-    }
-   }
-  } while(0);
-  $112 = (($23) + ($$0114<<2)|0);
-  HEAP32[$112>>2] = $$1$i131;
-  $113 = (($$1$i131) + ($$0114))|0;
-  $114 = ($$0110|0)!=(0);
-  $spec$select118 = $114&1;
-  $$1 = $spec$select118;$$3 = $113;
-  $115 = ((($0)) + 4|0);
-  HEAP32[$115>>2] = $$3;
-  $116 = ((($0)) + 8|0);
-  HEAP32[$116>>2] = $$1;
-  return;
- }
- $31 = ($$0114|0)==($$0113|0);
- if ($31) {
-  $65 = ($$0114|0)>(0);
-  L36: do {
-   if ($65) {
-    $$01619$in$i = $$0114;
-    while(1) {
-     $$01619$i = (($$01619$in$i) + -1)|0;
-     $67 = (($$0) + ($$01619$i<<2)|0);
-     $68 = HEAP32[$67>>2]|0;
-     $69 = (($$0115) + ($$01619$i<<2)|0);
-     $70 = HEAP32[$69>>2]|0;
-     $71 = ($68|0)==($70|0);
-     if (!($71)) {
-      label = 31;
-      break;
-     }
-     $66 = ($$01619$in$i|0)>(1);
-     if ($66) {
-      $$01619$in$i = $$01619$i;
-     } else {
-      break;
-     }
-    }
-    if ((label|0) == 31) {
-     $72 = ($68>>>0)>($70>>>0);
-     if (!($72)) {
-      (__gcry_mpih_sub_n($23,$$0115,$$0,$$0114)|0);
-      $$1112155 = $$0114;
-      while(1) {
-       $74 = (($$1112155) + -1)|0;
-       $75 = (($23) + ($74<<2)|0);
-       $76 = HEAP32[$75>>2]|0;
-       $77 = ($76|0)==(0);
-       if (!($77)) {
-        $$1112$lcssa$ph = $$1112155;
-        break;
-       }
-       $73 = ($$1112155|0)>(1);
-       if ($73) {
-        $$1112155 = $74;
-       } else {
-        $$1112$lcssa$ph = $74;
-        break;
-       }
-      }
-      $78 = ($$0110|0)==(0);
-      $spec$select = $78&1;
-      $$1 = $spec$select;$$3 = $$1112$lcssa$ph;
-      $115 = ((($0)) + 4|0);
-      HEAP32[$115>>2] = $$3;
-      $116 = ((($0)) + 8|0);
-      HEAP32[$116>>2] = $$1;
-      return;
-     }
-    }
-    (__gcry_mpih_sub_n($23,$$0,$$0115,$$0114)|0);
-    if ($65) {
-     $$2151 = $$0114;
-     while(1) {
-      $80 = (($$2151) + -1)|0;
-      $81 = (($23) + ($80<<2)|0);
-      $82 = HEAP32[$81>>2]|0;
-      $83 = ($82|0)==(0);
-      if (!($83)) {
-       $$2$lcssa = $$2151;
-       break L36;
-      }
-      $79 = ($$2151|0)>(1);
-      if ($79) {
-       $$2151 = $80;
-      } else {
-       $$2$lcssa = $80;
-       break;
-      }
-     }
-    } else {
-     $$2$lcssa = $$0114;
-    }
-   } else {
-    (__gcry_mpih_sub_n($23,$$0,$$0115,$$0114)|0);
-    $$2$lcssa = $$0114;
-   }
-  } while(0);
-  $84 = ($$0110|0)!=(0);
-  $spec$select117 = $84&1;
-  $$1 = $spec$select117;$$3 = $$2$lcssa;
-  $115 = ((($0)) + 4|0);
-  HEAP32[$115>>2] = $$3;
-  $116 = ((($0)) + 8|0);
-  HEAP32[$116>>2] = $$1;
-  return;
- } else {
-  $32 = (__gcry_mpih_sub_n($23,$$0,$$0115,$$0113)|0);
-  $33 = (($$0114) - ($$0113))|0;
-  $34 = ($33|0)==(0);
-  L58: do {
-   if (!($34)) {
-    $35 = (($23) + ($$0113<<2)|0);
-    $36 = (($$0) + ($$0113<<2)|0);
-    $37 = ((($36)) + 4|0);
-    $38 = HEAP32[$36>>2]|0;
-    $39 = (($38) - ($32))|0;
-    $40 = ((($35)) + 4|0);
-    HEAP32[$35>>2] = $39;
-    $41 = ($39>>>0)>($38>>>0);
-    L60: do {
-     if ($41) {
-      $42 = (($33) + -1)|0;
-      $43 = ($42|0)==(0);
-      if ($43) {
-       break L58;
-      }
-      $$02637$i$i = $37;$$02836$i$i = $40;$45 = $42;
-      while(1) {
-       $47 = ((($$02637$i$i)) + 4|0);
-       $48 = HEAP32[$$02637$i$i>>2]|0;
-       $49 = (($48) + -1)|0;
-       $50 = ((($$02836$i$i)) + 4|0);
-       HEAP32[$$02836$i$i>>2] = $49;
-       $51 = ($48|0)==(0);
-       if (!($51)) {
-        $$1$i$i = $45;$$127$i$i = $47;$$129$i$i = $50;
-        break L60;
-       }
-       $44 = (($45) + -1)|0;
-       $46 = ($44|0)==(0);
-       if ($46) {
-        break L58;
-       } else {
-        $$02637$i$i = $47;$$02836$i$i = $50;$45 = $44;
-       }
-      }
-     } else {
-      $$1$i$i = $33;$$127$i$i = $37;$$129$i$i = $40;
-     }
-    } while(0);
-    $52 = ($$129$i$i|0)==($$127$i$i|0);
-    if (!($52)) {
-     $53 = (($$1$i$i) + -1)|0;
-     $54 = ($$1$i$i|0)>(1);
-     if ($54) {
-      $$035$i$i = 0;
-      while(1) {
-       $55 = (($$127$i$i) + ($$035$i$i<<2)|0);
-       $56 = HEAP32[$55>>2]|0;
-       $57 = (($$129$i$i) + ($$035$i$i<<2)|0);
-       HEAP32[$57>>2] = $56;
-       $58 = (($$035$i$i) + 1)|0;
-       $exitcond$i$i = ($58|0)==($53|0);
-       if ($exitcond$i$i) {
-        break;
-       } else {
-        $$035$i$i = $58;
-       }
-      }
-     }
-    }
-   }
-  } while(0);
-  $59 = ($$0114|0)>(0);
-  if (!($59)) {
-   $$1 = $$0110;$$3 = $$0114;
-   $115 = ((($0)) + 4|0);
-   HEAP32[$115>>2] = $$3;
-   $116 = ((($0)) + 8|0);
-   HEAP32[$116>>2] = $$1;
-   return;
-  }
-  $$0111161 = $$0114;
-  while(1) {
-   $61 = (($$0111161) + -1)|0;
-   $62 = (($23) + ($61<<2)|0);
-   $63 = HEAP32[$62>>2]|0;
-   $64 = ($63|0)==(0);
-   if (!($64)) {
-    $$1 = $$0110;$$3 = $$0111161;
-    label = 52;
-    break;
-   }
-   $60 = ($$0111161|0)>(1);
-   if ($60) {
-    $$0111161 = $61;
-   } else {
-    $$1 = $$0110;$$3 = $61;
-    label = 52;
-    break;
-   }
-  }
-  if ((label|0) == 52) {
-   $115 = ((($0)) + 4|0);
-   HEAP32[$115>>2] = $$3;
-   $116 = ((($0)) + 8|0);
-   HEAP32[$116>>2] = $$1;
-   return;
-  }
- }
-}
-function __gcry_mpi_sub_ui($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$024$i = 0, $$02637$i = 0, $$02637$i62 = 0, $$02836$i = 0, 
$$02836$i63 = 0, $$035$i = 0, $$035$i69 = 0, $$052 = 0, $$1$i = 0, $$1$i66 = 0, 
$$127$i = 0, $$127$i65 = 0, $$129$i = 0, $$129$i64 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, 
$exitcond$i = 0, $exitcond$i70 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($1)) + 8|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = HEAP32[$0>>2]|0;
- $8 = ($7|0)>($4|0);
- if (!($8)) {
-  $9 = (($4) + 1)|0;
-  __gcry_mpi_resize($0,$9);
- }
- $10 = ((($1)) + 16|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($0)) + 16|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ($4|0)==(0);
- if ($14) {
-  HEAP32[$13>>2] = $2;
-  $15 = ($2|0)!=(0);
-  $16 = $15&1;
-  $$0 = $16;$$052 = 1;
-  $74 = ((($0)) + 4|0);
-  HEAP32[$74>>2] = $$0;
-  $75 = ((($0)) + 8|0);
-  HEAP32[$75>>2] = $$052;
-  return;
- }
- $17 = ($6|0)==(0);
- if (!($17)) {
-  $18 = ((($11)) + 4|0);
-  $19 = HEAP32[$11>>2]|0;
-  $20 = (($19) + ($2))|0;
-  $21 = ((($13)) + 4|0);
-  HEAP32[$13>>2] = $20;
-  $22 = ($20>>>0)<($19>>>0);
-  L10: do {
-   if ($22) {
-    $23 = (($4) + -1)|0;
-    $24 = ($23|0)==(0);
-    if ($24) {
-     $$024$i = 1;
-    } else {
-     $$02637$i = $18;$$02836$i = $21;$26 = $23;
-     while(1) {
-      $28 = ((($$02637$i)) + 4|0);
-      $29 = HEAP32[$$02637$i>>2]|0;
-      $30 = (($29) + 1)|0;
-      $31 = ((($$02836$i)) + 4|0);
-      HEAP32[$$02836$i>>2] = $30;
-      $32 = ($30|0)==(0);
-      if (!($32)) {
-       $$1$i = $26;$$127$i = $28;$$129$i = $31;
-       label = 11;
-       break L10;
-      }
-      $25 = (($26) + -1)|0;
-      $27 = ($25|0)==(0);
-      if ($27) {
-       $$024$i = 1;
-       break;
-      } else {
-       $$02637$i = $28;$$02836$i = $31;$26 = $25;
-      }
-     }
-    }
-   } else {
-    $$1$i = $4;$$127$i = $18;$$129$i = $21;
-    label = 11;
-   }
-  } while(0);
-  if ((label|0) == 11) {
-   $33 = ($$129$i|0)==($$127$i|0);
-   if ($33) {
-    $$024$i = 0;
-   } else {
-    $34 = (($$1$i) + -1)|0;
-    $35 = ($$1$i|0)>(1);
-    if ($35) {
-     $$035$i = 0;
-     while(1) {
-      $36 = (($$127$i) + ($$035$i<<2)|0);
-      $37 = HEAP32[$36>>2]|0;
-      $38 = (($$129$i) + ($$035$i<<2)|0);
-      HEAP32[$38>>2] = $37;
-      $39 = (($$035$i) + 1)|0;
-      $exitcond$i = ($39|0)==($34|0);
-      if ($exitcond$i) {
-       $$024$i = 0;
-       break;
-      } else {
-       $$035$i = $39;
-      }
-     }
-    } else {
-     $$024$i = 0;
-    }
-   }
-  }
-  $40 = (($13) + ($4<<2)|0);
-  HEAP32[$40>>2] = $$024$i;
-  $41 = (($$024$i) + ($4))|0;
-  $$0 = $41;$$052 = 0;
-  $74 = ((($0)) + 4|0);
-  HEAP32[$74>>2] = $$0;
-  $75 = ((($0)) + 8|0);
-  HEAP32[$75>>2] = $$052;
-  return;
- }
- $42 = ($4|0)==(1);
- L25: do {
-  if ($42) {
-   $43 = HEAP32[$11>>2]|0;
-   $44 = ($43>>>0)<($2>>>0);
-   if (!($44)) {
-    $67 = (($43) - ($2))|0;
-    HEAP32[$13>>2] = $67;
-    break;
-   }
-   $45 = (($2) - ($43))|0;
-   HEAP32[$13>>2] = $45;
-   $$0 = 1;$$052 = 1;
-   $74 = ((($0)) + 4|0);
-   HEAP32[$74>>2] = $$0;
-   $75 = ((($0)) + 8|0);
-   HEAP32[$75>>2] = $$052;
-   return;
-  } else {
-   $46 = ((($11)) + 4|0);
-   $47 = HEAP32[$11>>2]|0;
-   $48 = (($47) - ($2))|0;
-   $49 = ((($13)) + 4|0);
-   HEAP32[$13>>2] = $48;
-   $50 = ($48>>>0)>($47>>>0);
-   L32: do {
-    if ($50) {
-     $51 = (($4) + -1)|0;
-     $$02637$i62 = $46;$$02836$i63 = $49;$53 = $51;
-     while(1) {
-      $55 = ((($$02637$i62)) + 4|0);
-      $56 = HEAP32[$$02637$i62>>2]|0;
-      $57 = (($56) + -1)|0;
-      $58 = ((($$02836$i63)) + 4|0);
-      HEAP32[$$02836$i63>>2] = $57;
-      $59 = ($56|0)==(0);
-      if (!($59)) {
-       $$1$i66 = $53;$$127$i65 = $55;$$129$i64 = $58;
-       break L32;
-      }
-      $52 = (($53) + -1)|0;
-      $54 = ($52|0)==(0);
-      if ($54) {
-       break L25;
-      } else {
-       $$02637$i62 = $55;$$02836$i63 = $58;$53 = $52;
-      }
-     }
-    } else {
-     $$1$i66 = $4;$$127$i65 = $46;$$129$i64 = $49;
-    }
-   } while(0);
-   $60 = ($$129$i64|0)==($$127$i65|0);
-   if (!($60)) {
-    $61 = (($$1$i66) + -1)|0;
-    $62 = ($$1$i66|0)>(1);
-    if ($62) {
-     $$035$i69 = 0;
-     while(1) {
-      $63 = (($$127$i65) + ($$035$i69<<2)|0);
-      $64 = HEAP32[$63>>2]|0;
-      $65 = (($$129$i64) + ($$035$i69<<2)|0);
-      HEAP32[$65>>2] = $64;
-      $66 = (($$035$i69) + 1)|0;
-      $exitcond$i70 = ($66|0)==($61|0);
-      if ($exitcond$i70) {
-       break;
-      } else {
-       $$035$i69 = $66;
-      }
-     }
-    }
-   }
-  }
- } while(0);
- $68 = (($4) + -1)|0;
- $69 = (($13) + ($68<<2)|0);
- $70 = HEAP32[$69>>2]|0;
- $71 = ($70|0)==(0);
- $72 = $71&1;
- $73 = (($4) - ($72))|0;
- $$0 = $73;$$052 = 0;
- $74 = ((($0)) + 4|0);
- HEAP32[$74>>2] = $$0;
- $75 = ((($0)) + 8|0);
- HEAP32[$75>>2] = $$052;
- return;
-}
-function __gcry_mpi_sub($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_copy($2)|0);
- $4 = ((($3)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($5|0)==(0);
- $7 = $6&1;
- HEAP32[$4>>2] = $7;
- __gcry_mpi_add($0,$1,$3);
- __gcry_mpi_free($3);
- return;
-}
-function __gcry_mpi_addm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_add($0,$1,$2);
- __gcry_mpi_mod($0,$0,$3);
- return;
-}
-function __gcry_mpi_subm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (__gcry_mpi_copy($2)|0);
- $5 = ((($4)) + 8|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)==(0);
- $8 = $7&1;
- HEAP32[$5>>2] = $8;
- __gcry_mpi_add($0,$1,$4);
- __gcry_mpi_free($4);
- __gcry_mpi_mod($0,$0,$3);
- return;
-}
-function __gcry_mpi_normalize($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 
= 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if (!($1)) {
-  $2 = ((($0)) + 12|0);
-  $3 = HEAP32[$2>>2]|0;
-  $4 = $3 & 4;
-  $5 = ($4|0)==(0);
-  if (!($5)) {
-   return;
-  }
- }
- $6 = ((($0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0);
- if ($8) {
-  return;
- }
- $9 = ((($0)) + 16|0);
- $10 = HEAP32[$9>>2]|0;
- $12 = $7;
- while(1) {
-  $11 = (($12) + -1)|0;
-  $13 = (($10) + ($11<<2)|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = ($14|0)==(0);
-  if (!($15)) {
-   label = 7;
-   break;
-  }
-  HEAP32[$6>>2] = $11;
-  $16 = ($11|0)==(0);
-  if ($16) {
-   label = 7;
-   break;
-  } else {
-   $12 = $11;
-  }
- }
- if ((label|0) == 7) {
-  return;
- }
-}
-function __gcry_mpi_get_nbits($0) {
- $0 = $0|0;
- var $$0 = 0, $$024 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- L1: do {
-  if ($1) {
-   $8 = HEAP32[(4)>>2]|0;
-   $9 = ($8|0)==(0);
-   if (!($9)) {
-    $10 = HEAP32[(16)>>2]|0;
-    $12 = $8;
-    while(1) {
-     $11 = (($12) + -1)|0;
-     $13 = (($10) + ($11<<2)|0);
-     $14 = HEAP32[$13>>2]|0;
-     $15 = ($14|0)==(0);
-     if (!($15)) {
-      break L1;
-     }
-     HEAP32[(4)>>2] = $11;
-     $16 = ($11|0)==(0);
-     if ($16) {
-      break;
-     } else {
-      $12 = $11;
-     }
-    }
-   }
-  } else {
-   $2 = ((($0)) + 12|0);
-   $3 = HEAP32[$2>>2]|0;
-   $4 = $3 & 4;
-   $5 = ($4|0)==(0);
-   if (!($5)) {
-    $6 = ((($0)) + 8|0);
-    $7 = HEAP32[$6>>2]|0;
-    $$0 = $7;
-    return ($$0|0);
-   }
-   $17 = ((($0)) + 4|0);
-   $18 = HEAP32[$17>>2]|0;
-   $19 = ($18|0)==(0);
-   if (!($19)) {
-    $20 = ((($0)) + 16|0);
-    $21 = HEAP32[$20>>2]|0;
-    $23 = $18;
-    while(1) {
-     $22 = (($23) + -1)|0;
-     $24 = (($21) + ($22<<2)|0);
-     $25 = HEAP32[$24>>2]|0;
-     $26 = ($25|0)==(0);
-     if (!($26)) {
-      break L1;
-     }
-     HEAP32[$17>>2] = $22;
-     $27 = ($22|0)==(0);
-     if ($27) {
-      break;
-     } else {
-      $23 = $22;
-     }
-    }
-   }
-  }
- } while(0);
- $28 = ((($0)) + 4|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = ($29|0)==(0);
- if ($30) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $31 = ((($0)) + 16|0);
- $32 = HEAP32[$31>>2]|0;
- $33 = (($29) + -1)|0;
- $34 = (($32) + ($33<<2)|0);
- $35 = HEAP32[$34>>2]|0;
- $36 = ($35|0)==(0);
- if ($36) {
-  $$024 = 0;
- } else {
-  $37 = ($35>>>0)<(65536);
-  $38 = ($35>>>0)<(256);
-  $39 = $38 ? 0 : 8;
-  $40 = ($35>>>0)<(16777216);
-  $41 = $40 ? 16 : 24;
-  $42 = $37 ? $39 : $41;
-  $43 = $35 >>> $42;
-  $44 = (14784 + ($43)|0);
-  $45 = HEAP8[$44>>0]|0;
-  $46 = $45&255;
-  $47 = (($42) + ($46))|0;
-  $$024 = $47;
- }
- $48 = $29 << 5;
- $49 = (($48) + -32)|0;
- $50 = (($49) + ($$024))|0;
- $$0 = $50;
- return ($$0|0);
-}
-function __gcry_mpi_test_bit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = $1 >>> 5;
- $3 = ((($0)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($2>>>0)<($4>>>0);
- if (!($5)) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $6 = $1 & 31;
- $7 = ((($0)) + 16|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = (($8) + ($2<<2)|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = 1 << $6;
- $12 = $10 & $11;
- $13 = ($12|0)!=(0);
- $14 = $13&1;
- $$0 = $14;
- return ($$0|0);
-}
-function __gcry_mpi_set_bit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$022 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $3 = 0;
- var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if (!($2)) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 16;
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $7 = $1 >>> 5;
- $8 = $1 & 31;
- $9 = ((($0)) + 4|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($7>>>0)<($10>>>0);
- if (!($11)) {
-  $12 = HEAP32[$0>>2]|0;
-  $13 = ($10>>>0)<($12>>>0);
-  if ($13) {
-   $14 = ((($0)) + 16|0);
-   $15 = HEAP32[$14>>2]|0;
-   $$022 = $10;
-   while(1) {
-    $16 = (($15) + ($$022<<2)|0);
-    HEAP32[$16>>2] = 0;
-    $17 = (($$022) + 1)|0;
-    $18 = HEAP32[$0>>2]|0;
-    $19 = ($17>>>0)<($18>>>0);
-    if ($19) {
-     $$022 = $17;
-    } else {
-     break;
-    }
-   }
-  }
-  $20 = (($7) + 1)|0;
-  __gcry_mpi_resize($0,$20);
-  HEAP32[$9>>2] = $20;
- }
- $21 = 1 << $8;
- $22 = ((($0)) + 16|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = (($23) + ($7<<2)|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = $25 | $21;
- HEAP32[$24>>2] = $26;
- return;
-}
-function __gcry_mpi_set_highbit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$03033 = 0, $$031 = 0, $$032 = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if (!($2)) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 16;
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $7 = $1 >>> 5;
- $8 = $1 & 31;
- $9 = ((($0)) + 4|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($7>>>0)<($10>>>0);
- if (!($11)) {
-  $12 = HEAP32[$0>>2]|0;
-  $13 = ($10>>>0)<($12>>>0);
-  if ($13) {
-   $14 = ((($0)) + 16|0);
-   $15 = HEAP32[$14>>2]|0;
-   $$03033 = $10;
-   while(1) {
-    $16 = (($15) + ($$03033<<2)|0);
-    HEAP32[$16>>2] = 0;
-    $17 = (($$03033) + 1)|0;
-    $18 = HEAP32[$0>>2]|0;
-    $19 = ($17>>>0)<($18>>>0);
-    if ($19) {
-     $$03033 = $17;
-    } else {
-     break;
-    }
-   }
-  }
-  $20 = (($7) + 1)|0;
-  __gcry_mpi_resize($0,$20);
-  HEAP32[$9>>2] = $20;
- }
- $21 = 1 << $8;
- $22 = ((($0)) + 16|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = (($23) + ($7<<2)|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = $25 | $21;
- HEAP32[$24>>2] = $26;
- $$031 = (($8) + 1)|0;
- $27 = ($$031>>>0)<(32);
- if ($27) {
-  $$032 = $$031;$31 = $26;
-  while(1) {
-   $28 = 1 << $$032;
-   $29 = $28 ^ -1;
-   $30 = $31 & $29;
-   $$0 = (($$032) + 1)|0;
-   $exitcond = ($$0|0)==(32);
-   if ($exitcond) {
-    break;
-   } else {
-    $$032 = $$0;$31 = $30;
-   }
-  }
-  HEAP32[$24>>2] = $30;
- }
- $32 = (($7) + 1)|0;
- HEAP32[$9>>2] = $32;
- return;
-}
-function __gcry_mpi_clear_highbit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$015 = 0, $$promoted = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $exitcond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if (!($2)) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 16;
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $7 = $1 >>> 5;
- $8 = ((($0)) + 4|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($7>>>0)<($9>>>0);
- if (!($10)) {
-  return;
- }
- $11 = $1 & 31;
- $12 = ((($0)) + 16|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = (($13) + ($7<<2)|0);
- $$promoted = HEAP32[$14>>2]|0;
- $$015 = $11;$18 = $$promoted;
- while(1) {
-  $15 = 1 << $$015;
-  $16 = $15 ^ -1;
-  $17 = $18 & $16;
-  $19 = (($$015) + 1)|0;
-  $exitcond = ($19|0)==(32);
-  if ($exitcond) {
-   break;
-  } else {
-   $$015 = $19;$18 = $17;
-  }
- }
- HEAP32[$14>>2] = $17;
- $20 = (($7) + 1)|0;
- HEAP32[$8>>2] = $20;
- return;
-}
-function __gcry_mpi_clear_bit($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if (!($2)) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 16;
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $7 = $1 >>> 5;
- $8 = ((($0)) + 4|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($7>>>0)<($9>>>0);
- if (!($10)) {
-  return;
- }
- $11 = $1 & 31;
- $12 = 1 << $11;
- $13 = $12 ^ -1;
- $14 = ((($0)) + 16|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (($15) + ($7<<2)|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = $17 & $13;
- HEAP32[$16>>2] = $18;
- return;
-}
-function __gcry_mpi_rshift_limbs($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$lcssa = 0, $$022 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, 
$4 = 0, $5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $exitcond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 16|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($0)) + 4|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($0|0)==(0|0);
- if (!($6)) {
-  $7 = ((($0)) + 12|0);
-  $8 = HEAP32[$7>>2]|0;
-  $9 = $8 & 16;
-  $10 = ($9|0)==(0);
-  if (!($10)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $11 = ($5>>>0)>($1>>>0);
- if (!($11)) {
-  HEAP32[$4>>2] = 0;
-  return;
- }
- $12 = (($5) - ($1))|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  $$0$lcssa = 0;
- } else {
-  $$022 = 0;
-  while(1) {
-   $14 = (($$022) + ($1))|0;
-   $15 = (($3) + ($14<<2)|0);
-   $16 = HEAP32[$15>>2]|0;
-   $17 = (($3) + ($$022<<2)|0);
-   HEAP32[$17>>2] = $16;
-   $18 = (($$022) + 1)|0;
-   $exitcond = ($18|0)==($12|0);
-   if ($exitcond) {
-    $$0$lcssa = $12;
-    break;
-   } else {
-    $$022 = $18;
-   }
-  }
- }
- $19 = (($3) + ($$0$lcssa<<2)|0);
- HEAP32[$19>>2] = 0;
- $20 = HEAP32[$4>>2]|0;
- $21 = (($20) - ($1))|0;
- HEAP32[$4>>2] = $21;
- return;
-}
-function __gcry_mpi_rshift($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$099 = 0, $$1111 = 0, $$2105 = 0, $$3102 = 0, $$lcssa116 = 0, $$lcssa117 
= 0, $$pr = 0, $$pre$phi$phZ2D = 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 = 
0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0;
- var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 
0, $3 = 0, $30 = 0, $31 = 0;
- var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, 
$4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond3 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = $2 >>> 5;
- $4 = $2 & 31;
- $5 = ($0|0)==(0|0);
- if (!($5)) {
-  $6 = ((($0)) + 12|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = $7 & 16;
-  $9 = ($8|0)==(0);
-  if (!($9)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $10 = ($0|0)==($1|0);
- L6: do {
-  if ($10) {
-   $11 = ((($0)) + 4|0);
-   $12 = HEAP32[$11>>2]|0;
-   $13 = ($3>>>0)<($12>>>0);
-   if (!($13)) {
-    HEAP32[$11>>2] = 0;
-    return;
-   }
-   $14 = ($3|0)==(0);
-   if ($14) {
-    $34 = $12;
-   } else {
-    $15 = ((($0)) + 16|0);
-    $16 = HEAP32[$15>>2]|0;
-    $17 = (($16) + ($3<<2)|0);
-    $18 = HEAP32[$17>>2]|0;
-    HEAP32[$16>>2] = $18;
-    $19 = HEAP32[$11>>2]|0;
-    $20 = (($19) - ($3))|0;
-    $21 = ($20>>>0)>(1);
-    if ($21) {
-     $$099 = 1;
-     while(1) {
-      $22 = (($$099) + ($3))|0;
-      $23 = (($16) + ($22<<2)|0);
-      $24 = HEAP32[$23>>2]|0;
-      $25 = (($16) + ($$099<<2)|0);
-      HEAP32[$25>>2] = $24;
-      $26 = (($$099) + 1)|0;
-      $27 = HEAP32[$11>>2]|0;
-      $28 = (($27) - ($3))|0;
-      $29 = ($26>>>0)<($28>>>0);
-      if ($29) {
-       $$099 = $26;
-      } else {
-       $$lcssa116 = $26;
-       break;
-      }
-     }
-    } else {
-     $$lcssa116 = 1;
-    }
-    $30 = (($16) + ($$lcssa116<<2)|0);
-    HEAP32[$30>>2] = 0;
-    $31 = HEAP32[$11>>2]|0;
-    $32 = (($31) - ($3))|0;
-    HEAP32[$11>>2] = $32;
-    $34 = $32;
-   }
-   $33 = ($34|0)!=(0);
-   $35 = ($4|0)!=(0);
-   $or$cond = $35 & $33;
-   if ($or$cond) {
-    $36 = ((($0)) + 16|0);
-    $37 = HEAP32[$36>>2]|0;
-    (__gcry_mpih_rshift($37,$37,$34,$4)|0);
-    $$pre$phi$phZ2D = $11;
-    label = 34;
-   } else {
-    $$pre$phi$phZ2D = $11;
-    label = 34;
-   }
-  } else {
-   $38 = ($3|0)==(0);
-   $39 = ((($1)) + 4|0);
-   $40 = HEAP32[$39>>2]|0;
-   $41 = ((($1)) + 8|0);
-   $42 = HEAP32[$41>>2]|0;
-   $43 = ((($0)) + 8|0);
-   HEAP32[$43>>2] = $42;
-   $44 = HEAP32[$0>>2]|0;
-   $45 = ($44|0)<($40|0);
-   if ($38) {
-    if ($45) {
-     __gcry_mpi_resize($0,$40);
-    }
-    $81 = ((($0)) + 4|0);
-    HEAP32[$81>>2] = $40;
-    $82 = ($40|0)==(0);
-    if ($82) {
-     return;
-    }
-    $83 = ($4|0)==(0);
-    if (!($83)) {
-     $84 = ((($0)) + 16|0);
-     $85 = HEAP32[$84>>2]|0;
-     $86 = ((($1)) + 16|0);
-     $87 = HEAP32[$86>>2]|0;
-     (__gcry_mpih_rshift($85,$87,$40,$4)|0);
-     $$pre$phi$phZ2D = $81;
-     label = 34;
-     break;
-    }
-    $88 = ((($1)) + 16|0);
-    $89 = HEAP32[$88>>2]|0;
-    $90 = ((($0)) + 16|0);
-    $91 = HEAP32[$90>>2]|0;
-    $$3102 = 0;
-    while(1) {
-     $92 = (($89) + ($$3102<<2)|0);
-     $93 = HEAP32[$92>>2]|0;
-     $94 = (($91) + ($$3102<<2)|0);
-     HEAP32[$94>>2] = $93;
-     $95 = (($$3102) + 1)|0;
-     $96 = HEAP32[$81>>2]|0;
-     $97 = ($95>>>0)<($96>>>0);
-     if ($97) {
-      $$3102 = $95;
-     } else {
-      $$pre$phiZ2D = $81;$99 = $96;
-      break L6;
-     }
-    }
-   }
-   if ($45) {
-    __gcry_mpi_resize($0,$40);
-   }
-   $46 = ((($0)) + 4|0);
-   HEAP32[$46>>2] = $40;
-   $47 = HEAP32[$39>>2]|0;
-   $48 = ($47|0)==(0);
-   if ($48) {
-    $59 = 0;
-   } else {
-    $49 = ((($1)) + 16|0);
-    $50 = HEAP32[$49>>2]|0;
-    $51 = ((($0)) + 16|0);
-    $52 = HEAP32[$51>>2]|0;
-    $$1111 = 0;
-    while(1) {
-     $53 = (($50) + ($$1111<<2)|0);
-     $54 = HEAP32[$53>>2]|0;
-     $55 = (($52) + ($$1111<<2)|0);
-     HEAP32[$55>>2] = $54;
-     $56 = (($$1111) + 1)|0;
-     $57 = HEAP32[$39>>2]|0;
-     $58 = ($56>>>0)<($57>>>0);
-     if ($58) {
-      $$1111 = $56;
-     } else {
-      $59 = $56;
-      break;
-     }
-    }
-   }
-   HEAP32[$46>>2] = $59;
-   $60 = ($3>>>0)<($59>>>0);
-   if (!($60)) {
-    HEAP32[$46>>2] = 0;
-    return;
-   }
-   $61 = ((($0)) + 16|0);
-   $62 = HEAP32[$61>>2]|0;
-   $63 = (($62) + ($3<<2)|0);
-   $64 = HEAP32[$63>>2]|0;
-   HEAP32[$62>>2] = $64;
-   $65 = HEAP32[$46>>2]|0;
-   $66 = (($65) - ($3))|0;
-   $67 = ($66>>>0)>(1);
-   if ($67) {
-    $$2105 = 1;
-    while(1) {
-     $68 = (($$2105) + ($3))|0;
-     $69 = (($62) + ($68<<2)|0);
-     $70 = HEAP32[$69>>2]|0;
-     $71 = (($62) + ($$2105<<2)|0);
-     HEAP32[$71>>2] = $70;
-     $72 = (($$2105) + 1)|0;
-     $73 = HEAP32[$46>>2]|0;
-     $74 = (($73) - ($3))|0;
-     $75 = ($72>>>0)<($74>>>0);
-     if ($75) {
-      $$2105 = $72;
-     } else {
-      $$lcssa117 = $72;
-      break;
-     }
-    }
-   } else {
-    $$lcssa117 = 1;
-   }
-   $76 = (($62) + ($$lcssa117<<2)|0);
-   HEAP32[$76>>2] = 0;
-   $77 = HEAP32[$46>>2]|0;
-   $78 = (($77) - ($3))|0;
-   HEAP32[$46>>2] = $78;
-   $79 = ($78|0)!=(0);
-   $80 = ($4|0)!=(0);
-   $or$cond3 = $80 & $79;
-   if ($or$cond3) {
-    (__gcry_mpih_rshift($62,$62,$78,$4)|0);
-    $$pre$phi$phZ2D = $46;
-    label = 34;
-   } else {
-    $$pre$phiZ2D = $46;$99 = $78;
-   }
-  }
- } while(0);
- if ((label|0) == 34) {
-  $$pr = HEAP32[$$pre$phi$phZ2D>>2]|0;
-  $$pre$phiZ2D = $$pre$phi$phZ2D;$99 = $$pr;
- }
- $98 = ($99|0)>(0);
- if (!($98)) {
-  return;
- }
- $100 = ((($0)) + 16|0);
- $101 = HEAP32[$100>>2]|0;
- $103 = $99;
- while(1) {
-  $102 = (($103) + -1)|0;
-  $104 = (($101) + ($102<<2)|0);
-  $105 = HEAP32[$104>>2]|0;
-  $106 = ($105|0)==(0);
-  if (!($106)) {
-   label = 39;
-   break;
-  }
-  HEAP32[$$pre$phiZ2D>>2] = $102;
-  $107 = ($103|0)>(1);
-  if ($107) {
-   $103 = $102;
-  } else {
-   label = 39;
-   break;
-  }
- }
- if ((label|0) == 39) {
-  return;
- }
-}
-function __gcry_mpi_lshift_limbs($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$032 = 0, $$032$in = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0;
- var $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ($1|0)!=(0);
- $5 = ($3|0)!=(0);
- $or$cond = $4 & $5;
- if (!($or$cond)) {
-  return;
- }
- $6 = HEAP32[$0>>2]|0;
- $7 = (($3) + ($1))|0;
- $8 = ($6>>>0)<($7>>>0);
- if ($8) {
-  __gcry_mpi_resize($0,$7);
- }
- $9 = ((($0)) + 16|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($3|0)>(0);
- if ($11) {
-  $$032$in = $3;
-  while(1) {
-   $$032 = (($$032$in) + -1)|0;
-   $12 = (($10) + ($$032<<2)|0);
-   $13 = HEAP32[$12>>2]|0;
-   $14 = (($$032) + ($1))|0;
-   $15 = (($10) + ($14<<2)|0);
-   HEAP32[$15>>2] = $13;
-   $16 = ($$032$in|0)>(1);
-   if ($16) {
-    $$032$in = $$032;
-   } else {
-    break;
-   }
-  }
- }
- $17 = $1 << 2;
- _memset(($10|0),0,($17|0))|0;
- $18 = HEAP32[$2>>2]|0;
- $19 = (($18) + ($1))|0;
- HEAP32[$2>>2] = $19;
- return;
-}
-function __gcry_mpi_lshift($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$032$i = 0, $$032$i63 = 0, $$032$in$i = 0, $$032$in$i62 = 0, $$067 = 0, 
$$pr = 0, $$pre = 0, $$pre$phi$phZ2D = 0, $$pre$phiZ2D = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0;
- var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $9 = 0, 
$exitcond = 0, $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = $2 >>> 5;
- $4 = $2 & 31;
- $5 = ($0|0)==(0|0);
- if (!($5)) {
-  $6 = ((($0)) + 12|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = $7 & 16;
-  $9 = ($8|0)==(0);
-  if (!($9)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $10 = ($0|0)!=($1|0);
- $11 = ($2|0)!=(0);
- $or$cond = $10 | $11;
- if (!($or$cond)) {
-  return;
- }
- if ($10) {
-  $12 = ((($1)) + 4|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ((($1)) + 8|0);
-  $15 = HEAP32[$14>>2]|0;
-  $16 = HEAP32[$0>>2]|0;
-  $17 = (($3) + 1)|0;
-  $18 = (($17) + ($13))|0;
-  $19 = ($16>>>0)<($18>>>0);
-  if ($19) {
-   __gcry_mpi_resize($0,$18);
-  }
-  $20 = ((($0)) + 16|0);
-  $21 = HEAP32[$20>>2]|0;
-  $22 = ((($1)) + 16|0);
-  $23 = HEAP32[$22>>2]|0;
-  $24 = ($13|0)==(0);
-  if (!($24)) {
-   $$067 = 0;
-   while(1) {
-    $25 = (($23) + ($$067<<2)|0);
-    $26 = HEAP32[$25>>2]|0;
-    $27 = (($21) + ($$067<<2)|0);
-    HEAP32[$27>>2] = $26;
-    $28 = (($$067) + 1)|0;
-    $exitcond = ($28|0)==($13|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$067 = $28;
-    }
-   }
-  }
-  $29 = ((($0)) + 4|0);
-  HEAP32[$29>>2] = $13;
-  $30 = ((($1)) + 12|0);
-  $31 = HEAP32[$30>>2]|0;
-  $32 = ((($0)) + 12|0);
-  HEAP32[$32>>2] = $31;
-  $33 = ((($0)) + 8|0);
-  HEAP32[$33>>2] = $15;
- }
- $34 = ($3|0)==(0);
- $35 = ($4|0)!=(0);
- $or$cond3 = $34 | $35;
- if ($or$cond3) {
-  if ($11) {
-   $53 = (($3) + 1)|0;
-   $54 = ((($0)) + 4|0);
-   $55 = HEAP32[$54>>2]|0;
-   $56 = ($55|0)==(0);
-   if (!($56)) {
-    $57 = HEAP32[$0>>2]|0;
-    $58 = (($55) + ($53))|0;
-    $59 = ($57>>>0)<($58>>>0);
-    if ($59) {
-     __gcry_mpi_resize($0,$58);
-    }
-    $60 = ((($0)) + 16|0);
-    $61 = HEAP32[$60>>2]|0;
-    $62 = ($55|0)>(0);
-    if ($62) {
-     $$032$in$i62 = $55;
-     while(1) {
-      $$032$i63 = (($$032$in$i62) + -1)|0;
-      $63 = (($61) + ($$032$i63<<2)|0);
-      $64 = HEAP32[$63>>2]|0;
-      $65 = (($$032$in$i62) + ($3))|0;
-      $66 = (($61) + ($65<<2)|0);
-      HEAP32[$66>>2] = $64;
-      $67 = ($$032$in$i62|0)>(1);
-      if ($67) {
-       $$032$in$i62 = $$032$i63;
-      } else {
-       break;
-      }
-     }
-    }
-    $68 = $53 << 2;
-    _memset(($61|0),0,($68|0))|0;
-    $69 = HEAP32[$54>>2]|0;
-    $70 = (($69) + ($53))|0;
-    HEAP32[$54>>2] = $70;
-   }
-   $71 = (32 - ($4))|0;
-   __gcry_mpi_rshift($0,$0,$71);
-   $$pre$phi$phZ2D = $54;
-  } else {
-   $$pre = ((($0)) + 4|0);
-   $$pre$phi$phZ2D = $$pre;
-  }
-  $$pr = HEAP32[$$pre$phi$phZ2D>>2]|0;
-  $$pre$phiZ2D = $$pre$phi$phZ2D;$73 = $$pr;
- } else {
-  $36 = ((($0)) + 4|0);
-  $37 = HEAP32[$36>>2]|0;
-  $38 = ($37|0)==(0);
-  if ($38) {
-   return;
-  }
-  $39 = HEAP32[$0>>2]|0;
-  $40 = (($37) + ($3))|0;
-  $41 = ($39>>>0)<($40>>>0);
-  if ($41) {
-   __gcry_mpi_resize($0,$40);
-  }
-  $42 = ((($0)) + 16|0);
-  $43 = HEAP32[$42>>2]|0;
-  $44 = ($37|0)>(0);
-  if ($44) {
-   $$032$in$i = $37;
-   while(1) {
-    $$032$i = (($$032$in$i) + -1)|0;
-    $45 = (($43) + ($$032$i<<2)|0);
-    $46 = HEAP32[$45>>2]|0;
-    $47 = (($$032$i) + ($3))|0;
-    $48 = (($43) + ($47<<2)|0);
-    HEAP32[$48>>2] = $46;
-    $49 = ($$032$in$i|0)>(1);
-    if ($49) {
-     $$032$in$i = $$032$i;
-    } else {
-     break;
-    }
-   }
-  }
-  $50 = $3 << 2;
-  _memset(($43|0),0,($50|0))|0;
-  $51 = HEAP32[$36>>2]|0;
-  $52 = (($51) + ($3))|0;
-  HEAP32[$36>>2] = $52;
-  $$pre$phiZ2D = $36;$73 = $52;
- }
- $72 = ($73|0)>(0);
- if (!($72)) {
-  return;
- }
- $74 = ((($0)) + 16|0);
- $75 = HEAP32[$74>>2]|0;
- $77 = $73;
- while(1) {
-  $76 = (($77) + -1)|0;
-  $78 = (($75) + ($76<<2)|0);
-  $79 = HEAP32[$78>>2]|0;
-  $80 = ($79|0)==(0);
-  if (!($80)) {
-   label = 35;
-   break;
-  }
-  HEAP32[$$pre$phiZ2D>>2] = $76;
-  $81 = ($77|0)>(1);
-  if ($81) {
-   $77 = $76;
-  } else {
-   label = 35;
-   break;
-  }
- }
- if ((label|0) == 35) {
-  return;
- }
-}
-function __gcry_mpi_cmp_ui($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$ = 0, $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 
= 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_normalize($0);
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  $5 = ($1|0)!=(0);
-  $6 = $5 << 31 >> 31;
-  $$0 = $6;
-  return ($$0|0);
- }
- $7 = ((($0)) + 8|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(0);
- if (!($9)) {
-  $$0 = -1;
-  return ($$0|0);
- }
- $10 = ($3|0)==(1);
- if ($10) {
-  $11 = ((($0)) + 16|0);
-  $12 = HEAP32[$11>>2]|0;
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($13>>>0)>($1>>>0);
-  $15 = ($13>>>0)<($1>>>0);
-  $$ = $15 << 31 >> 31;
-  $spec$select = $14 ? 1 : $$;
-  return ($spec$select|0);
- } else {
-  $$0 = 1;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_mpi_cmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$ = 0, $$0 = 0, $$01619$i = 0, $$01619$in$i = 0, $$phi$trans$insert = 0, 
$$phi$trans$insert66 = 0, $$pre = 0, $$pre67 = 0, $$pre71 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 
0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 
= 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)!=(0|0);
- if ($2) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 4;
-  $6 = ($5|0)==(0);
-  if ($6) {
-   label = 3;
-  } else {
-   $13 = $4;
-  }
- } else {
-  label = 3;
- }
- do {
-  if ((label|0) == 3) {
-   $7 = ($1|0)==(0|0);
-   if (!($7)) {
-    $8 = ((($1)) + 12|0);
-    $9 = HEAP32[$8>>2]|0;
-    $10 = $9 & 4;
-    $11 = ($10|0)==(0);
-    if (!($11)) {
-     if ($2) {
-      $$phi$trans$insert = ((($0)) + 12|0);
-      $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-      $13 = $$pre;
-      break;
-     } else {
-      $$0 = 1;
-      return ($$0|0);
-     }
-    }
-   }
-   __gcry_mpi_normalize($0);
-   __gcry_mpi_normalize($1);
-   $36 = ((($0)) + 4|0);
-   $37 = HEAP32[$36>>2]|0;
-   $38 = ((($1)) + 4|0);
-   $39 = HEAP32[$38>>2]|0;
-   $40 = ((($0)) + 8|0);
-   $41 = HEAP32[$40>>2]|0;
-   $42 = ($41|0)==(0);
-   $43 = ((($1)) + 8|0);
-   $44 = HEAP32[$43>>2]|0;
-   $45 = ($44|0)==(0);
-   if ($42) {
-    if (!($45)) {
-     $$0 = 1;
-     return ($$0|0);
-    }
-   } else {
-    if ($45) {
-     $$0 = -1;
-     return ($$0|0);
-    }
-   }
-   $46 = ($37|0)==($39|0);
-   do {
-    if (!($46)) {
-     if ($42) {
-      if (!($45)) {
-       break;
-      }
-      $47 = (($37) - ($39))|0;
-      $$0 = $47;
-      return ($$0|0);
-     } else {
-      if ($45) {
-       break;
-      }
-      $48 = (($39) + ($37))|0;
-      $$0 = $48;
-      return ($$0|0);
-     }
-    }
-   } while(0);
-   $49 = ($37|0)==(0);
-   if ($49) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $50 = ((($0)) + 16|0);
-   $51 = HEAP32[$50>>2]|0;
-   $52 = ((($1)) + 16|0);
-   $53 = HEAP32[$52>>2]|0;
-   $54 = ($37|0)>(0);
-   if (!($54)) {
-    $$0 = 0;
-    return ($$0|0);
-   }
-   $$01619$in$i = $37;
-   while(1) {
-    $$01619$i = (($$01619$in$i) + -1)|0;
-    $56 = (($51) + ($$01619$i<<2)|0);
-    $57 = HEAP32[$56>>2]|0;
-    $58 = (($53) + ($$01619$i<<2)|0);
-    $59 = HEAP32[$58>>2]|0;
-    $60 = ($57|0)==($59|0);
-    if (!($60)) {
-     label = 30;
-     break;
-    }
-    $55 = ($$01619$in$i|0)>(1);
-    if ($55) {
-     $$01619$in$i = $$01619$i;
-    } else {
-     $$0 = 0;
-     label = 31;
-     break;
-    }
-   }
-   if ((label|0) == 30) {
-    $61 = ($57>>>0)<=($59>>>0);
-    $62 = ($41|0)!=(0);
-    $63 = $62 ^ $61;
-    $$ = $63 ? -1 : 1;
-    return ($$|0);
-   }
-   else if ((label|0) == 31) {
-    return ($$0|0);
-   }
-  }
- } while(0);
- $12 = $13 & 4;
- $14 = ($12|0)==(0);
- $15 = ($1|0)==(0|0);
- if ($14) {
-  if (!($15)) {
-   $$phi$trans$insert66 = ((($1)) + 12|0);
-   $$pre67 = HEAP32[$$phi$trans$insert66>>2]|0;
-   $$pre71 = $$pre67 & 4;
-   $20 = ($$pre71|0)==(0);
-   if (!($20)) {
-    $$0 = 1;
-    return ($$0|0);
-   }
-  }
- } else {
-  if ($15) {
-   $$0 = -1;
-   return ($$0|0);
-  }
-  $16 = ((($1)) + 12|0);
-  $17 = HEAP32[$16>>2]|0;
-  $18 = $17 & 4;
-  $19 = ($18|0)==(0);
-  if ($19) {
-   $$0 = -1;
-   return ($$0|0);
-  }
- }
- $21 = ((($0)) + 8|0);
- $22 = HEAP32[$21>>2]|0;
- $23 = ((($1)) + 8|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = $22 | $24;
- $26 = ($25|0)==(0);
- if ($26) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $27 = ($22|0)<($24|0);
- if ($27) {
-  $$0 = -1;
-  return ($$0|0);
- }
- $28 = ($22|0)>($24|0);
- if ($28) {
-  $$0 = 1;
-  return ($$0|0);
- }
- $29 = (($22) + 7)|0;
- $30 = ((($1)) + 16|0);
- $31 = ((($0)) + 16|0);
- $32 = HEAP32[$31>>2]|0;
- $33 = HEAP32[$30>>2]|0;
- $34 = (($29|0) / 8)&-1;
- $35 = (_memcmp($32,$33,$34)|0);
- $$0 = $35;
- return ($$0|0);
-}
-function __gcry_mpi_fdiv_r($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$018 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($2)) + 8|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($0|0)==($2|0);
- if ($5) {
-  $6 = (__gcry_mpi_copy($2)|0);
-  $$0 = $6;$$018 = $6;
- } else {
-  $$0 = 0;$$018 = $2;
- }
- __gcry_mpi_tdiv_qr(0,$0,$1,$$018);
- $7 = ($4|0)!=(0);
- $8 = ((($1)) + 8|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)!=(0);
- $11 = $7 ^ $10;
- if ($11) {
-  $12 = ((($0)) + 4|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($13|0)==(0);
-  if (!($14)) {
-   __gcry_mpi_add($0,$0,$$018);
-  }
- }
- $15 = ($$0|0)==(0|0);
- if ($15) {
-  return;
- }
- __gcry_mpi_free($$0);
- return;
-}
-function __gcry_mpi_tdiv_qr($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0218250 = 0, $$0219 = 0, $$0220 = 0, $$0221 = 0, $$0222 = 0, $$0225253 
= 0, $$0226 = 0, $$0227240 = 0, $$0228 = 0, $$0247 = 0, $$1 = 0, $$1224 = 0, 
$$1229 = 0, $$2$lcssa = 0, $$2230 = 0, $$2243 = 0, $$3 = 0, $$3231241 = 0, 
$$neg235 = 0, $10 = 0;
- var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, 
$114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0;
- var $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 
= 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0;
- var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond 
= 0, $exitcond257 = 0, $exitcond258 = 0, $exitcond259 = 0, $or$cond = 0, 
$or$cond232 = 0, $or$cond233 = 0, $or$cond256 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $4 = sp + 32|0;
- $5 = sp;
- $6 = ((($2)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($3)) + 4|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ((($2)) + 8|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($3)) + 8|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = $13 ^ $11;
- $15 = (($7) + 1)|0;
- __gcry_mpi_resize($1,$15);
- $16 = (($15) - ($9))|0;
- $17 = ($16|0)<(1);
- if ($17) {
-  $18 = ($2|0)==($1|0);
-  if (!($18)) {
-   $19 = HEAP32[$6>>2]|0;
-   $20 = ((($1)) + 4|0);
-   HEAP32[$20>>2] = $19;
-   $21 = HEAP32[$10>>2]|0;
-   $22 = ((($1)) + 8|0);
-   HEAP32[$22>>2] = $21;
-   $23 = ($7|0)>(0);
-   if ($23) {
-    $24 = ((($2)) + 16|0);
-    $25 = HEAP32[$24>>2]|0;
-    $26 = ((($1)) + 16|0);
-    $27 = HEAP32[$26>>2]|0;
-    $$0227240 = 0;
-    while(1) {
-     $28 = (($25) + ($$0227240<<2)|0);
-     $29 = HEAP32[$28>>2]|0;
-     $30 = (($27) + ($$0227240<<2)|0);
-     HEAP32[$30>>2] = $29;
-     $31 = (($$0227240) + 1)|0;
-     $exitcond = ($31|0)==($7|0);
-     if ($exitcond) {
-      break;
-     } else {
-      $$0227240 = $31;
-     }
-    }
-   }
-  }
-  $32 = ($0|0)==(0|0);
-  if ($32) {
-   STACKTOP = sp;return;
-  }
-  $33 = ((($0)) + 4|0);
-  HEAP32[$33>>2] = 0;
-  $34 = ((($0)) + 8|0);
-  HEAP32[$34>>2] = 0;
-  STACKTOP = sp;return;
- }
- $35 = ($0|0)!=(0|0);
- if ($35) {
-  __gcry_mpi_resize($0,$16);
- }
- $36 = ((($2)) + 16|0);
- $37 = HEAP32[$36>>2]|0;
- $38 = ((($3)) + 16|0);
- $39 = HEAP32[$38>>2]|0;
- $40 = ((($1)) + 16|0);
- $41 = HEAP32[$40>>2]|0;
- $42 = ($9|0)==(1);
- if ($42) {
-  if ($35) {
-   $43 = ((($0)) + 16|0);
-   $44 = HEAP32[$43>>2]|0;
-   $45 = HEAP32[$39>>2]|0;
-   $46 = (__gcry_mpih_divmod_1($44,$37,$7,$45)|0);
-   $47 = (($16) + -1)|0;
-   $48 = (($44) + ($47<<2)|0);
-   $49 = HEAP32[$48>>2]|0;
-   $50 = ($49|0)==(0);
-   $51 = $50&1;
-   $52 = (($16) - ($51))|0;
-   $53 = ((($0)) + 4|0);
-   HEAP32[$53>>2] = $52;
-   $54 = ((($0)) + 8|0);
-   HEAP32[$54>>2] = $14;
-   $$0226 = $46;
-  } else {
-   $55 = HEAP32[$39>>2]|0;
-   $56 = (__gcry_mpih_mod_1($37,$7,$55)|0);
-   $$0226 = $56;
-  }
-  HEAP32[$41>>2] = $$0226;
-  $57 = ($$0226|0)!=(0);
-  $58 = $57&1;
-  $59 = ((($1)) + 4|0);
-  HEAP32[$59>>2] = $58;
-  $60 = ((($1)) + 8|0);
-  HEAP32[$60>>2] = $11;
-  STACKTOP = sp;return;
- }
- if ($35) {
-  $61 = ((($0)) + 16|0);
-  $62 = HEAP32[$61>>2]|0;
-  $63 = ($62|0)==($37|0);
-  if ($63) {
-   HEAP32[$5>>2] = $7;
-   $64 = ((($0)) + 12|0);
-   $65 = HEAP32[$64>>2]|0;
-   $66 = $65 & 1;
-   $67 = (__gcry_mpi_alloc_limb_space($7,$66)|0);
-   HEAP32[$4>>2] = $67;
-   $68 = ($7|0)>(0);
-   if ($68) {
-    $$0225253 = 0;
-    while(1) {
-     $69 = (($37) + ($$0225253<<2)|0);
-     $70 = HEAP32[$69>>2]|0;
-     $71 = (($67) + ($$0225253<<2)|0);
-     HEAP32[$71>>2] = $70;
-     $72 = (($$0225253) + 1)|0;
-     $exitcond259 = ($72|0)==($7|0);
-     if ($exitcond259) {
-      $$0219 = $67;$$0221 = $37;$$0228 = 1;
-      break;
-     } else {
-      $$0225253 = $72;
-     }
-    }
-   } else {
-    $$0219 = $67;$$0221 = $37;$$0228 = 1;
-   }
-  } else {
-   $$0219 = $37;$$0221 = $62;$$0228 = 0;
-  }
- } else {
-  $73 = (($41) + ($9<<2)|0);
-  $$0219 = $37;$$0221 = $73;$$0228 = 0;
- }
- $74 = (($9) + -1)|0;
- $75 = (($39) + ($74<<2)|0);
- $76 = HEAP32[$75>>2]|0;
- $77 = ($76>>>0)<(65536);
- $78 = ($76>>>0)<(256);
- $79 = $78 ? 0 : 8;
- $80 = ($76>>>0)<(16777216);
- $81 = $80 ? 16 : 24;
- $82 = $77 ? $79 : $81;
- $83 = $76 >>> $82;
- $84 = (14784 + ($83)|0);
- $85 = HEAP8[$84>>0]|0;
- $86 = $85&255;
- $$neg235 = (32 - ($86))|0;
- $87 = (($$neg235) - ($82))|0;
- $88 = ($87|0)!=(0);
- if ($88) {
-  $89 = (($5) + ($$0228<<2)|0);
-  HEAP32[$89>>2] = $9;
-  $90 = ($3|0)==(0|0);
-  if ($90) {
-   $94 = 0;
-  } else {
-   $91 = ((($3)) + 12|0);
-   $92 = HEAP32[$91>>2]|0;
-   $93 = $92 & 1;
-   $94 = $93;
-  }
-  $95 = (__gcry_mpi_alloc_limb_space($9,$94)|0);
-  $96 = (($$0228) + 1)|0;
-  $97 = (($4) + ($$0228<<2)|0);
-  HEAP32[$97>>2] = $95;
-  (__gcry_mpih_lshift($95,$39,$9,$87)|0);
-  $98 = (__gcry_mpih_lshift($41,$$0219,$7,$87)|0);
-  $99 = ($98|0)==(0);
-  if ($99) {
-   $$1 = $95;$$1224 = $7;$$2230 = $96;
-  } else {
-   $100 = (($41) + ($7<<2)|0);
-   HEAP32[$100>>2] = $98;
-   $$1 = $95;$$1224 = $15;$$2230 = $96;
-  }
- } else {
-  $101 = ($39|0)==($41|0);
-  $102 = ($39|0)==($$0221|0);
-  $or$cond232 = $35 & $102;
-  $or$cond233 = $101 | $or$cond232;
-  if ($or$cond233) {
-   $103 = (($5) + ($$0228<<2)|0);
-   HEAP32[$103>>2] = $9;
-   $104 = ($3|0)==(0|0);
-   if ($104) {
-    $108 = 0;
-   } else {
-    $105 = ((($3)) + 12|0);
-    $106 = HEAP32[$105>>2]|0;
-    $107 = $106 & 1;
-    $108 = $107;
-   }
-   $109 = (__gcry_mpi_alloc_limb_space($9,$108)|0);
-   $110 = (($$0228) + 1)|0;
-   $111 = (($4) + ($$0228<<2)|0);
-   HEAP32[$111>>2] = $109;
-   $112 = ($9|0)>(0);
-   if ($112) {
-    $$0218250 = 0;
-    while(1) {
-     $113 = (($39) + ($$0218250<<2)|0);
-     $114 = HEAP32[$113>>2]|0;
-     $115 = (($109) + ($$0218250<<2)|0);
-     HEAP32[$115>>2] = $114;
-     $116 = (($$0218250) + 1)|0;
-     $exitcond258 = ($116|0)==($9|0);
-     if ($exitcond258) {
-      $$0220 = $109;$$1229 = $110;
-      break;
-     } else {
-      $$0218250 = $116;
-     }
-    }
-   } else {
-    $$0220 = $109;$$1229 = $110;
-   }
-  } else {
-   $$0220 = $39;$$1229 = $$0228;
-  }
-  $117 = ($41|0)!=($$0219|0);
-  $118 = ($7|0)>(0);
-  $or$cond256 = $117 & $118;
-  if ($or$cond256) {
-   $$0247 = 0;
-   while(1) {
-    $119 = (($$0219) + ($$0247<<2)|0);
-    $120 = HEAP32[$119>>2]|0;
-    $121 = (($41) + ($$0247<<2)|0);
-    HEAP32[$121>>2] = $120;
-    $122 = (($$0247) + 1)|0;
-    $exitcond257 = ($122|0)==($7|0);
-    if ($exitcond257) {
-     $$1 = $$0220;$$1224 = $7;$$2230 = $$1229;
-     break;
-    } else {
-     $$0247 = $122;
-    }
-   }
-  } else {
-   $$1 = $$0220;$$1224 = $7;$$2230 = $$1229;
-  }
- }
- $123 = (__gcry_mpih_divrem($$0221,0,$41,$$1224,$$1,$9)|0);
- if ($35) {
-  $124 = (($$1224) - ($9))|0;
-  $125 = ($123|0)==(0);
-  if ($125) {
-   $$0222 = $124;
-  } else {
-   $126 = (($124) + 1)|0;
-   $127 = (($$0221) + ($124<<2)|0);
-   HEAP32[$127>>2] = $123;
-   $$0222 = $126;
-  }
-  $128 = ((($0)) + 4|0);
-  HEAP32[$128>>2] = $$0222;
-  $129 = ((($0)) + 8|0);
-  HEAP32[$129>>2] = $14;
- }
- $130 = ($9|0)>(0);
- L59: do {
-  if ($130) {
-   $$2243 = $9;
-   while(1) {
-    $132 = (($$2243) + -1)|0;
-    $133 = (($41) + ($132<<2)|0);
-    $134 = HEAP32[$133>>2]|0;
-    $135 = ($134|0)==(0);
-    if (!($135)) {
-     $$2$lcssa = $$2243;
-     break L59;
-    }
-    $131 = ($$2243|0)>(1);
-    if ($131) {
-     $$2243 = $132;
-    } else {
-     $$2$lcssa = $132;
-     break;
-    }
-   }
-  } else {
-   $$2$lcssa = $9;
-  }
- } while(0);
- $136 = ($$2$lcssa|0)!=(0);
- $or$cond = $88 & $136;
- if ($or$cond) {
-  (__gcry_mpih_rshift($41,$41,$$2$lcssa,$87)|0);
-  $137 = (($$2$lcssa) + -1)|0;
-  $138 = (($41) + ($137<<2)|0);
-  $139 = HEAP32[$138>>2]|0;
-  $140 = ($139|0)==(0);
-  $141 = $140&1;
-  $142 = (($$2$lcssa) - ($141))|0;
-  $$3 = $142;
- } else {
-  $$3 = $$2$lcssa;
- }
- $143 = ((($1)) + 4|0);
- HEAP32[$143>>2] = $$3;
- $144 = ((($1)) + 8|0);
- HEAP32[$144>>2] = $11;
- $145 = ($$2230|0)==(0);
- if ($145) {
-  STACKTOP = sp;return;
- }
- $$3231241 = $$2230;
- while(1) {
-  $146 = (($$3231241) + -1)|0;
-  $147 = (($4) + ($146<<2)|0);
-  $148 = HEAP32[$147>>2]|0;
-  $149 = (($5) + ($146<<2)|0);
-  $150 = HEAP32[$149>>2]|0;
-  __gcry_mpi_free_limb_space($148,$150);
-  $151 = ($146|0)==(0);
-  if ($151) {
-   break;
-  } else {
-   $$3231241 = $146;
-  }
- }
- STACKTOP = sp;return;
-}
-function __gcry_mpi_tdiv_r($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_tdiv_qr(0,$0,$1,$2);
- return;
-}
-function __gcry_mpi_fdiv_r_ui($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 16|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($1)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = (__gcry_mpih_mod_1($4,$6,$2)|0);
- $8 = ($7|0)==(0);
- if ($8) {
-  $$0 = 0;
- } else {
-  $9 = (($2) - ($7))|0;
-  $10 = ((($1)) + 8|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = ($11|0)==(0);
-  $spec$select = $12 ? $7 : $9;
-  $$0 = $spec$select;
- }
- $13 = ($0|0)==(0|0);
- if ($13) {
-  return ($$0|0);
- }
- $14 = ((($0)) + 4|0);
- $15 = ($$0|0)!=(0);
- $16 = $15&1;
- $17 = ((($0)) + 16|0);
- $18 = HEAP32[$17>>2]|0;
- HEAP32[$18>>2] = $$0;
- HEAP32[$14>>2] = $16;
- return ($$0|0);
-}
-function __gcry_mpi_fdiv_q($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$i = 0, $$023$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$or$cond$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = (__gcry_mpi_alloc($4)|0);
- $6 = ((($2)) + 8|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($0|0)==($2|0);
- $9 = ($5|0)==($2|0);
- $or$cond$i = $8 | $9;
- if ($or$cond$i) {
-  $10 = (__gcry_mpi_copy($2)|0);
-  $$0$i = $10;$$023$i = $10;
- } else {
-  $$0$i = 0;$$023$i = $2;
- }
- __gcry_mpi_tdiv_qr($0,$5,$1,$$023$i);
- $11 = ((($1)) + 8|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ($7|0)==($12|0);
- if (!($13)) {
-  $14 = ((($5)) + 4|0);
-  $15 = HEAP32[$14>>2]|0;
-  $16 = ($15|0)==(0);
-  if (!($16)) {
-   __gcry_mpi_sub_ui($0,$0,1);
-   __gcry_mpi_add($5,$5,$$023$i);
-  }
- }
- $17 = ($$0$i|0)==(0|0);
- if ($17) {
-  __gcry_mpi_free($5);
-  return;
- }
- __gcry_mpi_free($$0$i);
- __gcry_mpi_free($5);
- return;
-}
-function __gcry_mpi_tdiv_q_2exp($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$043$sink = 0, $$044 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 
0, $24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$exitcond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = $2 >>> 5;
- $6 = (($4) - ($5))|0;
- $7 = ($4|0)>($5|0);
- do {
-  if ($7) {
-   $8 = HEAP32[$0>>2]|0;
-   $9 = ($8|0)<($6|0);
-   if ($9) {
-    __gcry_mpi_resize($0,$6);
-   }
-   $10 = ((($0)) + 16|0);
-   $11 = HEAP32[$10>>2]|0;
-   $12 = ((($1)) + 16|0);
-   $13 = HEAP32[$12>>2]|0;
-   $14 = $2 & 31;
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $16 = (($13) + ($5<<2)|0);
-    (__gcry_mpih_rshift($11,$16,$6,$14)|0);
-    $17 = (($6) + -1)|0;
-    $18 = (($11) + ($17<<2)|0);
-    $19 = HEAP32[$18>>2]|0;
-    $20 = ($19|0)==(0);
-    $21 = $20&1;
-    $22 = (($6) - ($21))|0;
-    $$043$sink = $22;
-    break;
-   }
-   $23 = ($6|0)>(0);
-   if ($23) {
-    $24 = (($13) + ($5<<2)|0);
-    $$044 = 0;
-    while(1) {
-     $25 = (($24) + ($$044<<2)|0);
-     $26 = HEAP32[$25>>2]|0;
-     $27 = (($11) + ($$044<<2)|0);
-     HEAP32[$27>>2] = $26;
-     $28 = (($$044) + 1)|0;
-     $exitcond = ($28|0)==($6|0);
-     if ($exitcond) {
-      $$043$sink = $6;
-      break;
-     } else {
-      $$044 = $28;
-     }
-    }
-   } else {
-    $$043$sink = $6;
-   }
-  } else {
-   $$043$sink = 0;
-  }
- } while(0);
- $29 = ((($0)) + 4|0);
- HEAP32[$29>>2] = $$043$sink;
- return;
-}
-function __gcry_mpi_divisible_ui($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 16|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($0)) + 4|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = (__gcry_mpih_mod_1($3,$5,$1)|0);
- $7 = ($6|0)==(0);
- $8 = $7&1;
- return ($8|0);
-}
-function __gcry_mpi_gcd($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_copy($1)|0);
- $4 = (__gcry_mpi_copy($2)|0);
- $5 = ((($3)) + 8|0);
- HEAP32[$5>>2] = 0;
- $6 = ((($4)) + 8|0);
- HEAP32[$6>>2] = 0;
- $7 = (__gcry_mpi_cmp_ui($4,0)|0);
- $8 = ($7|0)==(0);
- if (!($8)) {
-  while(1) {
-   __gcry_mpi_fdiv_r($0,$3,$4);
-   (__gcry_mpi_set($3,$4)|0);
-   (__gcry_mpi_set($4,$0)|0);
-   $9 = (__gcry_mpi_cmp_ui($4,0)|0);
-   $10 = ($9|0)==(0);
-   if ($10) {
-    break;
-   }
-  }
- }
- (__gcry_mpi_set($0,$3)|0);
- __gcry_mpi_free($3);
- __gcry_mpi_free($4);
- $11 = (__gcry_mpi_cmp_ui($0,1)|0);
- $12 = ($11|0)==(0);
- $13 = $12&1;
- return ($13|0);
-}
-function __gcry_mpi_invm($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0140 = 0, $$0141 = 0, $$0143 = 0, $$0145 = 0, $$0146 = 0, $$1 
= 0, $$1142 = 0, $$1144 = 0, $$2 = 0, $$3 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $3 = (__gcry_mpi_cmp_ui($1,0)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $5 = (__gcry_mpi_cmp_ui($2,1)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $7 = (__gcry_mpi_copy($1)|0);
- $8 = (__gcry_mpi_copy($2)|0);
- $9 = (__gcry_mpi_test_bit($7,0)|0);
- $10 = ($9|0)==(0);
- L7: do {
-  if ($10) {
-   while(1) {
-    $11 = (__gcry_mpi_test_bit($8,0)|0);
-    $12 = ($11|0)==(0);
-    if (!($12)) {
-     break L7;
-    }
-    __gcry_mpi_rshift($7,$7,1);
-    __gcry_mpi_rshift($8,$8,1);
-    $13 = (__gcry_mpi_test_bit($7,0)|0);
-    $14 = ($13|0)==(0);
-    if (!($14)) {
-     break;
-    }
-   }
-  }
- } while(0);
- $15 = (__gcry_mpi_test_bit($8,0)|0);
- $16 = (__gcry_mpi_alloc_set_ui(1)|0);
- $17 = ($15|0)!=(0);
- if ($17) {
-  $$0145 = 0;
- } else {
-  $18 = (__gcry_mpi_alloc_set_ui(0)|0);
-  $$0145 = $18;
- }
- $19 = (__gcry_mpi_copy($7)|0);
- $20 = (__gcry_mpi_copy($8)|0);
- if ($17) {
-  $$0146 = 0;
- } else {
-  $21 = ((($7)) + 4|0);
-  $22 = HEAP32[$21>>2]|0;
-  $23 = (__gcry_mpi_alloc($22)|0);
-  __gcry_mpi_sub($23,$16,$7);
-  $$0146 = $23;
- }
- $24 = (__gcry_mpi_copy($8)|0);
- $25 = (__gcry_mpi_test_bit($7,0)|0);
- $26 = ($25|0)==(0);
- if ($26) {
-  $35 = (__gcry_mpi_alloc_set_ui(1)|0);
-  if ($17) {
-   $$1142 = 0;
-  } else {
-   $36 = (__gcry_mpi_alloc_set_ui(0)|0);
-   $$1142 = $36;
-  }
-  $37 = (__gcry_mpi_copy($7)|0);
-  $$0140 = $37;$$0143 = $35;$$2 = $$1142;
-  label = 18;
- } else {
-  $27 = (__gcry_mpi_alloc_set_ui(0)|0);
-  if ($17) {
-   $$0141 = 0;
-  } else {
-   $28 = (__gcry_mpi_alloc_set_ui(1)|0);
-   $29 = ((($28)) + 8|0);
-   HEAP32[$29>>2] = 1;
-   $$0141 = $28;
-  }
-  $30 = (__gcry_mpi_copy($8)|0);
-  $31 = ((($30)) + 8|0);
-  $32 = HEAP32[$31>>2]|0;
-  $33 = ($32|0)==(0);
-  $34 = $33&1;
-  HEAP32[$31>>2] = $34;
-  $$1 = $30;$$1144 = $27;$$3 = $$0141;
- }
- while(1) {
-  if ((label|0) == 18) {
-   label = 0;
-   $38 = (__gcry_mpi_test_bit($$0143,0)|0);
-   $39 = ($38|0)!=(0);
-   if ($17) {
-    if ($39) {
-     __gcry_mpi_add($$0143,$$0143,$8);
-    }
-    __gcry_mpi_rshift($$0143,$$0143,1);
-    __gcry_mpi_rshift($$0140,$$0140,1);
-    $$1 = $$0140;$$1144 = $$0143;$$3 = $$2;
-    continue;
-   }
-   if ($39) {
-    label = 21;
-   } else {
-    $40 = (__gcry_mpi_test_bit($$2,0)|0);
-    $41 = ($40|0)==(0);
-    if (!($41)) {
-     label = 21;
-    }
-   }
-   if ((label|0) == 21) {
-    label = 0;
-    __gcry_mpi_add($$0143,$$0143,$8);
-    __gcry_mpi_sub($$2,$$2,$7);
-   }
-   __gcry_mpi_rshift($$0143,$$0143,1);
-   __gcry_mpi_rshift($$2,$$2,1);
-   __gcry_mpi_rshift($$0140,$$0140,1);
-   $$1 = $$0140;$$1144 = $$0143;$$3 = $$2;
-  }
-  $42 = (__gcry_mpi_test_bit($$1,0)|0);
-  $43 = ($42|0)==(0);
-  if ($43) {
-   $$0140 = $$1;$$0143 = $$1144;$$2 = $$3;
-   label = 18;
-   continue;
-  }
-  $44 = ((($$1)) + 8|0);
-  $45 = HEAP32[$44>>2]|0;
-  $46 = ($45|0)==(0);
-  if ($46) {
-   (__gcry_mpi_set($16,$$1144)|0);
-   if (!($17)) {
-    (__gcry_mpi_set($$0145,$$3)|0);
-   }
-   (__gcry_mpi_set($19,$$1)|0);
-  } else {
-   __gcry_mpi_sub($20,$8,$$1144);
-   $47 = ((($7)) + 8|0);
-   $48 = HEAP32[$47>>2]|0;
-   $49 = ($48|0)==(0);
-   $50 = $49&1;
-   HEAP32[$47>>2] = $50;
-   if (!($17)) {
-    __gcry_mpi_sub($$0146,$7,$$3);
-   }
-   HEAP32[$47>>2] = $48;
-   $51 = HEAP32[$44>>2]|0;
-   $52 = ($51|0)==(0);
-   $53 = $52&1;
-   HEAP32[$44>>2] = $53;
-   (__gcry_mpi_set($24,$$1)|0);
-   HEAP32[$44>>2] = $51;
-  }
-  __gcry_mpi_sub($$1144,$16,$20);
-  if (!($17)) {
-   __gcry_mpi_sub($$3,$$0145,$$0146);
-  }
-  __gcry_mpi_sub($$1,$19,$24);
-  $54 = ((($$1144)) + 8|0);
-  $55 = HEAP32[$54>>2]|0;
-  $56 = ($55|0)==(0);
-  if (!($56)) {
-   __gcry_mpi_add($$1144,$$1144,$8);
-   if (!($17)) {
-    __gcry_mpi_sub($$3,$$3,$7);
-   }
-  }
-  $57 = (__gcry_mpi_cmp_ui($$1,0)|0);
-  $58 = ($57|0)==(0);
-  if ($58) {
-   break;
-  } else {
-   $$0140 = $$1;$$0143 = $$1144;$$2 = $$3;
-   label = 18;
-  }
- }
- (__gcry_mpi_set($0,$16)|0);
- __gcry_mpi_free($16);
- __gcry_mpi_free($20);
- __gcry_mpi_free($$1144);
- if (!($17)) {
-  __gcry_mpi_free($$0145);
-  __gcry_mpi_free($$0146);
-  __gcry_mpi_free($$3);
- }
- __gcry_mpi_free($19);
- __gcry_mpi_free($24);
- __gcry_mpi_free($$1);
- __gcry_mpi_free($7);
- __gcry_mpi_free($8);
- $$0 = 1;
- return ($$0|0);
-}
-function __gcry_mpi_mod($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_fdiv_r($0,$1,$2);
- return;
-}
-function __gcry_mpi_barrett_init($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- __gcry_mpi_normalize($0);
- $2 = (__gcry_xcalloc(1,28)|0);
- $3 = ($1|0)==(0);
- if ($3) {
-  HEAP32[$2>>2] = $0;
- } else {
-  $4 = (__gcry_mpi_copy($0)|0);
-  HEAP32[$2>>2] = $4;
-  $5 = ((($2)) + 4|0);
-  HEAP32[$5>>2] = 1;
- }
- $6 = ((($0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($2)) + 8|0);
- HEAP32[$8>>2] = $7;
- $9 = (($7) + 1)|0;
- $10 = (__gcry_mpi_alloc($9)|0);
- (__gcry_mpi_set_ui($10,1)|0);
- $11 = $7 << 1;
- __gcry_mpi_lshift_limbs($10,$11);
- __gcry_mpi_fdiv_q($10,$10,$0);
- $12 = ((($2)) + 12|0);
- HEAP32[$12>>2] = $10;
- $13 = $11 | 1;
- $14 = (__gcry_mpi_alloc($13)|0);
- $15 = ((($2)) + 16|0);
- HEAP32[$15>>2] = $14;
- $16 = (__gcry_mpi_alloc($13)|0);
- $17 = ((($2)) + 20|0);
- HEAP32[$17>>2] = $16;
- return ($2|0);
-}
-function __gcry_mpi_barrett_free($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- __gcry_mpi_free($3);
- $4 = ((($0)) + 16|0);
- $5 = HEAP32[$4>>2]|0;
- __gcry_mpi_free($5);
- $6 = ((($0)) + 20|0);
- $7 = HEAP32[$6>>2]|0;
- __gcry_mpi_free($7);
- $8 = ((($0)) + 24|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0|0);
- if (!($10)) {
-  __gcry_mpi_free($9);
- }
- $11 = ((($0)) + 4|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ($12|0)==(0);
- if (!($13)) {
-  $14 = HEAP32[$0>>2]|0;
-  __gcry_mpi_free($14);
- }
- __gcry_free($0);
- return;
-}
-function __gcry_mpi_mod_barrett($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($2)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ((($2)) + 12|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($2)) + 16|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ((($2)) + 20|0);
- $11 = HEAP32[$10>>2]|0;
- __gcry_mpi_normalize($1);
- $12 = ((($1)) + 4|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = $5 << 1;
- $15 = ($13|0)>($14|0);
- if ($15) {
-  __gcry_mpi_fdiv_r($0,$1,$3);
-  return;
- }
- $16 = ((($1)) + 8|0);
- $17 = HEAP32[$16>>2]|0;
- HEAP32[$16>>2] = 0;
- (__gcry_mpi_set($11,$1)|0);
- $18 = (($5) + -1)|0;
- __gcry_mpi_rshift_limbs($11,$18);
- __gcry_mpi_mul($11,$11,$7);
- $19 = (($5) + 1)|0;
- __gcry_mpi_rshift_limbs($11,$19);
- (__gcry_mpi_set($9,$1)|0);
- $20 = ((($9)) + 4|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = ($21|0)>($19|0);
- if ($22) {
-  HEAP32[$20>>2] = $19;
- }
- __gcry_mpi_mul($11,$11,$3);
- $23 = ((($11)) + 4|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = ($24|0)>($19|0);
- if ($25) {
-  HEAP32[$23>>2] = $19;
- }
- __gcry_mpi_sub($0,$9,$11);
- $26 = ((($0)) + 8|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ($27|0)==(0);
- if (!($28)) {
-  $29 = ((($2)) + 24|0);
-  $30 = HEAP32[$29>>2]|0;
-  $31 = ($30|0)==(0|0);
-  if ($31) {
-   $32 = (($5) + 2)|0;
-   $33 = (__gcry_mpi_alloc($32)|0);
-   HEAP32[$29>>2] = $33;
-   (__gcry_mpi_set_ui($33,1)|0);
-   $34 = HEAP32[$29>>2]|0;
-   __gcry_mpi_lshift_limbs($34,$19);
-   $$pre = HEAP32[$29>>2]|0;
-   $35 = $$pre;
-  } else {
-   $35 = $30;
-  }
-  __gcry_mpi_add($0,$0,$35);
- }
- $36 = (__gcry_mpi_cmp($0,$3)|0);
- $37 = ($36|0)>(-1);
- if ($37) {
-  while(1) {
-   __gcry_mpi_sub($0,$0,$3);
-   $38 = (__gcry_mpi_cmp($0,$3)|0);
-   $39 = ($38|0)>(-1);
-   if (!($39)) {
-    break;
-   }
-  }
- }
- HEAP32[$16>>2] = $17;
- return;
-}
-function __gcry_mpi_mul($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$ = 0, $$0138167 = 0, $$0139164 = 0, $$0140 = 0, $$0141 = 0, $$0142 = 0, 
$$0142$clear = 0, $$0144$in$in = 0, $$0144$in$in$in = 0, $$0144$in$in$in$in = 
0, $$0145$in$in = 0, $$0145$in$in$in = 0, $$0145$in$in$in$in = 0, $$0146 = 0, 
$$0146$in = 0, $$0147 = 0, $$0147$in = 0, $$0148 = 0, $$0149 = 0, $$0150 = 0;
- var $$0150$in = 0, $$0152 = 0, $$0152$in = 0, $$0163 = 0, $$1 = 0, $$1153 = 
0, $$159 = 0, $$160 = 0, $$161 = 0, $$2 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $or$cond = 0, $spec$select = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($1)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($2)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($4|0)<($6|0);
- $$ = $7 ? $2 : $1;
- $$159 = $7 ? $1 : $2;
- $$160 = $7 ? $4 : $6;
- $$161 = $7 ? $6 : $4;
- $$0144$in$in$in$in = ((($$159)) + 12|0);
- $$0145$in$in$in$in = ((($$)) + 12|0);
- $$0144$in$in$in = HEAP32[$$0144$in$in$in$in>>2]|0;
- $$0145$in$in$in = HEAP32[$$0145$in$in$in$in>>2]|0;
- $$0144$in$in = $$0144$in$in$in & 1;
- $$0145$in$in = $$0145$in$in$in & 1;
- $$0146$in = ((($$159)) + 8|0);
- $$0147$in = ((($$)) + 8|0);
- $$0152$in = ((($$)) + 16|0);
- $$0146 = HEAP32[$$0146$in>>2]|0;
- $$0147 = HEAP32[$$0147$in>>2]|0;
- $$0152 = HEAP32[$$0152$in>>2]|0;
- $$0150$in = ((($$159)) + 16|0);
- $$0150 = HEAP32[$$0150$in>>2]|0;
- $8 = $$0147 ^ $$0146;
- $9 = ((($0)) + 16|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (($$161) + ($$160))|0;
- $12 = ($0|0)==(0|0);
- if ($12) {
-  label = 3;
- } else {
-  $13 = ((($0)) + 12|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = $14 & 1;
-  $16 = ($15|0)==(0);
-  if ($16) {
-   label = 3;
-  } else {
-   label = 6;
-  }
- }
- do {
-  if ((label|0) == 3) {
-   $17 = ((($1)) + 12|0);
-   $18 = HEAP32[$17>>2]|0;
-   $19 = $18 & 1;
-   $20 = ($19|0)==(0);
-   if ($20) {
-    $21 = ((($2)) + 12|0);
-    $22 = HEAP32[$21>>2]|0;
-    $23 = $22 & 1;
-    $24 = ($23|0)==(0);
-    if ($24) {
-     label = 6;
-     break;
-    }
-   }
-   $25 = (__gcry_mpi_alloc_limb_space($11,1)|0);
-   $$0140 = 0;$$0141 = 0;$$0142 = 2;$$0149 = $25;$$1153 = $$0152;$$2 = $$0150;
-  }
- } while(0);
- L8: do {
-  if ((label|0) == 6) {
-   $26 = HEAP32[$0>>2]|0;
-   $27 = ($26|0)<($11|0);
-   $28 = ($10|0)==($$0152|0);
-   if ($27) {
-    $29 = ($10|0)==($$0150|0);
-    $or$cond = $28 | $29;
-    if ($or$cond) {
-     $30 = ((($0)) + 12|0);
-     $31 = HEAP32[$30>>2]|0;
-     $32 = $31 & 1;
-     $33 = (__gcry_mpi_alloc_limb_space($11,$32)|0);
-     $$0140 = 0;$$0141 = 0;$$0142 = 1;$$0149 = $33;$$1153 = $$0152;$$2 = 
$$0150;
-     break;
-    } else {
-     __gcry_mpi_resize($0,$11);
-     $34 = HEAP32[$9>>2]|0;
-     $$0140 = 0;$$0141 = 0;$$0142 = 0;$$0149 = $34;$$1153 = $$0152;$$2 = 
$$0150;
-     break;
-    }
-   }
-   if ($28) {
-    $35 = (__gcry_mpi_alloc_limb_space($$161,$$0145$in$in)|0);
-    $36 = ($$0152|0)==($$0150|0);
-    $spec$select = $36 ? $35 : $$0150;
-    $37 = ($$161|0)>(0);
-    if (!($37)) {
-     $$0140 = $$161;$$0141 = $35;$$0142 = 0;$$0149 = $$0152;$$1153 = $35;$$2 = 
$spec$select;
-     break;
-    }
-    $$0139164 = 0;
-    while(1) {
-     $38 = (($$0152) + ($$0139164<<2)|0);
-     $39 = HEAP32[$38>>2]|0;
-     $40 = (($35) + ($$0139164<<2)|0);
-     HEAP32[$40>>2] = $39;
-     $41 = (($$0139164) + 1)|0;
-     $42 = ($41|0)<($$161|0);
-     if ($42) {
-      $$0139164 = $41;
-     } else {
-      $$0140 = $$161;$$0141 = $35;$$0142 = 0;$$0149 = $$0152;$$1153 = $35;$$2 
= $spec$select;
-      break L8;
-     }
-    }
-   }
-   $43 = ($10|0)==($$0150|0);
-   if ($43) {
-    $44 = (__gcry_mpi_alloc_limb_space($$160,$$0144$in$in)|0);
-    $45 = ($$160|0)>(0);
-    if ($45) {
-     $$0138167 = 0;
-     while(1) {
-      $46 = (($$0150) + ($$0138167<<2)|0);
-      $47 = HEAP32[$46>>2]|0;
-      $48 = (($44) + ($$0138167<<2)|0);
-      HEAP32[$48>>2] = $47;
-      $49 = (($$0138167) + 1)|0;
-      $50 = ($49|0)<($$160|0);
-      if ($50) {
-       $$0138167 = $49;
-      } else {
-       $$0140 = $$160;$$0141 = $44;$$0142 = 0;$$0149 = $$0150;$$1153 = 
$$0152;$$2 = $44;
-       break;
-      }
-     }
-    } else {
-     $$0140 = $$160;$$0141 = $44;$$0142 = 0;$$0149 = $$0150;$$1153 = 
$$0152;$$2 = $44;
-    }
-   } else {
-    $$0140 = 0;$$0141 = 0;$$0142 = 0;$$0149 = $10;$$1153 = $$0152;$$2 = $$0150;
-   }
-  }
- } while(0);
- $51 = ($$160|0)==(0);
- if ($51) {
-  $$0148 = 0;
- } else {
-  $52 = (__gcry_mpih_mul($$0149,$$1153,$$161,$$2,$$160)|0);
-  $53 = ($52|0)==(0);
-  $54 = $53&1;
-  $55 = (($11) - ($54))|0;
-  $$0148 = $55;
- }
- $$0142$clear = $$0142 & 3;
- switch ($$0142$clear<<24>>24) {
- case 0:  {
-  break;
- }
- case 2:  {
-  $56 = (__gcry_mpi_alloc_limb_space($$0148,0)|0);
-  $57 = ($$0148|0)>(0);
-  if ($57) {
-   $$0163 = 0;
-   while(1) {
-    $58 = (($$0149) + ($$0163<<2)|0);
-    $59 = HEAP32[$58>>2]|0;
-    $60 = (($56) + ($$0163<<2)|0);
-    HEAP32[$60>>2] = $59;
-    $61 = (($$0163) + 1)|0;
-    $exitcond = ($61|0)==($$0148|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$0163 = $61;
-    }
-   }
-  }
-  __gcry_mpi_free_limb_space($$0149,0);
-  $$1 = $56;
-  label = 25;
-  break;
- }
- default: {
-  $$1 = $$0149;
-  label = 25;
- }
- }
- if ((label|0) == 25) {
-  __gcry_mpi_assign_limb_space($0,$$1,$$0148);
- }
- $62 = ((($0)) + 4|0);
- HEAP32[$62>>2] = $$0148;
- $63 = ((($0)) + 8|0);
- HEAP32[$63>>2] = $8;
- $64 = ($$0141|0)==(0|0);
- if ($64) {
-  return;
- }
- __gcry_mpi_free_limb_space($$0141,$$0140);
- return;
-}
-function __gcry_mpi_mulm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_mul($0,$1,$2);
- __gcry_mpi_tdiv_r($0,$0,$3);
- return;
-}
-function __gcry_mpi_powm($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$ = 0, $$02637$i$i = 0, $$02836$i$i = 0, $$035$i$i = 0, $$0534 = 0, 
$$0535 = 0, $$0536 = 0, $$0536666 = 0, $$0538810 = 0, $$0540 = 0, $$0540$sink = 
0, $$0542 = 0, $$0542663 = 0, $$0545 = 0, $$0548 = 0, $$0550 = 0, $$0551 = 0, 
$$0551662 = 0, $$0554 = 0, $$0556778 = 0;
- var $$0559789 = 0, $$0560801 = 0, $$0561 = 0, $$0562 = 0, $$0562$ph = 0, 
$$0568 = 0, $$0568$ph = 0, $$0575$ph = 0, $$0582773 = 0, $$0584 = 0, $$0584$ph 
= 0, $$0591795 = 0, $$0597804 = 0, $$0598807 = 0, $$0599814 = 0, $$0600818 = 0, 
$$0601 = 0, $$0602794 = 0, $$0603$lcssa = 0, $$0603793 = 0;
- var $$0605792 = 0, $$0650 = 0, $$0651 = 0, $$0737 = 0, $$1$i$i = 0, $$1$ph = 
0, $$10 = 0, $$11 = 0, $$12$lcssa = 0, $$127$i$i = 0, $$12730 = 0, $$129$i$i = 
0, $$13 = 0, $$13$sink = 0, $$1537 = 0, $$1539 = 0, $$1539664 = 0, $$1543 = 0, 
$$1546 = 0, $$1552 = 0;
- var $$1555 = 0, $$1563 = 0, $$1569 = 0, $$1576$lcssa = 0, $$1576764 = 0, 
$$1576764$phi = 0, $$1583748 = 0, $$1585763 = 0, $$1592 = 0, $$1592$ph = 0, 
$$1606$lcssa858 = 0, $$1606$lcssa859 = 0, $$1606772 = 0, $$1652 = 0, $$2$lcssa 
= 0, $$2544 = 0, $$2553 = 0, $$2593 = 0, $$2607$lcssa860 = 0, $$2607$lcssa861 = 
0;
- var $$2607747 = 0, $$2653$ph = 0, $$2653$ph$be = 0, $$2765 = 0, $$2765$phi = 
0, $$3654$lcssa = 0, $$3654762 = 0, $$5567 = 0, $$5573 = 0, $$5580$lcssa = 0, 
$$5580755 = 0, $$5580755$phi = 0, $$5589 = 0, $$5596728 = 0, $$5596728$us = 0, 
$$6$lcssa = 0, $$6574742 = 0, $$6581741 = 0, $$6581741$phi = 0, $$6590754 = 0;
- var $$6756 = 0, $$6756$phi = 0, $$7658$lcssa = 0, $$7658753 = 0, $$7743 = 0, 
$$7743$phi = 0, $$8 = 0, $$8659740 = 0, $$9 = 0, $$9660 = 0, $$neg689 = 0, 
$$neg692 = 0, $$neg695 = 0, $$pre = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, 
$103 = 0, $104 = 0;
- var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 
= 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0;
- var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 
= 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0;
- var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, 
$148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, 
$155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0;
- var $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 
= 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 
= 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0;
- var $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 
= 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 
= 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0;
- var $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 
= 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 
= 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0;
- var $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 
= 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0;
- var $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, 
$239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, 
$246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0;
- var $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, 
$257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, 
$264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0;
- var $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 
= 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 
= 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0;
- var $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 
= 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $30 = 0, $300 
= 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0;
- var $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 
= 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 
= 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0;
- var $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 
= 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 
= 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0;
- var $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, 
$348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, 
$355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0;
- var $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 
= 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 
= 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0;
- var $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 
= 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 
= 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0;
- var $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 
0, $402 = 0, $403 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, 
$exitcond$i$i = 0, $exitcond846 = 0, $exitcond851 = 0, $exitcond852 = 0, 
$exitcond853 = 0;
- var $exitcond854 = 0, $exitcond855 = 0, $exitcond856 = 0, $exitcond857 = 0, 
$or$cond = 0, $phitmp608 = 0, $spec$select = 0, $spec$select687 = 0, 
$storemerge$i613 = 0, $storemerge$i617 = 0, $storemerge$i619 = 0, 
$storemerge$i621 = 0, $storemerge725 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 240|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(240|0);
- $4 = sp + 64|0;
- $5 = sp;
- $6 = sp + 208|0;
- $7 = sp + 188|0;
- $8 = sp + 168|0;
- $9 = sp + 148|0;
- $10 = sp + 128|0;
- $11 = ((($2)) + 4|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ((($3)) + 4|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = $14 << 1;
- $16 = ((($3)) + 8|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = ($12|0)>(16);
- if ($18) {
-  $$0601 = 5;
- } else {
-  $19 = ($12|0)>(8);
-  if ($19) {
-   $$0601 = 4;
-  } else {
-   $20 = ($12|0)>(4);
-   $21 = ($12|0)>(2);
-   $$ = $21 ? 2 : 1;
-   $spec$select687 = $20 ? 3 : $$;
-   $$0601 = $spec$select687;
-  }
- }
- $22 = ((($2)) + 12|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = $23 & 1;
- $25 = ($24|0)!=(0);
- $26 = ((($3)) + 12|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = $27 & 1;
- $29 = ($28|0)!=(0);
- $30 = ($1|0)==(0|0);
- if ($30) {
-  $36 = 0;
- } else {
-  $31 = ((($1)) + 12|0);
-  $32 = HEAP32[$31>>2]|0;
-  $33 = $32 & 1;
-  $34 = ($33|0)!=(0);
-  $36 = $34;
- }
- $35 = $36&1;
- $37 = ((($0)) + 16|0);
- $38 = HEAP32[$37>>2]|0;
- $39 = ((($2)) + 16|0);
- $40 = HEAP32[$39>>2]|0;
- $41 = ($14|0)==(0);
- if ($41) {
-  __gcry_divide_by_zero();
-  // unreachable;
- }
- $42 = ($12|0)==(0);
- if ($42) {
-  $43 = ($14|0)==(1);
-  if ($43) {
-   $45 = ((($3)) + 16|0);
-   $46 = HEAP32[$45>>2]|0;
-   $47 = HEAP32[$46>>2]|0;
-   $48 = ($47|0)!=(1);
-   $phitmp608 = $48&1;
-   $49 = ((($0)) + 4|0);
-   HEAP32[$49>>2] = $phitmp608;
-   if ($48) {
-    label = 12;
-   }
-  } else {
-   $44 = ((($0)) + 4|0);
-   HEAP32[$44>>2] = 1;
-   label = 12;
-  }
-  if ((label|0) == 12) {
-   $50 = HEAP32[$0>>2]|0;
-   $51 = ($50|0)<(1);
-   if ($51) {
-    __gcry_mpi_resize($0,1);
-    $$pre = HEAP32[$37>>2]|0;
-    $52 = $$pre;
-   } else {
-    $52 = $38;
-   }
-   HEAP32[$52>>2] = 1;
-  }
-  $53 = ((($0)) + 8|0);
-  HEAP32[$53>>2] = 0;
-  STACKTOP = sp;return;
- }
- $54 = $29 ? $14 : 0;
- $55 = (__gcry_mpi_alloc_limb_space($14,$28)|0);
- $56 = ((($3)) + 16|0);
- $57 = HEAP32[$56>>2]|0;
- $58 = (($14) + -1)|0;
- $59 = (($57) + ($58<<2)|0);
- $60 = HEAP32[$59>>2]|0;
- $61 = ($60>>>0)<(65536);
- $62 = ($60>>>0)<(256);
- $63 = $62 ? 0 : 8;
- $64 = ($60>>>0)<(16777216);
- $65 = $64 ? 16 : 24;
- $66 = $61 ? $63 : $65;
- $67 = $60 >>> $66;
- $68 = (14784 + ($67)|0);
- $69 = HEAP8[$68>>0]|0;
- $70 = $69&255;
- $$neg689 = (32 - ($70))|0;
- $71 = (($$neg689) - ($66))|0;
- $72 = ($71|0)!=(0);
- if ($72) {
-  (__gcry_mpih_lshift($55,$57,$14,$71)|0);
- } else {
-  $73 = ($14|0)>(0);
-  if ($73) {
-   $$0600818 = 0;
-   while(1) {
-    $74 = (($57) + ($$0600818<<2)|0);
-    $75 = HEAP32[$74>>2]|0;
-    $76 = (($55) + ($$0600818<<2)|0);
-    HEAP32[$76>>2] = $75;
-    $77 = (($$0600818) + 1)|0;
-    $exitcond857 = ($77|0)==($14|0);
-    if ($exitcond857) {
-     break;
-    } else {
-     $$0600818 = $77;
-    }
-   }
-  }
- }
- $78 = ((($1)) + 4|0);
- $79 = HEAP32[$78>>2]|0;
- $80 = ((($1)) + 8|0);
- $81 = HEAP32[$80>>2]|0;
- $82 = ($79|0)>($14|0);
- L31: do {
-  if ($82) {
-   $83 = (($79) + 1)|0;
-   $84 = $36 ? $83 : 0;
-   $85 = (__gcry_mpi_alloc_limb_space($83,$35)|0);
-   $86 = ($79|0)>(0);
-   if ($86) {
-    $87 = ((($1)) + 16|0);
-    $88 = HEAP32[$87>>2]|0;
-    $$0599814 = 0;
-    while(1) {
-     $89 = (($88) + ($$0599814<<2)|0);
-     $90 = HEAP32[$89>>2]|0;
-     $91 = (($85) + ($$0599814<<2)|0);
-     HEAP32[$91>>2] = $90;
-     $92 = (($$0599814) + 1)|0;
-     $exitcond856 = ($92|0)==($79|0);
-     if ($exitcond856) {
-      break;
-     } else {
-      $$0599814 = $92;
-     }
-    }
-   }
-   $93 = (($85) + ($14<<2)|0);
-   (__gcry_mpih_divrem($93,0,$85,$79,$55,$14)|0);
-   $94 = ($14|0)>(0);
-   if ($94) {
-    $$0538810 = $14;
-    while(1) {
-     $96 = (($$0538810) + -1)|0;
-     $97 = (($85) + ($96<<2)|0);
-     $98 = HEAP32[$97>>2]|0;
-     $99 = ($98|0)==(0);
-     if (!($99)) {
-      $$0536666 = $85;$$0542663 = $85;$$0551662 = $84;$$1539664 = $$0538810;
-      label = 31;
-      break L31;
-     }
-     $95 = ($$0538810|0)>(1);
-     if ($95) {
-      $$0538810 = $96;
-     } else {
-      $$0536 = $85;$$0542 = $85;$$0551 = $84;$$1539 = $96;
-      label = 30;
-      break;
-     }
-    }
-   } else {
-    $$0536 = $85;$$0542 = $85;$$0551 = $84;$$1539 = $14;
-    label = 30;
-   }
-  } else {
-   $100 = ((($1)) + 16|0);
-   $101 = HEAP32[$100>>2]|0;
-   $$0536 = $101;$$0542 = 0;$$0551 = 0;$$1539 = $79;
-   label = 30;
-  }
- } while(0);
- if ((label|0) == 30) {
-  $102 = ($$1539|0)==(0);
-  if ($102) {
-   $$0540$sink = 0;$$0548 = 0;$$0561 = 0;$$13$sink = 0;$$1546 = 0;$$1555 = 
0;$$2544 = $$0542;$$2553 = $$0551;
-  } else {
-   $$0536666 = $$0536;$$0542663 = $$0542;$$0551662 = $$0551;$$1539664 = $$1539;
-   label = 31;
-  }
- }
- do {
-  if ((label|0) == 31) {
-   $103 = ($38|0)==($$0536666|0);
-   if ($103) {
-    $104 = ($$0542663|0)==(0|0);
-    if (!($104)) {
-     __gcry_assert_failed(64005,64016,515,64026);
-     // unreachable;
-    }
-    $105 = $36 ? $$1539664 : 0;
-    $106 = (__gcry_mpi_alloc_limb_space($$1539664,$35)|0);
-    $107 = ($$1539664|0)>(0);
-    if ($107) {
-     $$0598807 = 0;
-     while(1) {
-      $108 = (($38) + ($$0598807<<2)|0);
-      $109 = HEAP32[$108>>2]|0;
-      $110 = (($106) + ($$0598807<<2)|0);
-      HEAP32[$110>>2] = $109;
-      $111 = (($$0598807) + 1)|0;
-      $exitcond855 = ($111|0)==($$1539664|0);
-      if ($exitcond855) {
-       $$1537 = $106;$$1543 = $106;$$1552 = $105;
-       break;
-      } else {
-       $$0598807 = $111;
-      }
-     }
-    } else {
-     $$1537 = $106;$$1543 = $106;$$1552 = $105;
-    }
-   } else {
-    $$1537 = $$0536666;$$1543 = $$0542663;$$1552 = $$0551662;
-   }
-   $112 = ($38|0)==($40|0);
-   if ($112) {
-    $113 = $25 ? $12 : 0;
-    $114 = (__gcry_mpi_alloc_limb_space($12,$24)|0);
-    $115 = ($12|0)>(0);
-    if ($115) {
-     $$0597804 = 0;
-     while(1) {
-      $116 = (($38) + ($$0597804<<2)|0);
-      $117 = HEAP32[$116>>2]|0;
-      $118 = (($114) + ($$0597804<<2)|0);
-      HEAP32[$118>>2] = $117;
-      $119 = (($$0597804) + 1)|0;
-      $exitcond854 = ($119|0)==($12|0);
-      if ($exitcond854) {
-       $$0535 = $114;$$0545 = $114;$$0554 = $113;
-       break;
-      } else {
-       $$0597804 = $119;
-      }
-     }
-    } else {
-     $$0535 = $114;$$0545 = $114;$$0554 = $113;
-    }
-   } else {
-    $$0535 = $40;$$0545 = 0;$$0554 = 0;
-   }
-   $120 = HEAP32[$0>>2]|0;
-   $121 = ($120|0)<($15|0);
-   if ($121) {
-    __gcry_mpi_resize($0,$15);
-    $122 = HEAP32[$37>>2]|0;
-    $$0534 = $122;
-   } else {
-    $$0534 = $38;
-   }
-   $123 = (($15) + 2)|0;
-   $124 = $29 ? $123 : 0;
-   $125 = (__gcry_mpi_alloc_limb_space($123,$28)|0);
-   
;HEAP32[$6>>2]=0|0;HEAP32[$6+4>>2]=0|0;HEAP32[$6+8>>2]=0|0;HEAP32[$6+12>>2]=0|0;HEAP32[$6+16>>2]=0|0;HEAP32[$6+20>>2]=0|0;HEAP32[$6+24>>2]=0|0;
-   $126 = HEAP32[$$0535>>2]|0;
-   $127 = $126 & 1;
-   $128 = ($127|0)!=(0);
-   $129 = ($81|0)!=(0);
-   $130 = $129 & $128;
-   $131 = ($$0601>>>0)>(1);
-   if ($131) {
-    $132 = ($$1539664|0)<(16);
-    if ($132) {
-     (__gcry_mpih_mul($125,$$1537,$$1539664,$$1537,$$1539664)|0);
-    } else {
-     __gcry_mpih_mul_karatsuba_case($125,$$1537,$$1539664,$$1537,$$1539664,$6);
-    }
-    $133 = $$1539664 << 1;
-    $134 = ($133|0)>($14|0);
-    if ($134) {
-     $135 = (($125) + ($14<<2)|0);
-     (__gcry_mpih_divrem($135,0,$125,$133,$55,$14)|0);
-     $$0650 = $14;
-    } else {
-     $$0650 = $133;
-    }
-   } else {
-    $$0650 = 0;
-   }
-   $136 = (__gcry_mpi_alloc_limb_space($$1539664,$24)|0);
-   HEAP32[$4>>2] = $136;
-   HEAP32[$5>>2] = $$1539664;
-   $137 = ($$1539664|0)>(0);
-   if ($137) {
-    $$0560801 = 0;
-    while(1) {
-     $138 = (($$1537) + ($$0560801<<2)|0);
-     $139 = HEAP32[$138>>2]|0;
-     $140 = (($136) + ($$0560801<<2)|0);
-     HEAP32[$140>>2] = $139;
-     $141 = (($$0560801) + 1)|0;
-     $exitcond853 = ($141|0)==($$1539664|0);
-     if ($exitcond853) {
-      break;
-     } else {
-      $$0560801 = $141;
-     }
-    }
-   }
-   $142 = (($$0601) + -1)|0;
-   $143 = 1 << $142;
-   $144 = ($143|0)>(1);
-   if ($144) {
-    $145 = ($$0650|0)<(16);
-    $146 = (($$0534) + ($14<<2)|0);
-    $$0591795 = 1;$$0602794 = $136;$$0603793 = $$1539664;$$0605792 = $$1539664;
-    while(1) {
-     $147 = ($$0650|0)<($$0605792|0);
-     if ($147) {
-      if ($145) {
-       (__gcry_mpih_mul($$0534,$$0602794,$$0605792,$125,$$0650)|0);
-      } else {
-       
__gcry_mpih_mul_karatsuba_case($$0534,$$0602794,$$0605792,$125,$$0650,$6);
-      }
-      $151 = (($$0605792) + ($$0650))|0;
-      $152 = ($151|0)>($14|0);
-      if ($152) {
-       (__gcry_mpih_divrem($146,0,$$0534,$151,$55,$14)|0);
-       $$0651 = $14;
-      } else {
-       $$0651 = $151;
-      }
-     } else {
-      $148 = ($$0605792|0)<(16);
-      if ($148) {
-       (__gcry_mpih_mul($$0534,$125,$$0650,$$0602794,$$0605792)|0);
-      } else {
-       
__gcry_mpih_mul_karatsuba_case($$0534,$125,$$0650,$$0602794,$$0605792,$6);
-      }
-      $149 = (($$0605792) + ($$0650))|0;
-      $150 = ($149|0)>($14|0);
-      if ($150) {
-       (__gcry_mpih_divrem($146,0,$$0534,$149,$55,$14)|0);
-       $$0651 = $14;
-      } else {
-       $$0651 = $149;
-      }
-     }
-     $153 = (__gcry_mpi_alloc_limb_space($$0651,$24)|0);
-     $154 = (($4) + ($$0591795<<2)|0);
-     HEAP32[$154>>2] = $153;
-     $155 = (($5) + ($$0591795<<2)|0);
-     HEAP32[$155>>2] = $$0651;
-     $156 = ($$0603793|0)<($$0651|0);
-     $spec$select = $156 ? $$0651 : $$0603793;
-     $157 = ($$0651|0)>(0);
-     if ($157) {
-      $$0559789 = 0;
-      while(1) {
-       $158 = (($$0534) + ($$0559789<<2)|0);
-       $159 = HEAP32[$158>>2]|0;
-       $160 = (($153) + ($$0559789<<2)|0);
-       HEAP32[$160>>2] = $159;
-       $161 = (($$0559789) + 1)|0;
-       $exitcond851 = ($161|0)==($$0651|0);
-       if ($exitcond851) {
-        break;
-       } else {
-        $$0559789 = $161;
-       }
-      }
-     }
-     $162 = (($$0591795) + 1)|0;
-     $exitcond852 = ($162|0)==($143|0);
-     if ($exitcond852) {
-      $$0603$lcssa = $spec$select;
-      break;
-     } else {
-      $$0591795 = $162;$$0602794 = $153;$$0603793 = $spec$select;$$0605792 = 
$$0651;
-     }
-    }
-   } else {
-    $$0603$lcssa = $$1539664;
-   }
-   $163 = (__gcry_mpi_alloc_limb_space($$0603$lcssa,$24)|0);
-   $164 = ($$0603$lcssa|0)>(0);
-   if ($164) {
-    $165 = $$0603$lcssa << 2;
-    _memset(($163|0),0,($165|0))|0;
-   }
-   $166 = (($12) + -1)|0;
-   $167 = ($$0601|0)==(1);
-   if ($167) {
-    $$1652 = $$1539664;
-   } else {
-    $168 = ($14|0)>(0);
-    if ($168) {
-     $169 = $14 << 2;
-     _memset(($$0534|0),0,($169|0))|0;
-     $$1652 = $14;
-    } else {
-     $$1652 = $14;
-    }
-   }
-   if ($137) {
-    $$0556778 = 0;
-    while(1) {
-     $170 = (($$1537) + ($$0556778<<2)|0);
-     $171 = HEAP32[$170>>2]|0;
-     $172 = (($$0534) + ($$0556778<<2)|0);
-     HEAP32[$172>>2] = $171;
-     $173 = (($$0556778) + 1)|0;
-     $exitcond846 = ($173|0)==($$1539664|0);
-     if ($exitcond846) {
-      break;
-     } else {
-      $$0556778 = $173;
-     }
-    }
-   }
-   $174 = (($$0535) + ($166<<2)|0);
-   $175 = HEAP32[$174>>2]|0;
-   $176 = ($175>>>0)<(65536);
-   $177 = ($175>>>0)<(256);
-   $178 = $177 ? 0 : 8;
-   $179 = ($175>>>0)<(16777216);
-   $180 = $179 ? 16 : 24;
-   $181 = $176 ? $178 : $180;
-   $182 = $175 >>> $181;
-   $183 = (14784 + ($182)|0);
-   $184 = HEAP8[$183>>0]|0;
-   $185 = $184&255;
-   $$neg692 = (32 - ($185))|0;
-   $186 = (($$neg692) - ($181))|0;
-   $187 = $175 << $186;
-   $188 = $187 << 1;
-   $189 = (31 - ($186))|0;
-   $190 = (32 - ($$0601))|0;
-   $191 = ($142|0)==(31);
-   $192 = ((($7)) + 4|0);
-   $193 = ((($8)) + 4|0);
-   $194 = ((($8)) + 8|0);
-   $195 = ((($7)) + 8|0);
-   $196 = ((($8)) + 12|0);
-   $197 = ((($7)) + 12|0);
-   $198 = ((($7)) + 16|0);
-   $199 = ((($8)) + 16|0);
-   $$0562$ph = $188;$$0568$ph = $189;$$0575$ph = $125;$$0584$ph = 0;$$1$ph = 
$$0534;$$1592$ph = $166;$$2653$ph = $$1652;
-   L114: while(1) {
-    $$0562 = $$0562$ph;$$0568 = $$0568$ph;$$0584 = $$0584$ph;$$1592 = 
$$1592$ph;
-    while(1) {
-     $200 = ($$0562|0)==(0);
-     if (!($200)) {
-      break;
-     }
-     $201 = (($$0568) + ($$0584))|0;
-     $202 = (($$1592) + -1)|0;
-     $203 = ($$1592|0)<(1);
-     if ($203) {
-      $$5567 = 0;$$5573 = 0;$$5589 = $201;
-      break L114;
-     }
-     $204 = (($$0535) + ($202<<2)|0);
-     $205 = HEAP32[$204>>2]|0;
-     $$0562 = $205;$$0568 = 32;$$0584 = $201;$$1592 = $202;
-    }
-    $206 = ($$0562>>>0)<(65536);
-    $207 = ($$0562>>>0)<(256);
-    $208 = $207 ? 0 : 8;
-    $209 = ($$0562>>>0)<(16777216);
-    $210 = $209 ? 16 : 24;
-    $211 = $206 ? $208 : $210;
-    $212 = $$0562 >>> $211;
-    $213 = (14784 + ($212)|0);
-    $214 = HEAP8[$213>>0]|0;
-    $215 = $214&255;
-    $$neg695 = (32 - ($211))|0;
-    $216 = (($$neg695) - ($215))|0;
-    $217 = $$0562 << $216;
-    $218 = (($$0568) - ($216))|0;
-    $219 = (($216) + ($$0584))|0;
-    $220 = ($218|0)<($$0601|0);
-    if ($220) {
-     $224 = (($$1592) + -1)|0;
-     $225 = ($$1592|0)<(1);
-     if ($225) {
-      label = 103;
-      break;
-     }
-     $226 = $217 >>> $190;
-     $227 = (($$0535) + ($224<<2)|0);
-     $228 = HEAP32[$227>>2]|0;
-     $229 = (($218) + ($190))|0;
-     $230 = $228 >>> $229;
-     $231 = $230 | $226;
-     $232 = (($$0601) - ($218))|0;
-     $233 = $228 << $232;
-     $$0550 = $231;$$1563 = $233;$$1569 = $229;$$2593 = $224;
-    } else {
-     $221 = $217 >>> $190;
-     $222 = $217 << $$0601;
-     $223 = (($218) - ($$0601))|0;
-     $$0550 = $221;$$1563 = $222;$$1569 = $223;$$2593 = $$1592;
-    }
-    $234 = (0 - ($$0550))|0;
-    $235 = $$0550 & $234;
-    $236 = ($235>>>0)<(65536);
-    $237 = ($235>>>0)<(256);
-    $238 = $237 ? 0 : 8;
-    $239 = ($235>>>0)<(16777216);
-    $240 = $239 ? 16 : 24;
-    $241 = $236 ? $238 : $240;
-    $242 = $235 >>> $241;
-    $243 = (14784 + ($242)|0);
-    $244 = HEAP8[$243>>0]|0;
-    $245 = $244&255;
-    $246 = (($245) + -1)|0;
-    $247 = (($246) + ($241))|0;
-    $248 = $$0550 >>> $247;
-    $249 = $248 >>> 1;
-    $250 = (($219) + ($$0601))|0;
-    $251 = (($250) - ($247))|0;
-    $252 = ($251|0)==(0);
-    if ($252) {
-     $$1576$lcssa = $$0575$ph;$$2$lcssa = $$1$ph;$$3654$lcssa = $$2653$ph;
-    } else {
-     $$1576764 = $$0575$ph;$$1585763 = $251;$$2765 = $$1$ph;$$3654762 = 
$$2653$ph;
-     while(1) {
-      $253 = ($$3654762|0)<(16);
-      if ($253) {
-       (__gcry_mpih_mul($$1576764,$$2765,$$3654762,$$2765,$$3654762)|0);
-      } else {
-       
__gcry_mpih_mul_karatsuba_case($$1576764,$$2765,$$3654762,$$2765,$$3654762,$6);
-      }
-      $254 = $$3654762 << 1;
-      $255 = ($254|0)>($14|0);
-      if ($255) {
-       $256 = (($$1576764) + ($14<<2)|0);
-       (__gcry_mpih_divrem($256,0,$$1576764,$254,$55,$14)|0);
-       $storemerge$i613 = $14;
-      } else {
-       $storemerge$i613 = $254;
-      }
-      $257 = (($$1585763) + -1)|0;
-      $258 = ($257|0)==(0);
-      if ($258) {
-       $$1576$lcssa = $$2765;$$2$lcssa = $$1576764;$$3654$lcssa = 
$storemerge$i613;
-       break;
-      } else {
-       $$2765$phi = $$1576764;$$1576764$phi = $$2765;$$1585763 = 
$257;$$3654762 = $storemerge$i613;$$2765 = $$2765$phi;$$1576764 = $$1576764$phi;
-      }
-     }
-    }
-    do {
-     if ($191) {
-      $$1606$lcssa859 = 0;
-      label = 98;
-     } else {
-      $$0582773 = 0;$$1606772 = 0;
-      while(1) {
-       $259 = (($5) + ($$0582773<<2)|0);
-       $260 = HEAP32[$259>>2]|0;
-       HEAP32[$192>>2] = $260;
-       HEAP32[$7>>2] = $260;
-       HEAP32[$193>>2] = $260;
-       HEAP32[$8>>2] = $260;
-       HEAP32[$194>>2] = 0;
-       HEAP32[$195>>2] = 0;
-       HEAP32[$196>>2] = 0;
-       HEAP32[$197>>2] = 0;
-       HEAP32[$198>>2] = $163;
-       $261 = (($4) + ($$0582773<<2)|0);
-       $262 = HEAP32[$261>>2]|0;
-       HEAP32[$199>>2] = $262;
-       $263 = ($$0582773|0)==($249|0);
-       $264 = $263&1;
-       (__gcry_mpi_set_cond($7,$8,$264)|0);
-       $265 = $263 ? $260 : 0;
-       $266 = $265 | $$1606772;
-       $267 = (($$0582773) + 1)|0;
-       $268 = ($267|0)<($143|0);
-       if ($268) {
-        $$0582773 = $267;$$1606772 = $266;
-       } else {
-        break;
-       }
-      }
-      $269 = ($266|0)<(16);
-      if ($269) {
-       $$1606$lcssa859 = $266;
-       label = 98;
-       break;
-      }
-      
__gcry_mpih_mul_karatsuba_case($$1576$lcssa,$$2$lcssa,$$3654$lcssa,$163,$266,$6);
-      $$1606$lcssa858 = $266;
-     }
-    } while(0);
-    if ((label|0) == 98) {
-     label = 0;
-     
(__gcry_mpih_mul($$1576$lcssa,$$2$lcssa,$$3654$lcssa,$163,$$1606$lcssa859)|0);
-     $$1606$lcssa858 = $$1606$lcssa859;
-    }
-    $270 = (($$1606$lcssa858) + ($$3654$lcssa))|0;
-    $271 = ($270|0)>($14|0);
-    if ($271) {
-     $272 = (($$1576$lcssa) + ($14<<2)|0);
-     (__gcry_mpih_divrem($272,0,$$1576$lcssa,$270,$55,$14)|0);
-     $$2653$ph$be = $14;
-    } else {
-     $$2653$ph$be = $270;
-    }
-    $$0562$ph = $$1563;$$0568$ph = $$1569;$$0575$ph = $$2$lcssa;$$0584$ph = 
$247;$$1$ph = $$1576$lcssa;$$1592$ph = $$2593;$$2653$ph = $$2653$ph$be;
-   }
-   if ((label|0) == 103) {
-    $273 = (32 - ($218))|0;
-    $274 = $217 >>> $273;
-    $275 = ($218|0)==(0);
-    if ($275) {
-     $$5567 = $274;$$5573 = 0;$$5589 = $219;
-    } else {
-     $276 = (($$0568) + ($$0584))|0;
-     $277 = (0 - ($274))|0;
-     $278 = $274 & $277;
-     $279 = ($278>>>0)<(65536);
-     $280 = ($278>>>0)<(256);
-     $281 = $280 ? 0 : 8;
-     $282 = ($278>>>0)<(16777216);
-     $283 = $282 ? 16 : 24;
-     $284 = $279 ? $281 : $283;
-     $285 = $278 >>> $284;
-     $286 = (14784 + ($285)|0);
-     $287 = HEAP8[$286>>0]|0;
-     $288 = $287&255;
-     $289 = (($284) + -1)|0;
-     $290 = (($289) + ($288))|0;
-     $291 = $274 >>> $290;
-     $292 = (($276) - ($290))|0;
-     $$5567 = $291;$$5573 = $290;$$5589 = $292;
-    }
-   }
-   $293 = ($$5589|0)==(0);
-   if ($293) {
-    $$5580$lcssa = $$0575$ph;$$6$lcssa = $$1$ph;$$7658$lcssa = $$2653$ph;
-   } else {
-    $$5580755 = $$0575$ph;$$6590754 = $$5589;$$6756 = $$1$ph;$$7658753 = 
$$2653$ph;
-    while(1) {
-     $294 = (($$6590754) + -1)|0;
-     $295 = ($$7658753|0)<(16);
-     if ($295) {
-      (__gcry_mpih_mul($$5580755,$$6756,$$7658753,$$6756,$$7658753)|0);
-     } else {
-      
__gcry_mpih_mul_karatsuba_case($$5580755,$$6756,$$7658753,$$6756,$$7658753,$6);
-     }
-     $296 = $$7658753 << 1;
-     $297 = ($296|0)>($14|0);
-     if ($297) {
-      $298 = (($$5580755) + ($14<<2)|0);
-      (__gcry_mpih_divrem($298,0,$$5580755,$296,$55,$14)|0);
-      $storemerge$i617 = $14;
-     } else {
-      $storemerge$i617 = $296;
-     }
-     $299 = ($294|0)==(0);
-     if ($299) {
-      $$5580$lcssa = $$6756;$$6$lcssa = $$5580755;$$7658$lcssa = 
$storemerge$i617;
-      break;
-     } else {
-      $$6756$phi = $$5580755;$$5580755$phi = $$6756;$$6590754 = $294;$$7658753 
= $storemerge$i617;$$6756 = $$6756$phi;$$5580755 = $$5580755$phi;
-     }
-    }
-   }
-   $300 = ($$5567|0)==(0);
-   do {
-    if ($300) {
-     $$8 = $$6$lcssa;$$9660 = $$7658$lcssa;
-    } else {
-     do {
-      if ($191) {
-       $$2607$lcssa861 = 0;
-       label = 118;
-      } else {
-       $301 = ((($9)) + 4|0);
-       $302 = ((($10)) + 4|0);
-       $303 = ((($10)) + 8|0);
-       $304 = ((($9)) + 8|0);
-       $305 = ((($10)) + 12|0);
-       $306 = ((($9)) + 12|0);
-       $307 = ((($9)) + 16|0);
-       $308 = ((($10)) + 16|0);
-       $309 = $$5567 >>> 1;
-       $$1583748 = 0;$$2607747 = 0;
-       while(1) {
-        $310 = (($5) + ($$1583748<<2)|0);
-        $311 = HEAP32[$310>>2]|0;
-        HEAP32[$301>>2] = $311;
-        HEAP32[$9>>2] = $311;
-        HEAP32[$302>>2] = $311;
-        HEAP32[$10>>2] = $311;
-        HEAP32[$303>>2] = 0;
-        HEAP32[$304>>2] = 0;
-        HEAP32[$305>>2] = 0;
-        HEAP32[$306>>2] = 0;
-        HEAP32[$307>>2] = $163;
-        $312 = (($4) + ($$1583748<<2)|0);
-        $313 = HEAP32[$312>>2]|0;
-        HEAP32[$308>>2] = $313;
-        $314 = ($$1583748|0)==($309|0);
-        $315 = $314&1;
-        (__gcry_mpi_set_cond($9,$10,$315)|0);
-        $316 = $314 ? $311 : 0;
-        $317 = $316 | $$2607747;
-        $318 = (($$1583748) + 1)|0;
-        $319 = ($318|0)<($143|0);
-        if ($319) {
-         $$1583748 = $318;$$2607747 = $317;
-        } else {
-         break;
-        }
-       }
-       $320 = ($317|0)<(16);
-       if ($320) {
-        $$2607$lcssa861 = $317;
-        label = 118;
-        break;
-       }
-       
__gcry_mpih_mul_karatsuba_case($$5580$lcssa,$$6$lcssa,$$7658$lcssa,$163,$317,$6);
-       $$2607$lcssa860 = $317;
-      }
-     } while(0);
-     if ((label|0) == 118) {
-      
(__gcry_mpih_mul($$5580$lcssa,$$6$lcssa,$$7658$lcssa,$163,$$2607$lcssa861)|0);
-      $$2607$lcssa860 = $$2607$lcssa861;
-     }
-     $321 = (($$2607$lcssa860) + ($$7658$lcssa))|0;
-     $322 = ($321|0)>($14|0);
-     if ($322) {
-      $323 = (($$5580$lcssa) + ($14<<2)|0);
-      (__gcry_mpih_divrem($323,0,$$5580$lcssa,$321,$55,$14)|0);
-      $storemerge$i619 = $14;
-     } else {
-      $storemerge$i619 = $321;
-     }
-     $324 = ($$5573|0)==(0);
-     if ($324) {
-      $$8 = $$5580$lcssa;$$9660 = $storemerge$i619;
-      break;
-     }
-     $$6574742 = $$5573;$$6581741 = $$6$lcssa;$$7743 = $$5580$lcssa;$$8659740 
= $storemerge$i619;
-     while(1) {
-      $325 = ($$8659740|0)<(16);
-      if ($325) {
-       (__gcry_mpih_mul($$6581741,$$7743,$$8659740,$$7743,$$8659740)|0);
-      } else {
-       
__gcry_mpih_mul_karatsuba_case($$6581741,$$7743,$$8659740,$$7743,$$8659740,$6);
-      }
-      $326 = $$8659740 << 1;
-      $327 = ($326|0)>($14|0);
-      if ($327) {
-       $328 = (($$6581741) + ($14<<2)|0);
-       (__gcry_mpih_divrem($328,0,$$6581741,$326,$55,$14)|0);
-       $storemerge$i621 = $14;
-      } else {
-       $storemerge$i621 = $326;
-      }
-      $329 = (($$6574742) + -1)|0;
-      $330 = ($329|0)==(0);
-      if ($330) {
-       $$8 = $$6581741;$$9660 = $storemerge$i621;
-       break;
-      } else {
-       $$7743$phi = $$6581741;$$6581741$phi = $$7743;$$6574742 = 
$329;$$8659740 = $storemerge$i621;$$7743 = $$7743$phi;$$6581741 = $$6581741$phi;
-      }
-     }
-    }
-   } while(0);
-   $331 = HEAP32[$37>>2]|0;
-   do {
-    if ($72) {
-     $332 = (__gcry_mpih_lshift($331,$$8,$$9660,$71)|0);
-     $333 = HEAP32[$37>>2]|0;
-     $334 = ($332|0)==(0);
-     if ($334) {
-      $$10 = $$9660;$$9 = $333;
-      break;
-     }
-     $335 = (($$9660) + 1)|0;
-     $336 = (($333) + ($$9660<<2)|0);
-     HEAP32[$336>>2] = $332;
-     $$10 = $335;$$9 = $333;
-    } else {
-     $337 = ($331|0)==($$8|0);
-     if ($337) {
-      $$10 = $$9660;$$9 = $$8;
-      break;
-     }
-     $338 = ($$9660|0)>(0);
-     if (!($338)) {
-      $$10 = $$9660;$$9 = $331;
-      break;
-     }
-     $$0737 = 0;
-     while(1) {
-      $339 = (($$8) + ($$0737<<2)|0);
-      $340 = HEAP32[$339>>2]|0;
-      $341 = (($331) + ($$0737<<2)|0);
-      HEAP32[$341>>2] = $340;
-      $342 = (($$0737) + 1)|0;
-      $exitcond = ($342|0)==($$9660|0);
-      if ($exitcond) {
-       $$10 = $$9660;$$9 = $331;
-       break;
-      } else {
-       $$0737 = $342;
-      }
-     }
-    }
-   } while(0);
-   $343 = ($$10|0)<($14|0);
-   if ($343) {
-    $$11 = $$10;
-   } else {
-    $344 = (($$9) + ($14<<2)|0);
-    (__gcry_mpih_divrem($344,0,$$9,$$10,$55,$14)|0);
-    $$11 = $14;
-   }
-   if ($72) {
-    (__gcry_mpih_rshift($$9,$$9,$$11,$71)|0);
-   }
-   $345 = ($$11|0)>(0);
-   L206: do {
-    if ($345) {
-     $$12730 = $$11;
-     while(1) {
-      $347 = (($$12730) + -1)|0;
-      $348 = (($$9) + ($347<<2)|0);
-      $349 = HEAP32[$348>>2]|0;
-      $350 = ($349|0)==(0);
-      if (!($350)) {
-       $$12$lcssa = $$12730;
-       break L206;
-      }
-      $346 = ($$12730|0)>(1);
-      if ($346) {
-       $$12730 = $347;
-      } else {
-       $$12$lcssa = $347;
-       break;
-      }
-     }
-    } else {
-     $$12$lcssa = $$11;
-    }
-   } while(0);
-   __gcry_mpih_release_karatsuba_ctx($6);
-   if (!($191)) {
-    if ($25) {
-     $$5596728$us = 0;
-     while(1) {
-      $351 = (($4) + ($$5596728$us<<2)|0);
-      $352 = HEAP32[$351>>2]|0;
-      $353 = (($5) + ($$5596728$us<<2)|0);
-      $354 = HEAP32[$353>>2]|0;
-      __gcry_mpi_free_limb_space($352,$354);
-      $355 = (($$5596728$us) + 1)|0;
-      $356 = ($355|0)<($143|0);
-      if ($356) {
-       $$5596728$us = $355;
-      } else {
-       break;
-      }
-     }
-    } else {
-     $$5596728 = 0;
-     while(1) {
-      $357 = (($4) + ($$5596728<<2)|0);
-      $358 = HEAP32[$357>>2]|0;
-      __gcry_mpi_free_limb_space($358,0);
-      $359 = (($$5596728) + 1)|0;
-      $360 = ($359|0)<($143|0);
-      if ($360) {
-       $$5596728 = $359;
-      } else {
-       break;
-      }
-     }
-    }
-   }
-   $361 = $25 ? $$0603$lcssa : 0;
-   __gcry_mpi_free_limb_space($163,$361);
-   $362 = ($$12$lcssa|0)!=(0);
-   $or$cond = $130 & $362;
-   L222: do {
-    if ($or$cond) {
-     if ($72) {
-      (__gcry_mpih_rshift($55,$55,$14,$71)|0);
-     }
-     $363 = (__gcry_mpih_sub_n($$9,$55,$$9,$$12$lcssa)|0);
-     $364 = (($14) - ($$12$lcssa))|0;
-     $365 = ($364|0)==(0);
-     L227: do {
-      if (!($365)) {
-       $366 = (($$9) + ($$12$lcssa<<2)|0);
-       $367 = (($55) + ($$12$lcssa<<2)|0);
-       $368 = ((($367)) + 4|0);
-       $369 = HEAP32[$367>>2]|0;
-       $370 = (($369) - ($363))|0;
-       $371 = ((($366)) + 4|0);
-       HEAP32[$366>>2] = $370;
-       $372 = ($370>>>0)>($369>>>0);
-       L229: do {
-        if ($372) {
-         $373 = (($364) + -1)|0;
-         $374 = ($373|0)==(0);
-         if ($374) {
-          break L227;
-         }
-         $$02637$i$i = $368;$$02836$i$i = $371;$376 = $373;
-         while(1) {
-          $378 = ((($$02637$i$i)) + 4|0);
-          $379 = HEAP32[$$02637$i$i>>2]|0;
-          $380 = (($379) + -1)|0;
-          $381 = ((($$02836$i$i)) + 4|0);
-          HEAP32[$$02836$i$i>>2] = $380;
-          $382 = ($379|0)==(0);
-          if (!($382)) {
-           $$1$i$i = $376;$$127$i$i = $378;$$129$i$i = $381;
-           break L229;
-          }
-          $375 = (($376) + -1)|0;
-          $377 = ($375|0)==(0);
-          if ($377) {
-           break L227;
-          } else {
-           $$02637$i$i = $378;$$02836$i$i = $381;$376 = $375;
-          }
-         }
-        } else {
-         $$1$i$i = $364;$$127$i$i = $368;$$129$i$i = $371;
-        }
-       } while(0);
-       $383 = ($$129$i$i|0)==($$127$i$i|0);
-       if ($383) {
-        break;
-       }
-       $384 = (($$1$i$i) + -1)|0;
-       $385 = ($$1$i$i|0)>(1);
-       if (!($385)) {
-        break;
-       }
-       $$035$i$i = 0;
-       while(1) {
-        $386 = (($$127$i$i) + ($$035$i$i<<2)|0);
-        $387 = HEAP32[$386>>2]|0;
-        $388 = (($$129$i$i) + ($$035$i$i<<2)|0);
-        HEAP32[$388>>2] = $387;
-        $389 = (($$035$i$i) + 1)|0;
-        $exitcond$i$i = ($389|0)==($384|0);
-        if ($exitcond$i$i) {
-         break;
-        } else {
-         $$035$i$i = $389;
-        }
-       }
-      }
-     } while(0);
-     $390 = ($14|0)>(0);
-     if (!($390)) {
-      $$0540 = $17;$$13 = $14;
-      break;
-     }
-     $storemerge725 = $14;
-     while(1) {
-      $392 = (($storemerge725) + -1)|0;
-      $393 = (($$9) + ($392<<2)|0);
-      $394 = HEAP32[$393>>2]|0;
-      $395 = ($394|0)==(0);
-      if (!($395)) {
-       $$0540 = $17;$$13 = $storemerge725;
-       break L222;
-      }
-      $391 = ($storemerge725|0)>(1);
-      if ($391) {
-       $storemerge725 = $392;
-      } else {
-       $$0540 = $17;$$13 = $392;
-       break;
-      }
-     }
-    } else {
-     $$0540 = 0;$$13 = $$12$lcssa;
-    }
-   } while(0);
-   $396 = HEAP32[$37>>2]|0;
-   $397 = ($396|0)==($$9|0);
-   if ($397) {
-    $$0540$sink = $$0540;$$0548 = $125;$$0561 = $124;$$13$sink = $$13;$$1546 = 
$$0545;$$1555 = $$0554;$$2544 = $$1543;$$2553 = $$1552;
-    break;
-   }
-   __gcry_assert_failed(64041,64016,786,64026);
-   // unreachable;
-  }
- } while(0);
- $398 = ((($0)) + 4|0);
- HEAP32[$398>>2] = $$13$sink;
- $399 = ((($0)) + 8|0);
- HEAP32[$399>>2] = $$0540$sink;
- $400 = ($55|0)==(0|0);
- if (!($400)) {
-  __gcry_mpi_free_limb_space($55,$54);
- }
- $401 = ($$2544|0)==(0|0);
- if (!($401)) {
-  __gcry_mpi_free_limb_space($$2544,$$2553);
- }
- $402 = ($$1546|0)==(0|0);
- if (!($402)) {
-  __gcry_mpi_free_limb_space($$1546,$$1555);
- }
- $403 = ($$0548|0)==(0|0);
- if ($403) {
-  STACKTOP = sp;return;
- }
- __gcry_mpi_free_limb_space($$0548,$$0561);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_trailing_zeros($0) {
- $0 = $0|0;
- var $$03436 = 0, $$037 = 0, $$1 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 
0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 4|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $4 = ((($0)) + 16|0);
- $5 = HEAP32[$4>>2]|0;
- $$03436 = 0;$$037 = 0;
- while(1) {
-  $6 = (($5) + ($$037<<2)|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = ($7|0)==(0);
-  if (!($8)) {
-   break;
-  }
-  $24 = (($$03436) + 32)|0;
-  $25 = (($$037) + 1)|0;
-  $26 = ($25>>>0)<($2>>>0);
-  if ($26) {
-   $$03436 = $24;$$037 = $25;
-  } else {
-   $$1 = $24;
-   label = 6;
-   break;
-  }
- }
- if ((label|0) == 6) {
-  return ($$1|0);
- }
- $9 = (0 - ($7))|0;
- $10 = $7 & $9;
- $11 = ($10>>>0)<(65536);
- $12 = ($10>>>0)<(256);
- $13 = $12 ? 0 : 8;
- $14 = ($10>>>0)<(16777216);
- $15 = $14 ? 16 : 24;
- $16 = $11 ? $13 : $15;
- $17 = $10 >>> $16;
- $18 = (14784 + ($17)|0);
- $19 = HEAP8[$18>>0]|0;
- $20 = $19&255;
- $21 = (($$03436) + -1)|0;
- $22 = (($21) + ($16))|0;
- $23 = (($22) + ($20))|0;
- $$1 = $23;
- return ($$1|0);
-}
-function __gcry_mpi_get_buffer($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (_do_get_buffer($0,$1,0,$2,$3,0)|0);
- return ($4|0);
-}
-function _do_get_buffer($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$088 = 0, $$089110 = 0, $$089110$in = 0, $$090 = 0, $$091109 = 
0, $$093$lcssa = 0, $$094 = 0, $$1104 = 0, $$2$lcssa = 0, $$295 = 0, $$lcssa = 
0, $$pn = 0, $$pr = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 
0, $53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $spec$select = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $6 = ($4|0)==(0|0);
- if (!($6)) {
-  $7 = ((($0)) + 8|0);
-  $8 = HEAP32[$7>>2]|0;
-  HEAP32[$4>>2] = $8;
- }
- $9 = ((($0)) + 4|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = $10 << 2;
- HEAP32[$3>>2] = $11;
- $12 = ($10|0)==(0);
- $spec$select = $12 ? 1 : $11;
- $13 = ($spec$select>>>0)<($1>>>0);
- $$088 = $13 ? $1 : $spec$select;
- $14 = ($2|0)<(0);
- $15 = (0 - ($2))|0;
- $$pn = $14 ? $15 : $2;
- $$0 = (($$088) + ($$pn))|0;
- $16 = ($5|0)==(0);
- if ($16) {
-  $17 = ((($0)) + 12|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = $18 & 1;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   $22 = (__gcry_malloc($$0)|0);
-   $24 = $22;
-  } else {
-   label = 5;
-  }
- } else {
-  label = 5;
- }
- if ((label|0) == 5) {
-  $21 = (__gcry_malloc_secure($$0)|0);
-  $24 = $21;
- }
- $23 = ($24|0)==(0|0);
- if ($23) {
-  $$090 = 0;
-  return ($$090|0);
- }
- $25 = (($24) + ($15)|0);
- $$094 = $14 ? $25 : $24;
- $26 = HEAP32[$9>>2]|0;
- $27 = ($26|0)>(0);
- if ($27) {
-  $28 = ((($0)) + 16|0);
-  $$089110$in = $26;$$091109 = $$094;
-  while(1) {
-   $$089110 = (($$089110$in) + -1)|0;
-   $29 = HEAP32[$28>>2]|0;
-   $30 = (($29) + ($$089110<<2)|0);
-   $31 = HEAP32[$30>>2]|0;
-   $32 = $31 >>> 24;
-   $33 = $32&255;
-   $34 = ((($$091109)) + 1|0);
-   HEAP8[$$091109>>0] = $33;
-   $35 = $31 >>> 16;
-   $36 = $35&255;
-   $37 = ((($$091109)) + 2|0);
-   HEAP8[$34>>0] = $36;
-   $38 = $31 >>> 8;
-   $39 = $38&255;
-   $40 = ((($$091109)) + 3|0);
-   HEAP8[$37>>0] = $39;
-   $41 = $31&255;
-   $42 = ((($$091109)) + 4|0);
-   HEAP8[$40>>0] = $41;
-   $43 = ($$089110$in|0)>(1);
-   if ($43) {
-    $$089110$in = $$089110;$$091109 = $42;
-   } else {
-    break;
-   }
-  }
- }
- $44 = ($1|0)==(0);
- $$pr = HEAP32[$3>>2]|0;
- if (!($44)) {
-  $45 = $$pr >>> 1;
-  $46 = ($45|0)==(0);
-  if (!($46)) {
-   $47 = (($$pr) + -1)|0;
-   $$1104 = 0;
-   while(1) {
-    $48 = (($$094) + ($$1104)|0);
-    $49 = HEAP8[$48>>0]|0;
-    $50 = (($47) - ($$1104))|0;
-    $51 = (($$094) + ($50)|0);
-    $52 = HEAP8[$51>>0]|0;
-    HEAP8[$48>>0] = $52;
-    HEAP8[$51>>0] = $49;
-    $53 = (($$1104) + 1)|0;
-    $exitcond = ($53|0)==($45|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$1104 = $53;
-    }
-   }
-  }
-  $54 = ($$pr>>>0)<($1>>>0);
-  if ($54) {
-   $55 = (($$094) + ($$pr)|0);
-   $56 = (($1) - ($$pr))|0;
-   _memset(($55|0),0,($56|0))|0;
-   $$093$lcssa = $1;
-  } else {
-   $$093$lcssa = $$pr;
-  }
-  HEAP32[$3>>2] = $$093$lcssa;
-  $$090 = $24;
-  return ($$090|0);
- }
- $57 = ($$pr|0)==(0);
- if ($57) {
-  $$090 = $24;
-  return ($$090|0);
- }
- $$295 = $$094;$62 = $$pr;
- while(1) {
-  $58 = HEAP8[$$295>>0]|0;
-  $59 = ($58<<24>>24)==(0);
-  if (!($59)) {
-   $$2$lcssa = $$295;$$lcssa = $62;
-   break;
-  }
-  $60 = ((($$295)) + 1|0);
-  $61 = (($62) + -1)|0;
-  HEAP32[$3>>2] = $61;
-  $63 = ($61|0)==(0);
-  if ($63) {
-   $$2$lcssa = $60;$$lcssa = 0;
-   break;
-  } else {
-   $$295 = $60;$62 = $61;
-  }
- }
- $64 = ($$2$lcssa|0)==($$094|0);
- if ($64) {
-  $$090 = $24;
-  return ($$090|0);
- }
- _memmove(($$094|0),($$2$lcssa|0),($$lcssa|0))|0;
- $$090 = $24;
- return ($$090|0);
-}
-function __gcry_mpi_get_buffer_extra($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (_do_get_buffer($0,$1,$2,$3,$4,0)|0);
- return ($5|0);
-}
-function __gcry_mpi_set_buffer($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$lcssa = 0, $$053$add = 0, $$053$ptr = 0, $$053$ptr$lcssa = 0, 
$$053$ptr63 = 0, $$053$ptr66 = 0, $$055 = 0, $$065 = 0, $$1 = 0, $$154 = 0, 
$$156 = 0, $$2 = 0, $$257 = 0, $$add = 0, $$add58 = 0, $$pn$add = 0, $$pn$add62 
= 0, $$pn$idx$lcssa = 0, $$pn$idx64 = 0, $$pre = 0;
- var $$ptr = 0, $$ptr59 = 0, $$ptr60 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 
= 0, $exitcond = 0, $scevgep = 0, $smax = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = ($0|0)==(0|0);
- if (!($4)) {
-  $5 = ((($0)) + 12|0);
-  $6 = HEAP32[$5>>2]|0;
-  $7 = $6 & 16;
-  $8 = ($7|0)==(0);
-  if (!($8)) {
-   __gcry_mpi_immutable_failed();
-   return;
-  }
- }
- $9 = (($2) + 3)|0;
- $10 = $9 >>> 2;
- $11 = HEAP32[$0>>2]|0;
- $12 = ($11|0)<($10|0);
- if ($12) {
-  __gcry_mpi_resize($0,$10);
- }
- $13 = ((($0)) + 8|0);
- HEAP32[$13>>2] = $3;
- $$pn$add62 = (($2) + -1)|0;
- $$053$ptr63 = (($1) + ($$pn$add62)|0);
- $14 = ($2|0)>(4);
- if ($14) {
-  $15 = ((($0)) + 16|0);
-  $16 = $2 ^ -1;
-  $17 = ($16|0)>(-9);
-  $smax = $17 ? $16 : -9;
-  $18 = (($smax) + ($2))|0;
-  $19 = (($18) + 4)|0;
-  $20 = $19 >>> 2;
-  $21 = $19 & -4;
-  $22 = (($20) + 1)|0;
-  $23 = (($2) + -5)|0;
-  $24 = (($23) - ($21))|0;
-  $$pre = HEAP32[$15>>2]|0;
-  $$053$ptr66 = $$053$ptr63;$$065 = 0;$$pn$idx64 = $2;
-  while(1) {
-   $$053$add = (($$pn$idx64) + -2)|0;
-   $$ptr = (($1) + ($$053$add)|0);
-   $25 = HEAP8[$$053$ptr66>>0]|0;
-   $26 = $25&255;
-   $$add = (($$pn$idx64) + -3)|0;
-   $$ptr59 = (($1) + ($$add)|0);
-   $27 = HEAP8[$$ptr>>0]|0;
-   $28 = $27&255;
-   $29 = $28 << 8;
-   $30 = $29 | $26;
-   $$add58 = (($$pn$idx64) + -4)|0;
-   $$ptr60 = (($1) + ($$add58)|0);
-   $31 = HEAP8[$$ptr59>>0]|0;
-   $32 = $31&255;
-   $33 = $32 << 16;
-   $34 = $30 | $33;
-   $35 = HEAP8[$$ptr60>>0]|0;
-   $36 = $35&255;
-   $37 = $36 << 24;
-   $38 = $34 | $37;
-   $39 = (($$065) + 1)|0;
-   $40 = (($$pre) + ($$065<<2)|0);
-   HEAP32[$40>>2] = $38;
-   $$pn$add = (($$pn$idx64) + -5)|0;
-   $$053$ptr = (($1) + ($$pn$add)|0);
-   $exitcond = ($39|0)==($22|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$053$ptr66 = $$053$ptr;$$065 = $39;$$pn$idx64 = $$add58;
-   }
-  }
-  $41 = (($2) + -4)|0;
-  $42 = (($41) - ($21))|0;
-  $scevgep = (($1) + ($24)|0);
-  $$0$lcssa = $22;$$053$ptr$lcssa = $scevgep;$$pn$idx$lcssa = $42;
- } else {
-  $$0$lcssa = 0;$$053$ptr$lcssa = $$053$ptr63;$$pn$idx$lcssa = $2;
- }
- $43 = ($$pn$idx$lcssa|0)>(0);
- if ($43) {
-  $44 = ((($$053$ptr$lcssa)) + -1|0);
-  $45 = HEAP8[$$053$ptr$lcssa>>0]|0;
-  $46 = $45&255;
-  $47 = ($44>>>0)<($1>>>0);
-  if ($47) {
-   $$055 = $46;$$154 = $44;
-  } else {
-   $48 = ((($$053$ptr$lcssa)) + -2|0);
-   $49 = HEAP8[$44>>0]|0;
-   $50 = $49&255;
-   $51 = $50 << 8;
-   $52 = $51 | $46;
-   $$055 = $52;$$154 = $48;
-  }
-  $53 = ($$154>>>0)<($1>>>0);
-  if ($53) {
-   $$156 = $$055;$$2 = $$154;
-  } else {
-   $54 = ((($$154)) + -1|0);
-   $55 = HEAP8[$$154>>0]|0;
-   $56 = $55&255;
-   $57 = $56 << 16;
-   $58 = $57 | $$055;
-   $$156 = $58;$$2 = $54;
-  }
-  $59 = ($$2>>>0)<($1>>>0);
-  if ($59) {
-   $$257 = $$156;
-  } else {
-   $60 = HEAP8[$$2>>0]|0;
-   $61 = $60&255;
-   $62 = $61 << 24;
-   $63 = $62 | $$156;
-   $$257 = $63;
-  }
-  $64 = ((($0)) + 16|0);
-  $65 = HEAP32[$64>>2]|0;
-  $66 = (($$0$lcssa) + 1)|0;
-  $67 = (($65) + ($$0$lcssa<<2)|0);
-  HEAP32[$67>>2] = $$257;
-  $$1 = $66;
- } else {
-  $$1 = $$0$lcssa;
- }
- $68 = ((($0)) + 4|0);
- HEAP32[$68>>2] = $$1;
- $69 = ($$1|0)==($10|0);
- if ($69) {
-  return;
- } else {
-  __gcry_assert_failed(64054,64066,377,64077);
-  // unreachable;
- }
-}
-function __gcry_mpi_scan($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0$i = 0, $$0100 = 0, $$0126$i = 0, $$020$i = 0, $$020$i106 = 0, 
$$04458$i = 0, $$04562$i = 0, $$04661$i = 0, $$04860$i = 0, $$05059$i = 0, 
$$095$off$i = 0, $$095$off101$i = 0, $$095$off102$i = 0, $$095108$i = 0, 
$$096$i = 0, $$098128$i = 0, $$099127$i = 0, $$1 = 0, $$1$i = 0;
- var $$1100123$i = 0, $$14756$i = 0, $$14955$i = 0, $$157$i = 0, $$192129$i = 
0, $$197$i = 0, $$2$i = 0, $$2130$i = 0, $$293124$i = 0, $$3125$i = 0, $$4110$i 
= 0, $$lobit = 0, $$lobit101 = 0, $$off = 0, $$off$i = 0, $$off103$i = 0, 
$$off104$i = 0, $$sink = 0, $10 = 0, $100 = 0;
- var $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, 
$115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0;
- var $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 
= 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0;
- var $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 
= 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0;
- var $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0;
- var $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 
= 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0;
- var $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $20 = 0, $21 
= 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 
0, $69 = 0, $7 = 0, $70 = 0;
- var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, 
$79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0;
- var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0, $exitcond$i = 0, $exitcond$i107 = 0, $or$cond = 0, 
$or$cond102 = 0, $or$cond103 = 0, $spec$select$i = 0, $spec$select105$i = 0, 
$spec$select106$i = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $5 = ($2|0)==(0|0);
- if ($5) {
-  $197 = 0;
- } else {
-  $6 = (__gcry_is_secure($2)|0);
-  $7 = ($6|0)!=(0);
-  $197 = $7;
- }
- $8 = ($1|0)==(3);
- $$ = $8 ? 0 : $3;
- switch ($1|0) {
- case 1:  {
-  $9 = (($$) + 3)|0;
-  $10 = $9 >>> 2;
-  if ($197) {
-   $11 = (__gcry_mpi_alloc_secure($10)|0);
-   $14 = $11;
-  } else {
-   $12 = (__gcry_mpi_alloc($10)|0);
-   $14 = $12;
-  }
-  $13 = ($$|0)==(0);
-  if (!($13)) {
-   __gcry_mpi_set_buffer($14,$2,$$,0);
-   $15 = HEAP8[$2>>0]|0;
-   $16 = ($15<<24>>24)<(0);
-   $$lobit101 = ($15&255) >>> 7;
-   $17 = $$lobit101&255;
-   $18 = ((($14)) + 8|0);
-   HEAP32[$18>>2] = $17;
-   if ($16) {
-    $19 = (__gcry_mpi_get_nbits($14)|0);
-    $20 = ((($14)) + 12|0);
-    $21 = HEAP32[$20>>2]|0;
-    $22 = $21 & 16;
-    $23 = ($22|0)==(0);
-    if ($23) {
-     __gcry_mpi_normalize($14);
-     $24 = ((($14)) + 16|0);
-     $25 = HEAP32[$24>>2]|0;
-     $26 = ((($14)) + 4|0);
-     $27 = HEAP32[$26>>2]|0;
-     $28 = ($27|0)==(0);
-     if (!($28)) {
-      $$020$i = 0;
-      while(1) {
-       $29 = (($25) + ($$020$i<<2)|0);
-       $30 = HEAP32[$29>>2]|0;
-       $31 = $30 ^ -1;
-       HEAP32[$29>>2] = $31;
-       $32 = (($$020$i) + 1)|0;
-       $exitcond$i = ($32|0)==($27|0);
-       if ($exitcond$i) {
-        break;
-       } else {
-        $$020$i = $32;
-       }
-      }
-     }
-     HEAP32[$18>>2] = 0;
-     $33 = (($19) + -1)|0;
-     __gcry_mpi_clear_highbit($14,$33);
-    } else {
-     __gcry_mpi_immutable_failed();
-    }
-    __gcry_mpi_add_ui($14,$14,1);
-    HEAP32[$18>>2] = 1;
-   }
-  }
-  $34 = ($0|0)==(0|0);
-  if ($34) {
-   __gcry_mpi_free($14);
-  } else {
-   __gcry_mpi_normalize($14);
-   HEAP32[$0>>2] = $14;
-  }
-  $35 = ($4|0)==(0|0);
-  if ($35) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  HEAP32[$4>>2] = $$;
-  $$1 = 0;
-  return ($$1|0);
-  break;
- }
- case 5:  {
-  $36 = (($$) + 3)|0;
-  $37 = $36 >>> 2;
-  if ($197) {
-   $38 = (__gcry_mpi_alloc_secure($37)|0);
-   $41 = $38;
-  } else {
-   $39 = (__gcry_mpi_alloc($37)|0);
-   $41 = $39;
-  }
-  $40 = ($$|0)==(0);
-  if (!($40)) {
-   __gcry_mpi_set_buffer($41,$2,$$,0);
-  }
-  $42 = ($0|0)==(0|0);
-  if ($42) {
-   __gcry_mpi_free($41);
-  } else {
-   __gcry_mpi_normalize($41);
-   HEAP32[$0>>2] = $41;
-  }
-  $43 = ($4|0)==(0|0);
-  if ($43) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  HEAP32[$4>>2] = $$;
-  $$1 = 0;
-  return ($$1|0);
-  break;
- }
- case 2:  {
-  $44 = ($$>>>0)<(2);
-  L135: do {
-   if ($44) {
-    $$0$i = 0;$$2$i = 0;
-   } else {
-    $45 = HEAP8[$2>>0]|0;
-    $46 = $45&255;
-    $47 = $46 << 8;
-    $48 = ((($2)) + 1|0);
-    $49 = HEAP8[$48>>0]|0;
-    $50 = $49&255;
-    $51 = $47 | $50;
-    $52 = ($51>>>0)>(16384);
-    if ($52) {
-     $$0$i = 0;$$2$i = 0;
-    } else {
-     $53 = ((($2)) + 2|0);
-     $54 = (($51) + 7)|0;
-     $55 = $54 >>> 3;
-     $56 = (($55) + 3)|0;
-     $57 = $56 >>> 2;
-     if ($197) {
-      $58 = (__gcry_mpi_alloc_secure($57)|0);
-      $61 = $58;
-     } else {
-      $59 = (__gcry_mpi_alloc($57)|0);
-      $61 = $59;
-     }
-     $60 = ((($61)) + 4|0);
-     HEAP32[$60>>2] = $57;
-     $62 = ((($61)) + 8|0);
-     HEAP32[$62>>2] = 0;
-     $63 = ($57|0)==(0);
-     if ($63) {
-      $$0$i = $61;$$2$i = 2;
-     } else {
-      $64 = (0 - ($55))|0;
-      $65 = $64 & 3;
-      $66 = ((($61)) + 16|0);
-      $$04562$i = 2;$$04661$i = $53;$$04860$i = $65;$$05059$i = $57;
-      L143: while(1) {
-       $$04458$i = 0;$$14756$i = $$04661$i;$$14955$i = $$04860$i;$$157$i = 
$$04562$i;
-       while(1) {
-        $67 = (($$157$i) + 1)|0;
-        $68 = ($67>>>0)>($$>>>0);
-        if ($68) {
-         break L143;
-        }
-        $69 = $$04458$i << 8;
-        $70 = ((($$14756$i)) + 1|0);
-        $71 = HEAP8[$$14756$i>>0]|0;
-        $72 = $71&255;
-        $73 = $69 | $72;
-        $74 = (($$14955$i) + 1)|0;
-        $75 = ($74>>>0)<(4);
-        if ($75) {
-         $$04458$i = $73;$$14756$i = $70;$$14955$i = $74;$$157$i = $67;
-        } else {
-         break;
-        }
-       }
-       $76 = HEAP32[$66>>2]|0;
-       $77 = (($$05059$i) + -1)|0;
-       $78 = (($76) + ($77<<2)|0);
-       HEAP32[$78>>2] = $73;
-       $79 = ($$05059$i|0)>(1);
-       if ($79) {
-        $$04562$i = $67;$$04661$i = $70;$$04860$i = 0;$$05059$i = $77;
-       } else {
-        $$0$i = $61;$$2$i = $67;
-        break L135;
-       }
-      }
-      __gcry_mpi_free($61);
-      $$0$i = 0;$$2$i = $67;
-     }
-    }
-   }
-  } while(0);
-  $80 = ($4|0)==(0|0);
-  if (!($80)) {
-   HEAP32[$4>>2] = $$2$i;
-  }
-  $81 = ($0|0)!=(0|0);
-  $82 = ($$0$i|0)!=(0|0);
-  $or$cond = $81 & $82;
-  if ($or$cond) {
-   __gcry_mpi_normalize($$0$i);
-   HEAP32[$0>>2] = $$0$i;
-   $$0100 = $$0$i;
-  } else {
-   if ($82) {
-    __gcry_mpi_free($$0$i);
-    $$0100 = 0;
-   } else {
-    $$0100 = 0;
-   }
-  }
-  $83 = ($$0100|0)==(0|0);
-  $84 = $83 ? 65 : 0;
-  $$1 = $84;
-  return ($$1|0);
-  break;
- }
- default: {
-  if ($8) {
-   $$off = (($$) + -1)|0;
-   $85 = ($$off>>>0)<(3);
-   if ($85) {
-    $$1 = 66;
-    return ($$1|0);
-   }
-   $86 = ($$|0)==(0);
-   $87 = HEAP8[$2>>0]|0;
-   $88 = $87&255;
-   $89 = $88 << 24;
-   $90 = ((($2)) + 1|0);
-   $91 = HEAP8[$90>>0]|0;
-   $92 = $91&255;
-   $93 = $92 << 16;
-   $94 = $93 | $89;
-   $95 = ((($2)) + 2|0);
-   $96 = HEAP8[$95>>0]|0;
-   $97 = $96&255;
-   $98 = $97 << 8;
-   $99 = $94 | $98;
-   $100 = ((($2)) + 3|0);
-   $101 = HEAP8[$100>>0]|0;
-   $102 = $101&255;
-   $103 = $99 | $102;
-   $104 = ((($2)) + 4|0);
-   $105 = (($$) + -4)|0;
-   if (!($86)) {
-    $106 = ($105|0)!=(0);
-    $107 = ($103>>>0)>($105>>>0);
-    $or$cond102 = $106 & $107;
-    if ($or$cond102) {
-     $$1 = 67;
-     return ($$1|0);
-    }
-   }
-   $108 = (($103) + 4)|0;
-   $109 = (($103) + 3)|0;
-   $110 = $109 >>> 2;
-   if ($197) {
-    $111 = (__gcry_mpi_alloc_secure($110)|0);
-    $114 = $111;
-   } else {
-    $112 = (__gcry_mpi_alloc($110)|0);
-    $114 = $112;
-   }
-   $113 = ($103|0)==(0);
-   if (!($113)) {
-    __gcry_mpi_set_buffer($114,$104,$103,0);
-    $115 = HEAP8[$104>>0]|0;
-    $116 = ($115<<24>>24)<(0);
-    $$lobit = ($115&255) >>> 7;
-    $117 = $$lobit&255;
-    $118 = ((($114)) + 8|0);
-    HEAP32[$118>>2] = $117;
-    if ($116) {
-     $119 = (__gcry_mpi_get_nbits($114)|0);
-     $120 = ((($114)) + 12|0);
-     $121 = HEAP32[$120>>2]|0;
-     $122 = $121 & 16;
-     $123 = ($122|0)==(0);
-     if ($123) {
-      __gcry_mpi_normalize($114);
-      $124 = ((($114)) + 16|0);
-      $125 = HEAP32[$124>>2]|0;
-      $126 = ((($114)) + 4|0);
-      $127 = HEAP32[$126>>2]|0;
-      $128 = ($127|0)==(0);
-      if (!($128)) {
-       $$020$i106 = 0;
-       while(1) {
-        $129 = (($125) + ($$020$i106<<2)|0);
-        $130 = HEAP32[$129>>2]|0;
-        $131 = $130 ^ -1;
-        HEAP32[$129>>2] = $131;
-        $132 = (($$020$i106) + 1)|0;
-        $exitcond$i107 = ($132|0)==($127|0);
-        if ($exitcond$i107) {
-         break;
-        } else {
-         $$020$i106 = $132;
-        }
-       }
-      }
-      HEAP32[$118>>2] = 0;
-      $133 = (($119) + -1)|0;
-      __gcry_mpi_clear_highbit($114,$133);
-     } else {
-      __gcry_mpi_immutable_failed();
-     }
-     __gcry_mpi_add_ui($114,$114,1);
-     HEAP32[$118>>2] = 1;
-    }
-   }
-   $134 = ($4|0)==(0|0);
-   if (!($134)) {
-    HEAP32[$4>>2] = $108;
-   }
-   $135 = ($0|0)==(0|0);
-   if ($135) {
-    __gcry_mpi_free($114);
-    $$1 = 0;
-    return ($$1|0);
-   } else {
-    __gcry_mpi_normalize($114);
-    HEAP32[$0>>2] = $114;
-    $$1 = 0;
-    return ($$1|0);
-   }
-  }
-  $136 = ($1|0)==(4);
-  $137 = ($3|0)==(0);
-  $or$cond103 = $136 & $137;
-  if (!($or$cond103)) {
-   $$1 = 45;
-   return ($$1|0);
-  }
-  if ($197) {
-   $138 = (__gcry_mpi_alloc_secure(0)|0);
-   $157 = $138;
-  } else {
-   $139 = (__gcry_mpi_alloc(0)|0);
-   $157 = $139;
-  }
-  $140 = HEAP8[$2>>0]|0;
-  $141 = ($140<<24>>24)==(45);
-  $142 = ((($2)) + 1|0);
-  $spec$select$i = $141&1;
-  $spec$select105$i = $141 ? $142 : $2;
-  $143 = HEAP8[$spec$select105$i>>0]|0;
-  $144 = ($143<<24>>24)==(48);
-  if ($144) {
-   $145 = ((($spec$select105$i)) + 1|0);
-   $146 = HEAP8[$145>>0]|0;
-   $147 = ($146<<24>>24)==(120);
-   $148 = ((($spec$select105$i)) + 2|0);
-   $spec$select106$i = $147 ? $148 : $spec$select105$i;
-   $$1$i = $spec$select106$i;
-  } else {
-   $$1$i = $spec$select105$i;
-  }
-  $149 = (_strlen($$1$i)|0);
-  $150 = $149 << 2;
-  $151 = $149 & 1;
-  $152 = (($150) + 7)|0;
-  $153 = $152 >>> 3;
-  $154 = (($153) + 3)|0;
-  $155 = $154 >>> 2;
-  $156 = HEAP32[$157>>2]|0;
-  $158 = ($156>>>0)<($155>>>0);
-  if ($158) {
-   __gcry_mpi_resize($157,$155);
-   $159 = ((($157)) + 4|0);
-   HEAP32[$159>>2] = $155;
-   $160 = ((($157)) + 8|0);
-   HEAP32[$160>>2] = $spec$select$i;
-   label = 80;
-  } else {
-   $161 = ((($157)) + 4|0);
-   HEAP32[$161>>2] = $155;
-   $162 = ((($157)) + 8|0);
-   HEAP32[$162>>2] = $spec$select$i;
-   $163 = ($155|0)==(0);
-   if (!($163)) {
-    label = 80;
-   }
-  }
-  L54: do {
-   if ((label|0) == 80) {
-    $164 = (0 - ($153))|0;
-    $165 = $164 & 3;
-    $166 = ((($157)) + 16|0);
-    $$098128$i = $155;$$099127$i = $165;$$192129$i = $151;$$2130$i = $$1$i;
-    L56: while(1) {
-     $$0126$i = 0;$$1100123$i = $$099127$i;$$293124$i = $$192129$i;$$3125$i = 
$$2130$i;
-     while(1) {
-      $167 = ($$293124$i|0)==(0);
-      if ($167) {
-       $168 = ((($$3125$i)) + 1|0);
-       $169 = HEAP8[$$3125$i>>0]|0;
-       $170 = $169 << 24 >> 24;
-       $171 = ($169<<24>>24)==(0);
-       if ($171) {
-        label = 84;
-        break L56;
-       } else {
-        $$095108$i = $170;$$4110$i = $168;
-       }
-      } else {
-       $$095108$i = 48;$$4110$i = $$3125$i;
-      }
-      $172 = ((($$4110$i)) + 1|0);
-      $173 = HEAP8[$$4110$i>>0]|0;
-      $174 = $173 << 24 >> 24;
-      $175 = ($173<<24>>24)==(0);
-      if ($175) {
-       label = 86;
-       break L56;
-      }
-      $$095$off$i = (($$095108$i) + -48)|0;
-      $176 = ($$095$off$i>>>0)<(10);
-      do {
-       if ($176) {
-        $$096$i = $$095$off$i;
-       } else {
-        $$095$off101$i = (($$095108$i) + -97)|0;
-        $177 = ($$095$off101$i>>>0)<(6);
-        if ($177) {
-         $178 = (($$095108$i) + -87)|0;
-         $$096$i = $178;
-         break;
-        }
-        $$095$off102$i = (($$095108$i) + -65)|0;
-        $179 = ($$095$off102$i>>>0)<(6);
-        if (!($179)) {
-         label = 92;
-         break L56;
-        }
-        $180 = (($$095108$i) + -55)|0;
-        $$096$i = $180;
-       }
-      } while(0);
-      $181 = $$096$i << 4;
-      $$off$i = (($173) + -48)<<24>>24;
-      $182 = ($$off$i&255)<(10);
-      if ($182) {
-       $$sink = -48;
-      } else {
-       $$off103$i = (($173) + -97)<<24>>24;
-       $183 = ($$off103$i&255)<(6);
-       if ($183) {
-        $$sink = -87;
-       } else {
-        $$off104$i = (($173) + -65)<<24>>24;
-        $184 = ($$off104$i&255)<(6);
-        if ($184) {
-         $$sink = -55;
-        } else {
-         label = 96;
-         break L56;
-        }
-       }
-      }
-      $185 = (($$sink) + ($174))|0;
-      $186 = $$0126$i << 8;
-      $$197$i = $181 | $186;
-      $187 = $$197$i | $185;
-      $188 = (($$1100123$i) + 1)|0;
-      $189 = ($188>>>0)<(4);
-      if ($189) {
-       $$0126$i = $187;$$1100123$i = $188;$$293124$i = 0;$$3125$i = $172;
-      } else {
-       break;
-      }
-     }
-     $190 = HEAP32[$166>>2]|0;
-     $191 = (($$098128$i) + -1)|0;
-     $192 = (($190) + ($191<<2)|0);
-     HEAP32[$192>>2] = $187;
-     $193 = ($$098128$i|0)>(1);
-     if ($193) {
-      $$098128$i = $191;$$099127$i = 0;$$192129$i = 0;$$2130$i = $172;
-     } else {
-      break L54;
-     }
-    }
-    if ((label|0) == 84) {
-     __gcry_mpi_clear($157);
-    }
-    else if ((label|0) == 86) {
-     __gcry_mpi_clear($157);
-    }
-    else if ((label|0) == 92) {
-     __gcry_mpi_clear($157);
-    }
-    else if ((label|0) == 96) {
-     __gcry_mpi_clear($157);
-    }
-    __gcry_mpi_free($157);
-    $$1 = 65;
-    return ($$1|0);
-   }
-  } while(0);
-  $194 = ($0|0)==(0|0);
-  if ($194) {
-   __gcry_mpi_free($157);
-  } else {
-   __gcry_mpi_normalize($157);
-   HEAP32[$0>>2] = $157;
-  }
-  $195 = ($4|0)==(0|0);
-  if ($195) {
-   $$1 = 0;
-   return ($$1|0);
-  }
-  $196 = (_strlen($2)|0);
-  HEAP32[$4>>2] = $196;
-  $$1 = 0;
-  return ($$1|0);
- }
- }
- return (0)|0;
-}
-function __gcry_mpi_print($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0151 = 0, $$0154 = 0, $$0155301 = 0, $$0157 = 0, $$0158$shrunk = 0, 
$$0159 = 0, $$0160$shrunk = 0, $$0160$shrunk309310314 = 0, $$0163 = 0, $$0262 = 
0, $$0265 = 0, $$0269 = 0, $$0273 = 0, $$0277 = 0, $$089110$i = 0, 
$$089110$i174 = 0, $$089110$i188 = 0, $$089110$i202 = 0, $$089110$i216 = 0, 
$$089110$in$i = 0;
- var $$089110$in$i172 = 0, $$089110$in$i186 = 0, $$089110$in$i200 = 0, 
$$089110$in$i214 = 0, $$091109$i = 0, $$091109$i173 = 0, $$091109$i187 = 0, 
$$091109$i201 = 0, $$091109$i215 = 0, $$1152 = 0, $$1263 = 0, $$1266 = 0, 
$$1270 = 0, $$1274 = 0, $$1278 = 0, $$2$lcssa$i = 0, $$2$lcssa$i180 = 0, 
$$2$lcssa$i194 = 0, $$2$lcssa$i208 = 0, $$2$lcssa$i222 = 0;
- var $$2153$lcssa = 0, $$2153302 = 0, $$2264316 = 0, $$2264317 = 0, $$2267 = 
0, $$2271 = 0, $$2275 = 0, $$2279 = 0, $$295$i = 0, $$295$i178 = 0, $$295$i192 
= 0, $$295$i206 = 0, $$295$i220 = 0, $$3268 = 0, $$3276 = 0, $$3280 = 0, 
$$3280307311313 = 0, $$3280308 = 0, $$7 = 0, $$lobit = 0;
- var $$lobit296 = 0, $$lobit298 = 0, $$lobit299 = 0, $$not = 0, $$not300 = 0, 
$$not300$pn = 0, $$pre = 0, $$pre$phiZ2D = 0, $$pre303 = 0, $$sink = 0, $10 = 
0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 
0, $108 = 0;
- var $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 
= 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0;
- var $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0;
- var $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 
= 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0;
- var $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 
= 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0;
- var $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, 
$188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, 
$195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0;
- var $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 
= 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0;
- var $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 
= 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0;
- var $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0;
- var $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 
= 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0;
- var $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, 
$279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, 
$286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0;
- var $290 = 0, $291 = 0, $292 = 0, $293 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 
0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 
= 0, $43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $exitcond = 0;
- var $or$cond = 0, $or$cond166 = 0, $or$cond168 = 0, $scevgep = 0, 
$spec$select = 0, $spec$select$i = 0, $spec$select$i170 = 0, $spec$select$i184 
= 0, $spec$select$i198 = 0, $spec$select$i212 = 0, $spec$select290 = 0, 
$spec$select292 = 0, $storemerge = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = (__gcry_mpi_get_nbits($4)|0);
- $7 = ($3|0)==(0|0);
- $spec$select = $7 ? $5 : $3;
- $8 = ((($4)) + 8|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  label = 3;
- } else {
-  $11 = (__gcry_mpi_cmp_ui($4,0)|0);
-  $12 = ($11|0)==(0);
-  if ($12) {
-   label = 3;
-  } else {
-   $$0159 = 1;
-  }
- }
- if ((label|0) == 3) {
-  $$0159 = 0;
- }
- HEAP32[$spec$select>>2] = 0;
- switch ($0|0) {
- case 1:  {
-  $13 = ((($4)) + 4|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = $14 << 2;
-  $16 = ($14|0)==(0);
-  $spec$select$i = $16 ? 1 : $15;
-  $17 = ((($4)) + 12|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = $18 & 1;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   $22 = (__gcry_malloc($spec$select$i)|0);
-   $24 = $22;
-  } else {
-   $21 = (__gcry_malloc_secure($spec$select$i)|0);
-   $24 = $21;
-  }
-  $23 = ($24|0)==(0|0);
-  if ($23) {
-   $49 = (_gpg_err_code_from_syserror()|0);
-   $$7 = $49;
-   STACKTOP = sp;return ($$7|0);
-  }
-  $25 = HEAP32[$13>>2]|0;
-  $26 = ($25|0)>(0);
-  if ($26) {
-   $27 = ((($4)) + 16|0);
-   $$089110$in$i = $25;$$091109$i = $24;
-   while(1) {
-    $$089110$i = (($$089110$in$i) + -1)|0;
-    $28 = HEAP32[$27>>2]|0;
-    $29 = (($28) + ($$089110$i<<2)|0);
-    $30 = HEAP32[$29>>2]|0;
-    $31 = $30 >>> 24;
-    $32 = $31&255;
-    $33 = ((($$091109$i)) + 1|0);
-    HEAP8[$$091109$i>>0] = $32;
-    $34 = $30 >>> 16;
-    $35 = $34&255;
-    $36 = ((($$091109$i)) + 2|0);
-    HEAP8[$33>>0] = $35;
-    $37 = $30 >>> 8;
-    $38 = $37&255;
-    $39 = ((($$091109$i)) + 3|0);
-    HEAP8[$36>>0] = $38;
-    $40 = $30&255;
-    $41 = ((($$091109$i)) + 4|0);
-    HEAP8[$39>>0] = $40;
-    $42 = ($$089110$in$i|0)>(1);
-    if ($42) {
-     $$089110$in$i = $$089110$i;$$091109$i = $41;
-    } else {
-     break;
-    }
-   }
-  }
-  if ($16) {
-   $$2279 = 0;
-  } else {
-   $$0277 = $15;$$295$i = $24;
-   while(1) {
-    $43 = HEAP8[$$295$i>>0]|0;
-    $44 = ($43<<24>>24)==(0);
-    if (!($44)) {
-     $$1278 = $$0277;$$2$lcssa$i = $$295$i;
-     break;
-    }
-    $45 = ((($$295$i)) + 1|0);
-    $46 = (($$0277) + -1)|0;
-    $47 = ($46|0)==(0);
-    if ($47) {
-     $$1278 = 0;$$2$lcssa$i = $45;
-     break;
-    } else {
-     $$0277 = $46;$$295$i = $45;
-    }
-   }
-   $48 = ($$2$lcssa$i|0)==($24|0);
-   if ($48) {
-    $$2279 = $$1278;
-   } else {
-    _memmove(($24|0),($$2$lcssa$i|0),($$1278|0))|0;
-    $$2279 = $$1278;
-   }
-  }
-  $50 = ($$0159|0)==(0);
-  do {
-   if ($50) {
-    $56 = ($$2279|0)==(0);
-    if ($56) {
-     $57 = ($1|0)==(0|0);
-     if ($57) {
-      $$3280308 = 0;
-      break;
-     } else {
-      $$0160$shrunk309310314 = 0;$$0163 = $1;$$3280307311313 = 0;
-      label = 30;
-      break;
-     }
-    } else {
-     $58 = HEAP8[$24>>0]|0;
-     $$lobit296 = ($58&255) >>> 7;
-     $59 = $$lobit296&255;
-     $$0160$shrunk = $$lobit296;$$not300$pn = $59;
-     label = 24;
-     break;
-    }
-   } else {
-    _twocompl($24,$$2279);
-    $51 = HEAP8[$24>>0]|0;
-    $$lobit299 = ($51&255) >>> 7;
-    $52 = $$lobit299 ^ 1;
-    $$not300 = $52&255;
-    $53 = ($51&255) >>> 6;
-    $54 = $53 & 2;
-    $55 = $54 ^ 2;
-    $$0160$shrunk = $55;$$not300$pn = $$not300;
-    label = 24;
-   }
-  } while(0);
-  L35: do {
-   if ((label|0) == 24) {
-    $$3280 = (($$2279) + ($$not300$pn))|0;
-    $60 = ($1|0)!=(0|0);
-    $61 = ($$3280>>>0)>($2>>>0);
-    $or$cond = $60 & $61;
-    if ($or$cond) {
-     __gcry_free($24);
-     $$7 = 66;
-     STACKTOP = sp;return ($$7|0);
-    }
-    if ($60) {
-     switch ($$0160$shrunk<<24>>24) {
-     case 0:  {
-      $$0160$shrunk309310314 = $$0160$shrunk;$$0163 = $1;$$3280307311313 = 
$$3280;
-      label = 30;
-      break L35;
-      break;
-     }
-     case 1:  {
-      $62 = ((($1)) + 1|0);
-      HEAP8[$1>>0] = 0;
-      $$0160$shrunk309310314 = 1;$$0163 = $62;$$3280307311313 = $$3280;
-      label = 30;
-      break L35;
-      break;
-     }
-     default: {
-      $63 = ((($1)) + 1|0);
-      HEAP8[$1>>0] = -1;
-      $$0160$shrunk309310314 = $$0160$shrunk;$$0163 = $63;$$3280307311313 = 
$$3280;
-      label = 30;
-      break L35;
-     }
-     }
-    } else {
-     $$3280308 = $$3280;
-    }
-   }
-  } while(0);
-  if ((label|0) == 30) {
-   $64 = ($$0160$shrunk309310314<<24>>24)!=(0);
-   $65 = $64&1;
-   $66 = (($$3280307311313) - ($65))|0;
-   _memcpy(($$0163|0),($24|0),($66|0))|0;
-   $$3280308 = $$3280307311313;
-  }
-  __gcry_free($24);
-  HEAP32[$spec$select>>2] = $$3280308;
-  $$7 = 0;
-  STACKTOP = sp;return ($$7|0);
-  break;
- }
- case 5:  {
-  $67 = (($6) + 7)|0;
-  $68 = $67 >>> 3;
-  $69 = ($1|0)!=(0|0);
-  $70 = ($68>>>0)>($2>>>0);
-  $or$cond166 = $69 & $70;
-  if ($or$cond166) {
-   $$7 = 66;
-   STACKTOP = sp;return ($$7|0);
-  }
-  if ($69) {
-   $71 = ((($4)) + 4|0);
-   $72 = HEAP32[$71>>2]|0;
-   $73 = $72 << 2;
-   $74 = ($72|0)==(0);
-   $spec$select$i170 = $74 ? 1 : $73;
-   $75 = ((($4)) + 12|0);
-   $76 = HEAP32[$75>>2]|0;
-   $77 = $76 & 1;
-   $78 = ($77|0)==(0);
-   if ($78) {
-    $80 = (__gcry_malloc($spec$select$i170)|0);
-    $82 = $80;
-   } else {
-    $79 = (__gcry_malloc_secure($spec$select$i170)|0);
-    $82 = $79;
-   }
-   $81 = ($82|0)==(0|0);
-   if ($81) {
-    $107 = (_gpg_err_code_from_syserror()|0);
-    $$7 = $107;
-    STACKTOP = sp;return ($$7|0);
-   }
-   $83 = HEAP32[$71>>2]|0;
-   $84 = ($83|0)>(0);
-   if ($84) {
-    $85 = ((($4)) + 16|0);
-    $$089110$in$i172 = $83;$$091109$i173 = $82;
-    while(1) {
-     $$089110$i174 = (($$089110$in$i172) + -1)|0;
-     $86 = HEAP32[$85>>2]|0;
-     $87 = (($86) + ($$089110$i174<<2)|0);
-     $88 = HEAP32[$87>>2]|0;
-     $89 = $88 >>> 24;
-     $90 = $89&255;
-     $91 = ((($$091109$i173)) + 1|0);
-     HEAP8[$$091109$i173>>0] = $90;
-     $92 = $88 >>> 16;
-     $93 = $92&255;
-     $94 = ((($$091109$i173)) + 2|0);
-     HEAP8[$91>>0] = $93;
-     $95 = $88 >>> 8;
-     $96 = $95&255;
-     $97 = ((($$091109$i173)) + 3|0);
-     HEAP8[$94>>0] = $96;
-     $98 = $88&255;
-     $99 = ((($$091109$i173)) + 4|0);
-     HEAP8[$97>>0] = $98;
-     $100 = ($$089110$in$i172|0)>(1);
-     if ($100) {
-      $$089110$in$i172 = $$089110$i174;$$091109$i173 = $99;
-     } else {
-      break;
-     }
-    }
-   }
-   if ($74) {
-    $$2275 = 0;
-   } else {
-    $$0273 = $73;$$295$i178 = $82;
-    while(1) {
-     $101 = HEAP8[$$295$i178>>0]|0;
-     $102 = ($101<<24>>24)==(0);
-     if (!($102)) {
-      $$1274 = $$0273;$$2$lcssa$i180 = $$295$i178;
-      break;
-     }
-     $103 = ((($$295$i178)) + 1|0);
-     $104 = (($$0273) + -1)|0;
-     $105 = ($104|0)==(0);
-     if ($105) {
-      $$1274 = 0;$$2$lcssa$i180 = $103;
-      break;
-     } else {
-      $$0273 = $104;$$295$i178 = $103;
-     }
-    }
-    $106 = ($$2$lcssa$i180|0)==($82|0);
-    if ($106) {
-     $$2275 = $$1274;
-    } else {
-     _memmove(($82|0),($$2$lcssa$i180|0),($$1274|0))|0;
-     $$2275 = $$1274;
-    }
-   }
-   _memcpy(($1|0),($82|0),($$2275|0))|0;
-   __gcry_free($82);
-   $$3276 = $$2275;
-  } else {
-   $$3276 = $68;
-  }
-  HEAP32[$spec$select>>2] = $$3276;
-  $$7 = 0;
-  STACKTOP = sp;return ($$7|0);
-  break;
- }
- case 2:  {
-  $108 = ($$0159|0)==(0);
-  if (!($108)) {
-   $$7 = 45;
-   STACKTOP = sp;return ($$7|0);
-  }
-  $109 = (($6) + 7)|0;
-  $110 = $109 >>> 3;
-  $111 = ($1|0)!=(0|0);
-  $112 = (($110) + 2)|0;
-  $113 = ($112>>>0)>($2>>>0);
-  $or$cond168 = $111 & $113;
-  if ($or$cond168) {
-   $$7 = 66;
-   STACKTOP = sp;return ($$7|0);
-  }
-  if ($111) {
-   $114 = $6 >>> 8;
-   $115 = $114&255;
-   HEAP8[$1>>0] = $115;
-   $116 = $6&255;
-   $117 = ((($1)) + 1|0);
-   HEAP8[$117>>0] = $116;
-   $118 = ((($4)) + 4|0);
-   $119 = HEAP32[$118>>2]|0;
-   $120 = $119 << 2;
-   $121 = ($119|0)==(0);
-   $spec$select$i184 = $121 ? 1 : $120;
-   $122 = ((($4)) + 12|0);
-   $123 = HEAP32[$122>>2]|0;
-   $124 = $123 & 1;
-   $125 = ($124|0)==(0);
-   if ($125) {
-    $127 = (__gcry_malloc($spec$select$i184)|0);
-    $129 = $127;
-   } else {
-    $126 = (__gcry_malloc_secure($spec$select$i184)|0);
-    $129 = $126;
-   }
-   $128 = ($129|0)==(0|0);
-   if ($128) {
-    $155 = (_gpg_err_code_from_syserror()|0);
-    $$7 = $155;
-    STACKTOP = sp;return ($$7|0);
-   }
-   $130 = HEAP32[$118>>2]|0;
-   $131 = ($130|0)>(0);
-   if ($131) {
-    $132 = ((($4)) + 16|0);
-    $$089110$in$i186 = $130;$$091109$i187 = $129;
-    while(1) {
-     $$089110$i188 = (($$089110$in$i186) + -1)|0;
-     $133 = HEAP32[$132>>2]|0;
-     $134 = (($133) + ($$089110$i188<<2)|0);
-     $135 = HEAP32[$134>>2]|0;
-     $136 = $135 >>> 24;
-     $137 = $136&255;
-     $138 = ((($$091109$i187)) + 1|0);
-     HEAP8[$$091109$i187>>0] = $137;
-     $139 = $135 >>> 16;
-     $140 = $139&255;
-     $141 = ((($$091109$i187)) + 2|0);
-     HEAP8[$138>>0] = $140;
-     $142 = $135 >>> 8;
-     $143 = $142&255;
-     $144 = ((($$091109$i187)) + 3|0);
-     HEAP8[$141>>0] = $143;
-     $145 = $135&255;
-     $146 = ((($$091109$i187)) + 4|0);
-     HEAP8[$144>>0] = $145;
-     $147 = ($$089110$in$i186|0)>(1);
-     if ($147) {
-      $$089110$in$i186 = $$089110$i188;$$091109$i187 = $146;
-     } else {
-      break;
-     }
-    }
-   }
-   if ($121) {
-    $$2271 = 0;
-   } else {
-    $$0269 = $120;$$295$i192 = $129;
-    while(1) {
-     $148 = HEAP8[$$295$i192>>0]|0;
-     $149 = ($148<<24>>24)==(0);
-     if (!($149)) {
-      $$1270 = $$0269;$$2$lcssa$i194 = $$295$i192;
-      break;
-     }
-     $150 = ((($$295$i192)) + 1|0);
-     $151 = (($$0269) + -1)|0;
-     $152 = ($151|0)==(0);
-     if ($152) {
-      $$1270 = 0;$$2$lcssa$i194 = $150;
-      break;
-     } else {
-      $$0269 = $151;$$295$i192 = $150;
-     }
-    }
-    $153 = ($$2$lcssa$i194|0)==($129|0);
-    if ($153) {
-     $$2271 = $$1270;
-    } else {
-     _memmove(($129|0),($$2$lcssa$i194|0),($$1270|0))|0;
-     $$2271 = $$1270;
-    }
-   }
-   $154 = ((($1)) + 2|0);
-   _memcpy(($154|0),($129|0),($$2271|0))|0;
-   __gcry_free($129);
-   $$pre = (($$2271) + 2)|0;
-   $$pre$phiZ2D = $$pre;
-  } else {
-   $$pre$phiZ2D = $112;
-  }
-  HEAP32[$spec$select>>2] = $$pre$phiZ2D;
-  $$7 = 0;
-  STACKTOP = sp;return ($$7|0);
-  break;
- }
- case 3:  {
-  $156 = ((($4)) + 4|0);
-  $157 = HEAP32[$156>>2]|0;
-  $158 = $157 << 2;
-  $159 = ($157|0)==(0);
-  $spec$select$i198 = $159 ? 1 : $158;
-  $160 = ((($4)) + 12|0);
-  $161 = HEAP32[$160>>2]|0;
-  $162 = $161 & 1;
-  $163 = ($162|0)==(0);
-  if ($163) {
-   $165 = (__gcry_malloc($spec$select$i198)|0);
-   $167 = $165;
-  } else {
-   $164 = (__gcry_malloc_secure($spec$select$i198)|0);
-   $167 = $164;
-  }
-  $166 = ($167|0)==(0|0);
-  if ($166) {
-   $192 = (_gpg_err_code_from_syserror()|0);
-   $$7 = $192;
-   STACKTOP = sp;return ($$7|0);
-  }
-  $168 = HEAP32[$156>>2]|0;
-  $169 = ($168|0)>(0);
-  if ($169) {
-   $170 = ((($4)) + 16|0);
-   $$089110$in$i200 = $168;$$091109$i201 = $167;
-   while(1) {
-    $$089110$i202 = (($$089110$in$i200) + -1)|0;
-    $171 = HEAP32[$170>>2]|0;
-    $172 = (($171) + ($$089110$i202<<2)|0);
-    $173 = HEAP32[$172>>2]|0;
-    $174 = $173 >>> 24;
-    $175 = $174&255;
-    $176 = ((($$091109$i201)) + 1|0);
-    HEAP8[$$091109$i201>>0] = $175;
-    $177 = $173 >>> 16;
-    $178 = $177&255;
-    $179 = ((($$091109$i201)) + 2|0);
-    HEAP8[$176>>0] = $178;
-    $180 = $173 >>> 8;
-    $181 = $180&255;
-    $182 = ((($$091109$i201)) + 3|0);
-    HEAP8[$179>>0] = $181;
-    $183 = $173&255;
-    $184 = ((($$091109$i201)) + 4|0);
-    HEAP8[$182>>0] = $183;
-    $185 = ($$089110$in$i200|0)>(1);
-    if ($185) {
-     $$089110$in$i200 = $$089110$i202;$$091109$i201 = $184;
-    } else {
-     break;
-    }
-   }
-  }
-  if ($159) {
-   $$2267 = 0;
-  } else {
-   $$0265 = $158;$$295$i206 = $167;
-   while(1) {
-    $186 = HEAP8[$$295$i206>>0]|0;
-    $187 = ($186<<24>>24)==(0);
-    if (!($187)) {
-     $$1266 = $$0265;$$2$lcssa$i208 = $$295$i206;
-     break;
-    }
-    $188 = ((($$295$i206)) + 1|0);
-    $189 = (($$0265) + -1)|0;
-    $190 = ($189|0)==(0);
-    if ($190) {
-     $$1266 = 0;$$2$lcssa$i208 = $188;
-     break;
-    } else {
-     $$0265 = $189;$$295$i206 = $188;
-    }
-   }
-   $191 = ($$2$lcssa$i208|0)==($167|0);
-   if ($191) {
-    $$2267 = $$1266;
-   } else {
-    _memmove(($167|0),($$2$lcssa$i208|0),($$1266|0))|0;
-    $$2267 = $$1266;
-   }
-  }
-  $193 = ($$0159|0)==(0);
-  if ($193) {
-   $199 = ($$2267|0)==(0);
-   if ($199) {
-    $$0158$shrunk = 0;$$3268 = 0;
-   } else {
-    $200 = HEAP8[$167>>0]|0;
-    $$lobit = ($200&255) >>> 7;
-    $201 = $$lobit&255;
-    $spec$select292 = (($$2267) + ($201))|0;
-    $$0158$shrunk = $$lobit;$$3268 = $spec$select292;
-   }
-  } else {
-   _twocompl($167,$$2267);
-   $194 = HEAP8[$167>>0]|0;
-   $$lobit298 = ($194&255) >>> 7;
-   $195 = $$lobit298 ^ 1;
-   $$not = $195&255;
-   $spec$select290 = (($$2267) + ($$not))|0;
-   $196 = ($194&255) >>> 6;
-   $197 = $196 & 2;
-   $198 = $197 ^ 2;
-   $$0158$shrunk = $198;$$3268 = $spec$select290;
-  }
-  $202 = ($1|0)==(0|0);
-  $$pre303 = (($$3268) + 4)|0;
-  if (!($202)) {
-   $203 = ($$pre303>>>0)>($2>>>0);
-   if ($203) {
-    __gcry_free($167);
-    $$7 = 66;
-    STACKTOP = sp;return ($$7|0);
-   }
-   $204 = $$3268 >>> 24;
-   $205 = $204&255;
-   $206 = ((($1)) + 1|0);
-   HEAP8[$1>>0] = $205;
-   $207 = $$3268 >>> 16;
-   $208 = $207&255;
-   $209 = ((($1)) + 2|0);
-   HEAP8[$206>>0] = $208;
-   $210 = $$3268 >>> 8;
-   $211 = $210&255;
-   $212 = ((($1)) + 3|0);
-   HEAP8[$209>>0] = $211;
-   $213 = $$3268&255;
-   $214 = ((($1)) + 4|0);
-   HEAP8[$212>>0] = $213;
-   switch ($$0158$shrunk<<24>>24) {
-   case 1:  {
-    $$sink = 0;
-    label = 92;
-    break;
-   }
-   case 0:  {
-    $$0157 = $214;
-    break;
-   }
-   default: {
-    $$sink = -1;
-    label = 92;
-   }
-   }
-   if ((label|0) == 92) {
-    $215 = ((($1)) + 5|0);
-    HEAP8[$214>>0] = $$sink;
-    $$0157 = $215;
-   }
-   $216 = ($$0158$shrunk<<24>>24)!=(0);
-   $217 = $216&1;
-   $218 = (($$3268) - ($217))|0;
-   _memcpy(($$0157|0),($167|0),($218|0))|0;
-  }
-  __gcry_free($167);
-  HEAP32[$spec$select>>2] = $$pre303;
-  $$7 = 0;
-  STACKTOP = sp;return ($$7|0);
-  break;
- }
- case 4:  {
-  $219 = ((($4)) + 4|0);
-  $220 = HEAP32[$219>>2]|0;
-  $221 = $220 << 2;
-  $222 = ($220|0)==(0);
-  $spec$select$i212 = $222 ? 1 : $221;
-  $223 = ((($4)) + 12|0);
-  $224 = HEAP32[$223>>2]|0;
-  $225 = $224 & 1;
-  $226 = ($225|0)==(0);
-  if ($226) {
-   $228 = (__gcry_malloc($spec$select$i212)|0);
-   $230 = $228;
-  } else {
-   $227 = (__gcry_malloc_secure($spec$select$i212)|0);
-   $230 = $227;
-  }
-  $229 = ($230|0)==(0|0);
-  if ($229) {
-   $255 = (_gpg_err_code_from_syserror()|0);
-   $$7 = $255;
-   STACKTOP = sp;return ($$7|0);
-  }
-  $231 = HEAP32[$219>>2]|0;
-  $232 = ($231|0)>(0);
-  if ($232) {
-   $233 = ((($4)) + 16|0);
-   $$089110$in$i214 = $231;$$091109$i215 = $230;
-   while(1) {
-    $$089110$i216 = (($$089110$in$i214) + -1)|0;
-    $234 = HEAP32[$233>>2]|0;
-    $235 = (($234) + ($$089110$i216<<2)|0);
-    $236 = HEAP32[$235>>2]|0;
-    $237 = $236 >>> 24;
-    $238 = $237&255;
-    $239 = ((($$091109$i215)) + 1|0);
-    HEAP8[$$091109$i215>>0] = $238;
-    $240 = $236 >>> 16;
-    $241 = $240&255;
-    $242 = ((($$091109$i215)) + 2|0);
-    HEAP8[$239>>0] = $241;
-    $243 = $236 >>> 8;
-    $244 = $243&255;
-    $245 = ((($$091109$i215)) + 3|0);
-    HEAP8[$242>>0] = $244;
-    $246 = $236&255;
-    $247 = ((($$091109$i215)) + 4|0);
-    HEAP8[$245>>0] = $246;
-    $248 = ($$089110$in$i214|0)>(1);
-    if ($248) {
-     $$089110$in$i214 = $$089110$i216;$$091109$i215 = $247;
-    } else {
-     break;
-    }
-   }
-  }
-  if ($222) {
-   $$2264317 = 0;$292 = 1;
-   label = 111;
-  } else {
-   $$0262 = $221;$$295$i220 = $230;
-   while(1) {
-    $249 = HEAP8[$$295$i220>>0]|0;
-    $250 = ($249<<24>>24)==(0);
-    if (!($250)) {
-     $$1263 = $$0262;$$2$lcssa$i222 = $$295$i220;
-     break;
-    }
-    $251 = ((($$295$i220)) + 1|0);
-    $252 = (($$0262) + -1)|0;
-    $253 = ($252|0)==(0);
-    if ($253) {
-     $$1263 = 0;$$2$lcssa$i222 = $251;
-     break;
-    } else {
-     $$0262 = $252;$$295$i220 = $251;
-    }
-   }
-   $254 = ($$2$lcssa$i222|0)==($230|0);
-   if (!($254)) {
-    _memmove(($230|0),($$2$lcssa$i222|0),($$1263|0))|0;
-   }
-   $256 = ($$1263|0)==(0);
-   if ($256) {
-    $$2264317 = 0;$292 = 1;
-    label = 111;
-   } else {
-    $257 = HEAP8[$230>>0]|0;
-    $258 = ($257<<24>>24)<(0);
-    if ($258) {
-     $$2264317 = $$1263;$292 = 0;
-     label = 111;
-    } else {
-     $$0154 = 0;$$2264316 = $$1263;$293 = 0;
-    }
-   }
-  }
-  if ((label|0) == 111) {
-   $$0154 = 2;$$2264316 = $$2264317;$293 = $292;
-  }
-  $259 = ($1|0)==(0|0);
-  $260 = $$2264316 << 1;
-  $261 = (($$0154) + ($260))|0;
-  $262 = $261 | $$0159;
-  $263 = (($262) + 1)|0;
-  if ($259) {
-   $storemerge = $263;
-  } else {
-   $264 = ($263>>>0)>($2>>>0);
-   if ($264) {
-    __gcry_free($230);
-    $$7 = 66;
-    STACKTOP = sp;return ($$7|0);
-   }
-   $265 = ($$0159|0)==(0);
-   if ($265) {
-    $$0151 = $1;
-   } else {
-    $266 = ((($1)) + 1|0);
-    HEAP8[$1>>0] = 45;
-    $$0151 = $266;
-   }
-   $267 = ($$0154|0)==(0);
-   if ($267) {
-    $$1152 = $$0151;
-   } else {
-    $268 = ((($$0151)) + 1|0);
-    HEAP8[$$0151>>0] = 48;
-    $269 = ((($$0151)) + 2|0);
-    HEAP8[$268>>0] = 48;
-    $$1152 = $269;
-   }
-   if ($293) {
-    $$2153$lcssa = $$1152;
-   } else {
-    $$0155301 = 0;$$2153302 = $$1152;
-    while(1) {
-     $270 = (($230) + ($$0155301)|0);
-     $271 = HEAP8[$270>>0]|0;
-     $272 = $271&255;
-     $273 = $272 >>> 4;
-     $274 = ($271&255)<(160);
-     $275 = $273 | 48;
-     $276 = (($273) + 55)|0;
-     $277 = $274 ? $275 : $276;
-     $278 = $277&255;
-     $279 = ((($$2153302)) + 1|0);
-     HEAP8[$$2153302>>0] = $278;
-     $280 = $272 & 15;
-     $281 = ($280>>>0)<(10);
-     $282 = $280 | 48;
-     $283 = (($280) + 55)|0;
-     $284 = $281 ? $282 : $283;
-     $285 = $284&255;
-     $286 = ((($$2153302)) + 2|0);
-     HEAP8[$279>>0] = $285;
-     $287 = (($$0155301) + 1)|0;
-     $exitcond = ($287|0)==($$2264316|0);
-     if ($exitcond) {
-      break;
-     } else {
-      $$0155301 = $287;$$2153302 = $286;
-     }
-    }
-    $scevgep = (($$1152) + ($260)|0);
-    $$2153$lcssa = $scevgep;
-   }
-   $288 = ((($$2153$lcssa)) + 1|0);
-   HEAP8[$$2153$lcssa>>0] = 0;
-   $289 = $288;
-   $290 = $1;
-   $291 = (($289) - ($290))|0;
-   $storemerge = $291;
-  }
-  HEAP32[$spec$select>>2] = $storemerge;
-  __gcry_free($230);
-  $$7 = 0;
-  STACKTOP = sp;return ($$7|0);
-  break;
- }
- default: {
-  $$7 = 45;
-  STACKTOP = sp;return ($$7|0);
- }
- }
- return (0)|0;
-}
-function _twocompl($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$in47 = 0, $$0$in47$phi = 0, $$046 = 0, $$048 = 0, $$145 = 0, 
$$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 
= 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $$046 = (($1) + -1)|0;
- $2 = ($$046|0)>(-1);
- if (!($2)) {
-  return;
- }
- $$0$in47 = $1;$$048 = $$046;
- while(1) {
-  $4 = (($0) + ($$048)|0);
-  $5 = HEAP8[$4>>0]|0;
-  $6 = ($5<<24>>24)==(0);
-  if (!($6)) {
-   break;
-  }
-  $$0 = (($$048) + -1)|0;
-  $3 = ($$0|0)>(-1);
-  if ($3) {
-   $$0$in47$phi = $$048;$$048 = $$0;$$0$in47 = $$0$in47$phi;
-  } else {
-   label = 22;
-   break;
-  }
- }
- if ((label|0) == 22) {
-  return;
- }
- $7 = (($0) + ($$048)|0);
- $8 = $5&255;
- $9 = $8 & 1;
- $10 = ($9|0)==(0);
- do {
-  if ($10) {
-   $14 = $8 & 2;
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $16 = $8 & 252;
-    $17 = $16 ^ 254;
-    $18 = $17&255;
-    $$sink = $18;
-    break;
-   }
-   $19 = $8 & 4;
-   $20 = ($19|0)==(0);
-   if (!($20)) {
-    $21 = $8 & 248;
-    $22 = $21 ^ 252;
-    $23 = $22&255;
-    $$sink = $23;
-    break;
-   }
-   $24 = $8 & 8;
-   $25 = ($24|0)==(0);
-   if (!($25)) {
-    $26 = $8 & 240;
-    $27 = $26 ^ 248;
-    $28 = $27&255;
-    $$sink = $28;
-    break;
-   }
-   $29 = $8 & 16;
-   $30 = ($29|0)==(0);
-   if (!($30)) {
-    $31 = $8 & 224;
-    $32 = $31 ^ 240;
-    $33 = $32&255;
-    $$sink = $33;
-    break;
-   }
-   $34 = $8 & 32;
-   $35 = ($34|0)==(0);
-   if (!($35)) {
-    $36 = $8 & 192;
-    $37 = $36 ^ 224;
-    $38 = $37&255;
-    $$sink = $38;
-    break;
-   }
-   $39 = $8 & 64;
-   $40 = ($39|0)==(0);
-   if ($40) {
-    $$sink = -128;
-   } else {
-    $41 = $8 & 128;
-    $42 = $41 ^ 192;
-    $43 = $42&255;
-    $$sink = $43;
-   }
-  } else {
-   $11 = $8 | 1;
-   $12 = $11 ^ 254;
-   $13 = $12&255;
-   $$sink = $13;
-  }
- } while(0);
- HEAP8[$7>>0] = $$sink;
- $44 = (($$0$in47) + -2)|0;
- $45 = ($44|0)>(-1);
- if (!($45)) {
-  return;
- }
- $$145 = $44;
- while(1) {
-  $46 = (($0) + ($$145)|0);
-  $47 = HEAP8[$46>>0]|0;
-  $48 = $47 ^ -1;
-  HEAP8[$46>>0] = $48;
-  $49 = (($$145) + -1)|0;
-  $50 = ($$145|0)>(0);
-  if ($50) {
-   $$145 = $49;
-  } else {
-   break;
-  }
- }
- return;
-}
-function __gcry_mpi_to_octet_string($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$040 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = ($0|0)!=(0|0);
- $5 = $4 ^ 1;
- $6 = ($1|0)!=(0|0);
- $7 = $6 ^ $5;
- if ($7) {
-  $$040 = 45;
-  return ($$040|0);
- }
- if ($4) {
-  HEAP32[$0>>2] = 0;
- }
- $8 = (__gcry_mpi_get_nbits($2)|0);
- $9 = ((($2)) + 8|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($10|0)==(0);
- if (!($11)) {
-  (__gcry_mpi_cmp_ui($2,0)|0);
- }
- $12 = (($8) + 7)|0;
- $13 = $12 >>> 3;
- $14 = ($13>>>0)>($3>>>0);
- if ($14) {
-  $$040 = 67;
-  return ($$040|0);
- }
- $15 = ($13>>>0)<($3>>>0);
- $16 = (($3) - ($13))|0;
- $spec$select = $15 ? $16 : 0;
- $17 = (($spec$select) + ($13))|0;
- if ($6) {
-  $$0 = $1;
- } else {
-  $18 = ((($2)) + 12|0);
-  $19 = HEAP32[$18>>2]|0;
-  $20 = $19 & 1;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   $23 = (__gcry_malloc($17)|0);
-   $25 = $23;
-  } else {
-   $22 = (__gcry_malloc_secure($17)|0);
-   $25 = $22;
-  }
-  $24 = ($25|0)==(0|0);
-  if ($24) {
-   $26 = (_gpg_err_code_from_syserror()|0);
-   $$040 = $26;
-   return ($$040|0);
-  } else {
-   $$0 = $25;
-  }
- }
- $27 = ($spec$select|0)==(0);
- if (!($27)) {
-  _memset(($$0|0),0,($spec$select|0))|0;
- }
- $28 = (($$0) + ($spec$select)|0);
- $29 = (__gcry_mpi_print(5,$28,$13,0,$2)|0);
- $30 = ($29|0)==(0);
- if (!($30)) {
-  __gcry_free($$0);
-  $$040 = $29;
-  return ($$040|0);
- }
- if (!($4)) {
-  $$040 = 0;
-  return ($$040|0);
- }
- HEAP32[$0>>2] = $$0;
- $$040 = 0;
- return ($$040|0);
-}
-function __gcry_mpih_add_n($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$031 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (0 - ($3))|0;
- $5 = (($1) + ($3<<2)|0);
- $6 = (($2) + ($3<<2)|0);
- $7 = (($0) + ($3<<2)|0);
- $$0 = $4;$$031 = 0;
- while(1) {
-  $8 = (($6) + ($$0<<2)|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = (($5) + ($$0<<2)|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (($9) + ($$031))|0;
-  $13 = ($12>>>0)<($$031>>>0);
-  $14 = $13&1;
-  $15 = (($12) + ($11))|0;
-  $16 = ($15>>>0)<($11>>>0);
-  $17 = $16&1;
-  $18 = (($17) + ($14))|0;
-  $19 = (($7) + ($$0<<2)|0);
-  HEAP32[$19>>2] = $15;
-  $20 = (($$0) + 1)|0;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   break;
-  } else {
-   $$0 = $20;$$031 = $18;
-  }
- }
- return ($18|0);
-}
-function __gcry_mpih_mod_1($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0251 = 0, $$0255284 = 0, $$0257$lcssa = 0, $$0257283 = 0, 
$$0258 = 0, $$0262$lcssa = 0, $$0262282 = 0, $$1 = 0, $$1256 = 0, $$1263 = 0, 
$$2264280 = 0, $$2281 = 0, $$pre = 0, $$pre$phi291Z2D = 0, $$pre$phiZ2D = 0, 
$$pre290 = 0, $10 = 0, $100 = 0, $101 = 0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $or$cond = 0;
- var $or$cond266 = 0, $or$cond267 = 0, $or$cond268 = 0, $or$cond269 = 0, 
$or$cond270 = 0, $spec$select = 0, $spec$select271 = 0, $spec$select272 = 0, 
$spec$select273 = 0, $spec$select274 = 0, $spec$select275 = 0, $spec$select277 
= 0, $spec$select278 = 0, $spec$select279 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($1|0)==(0);
- if ($3) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $4 = ($2>>>0)<(65536);
- $5 = ($2>>>0)<(256);
- $6 = $5 ? 0 : 8;
- $7 = ($2>>>0)<(16777216);
- $8 = $7 ? 16 : 24;
- $9 = $4 ? $6 : $8;
- $10 = $2 >>> $9;
- $11 = (14784 + ($10)|0);
- $12 = HEAP8[$11>>0]|0;
- $13 = $12&255;
- $14 = (($9) + ($13))|0;
- $15 = (32 - ($14))|0;
- $16 = ($15|0)==(0);
- if ($16) {
-  $87 = (($1) + -1)|0;
-  $88 = (($0) + ($87<<2)|0);
-  $89 = HEAP32[$88>>2]|0;
-  $90 = ($89>>>0)<($2>>>0);
-  $91 = (($1) + -2)|0;
-  $$1263 = $90 ? $89 : 0;
-  $$1256 = $90 ? $91 : $87;
-  $92 = ($$1256|0)>(-1);
-  if (!($92)) {
-   $$1 = $$1263;
-   return ($$1|0);
-  }
-  $93 = $2 >>> 16;
-  $94 = $2 & 65535;
-  $$2264280 = $$1263;$$2281 = $$1256;
-  while(1) {
-   $95 = (($0) + ($$2281<<2)|0);
-   $96 = HEAP32[$95>>2]|0;
-   $97 = (($$2264280>>>0) / ($93>>>0))&-1;
-   $98 = Math_imul($97, $93)|0;
-   $99 = (($$2264280) - ($98))|0;
-   $100 = Math_imul($97, $94)|0;
-   $101 = $99 << 16;
-   $102 = $96 >>> 16;
-   $103 = $101 | $102;
-   $104 = ($103>>>0)<($100>>>0);
-   $105 = (($103) + ($2))|0;
-   $106 = ($105>>>0)>=($2>>>0);
-   $107 = ($105>>>0)<($100>>>0);
-   $or$cond269 = $106 & $107;
-   $108 = $or$cond269 ? $2 : 0;
-   $spec$select274 = (($108) + ($105))|0;
-   $spec$select279 = $104 ? $spec$select274 : $103;
-   $109 = (($spec$select279) - ($100))|0;
-   $110 = (($109>>>0) / ($93>>>0))&-1;
-   $111 = Math_imul($110, $93)|0;
-   $112 = (($109) - ($111))|0;
-   $113 = Math_imul($110, $94)|0;
-   $114 = $112 << 16;
-   $115 = $96 & 65535;
-   $116 = $114 | $115;
-   $117 = ($116>>>0)<($113>>>0);
-   $118 = (($116) + ($2))|0;
-   $119 = ($118>>>0)>=($2>>>0);
-   $120 = ($118>>>0)<($113>>>0);
-   $or$cond270 = $119 & $120;
-   $121 = $or$cond270 ? $2 : 0;
-   $spec$select275 = (($121) + ($118))|0;
-   $$0 = $117 ? $spec$select275 : $116;
-   $122 = (($$0) - ($113))|0;
-   $123 = (($$2281) + -1)|0;
-   $124 = ($$2281|0)>(0);
-   if ($124) {
-    $$2264280 = $122;$$2281 = $123;
-   } else {
-    $$1 = $122;
-    break;
-   }
-  }
-  return ($$1|0);
- }
- $17 = $2 << $15;
- $18 = (($1) + -1)|0;
- $19 = (($0) + ($18<<2)|0);
- $20 = HEAP32[$19>>2]|0;
- $21 = $20 >>> $14;
- $22 = ($1|0)>(1);
- if ($22) {
-  $23 = (($1) + -2)|0;
-  $24 = $17 >>> 16;
-  $25 = $17 & 65535;
-  $$0255284 = $23;$$0257283 = $20;$$0262282 = $21;
-  while(1) {
-   $26 = (($0) + ($$0255284<<2)|0);
-   $27 = HEAP32[$26>>2]|0;
-   $28 = (($$0262282>>>0) / ($24>>>0))&-1;
-   $29 = Math_imul($28, $24)|0;
-   $30 = (($$0262282) - ($29))|0;
-   $31 = Math_imul($28, $25)|0;
-   $32 = $30 << 16;
-   $33 = $$0257283 << $15;
-   $34 = $27 >>> $14;
-   $35 = $34 | $33;
-   $36 = $35 >>> 16;
-   $37 = $36 | $32;
-   $38 = ($37>>>0)<($31>>>0);
-   $39 = (($37) + ($17))|0;
-   $40 = ($39>>>0)>=($17>>>0);
-   $41 = ($39>>>0)<($31>>>0);
-   $or$cond = $40 & $41;
-   $42 = $or$cond ? $17 : 0;
-   $spec$select = (($42) + ($39))|0;
-   $spec$select277 = $38 ? $spec$select : $37;
-   $43 = (($spec$select277) - ($31))|0;
-   $44 = (($43>>>0) / ($24>>>0))&-1;
-   $45 = Math_imul($44, $24)|0;
-   $46 = (($43) - ($45))|0;
-   $47 = Math_imul($44, $25)|0;
-   $48 = $46 << 16;
-   $49 = $35 & 65535;
-   $50 = $48 | $49;
-   $51 = ($50>>>0)<($47>>>0);
-   $52 = (($50) + ($17))|0;
-   $53 = ($52>>>0)>=($17>>>0);
-   $54 = ($52>>>0)<($47>>>0);
-   $or$cond266 = $53 & $54;
-   $55 = $or$cond266 ? $17 : 0;
-   $spec$select271 = (($55) + ($52))|0;
-   $$0258 = $51 ? $spec$select271 : $50;
-   $56 = (($$0258) - ($47))|0;
-   $57 = (($$0255284) + -1)|0;
-   $58 = ($$0255284|0)>(0);
-   if ($58) {
-    $$0255284 = $57;$$0257283 = $27;$$0262282 = $56;
-   } else {
-    $$0257$lcssa = $27;$$0262$lcssa = $56;$$pre$phi291Z2D = $25;$$pre$phiZ2D = 
$24;
-    break;
-   }
-  }
- } else {
-  $$pre = $17 >>> 16;
-  $$pre290 = $17 & 65535;
-  $$0257$lcssa = $20;$$0262$lcssa = $21;$$pre$phi291Z2D = 
$$pre290;$$pre$phiZ2D = $$pre;
- }
- $59 = (($$0262$lcssa>>>0) / ($$pre$phiZ2D>>>0))&-1;
- $60 = Math_imul($59, $$pre$phiZ2D)|0;
- $61 = (($$0262$lcssa) - ($60))|0;
- $62 = Math_imul($59, $$pre$phi291Z2D)|0;
- $63 = $61 << 16;
- $64 = $$0257$lcssa << $15;
- $65 = $64 >>> 16;
- $66 = $63 | $65;
- $67 = ($66>>>0)<($62>>>0);
- $68 = (($66) + ($17))|0;
- $69 = ($68>>>0)>=($17>>>0);
- $70 = ($68>>>0)<($62>>>0);
- $or$cond267 = $69 & $70;
- $71 = $or$cond267 ? $17 : 0;
- $spec$select272 = (($71) + ($68))|0;
- $spec$select278 = $67 ? $spec$select272 : $66;
- $72 = (($spec$select278) - ($62))|0;
- $73 = (($72>>>0) / ($$pre$phiZ2D>>>0))&-1;
- $74 = Math_imul($73, $$pre$phiZ2D)|0;
- $75 = (($72) - ($74))|0;
- $76 = Math_imul($73, $$pre$phi291Z2D)|0;
- $77 = $75 << 16;
- $78 = $64 & 65535;
- $79 = $77 | $78;
- $80 = ($79>>>0)<($76>>>0);
- $81 = (($79) + ($17))|0;
- $82 = ($81>>>0)>=($17>>>0);
- $83 = ($81>>>0)<($76>>>0);
- $or$cond268 = $82 & $83;
- $84 = $or$cond268 ? $17 : 0;
- $spec$select273 = (($84) + ($81))|0;
- $$0251 = $80 ? $spec$select273 : $79;
- $85 = (($$0251) - ($76))|0;
- $86 = $85 >>> $15;
- $$1 = $86;
- return ($$1|0);
-}
-function __gcry_mpih_divrem($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0$lcssa = 0, $$01619$i = 0, $$01619$i715 = 0, $$01619$i717 = 0, 
$$01619$in$i716 = 0, $$01619$in$i716$phi = 0, $$0578683 = 0, $$0583 = 0, $$0585 
= 0, $$0586 = 0, $$0587 = 0, $$0588 = 0, $$0589 = 0, $$0590 = 0, $$0591 = 0, 
$$0592 = 0, $$0593669 = 0, $$0594 = 0, $$0595 = 0, $$0596 = 0;
- var $$0597 = 0, $$0601 = 0, $$0604 = 0, $$0605 = 0, $$0606674 = 0, 
$$0606674$in = 0, $$0607 = 0, $$0608690 = 0, $$0609 = 0, $$0613 = 0, $$0619 = 
0, $$0622 = 0, $$0627 = 0, $$0628 = 0, $$0629 = 0, $$0630 = 0, $$0692 = 0, $$1 
= 0, $$1575 = 0, $$1579678 = 0;
- var $$1579678$in = 0, $$1581$lcssa = 0, $$1581682 = 0, $$1610$lcssa = 0, 
$$1610689 = 0, $$1614$lcssa = 0, $$1614688 = 0, $$1620 = 0, $$1623 = 0, $$2576 
= 0, $$2582$lcssa = 0, $$2582677 = 0, $$2599 = 0, $$2603 = 0, $$2611 = 0, 
$$2615 = 0, $$2621 = 0, $$2624 = 0, $$2673 = 0, $$3 = 0;
- var $$3577 = 0, $$3600 = 0, $$3612 = 0, $$3616 = 0, $$4 = 0, $$4617 = 0, $$5 
= 0, $$5618 = 0, $$lcssa = 0, $$lcssa711 = 0, $$neg663 = 0, $$neg664 = 0, $$pre 
= 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 
0;
- var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 
= 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0;
- var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 
= 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0;
- var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, 
$148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, 
$155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0;
- var $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 
= 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 
= 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0;
- var $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 
= 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 
= 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0;
- var $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 
= 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 
= 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0;
- var $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 
= 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0;
- var $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, 
$239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, 
$246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0;
- var $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, 
$257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, 
$264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0;
- var $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 
= 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 
= 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0;
- var $287 = 0, $288 = 0, $289 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 
0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 
= 0, $43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, $not$ = 0, $not$or$cond635 = 0;
- var $not$or$cond635$demorgan = 0, $or$cond = 0, $or$cond632 = 0, $or$cond633 
= 0, $or$cond634 = 0, $or$cond635 = 0, $or$cond636 = 0, $or$cond637 = 0, 
$or$cond639 = 0, $or$cond640 = 0, $or$cond641 = 0, $or$cond658 = 0, 
$spec$select = 0, $spec$select631 = 0, $spec$select638 = 0, $spec$select642 = 
0, $spec$select643 = 0, $spec$select644 = 0, $spec$select644$v = 0, 
$spec$select645 = 0;
- var $spec$select646 = 0, $spec$select646$v = 0, $spec$select647 = 0, 
$spec$select648 = 0, $spec$select648$v = 0, $spec$select649 = 0, 
$spec$select650 = 0, $spec$select650$v = 0, $spec$select651 = 0, 
$spec$select652 = 0, $spec$select653 = 0, $spec$select654 = 0, $spec$select655 
= 0, $spec$select655$v = 0, $spec$select656 = 0, $spec$select657 = 0, 
$spec$select657$v = 0, $spec$select659 = 0, $spec$select659$v = 0, 
$spec$select660 = 0;
- var $spec$select661 = 0, $spec$select661$v = 0, $spec$select662 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- switch ($5|0) {
- case 0:  {
-  __gcry_divide_by_zero();
-  // unreachable;
-  break;
- }
- case 1:  {
-  $6 = HEAP32[$4>>2]|0;
-  $7 = (($3) + -1)|0;
-  $8 = (($2) + ($7<<2)|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = ($9>>>0)<($6>>>0);
-  $11 = $10 ? 0 : $6;
-  $spec$select = (($9) - ($11))|0;
-  $not$ = $10 ^ 1;
-  $spec$select631 = $not$&1;
-  $12 = (($0) + ($1<<2)|0);
-  $13 = ($3|0)>(1);
-  if ($13) {
-   $14 = (($3) + -2)|0;
-   $15 = $6 >>> 16;
-   $16 = $6 & 65535;
-   $$0578683 = $14;$$1581682 = $spec$select;
-   while(1) {
-    $17 = (($$1581682>>>0) / ($15>>>0))&-1;
-    $18 = Math_imul($17, $15)|0;
-    $19 = (($$1581682) - ($18))|0;
-    $20 = Math_imul($17, $16)|0;
-    $21 = $19 << 16;
-    $22 = (($2) + ($$0578683<<2)|0);
-    $23 = HEAP32[$22>>2]|0;
-    $24 = $23 >>> 16;
-    $25 = $24 | $21;
-    $26 = ($25>>>0)<($20>>>0);
-    if ($26) {
-     $27 = (($25) + ($6))|0;
-     $28 = ($27>>>0)>=($6>>>0);
-     $29 = ($27>>>0)<($20>>>0);
-     $or$cond = $28 & $29;
-     $30 = $or$cond ? $6 : 0;
-     $spec$select643 = (($30) + ($27))|0;
-     $spec$select644$v = $or$cond ? -2 : -1;
-     $spec$select644 = (($spec$select644$v) + ($17))|0;
-     $$0583 = $spec$select644;$$0586 = $spec$select643;
-    } else {
-     $$0583 = $17;$$0586 = $25;
-    }
-    $31 = (($$0586) - ($20))|0;
-    $32 = (($31>>>0) / ($15>>>0))&-1;
-    $33 = Math_imul($32, $15)|0;
-    $34 = (($31) - ($33))|0;
-    $35 = Math_imul($32, $16)|0;
-    $36 = $34 << 16;
-    $37 = $23 & 65535;
-    $38 = $36 | $37;
-    $39 = ($38>>>0)<($35>>>0);
-    if ($39) {
-     $40 = (($38) + ($6))|0;
-     $41 = ($40>>>0)>=($6>>>0);
-     $42 = ($40>>>0)<($35>>>0);
-     $or$cond632 = $41 & $42;
-     $43 = $or$cond632 ? $6 : 0;
-     $spec$select645 = (($43) + ($40))|0;
-     $spec$select646$v = $or$cond632 ? -2 : -1;
-     $spec$select646 = (($spec$select646$v) + ($32))|0;
-     $$0585 = $spec$select646;$$0591 = $spec$select645;
-    } else {
-     $$0585 = $32;$$0591 = $38;
-    }
-    $44 = (($$0591) - ($35))|0;
-    $45 = $$0583 << 16;
-    $46 = $$0585 | $45;
-    $47 = (($12) + ($$0578683<<2)|0);
-    HEAP32[$47>>2] = $46;
-    $48 = (($$0578683) + -1)|0;
-    $49 = ($$0578683|0)>(0);
-    if ($49) {
-     $$0578683 = $48;$$1581682 = $44;
-    } else {
-     $$1581$lcssa = $44;
-     break;
-    }
-   }
-  } else {
-   $$1581$lcssa = $spec$select;
-  }
-  $50 = ($1|0)>(0);
-  if ($50) {
-   $51 = $6 >>> 16;
-   $52 = $6 & 65535;
-   $$1579678$in = $1;$$2582677 = $$1581$lcssa;
-   while(1) {
-    $$1579678 = (($$1579678$in) + -1)|0;
-    $53 = (($$2582677>>>0) / ($51>>>0))&-1;
-    $54 = Math_imul($53, $51)|0;
-    $55 = (($$2582677) - ($54))|0;
-    $56 = Math_imul($53, $52)|0;
-    $57 = $55 << 16;
-    $58 = ($57>>>0)<($56>>>0);
-    if ($58) {
-     $59 = (($57) + ($6))|0;
-     $60 = ($59>>>0)>=($6>>>0);
-     $61 = ($59>>>0)<($56>>>0);
-     $or$cond633 = $60 & $61;
-     $62 = $or$cond633 ? $6 : 0;
-     $spec$select647 = (($62) + ($59))|0;
-     $spec$select648$v = $or$cond633 ? -2 : -1;
-     $spec$select648 = (($spec$select648$v) + ($53))|0;
-     $$0594 = $spec$select648;$$0605 = $spec$select647;
-    } else {
-     $$0594 = $53;$$0605 = $57;
-    }
-    $63 = (($$0605) - ($56))|0;
-    $64 = (($63>>>0) / ($51>>>0))&-1;
-    $65 = Math_imul($64, $51)|0;
-    $66 = (($63) - ($65))|0;
-    $67 = Math_imul($64, $52)|0;
-    $68 = $66 << 16;
-    $69 = ($68>>>0)<($67>>>0);
-    if ($69) {
-     $70 = (($68) + ($6))|0;
-     $71 = ($70>>>0)>=($6>>>0);
-     $72 = ($70>>>0)<($67>>>0);
-     $or$cond634 = $71 & $72;
-     $73 = $or$cond634 ? $6 : 0;
-     $spec$select649 = (($73) + ($70))|0;
-     $spec$select650$v = $or$cond634 ? -2 : -1;
-     $spec$select650 = (($spec$select650$v) + ($64))|0;
-     $$0604 = $spec$select650;$$0607 = $spec$select649;
-    } else {
-     $$0604 = $64;$$0607 = $68;
-    }
-    $74 = (($$0607) - ($67))|0;
-    $75 = $$0594 << 16;
-    $76 = $$0604 | $75;
-    $77 = (($0) + ($$1579678<<2)|0);
-    HEAP32[$77>>2] = $76;
-    $78 = ($$1579678$in|0)>(1);
-    if ($78) {
-     $$1579678$in = $$1579678;$$2582677 = $74;
-    } else {
-     $$2582$lcssa = $74;
-     break;
-    }
-   }
-  } else {
-   $$2582$lcssa = $$1581$lcssa;
-  }
-  HEAP32[$2>>2] = $$2582$lcssa;
-  $$3577 = $spec$select631;
-  return ($$3577|0);
-  break;
- }
- case 2:  {
-  $79 = (($3) + -2)|0;
-  $80 = (($2) + ($79<<2)|0);
-  $81 = ((($4)) + 4|0);
-  $82 = HEAP32[$81>>2]|0;
-  $83 = HEAP32[$4>>2]|0;
-  $84 = (0 - ($83))|0;
-  $85 = ((($80)) + 4|0);
-  $86 = HEAP32[$85>>2]|0;
-  $87 = HEAP32[$80>>2]|0;
-  $88 = ($86>>>0)<($82>>>0);
-  if ($88) {
-   $$0609 = $86;$$0613 = $87;$$1575 = 0;
-  } else {
-   $89 = ($86>>>0)<=($82>>>0);
-   $90 = ($87>>>0)<($83>>>0);
-   $or$cond635 = $89 & $90;
-   $91 = (($87) - ($83))|0;
-   $92 = (($86) - ($82))|0;
-   $93 = ($91>>>0)>($87>>>0);
-   $$neg663 = $93 << 31 >> 31;
-   $94 = (($92) + ($$neg663))|0;
-   $spec$select651 = $or$cond635 ? $87 : $91;
-   $spec$select652 = $or$cond635 ? $86 : $94;
-   $not$or$cond635$demorgan = $89 & $90;
-   $not$or$cond635 = $not$or$cond635$demorgan ^ 1;
-   $spec$select653 = $not$or$cond635&1;
-   $$0609 = $spec$select652;$$0613 = $spec$select651;$$1575 = $spec$select653;
-  }
-  $95 = (($3) + ($1))|0;
-  $96 = ($95|0)>(2);
-  if ($96) {
-   $97 = (($95) + -3)|0;
-   $98 = $82 >>> 16;
-   $99 = $82 & 65535;
-   $100 = ($83|0)!=(0);
-   $101 = $100&1;
-   $102 = (($83) - ($101))|0;
-   $103 = $83 & 65535;
-   $104 = $83 >>> 16;
-   $$0608690 = $97;$$0692 = $80;$$1610689 = $$0609;$$1614688 = $$0613;
-   while(1) {
-    $105 = ($$0608690|0)<($1|0);
-    if ($105) {
-     HEAP32[$$0692>>2] = 0;
-     $$1 = $$0692;
-    } else {
-     $106 = ((($$0692)) + -4|0);
-     $$1 = $106;
-    }
-    $107 = ($$1610689|0)==($82|0);
-    if ($107) {
-     $108 = (($$1614688) + ($82))|0;
-     $109 = ($108>>>0)<($82>>>0);
-     if ($109) {
-      $110 = HEAP32[$$1>>2]|0;
-      $111 = (($110) + ($83))|0;
-      $112 = (($108) - ($83))|0;
-      $113 = ($111>>>0)<($110>>>0);
-      $114 = $113&1;
-      $115 = (($112) + ($114))|0;
-      $116 = (($0) + ($$0608690<<2)|0);
-      HEAP32[$116>>2] = -1;
-      $$5 = $115;$$5618 = $111;
-     } else {
-      $$0619 = -1;$$0622 = $108;$$2611 = $102;$$2615 = $84;
-      label = 33;
-     }
-    } else {
-     $117 = (($$1610689>>>0) / ($98>>>0))&-1;
-     $118 = Math_imul($117, $98)|0;
-     $119 = (($$1610689) - ($118))|0;
-     $120 = Math_imul($117, $99)|0;
-     $121 = $119 << 16;
-     $122 = $$1614688 >>> 16;
-     $123 = $121 | $122;
-     $124 = ($123>>>0)<($120>>>0);
-     if ($124) {
-      $125 = (($123) + ($82))|0;
-      $126 = ($125>>>0)>=($82>>>0);
-      $127 = ($125>>>0)<($120>>>0);
-      $or$cond636 = $126 & $127;
-      $128 = $or$cond636 ? $82 : 0;
-      $spec$select654 = (($128) + ($125))|0;
-      $spec$select655$v = $or$cond636 ? -2 : -1;
-      $spec$select655 = (($spec$select655$v) + ($117))|0;
-      $$0627 = $spec$select655;$$0630 = $spec$select654;
-     } else {
-      $$0627 = $117;$$0630 = $123;
-     }
-     $129 = (($$0630) - ($120))|0;
-     $130 = (($129>>>0) / ($98>>>0))&-1;
-     $131 = Math_imul($130, $98)|0;
-     $132 = (($129) - ($131))|0;
-     $133 = Math_imul($130, $99)|0;
-     $134 = $132 << 16;
-     $135 = $$1614688 & 65535;
-     $136 = $134 | $135;
-     $137 = ($136>>>0)<($133>>>0);
-     if ($137) {
-      $138 = (($136) + ($82))|0;
-      $139 = ($138>>>0)>=($82>>>0);
-      $140 = ($138>>>0)<($133>>>0);
-      $or$cond637 = $139 & $140;
-      $141 = $or$cond637 ? $82 : 0;
-      $spec$select656 = (($141) + ($138))|0;
-      $spec$select657$v = $or$cond637 ? -2 : -1;
-      $spec$select657 = (($spec$select657$v) + ($130))|0;
-      $$0628 = $spec$select657;$$0629 = $spec$select656;
-     } else {
-      $$0628 = $130;$$0629 = $136;
-     }
-     $142 = (($$0629) - ($133))|0;
-     $143 = $$0627 << 16;
-     $144 = $$0628 | $143;
-     $145 = $$0628 & 65535;
-     $146 = $144 >>> 16;
-     $147 = Math_imul($145, $103)|0;
-     $148 = Math_imul($146, $103)|0;
-     $149 = Math_imul($145, $104)|0;
-     $150 = Math_imul($146, $104)|0;
-     $151 = $147 >>> 16;
-     $152 = (($151) + ($149))|0;
-     $153 = (($152) + ($148))|0;
-     $154 = ($153>>>0)<($149>>>0);
-     $155 = (($150) + 65536)|0;
-     $spec$select638 = $154 ? $155 : $150;
-     $156 = $153 >>> 16;
-     $157 = (($spec$select638) + ($156))|0;
-     $158 = $153 << 16;
-     $159 = $147 & 65535;
-     $160 = $158 | $159;
-     $$0619 = $144;$$0622 = $142;$$2611 = $157;$$2615 = $160;
-     label = 33;
-    }
-    if ((label|0) == 33) {
-     label = 0;
-     $161 = HEAP32[$$1>>2]|0;
-     $$1620 = $$0619;$$1623 = $$0622;$$3612 = $$2611;$$3616 = $$2615;
-     while(1) {
-      $162 = ($$3612>>>0)>($$1623>>>0);
-      if (!($162)) {
-       $163 = ($$3612|0)==($$1623|0);
-       $164 = ($$3616>>>0)>($161>>>0);
-       $or$cond639 = $164 & $163;
-       if (!($or$cond639)) {
-        $$2621 = $$1620;$$2624 = $$1623;$$4 = $$3612;$$4617 = $$3616;
-        break;
-       }
-      }
-      $165 = (($$1620) + -1)|0;
-      $166 = (($$3616) - ($83))|0;
-      $167 = ($166>>>0)>($$3616>>>0);
-      $168 = $167&1;
-      $169 = (($$3612) - ($168))|0;
-      $170 = (($$1623) + ($82))|0;
-      $171 = ($170>>>0)<($82>>>0);
-      if ($171) {
-       $$2621 = $165;$$2624 = $170;$$4 = $169;$$4617 = $166;
-       break;
-      } else {
-       $$1620 = $165;$$1623 = $170;$$3612 = $169;$$3616 = $166;
-      }
-     }
-     $172 = (($0) + ($$0608690<<2)|0);
-     HEAP32[$172>>2] = $$2621;
-     $173 = (($161) - ($$4617))|0;
-     $174 = (($$2624) - ($$4))|0;
-     $175 = ($173>>>0)>($161>>>0);
-     $$neg664 = $175 << 31 >> 31;
-     $176 = (($174) + ($$neg664))|0;
-     $$5 = $176;$$5618 = $173;
-    }
-    $177 = (($$0608690) + -1)|0;
-    $178 = ($$0608690|0)>(0);
-    if ($178) {
-     $$0608690 = $177;$$0692 = $$1;$$1610689 = $$5;$$1614688 = $$5618;
-    } else {
-     break;
-    }
-   }
-   $$pre = ((($$1)) + 4|0);
-   $$0$lcssa = $$1;$$1610$lcssa = $$5;$$1614$lcssa = $$5618;$$pre$phiZ2D = 
$$pre;
-  } else {
-   $$0$lcssa = $80;$$1610$lcssa = $$0609;$$1614$lcssa = $$0613;$$pre$phiZ2D = 
$85;
-  }
-  HEAP32[$$pre$phiZ2D>>2] = $$1610$lcssa;
-  HEAP32[$$0$lcssa>>2] = $$1614$lcssa;
-  $$3577 = $$1575;
-  return ($$3577|0);
-  break;
- }
- default: {
-  $179 = (($3) - ($5))|0;
-  $180 = (($2) + ($179<<2)|0);
-  $181 = (($5) + -1)|0;
-  $182 = (($4) + ($181<<2)|0);
-  $183 = HEAP32[$182>>2]|0;
-  $184 = (($5) + -2)|0;
-  $185 = (($4) + ($184<<2)|0);
-  $186 = HEAP32[$185>>2]|0;
-  $187 = (($180) + ($181<<2)|0);
-  $188 = HEAP32[$187>>2]|0;
-  $189 = ($188>>>0)<($183>>>0);
-  L3: do {
-   if ($189) {
-    $$0601 = $188;$$2576 = 0;
-   } else {
-    $190 = ($188>>>0)<=($183>>>0);
-    $191 = ($5|0)>(1);
-    $or$cond658 = $191 & $190;
-    L5: do {
-     if ($or$cond658) {
-      $$01619$i715 = (($5) + -2)|0;
-      $192 = (($180) + ($$01619$i715<<2)|0);
-      $193 = HEAP32[$192>>2]|0;
-      $194 = (($4) + ($$01619$i715<<2)|0);
-      $195 = HEAP32[$194>>2]|0;
-      $196 = ($193|0)==($195|0);
-      if ($196) {
-       $$01619$i717 = $$01619$i715;$$01619$in$i716 = $181;
-       while(1) {
-        $197 = ($$01619$in$i716|0)>(1);
-        if (!($197)) {
-         break L5;
-        }
-        $$01619$i = (($$01619$i717) + -1)|0;
-        $198 = (($180) + ($$01619$i<<2)|0);
-        $199 = HEAP32[$198>>2]|0;
-        $200 = (($4) + ($$01619$i<<2)|0);
-        $201 = HEAP32[$200>>2]|0;
-        $202 = ($199|0)==($201|0);
-        if ($202) {
-         $$01619$in$i716$phi = $$01619$i717;$$01619$i717 = 
$$01619$i;$$01619$in$i716 = $$01619$in$i716$phi;
-        } else {
-         $$lcssa = $201;$$lcssa711 = $199;
-         break;
-        }
-       }
-      } else {
-       $$lcssa = $195;$$lcssa711 = $193;
-      }
-      $203 = ($$lcssa711>>>0)>($$lcssa>>>0);
-      if (!($203)) {
-       $$0601 = $188;$$2576 = 0;
-       break L3;
-      }
-     }
-    } while(0);
-    (__gcry_mpih_sub_n($180,$180,$4,$5)|0);
-    $204 = HEAP32[$187>>2]|0;
-    $$0601 = $204;$$2576 = 1;
-   }
-  } while(0);
-  $205 = (($3) + ($1))|0;
-  $206 = (($205) - ($5))|0;
-  $207 = ($206|0)>(0);
-  if (!($207)) {
-   $$3577 = $$2576;
-   return ($$3577|0);
-  }
-  $208 = ($5|0)>(1);
-  $209 = $183 >>> 16;
-  $210 = $183 & 65535;
-  $211 = $186 & 65535;
-  $212 = $186 >>> 16;
-  $$0606674$in = $206;$$2673 = $180;$224 = $$0601;
-  while(1) {
-   $$0606674 = (($$0606674$in) + -1)|0;
-   $213 = ($$0606674$in|0)>($1|0);
-   if ($213) {
-    $214 = ((($$2673)) + -4|0);
-    $215 = (($214) + ($5<<2)|0);
-    $216 = HEAP32[$215>>2]|0;
-    $$0595 = $216;$$3 = $214;
-   } else {
-    if ($208) {
-     $217 = ((($$2673)) + 4|0);
-     $$0593669 = $184;
-     while(1) {
-      $218 = (($$2673) + ($$0593669<<2)|0);
-      $219 = HEAP32[$218>>2]|0;
-      $220 = (($217) + ($$0593669<<2)|0);
-      HEAP32[$220>>2] = $219;
-      $221 = (($$0593669) + -1)|0;
-      $222 = ($$0593669|0)>(0);
-      if ($222) {
-       $$0593669 = $221;
-      } else {
-       break;
-      }
-     }
-    }
-    HEAP32[$$2673>>2] = 0;
-    $$0595 = $224;$$3 = $$2673;
-   }
-   $223 = ($224|0)==($183|0);
-   L29: do {
-    if ($223) {
-     $$2599 = -1;
-    } else {
-     $225 = (($224>>>0) / ($209>>>0))&-1;
-     $226 = Math_imul($225, $209)|0;
-     $227 = (($224) - ($226))|0;
-     $228 = Math_imul($225, $210)|0;
-     $229 = $227 << 16;
-     $230 = (($$3) + ($181<<2)|0);
-     $231 = HEAP32[$230>>2]|0;
-     $232 = $231 >>> 16;
-     $233 = $232 | $229;
-     $234 = ($233>>>0)<($228>>>0);
-     if ($234) {
-      $235 = (($233) + ($183))|0;
-      $236 = ($235>>>0)>=($183>>>0);
-      $237 = ($235>>>0)<($228>>>0);
-      $or$cond640 = $236 & $237;
-      $spec$select659$v = $or$cond640 ? -2 : -1;
-      $spec$select659 = (($spec$select659$v) + ($225))|0;
-      $238 = $or$cond640 ? $183 : 0;
-      $spec$select660 = (($238) + ($235))|0;
-      $$0588 = $spec$select660;$$0590 = $spec$select659;
-     } else {
-      $$0588 = $233;$$0590 = $225;
-     }
-     $239 = (($$0588) - ($228))|0;
-     $240 = (($239>>>0) / ($209>>>0))&-1;
-     $241 = Math_imul($240, $209)|0;
-     $242 = (($239) - ($241))|0;
-     $243 = Math_imul($240, $210)|0;
-     $244 = $242 << 16;
-     $245 = $231 & 65535;
-     $246 = $244 | $245;
-     $247 = ($246>>>0)<($243>>>0);
-     if ($247) {
-      $248 = (($246) + ($183))|0;
-      $249 = ($248>>>0)>=($183>>>0);
-      $250 = ($248>>>0)<($243>>>0);
-      $or$cond641 = $249 & $250;
-      $spec$select661$v = $or$cond641 ? -2 : -1;
-      $spec$select661 = (($spec$select661$v) + ($240))|0;
-      $251 = $or$cond641 ? $183 : 0;
-      $spec$select662 = (($251) + ($248))|0;
-      $$0587 = $spec$select662;$$0589 = $spec$select661;
-     } else {
-      $$0587 = $246;$$0589 = $240;
-     }
-     $252 = (($$0587) - ($243))|0;
-     $253 = $$0590 << 16;
-     $254 = $$0589 | $253;
-     $255 = $$0589 & 65535;
-     $256 = $254 >>> 16;
-     $257 = Math_imul($255, $211)|0;
-     $258 = Math_imul($256, $211)|0;
-     $259 = Math_imul($255, $212)|0;
-     $260 = Math_imul($256, $212)|0;
-     $261 = $257 >>> 16;
-     $262 = (($261) + ($259))|0;
-     $263 = (($262) + ($258))|0;
-     $264 = ($263>>>0)<($259>>>0);
-     $265 = (($260) + 65536)|0;
-     $spec$select642 = $264 ? $265 : $260;
-     $266 = $263 >>> 16;
-     $267 = (($spec$select642) + ($266))|0;
-     $268 = $263 << 16;
-     $269 = $257 & 65535;
-     $270 = $268 | $269;
-     $271 = (($$3) + ($184<<2)|0);
-     $$0592 = $252;$$0596 = $267;$$0597 = $254;$$2603 = $270;
-     while(1) {
-      $272 = ($$0596>>>0)>($$0592>>>0);
-      if (!($272)) {
-       $273 = ($$0596|0)==($$0592|0);
-       if (!($273)) {
-        $$2599 = $$0597;
-        break L29;
-       }
-       $274 = HEAP32[$271>>2]|0;
-       $275 = ($$2603>>>0)>($274>>>0);
-       if (!($275)) {
-        $$2599 = $$0597;
-        break L29;
-       }
-      }
-      $276 = (($$0597) + -1)|0;
-      $277 = (($$0592) + ($183))|0;
-      $278 = ($277>>>0)<($183>>>0);
-      if ($278) {
-       $$2599 = $276;
-       break L29;
-      }
-      $279 = ($$2603>>>0)<($186>>>0);
-      $280 = $279&1;
-      $281 = (($$0596) - ($280))|0;
-      $282 = (($$2603) - ($186))|0;
-      $$0592 = $277;$$0596 = $281;$$0597 = $276;$$2603 = $282;
-     }
-    }
-   } while(0);
-   $283 = (__gcry_mpih_submul_1($$3,$4,$5,$$2599)|0);
-   $284 = ($$0595|0)==($283|0);
-   if ($284) {
-    $$3600 = $$2599;
-   } else {
-    $285 = (($$2599) + -1)|0;
-    (__gcry_mpih_add_n($$3,$$3,$4,$5)|0);
-    $$3600 = $285;
-   }
-   $286 = (($0) + ($$0606674<<2)|0);
-   HEAP32[$286>>2] = $$3600;
-   $287 = (($$3) + ($181<<2)|0);
-   $288 = HEAP32[$287>>2]|0;
-   $289 = ($$0606674$in|0)>(1);
-   if ($289) {
-    $$0606674$in = $$0606674;$$2673 = $$3;$224 = $288;
-   } else {
-    $$3577 = $$2576;
-    break;
-   }
-  }
-  return ($$3577|0);
- }
- }
- return (0)|0;
-}
-function __gcry_mpih_divmod_1($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$0252 = 0, $$0253 = 0, $$0254 = 0, $$0257 = 0, $$0258 = 0, 
$$0259 = 0, $$0260 = 0, $$0261293 = 0, $$0263$lcssa = 0, $$0263292 = 0, $$0264 
= 0, $$0265 = 0, $$0266 = 0, $$0267 = 0, $$0268$lcssa = 0, $$0268291 = 0, $$1 = 
0, $$1262 = 0, $$1269 = 0;
- var $$2270289 = 0, $$2290 = 0, $$pre = 0, $$pre$phi300Z2D = 0, $$pre$phiZ2D = 
0, $$pre299 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, 
$105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0;
- var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, $or$cond = 0, $or$cond272 = 0;
- var $or$cond273 = 0, $or$cond274 = 0, $or$cond275 = 0, $or$cond276 = 0, 
$spec$select = 0, $spec$select$v = 0, $spec$select278 = 0, $spec$select279 = 0, 
$spec$select279$v = 0, $spec$select280 = 0, $spec$select281 = 0, 
$spec$select281$v = 0, $spec$select282 = 0, $spec$select283 = 0, 
$spec$select283$v = 0, $spec$select284 = 0, $spec$select285 = 0, 
$spec$select285$v = 0, $spec$select286 = 0, $spec$select287 = 0;
- var $spec$select287$v = 0, $spec$select288 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = ($2|0)==(0);
- if ($4) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $5 = ($3>>>0)<(65536);
- $6 = ($3>>>0)<(256);
- $7 = $6 ? 0 : 8;
- $8 = ($3>>>0)<(16777216);
- $9 = $8 ? 16 : 24;
- $10 = $5 ? $7 : $9;
- $11 = $3 >>> $10;
- $12 = (14784 + ($11)|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13&255;
- $15 = (($10) + ($14))|0;
- $16 = (32 - ($15))|0;
- $17 = ($16|0)==(0);
- if ($17) {
-  $94 = (($2) + -1)|0;
-  $95 = (($1) + ($94<<2)|0);
-  $96 = HEAP32[$95>>2]|0;
-  $97 = ($96>>>0)<($3>>>0);
-  if ($97) {
-   $98 = (($0) + ($94<<2)|0);
-   $99 = (($2) + -2)|0;
-   HEAP32[$98>>2] = 0;
-   $$1262 = $99;$$1269 = $96;
-  } else {
-   $$1262 = $94;$$1269 = 0;
-  }
-  $100 = ($$1262|0)>(-1);
-  if (!($100)) {
-   $$1 = $$1269;
-   return ($$1|0);
-  }
-  $101 = $3 >>> 16;
-  $102 = $3 & 65535;
-  $$2270289 = $$1269;$$2290 = $$1262;
-  while(1) {
-   $103 = (($1) + ($$2290<<2)|0);
-   $104 = HEAP32[$103>>2]|0;
-   $105 = (($$2270289>>>0) / ($101>>>0))&-1;
-   $106 = Math_imul($105, $101)|0;
-   $107 = (($$2270289) - ($106))|0;
-   $108 = Math_imul($105, $102)|0;
-   $109 = $107 << 16;
-   $110 = $104 >>> 16;
-   $111 = $109 | $110;
-   $112 = ($111>>>0)<($108>>>0);
-   if ($112) {
-    $113 = (($111) + ($3))|0;
-    $114 = ($113>>>0)>=($3>>>0);
-    $115 = ($113>>>0)<($108>>>0);
-    $or$cond275 = $114 & $115;
-    $spec$select285$v = $or$cond275 ? -2 : -1;
-    $spec$select285 = (($spec$select285$v) + ($105))|0;
-    $116 = $or$cond275 ? $3 : 0;
-    $spec$select286 = (($116) + ($113))|0;
-    $$0252 = $spec$select286;$$0254 = $spec$select285;
-   } else {
-    $$0252 = $111;$$0254 = $105;
-   }
-   $117 = (($$0252) - ($108))|0;
-   $118 = (($117>>>0) / ($101>>>0))&-1;
-   $119 = Math_imul($118, $101)|0;
-   $120 = (($117) - ($119))|0;
-   $121 = Math_imul($118, $102)|0;
-   $122 = $120 << 16;
-   $123 = $104 & 65535;
-   $124 = $122 | $123;
-   $125 = ($124>>>0)<($121>>>0);
-   if ($125) {
-    $126 = (($124) + ($3))|0;
-    $127 = ($126>>>0)>=($3>>>0);
-    $128 = ($126>>>0)<($121>>>0);
-    $or$cond276 = $127 & $128;
-    $spec$select287$v = $or$cond276 ? -2 : -1;
-    $spec$select287 = (($spec$select287$v) + ($118))|0;
-    $129 = $or$cond276 ? $3 : 0;
-    $spec$select288 = (($129) + ($126))|0;
-    $$0 = $spec$select288;$$0253 = $spec$select287;
-   } else {
-    $$0 = $124;$$0253 = $118;
-   }
-   $130 = (($$0) - ($121))|0;
-   $131 = $$0254 << 16;
-   $132 = $$0253 | $131;
-   $133 = (($0) + ($$2290<<2)|0);
-   HEAP32[$133>>2] = $132;
-   $134 = (($$2290) + -1)|0;
-   $135 = ($$2290|0)>(0);
-   if ($135) {
-    $$2270289 = $130;$$2290 = $134;
-   } else {
-    $$1 = $130;
-    break;
-   }
-  }
-  return ($$1|0);
- }
- $18 = $3 << $16;
- $19 = (($2) + -1)|0;
- $20 = (($1) + ($19<<2)|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = $21 >>> $15;
- $23 = ($2|0)>(1);
- if ($23) {
-  $24 = (($2) + -2)|0;
-  $25 = $18 >>> 16;
-  $26 = $18 & 65535;
-  $$0261293 = $24;$$0263292 = $21;$$0268291 = $22;
-  while(1) {
-   $27 = (($1) + ($$0261293<<2)|0);
-   $28 = HEAP32[$27>>2]|0;
-   $29 = (($$0268291>>>0) / ($25>>>0))&-1;
-   $30 = Math_imul($29, $25)|0;
-   $31 = (($$0268291) - ($30))|0;
-   $32 = Math_imul($29, $26)|0;
-   $33 = $31 << 16;
-   $34 = $$0263292 << $16;
-   $35 = $28 >>> $15;
-   $36 = $35 | $34;
-   $37 = $36 >>> 16;
-   $38 = $37 | $33;
-   $39 = ($38>>>0)<($32>>>0);
-   if ($39) {
-    $40 = (($38) + ($18))|0;
-    $41 = ($40>>>0)>=($18>>>0);
-    $42 = ($40>>>0)<($32>>>0);
-    $or$cond = $41 & $42;
-    $spec$select$v = $or$cond ? -2 : -1;
-    $spec$select = (($spec$select$v) + ($29))|0;
-    $43 = $or$cond ? $18 : 0;
-    $spec$select278 = (($43) + ($40))|0;
-    $$0265 = $spec$select278;$$0267 = $spec$select;
-   } else {
-    $$0265 = $38;$$0267 = $29;
-   }
-   $44 = (($$0265) - ($32))|0;
-   $45 = (($44>>>0) / ($25>>>0))&-1;
-   $46 = Math_imul($45, $25)|0;
-   $47 = (($44) - ($46))|0;
-   $48 = Math_imul($45, $26)|0;
-   $49 = $47 << 16;
-   $50 = $36 & 65535;
-   $51 = $49 | $50;
-   $52 = ($51>>>0)<($48>>>0);
-   if ($52) {
-    $53 = (($51) + ($18))|0;
-    $54 = ($53>>>0)>=($18>>>0);
-    $55 = ($53>>>0)<($48>>>0);
-    $or$cond272 = $54 & $55;
-    $spec$select279$v = $or$cond272 ? -2 : -1;
-    $spec$select279 = (($spec$select279$v) + ($45))|0;
-    $56 = $or$cond272 ? $18 : 0;
-    $spec$select280 = (($56) + ($53))|0;
-    $$0264 = $spec$select280;$$0266 = $spec$select279;
-   } else {
-    $$0264 = $51;$$0266 = $45;
-   }
-   $57 = (($$0264) - ($48))|0;
-   $58 = $$0267 << 16;
-   $59 = $$0266 | $58;
-   $60 = (($$0261293) + 1)|0;
-   $61 = (($0) + ($60<<2)|0);
-   HEAP32[$61>>2] = $59;
-   $62 = (($$0261293) + -1)|0;
-   $63 = ($$0261293|0)>(0);
-   if ($63) {
-    $$0261293 = $62;$$0263292 = $28;$$0268291 = $57;
-   } else {
-    $$0263$lcssa = $28;$$0268$lcssa = $57;$$pre$phi300Z2D = $26;$$pre$phiZ2D = 
$25;
-    break;
-   }
-  }
- } else {
-  $$pre = $18 >>> 16;
-  $$pre299 = $18 & 65535;
-  $$0263$lcssa = $21;$$0268$lcssa = $22;$$pre$phi300Z2D = 
$$pre299;$$pre$phiZ2D = $$pre;
- }
- $64 = (($$0268$lcssa>>>0) / ($$pre$phiZ2D>>>0))&-1;
- $65 = Math_imul($64, $$pre$phiZ2D)|0;
- $66 = (($$0268$lcssa) - ($65))|0;
- $67 = Math_imul($64, $$pre$phi300Z2D)|0;
- $68 = $66 << 16;
- $69 = $$0263$lcssa << $16;
- $70 = $69 >>> 16;
- $71 = $68 | $70;
- $72 = ($71>>>0)<($67>>>0);
- if ($72) {
-  $73 = (($71) + ($18))|0;
-  $74 = ($73>>>0)>=($18>>>0);
-  $75 = ($73>>>0)<($67>>>0);
-  $or$cond273 = $74 & $75;
-  $spec$select281$v = $or$cond273 ? -2 : -1;
-  $spec$select281 = (($spec$select281$v) + ($64))|0;
-  $76 = $or$cond273 ? $18 : 0;
-  $spec$select282 = (($76) + ($73))|0;
-  $$0258 = $spec$select282;$$0260 = $spec$select281;
- } else {
-  $$0258 = $71;$$0260 = $64;
- }
- $77 = (($$0258) - ($67))|0;
- $78 = (($77>>>0) / ($$pre$phiZ2D>>>0))&-1;
- $79 = Math_imul($78, $$pre$phiZ2D)|0;
- $80 = (($77) - ($79))|0;
- $81 = Math_imul($78, $$pre$phi300Z2D)|0;
- $82 = $80 << 16;
- $83 = $69 & 65535;
- $84 = $82 | $83;
- $85 = ($84>>>0)<($81>>>0);
- if ($85) {
-  $86 = (($84) + ($18))|0;
-  $87 = ($86>>>0)>=($18>>>0);
-  $88 = ($86>>>0)<($81>>>0);
-  $or$cond274 = $87 & $88;
-  $spec$select283$v = $or$cond274 ? -2 : -1;
-  $spec$select283 = (($spec$select283$v) + ($78))|0;
-  $89 = $or$cond274 ? $18 : 0;
-  $spec$select284 = (($89) + ($86))|0;
-  $$0257 = $spec$select284;$$0259 = $spec$select283;
- } else {
-  $$0257 = $84;$$0259 = $78;
- }
- $90 = (($$0257) - ($81))|0;
- $91 = $$0260 << 16;
- $92 = $$0259 | $91;
- HEAP32[$0>>2] = $92;
- $93 = $90 >>> $16;
- $$1 = $93;
- return ($$1|0);
-}
-function __gcry_mpih_lshift($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$lcssa = 0, $$034$lcssa = 0, $$03435 = 0, $$036 = 0, $$036$phi = 0, 
$10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (32 - ($3))|0;
- $5 = (($2) + -1)|0;
- $6 = (($1) + ($5<<2)|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = $7 >>> $4;
- $9 = ($2|0)>(1);
- if ($9) {
-  $10 = (($2) + -2)|0;
-  $$03435 = $7;$$036 = $5;$12 = $10;
-  while(1) {
-   $11 = (($1) + ($12<<2)|0);
-   $13 = HEAP32[$11>>2]|0;
-   $14 = $$03435 << $3;
-   $15 = $13 >>> $4;
-   $16 = $15 | $14;
-   $17 = (($0) + ($$036<<2)|0);
-   HEAP32[$17>>2] = $16;
-   $18 = (($12) + -1)|0;
-   $19 = ($12|0)>(0);
-   if ($19) {
-    $$036$phi = $12;$$03435 = $13;$12 = $18;$$036 = $$036$phi;
-   } else {
-    $$0$lcssa = 0;$$034$lcssa = $13;
-    break;
-   }
-  }
- } else {
-  $$0$lcssa = $5;$$034$lcssa = $7;
- }
- $20 = $$034$lcssa << $3;
- $21 = (($0) + ($$0$lcssa<<2)|0);
- HEAP32[$21>>2] = $20;
- return ($8|0);
-}
-function __gcry_mpih_mul_1($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$067 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (0 - ($2))|0;
- $5 = (($1) + ($2<<2)|0);
- $6 = (($0) + ($2<<2)|0);
- $7 = $3 & 65535;
- $8 = $3 >>> 16;
- $$0 = 0;$$067 = $4;
- while(1) {
-  $9 = (($5) + ($$067<<2)|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = $10 & 65535;
-  $12 = $10 >>> 16;
-  $13 = Math_imul($11, $7)|0;
-  $14 = Math_imul($11, $8)|0;
-  $15 = Math_imul($12, $7)|0;
-  $16 = Math_imul($12, $8)|0;
-  $17 = $13 >>> 16;
-  $18 = (($15) + ($14))|0;
-  $19 = (($18) + ($17))|0;
-  $20 = ($19>>>0)<($15>>>0);
-  $21 = (($16) + 65536)|0;
-  $spec$select = $20 ? $21 : $16;
-  $22 = $19 >>> 16;
-  $23 = (($spec$select) + ($22))|0;
-  $24 = $19 << 16;
-  $25 = $13 & 65535;
-  $26 = $24 | $25;
-  $27 = (($26) + ($$0))|0;
-  $28 = ($27>>>0)<($$0>>>0);
-  $29 = $28&1;
-  $30 = (($23) + ($29))|0;
-  $31 = (($6) + ($$067<<2)|0);
-  HEAP32[$31>>2] = $27;
-  $32 = (($$067) + 1)|0;
-  $33 = ($32|0)==(0);
-  if ($33) {
-   break;
-  } else {
-   $$0 = $30;$$067 = $32;
-  }
- }
- return ($30|0);
-}
-function __gcry_mpih_submul_1($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$076 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (0 - ($2))|0;
- $5 = (($0) + ($2<<2)|0);
- $6 = (($1) + ($2<<2)|0);
- $7 = $3 & 65535;
- $8 = $3 >>> 16;
- $$0 = 0;$$076 = $4;
- while(1) {
-  $9 = (($6) + ($$076<<2)|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = $10 & 65535;
-  $12 = $10 >>> 16;
-  $13 = Math_imul($11, $7)|0;
-  $14 = Math_imul($11, $8)|0;
-  $15 = Math_imul($12, $7)|0;
-  $16 = Math_imul($12, $8)|0;
-  $17 = $13 >>> 16;
-  $18 = (($15) + ($14))|0;
-  $19 = (($18) + ($17))|0;
-  $20 = ($19>>>0)<($15>>>0);
-  $21 = (($16) + 65536)|0;
-  $spec$select = $20 ? $21 : $16;
-  $22 = $19 >>> 16;
-  $23 = (($spec$select) + ($22))|0;
-  $24 = $19 << 16;
-  $25 = $13 & 65535;
-  $26 = $24 | $25;
-  $27 = (($26) + ($$0))|0;
-  $28 = ($27>>>0)<($$0>>>0);
-  $29 = $28&1;
-  $30 = (($23) + ($29))|0;
-  $31 = (($5) + ($$076<<2)|0);
-  $32 = HEAP32[$31>>2]|0;
-  $33 = (($32) - ($27))|0;
-  $34 = ($33>>>0)>($32>>>0);
-  $35 = $34&1;
-  $36 = (($30) + ($35))|0;
-  HEAP32[$31>>2] = $33;
-  $37 = (($$076) + 1)|0;
-  $38 = ($37|0)==(0);
-  if ($38) {
-   break;
-  } else {
-   $$0 = $36;$$076 = $37;
-  }
- }
- return ($36|0);
-}
-function _mul_n_basecase($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0515 = 0, $$052 = 0, $$0533 = 0, $$0544 = 0, $$2 = 0, $$pn = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 
= 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, 
$exitcond12 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = HEAP32[$2>>2]|0;
- $5 = ($4>>>0)<(2);
- L1: do {
-  if ($5) {
-   $6 = ($4|0)==(1);
-   $7 = ($3|0)>(0);
-   if ($6) {
-    if ($7) {
-     $$0515 = 0;
-     while(1) {
-      $8 = (($1) + ($$0515<<2)|0);
-      $9 = HEAP32[$8>>2]|0;
-      $10 = (($0) + ($$0515<<2)|0);
-      HEAP32[$10>>2] = $9;
-      $11 = (($$0515) + 1)|0;
-      $exitcond12 = ($11|0)==($3|0);
-      if ($exitcond12) {
-       $$052 = 0;
-       break L1;
-      } else {
-       $$0515 = $11;
-      }
-     }
-    }
-   } else {
-    if ($7) {
-     $12 = $3 << 2;
-     _memset(($0|0),0,($12|0))|0;
-     $$052 = 0;
-     break;
-    }
-   }
-   $14 = (($0) + ($3<<2)|0);
-   HEAP32[$14>>2] = 0;
-   return;
-  } else {
-   $13 = (__gcry_mpih_mul_1($0,$1,$3,$4)|0);
-   $$052 = $13;
-  }
- } while(0);
- $15 = (($0) + ($3<<2)|0);
- HEAP32[$15>>2] = $$052;
- $16 = ($3|0)>(1);
- if (!($16)) {
-  return;
- }
- $$0533 = 1;$$pn = $0;
- while(1) {
-  $$0544 = ((($$pn)) + 4|0);
-  $17 = (($2) + ($$0533<<2)|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = ($18>>>0)<(2);
-  if ($19) {
-   $20 = ($18|0)==(1);
-   if ($20) {
-    $21 = (__gcry_mpih_add_n($$0544,$$0544,$1,$3)|0);
-    $$2 = $21;
-   } else {
-    $$2 = 0;
-   }
-  } else {
-   $22 = (__gcry_mpih_addmul_1($$0544,$1,$3,$18)|0);
-   $$2 = $22;
-  }
-  $23 = (($$0544) + ($3<<2)|0);
-  HEAP32[$23>>2] = $$2;
-  $24 = (($$0533) + 1)|0;
-  $exitcond = ($24|0)==($3|0);
-  if ($exitcond) {
-   break;
-  } else {
-   $$0533 = $24;$$pn = $$0544;
-  }
- }
- return;
-}
-function _mul_n($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0153201 = 0, $$0154233 = 0, $$0154234 = 0, $$0155 = 0, $$01619$i = 0, 
$$01619$i171 = 0, $$01619$in$i = 0, $$01619$in$i170 = 0, $$0200 = 0, $$02637$i 
= 0, $$02637$i157 = 0, $$1 = 0, $$pn = 0, $$pn232 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = $3 & 1;
- $6 = ($5|0)==(0);
- if (!($6)) {
-  $7 = (($3) + -1)|0;
-  $8 = ($3|0)<(17);
-  if ($8) {
-   _mul_n_basecase($0,$1,$2,$7);
-  } else {
-   _mul_n($0,$1,$2,$7,$4);
-  }
-  $9 = (($0) + ($7<<2)|0);
-  $10 = (($2) + ($7<<2)|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (__gcry_mpih_addmul_1($9,$1,$7,$11)|0);
-  $13 = $7 << 1;
-  $14 = (($0) + ($13<<2)|0);
-  HEAP32[$14>>2] = $12;
-  $15 = (($1) + ($7<<2)|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = (__gcry_mpih_addmul_1($9,$2,$3,$16)|0);
-  $18 = (($7) + ($3))|0;
-  $19 = (($0) + ($18<<2)|0);
-  HEAP32[$19>>2] = $17;
-  return;
- }
- $20 = $3 >> 1;
- $21 = ($3|0)<(32);
- $22 = (($0) + ($3<<2)|0);
- $23 = (($1) + ($20<<2)|0);
- $24 = (($2) + ($20<<2)|0);
- if ($21) {
-  _mul_n_basecase($22,$23,$24,$20);
-  $25 = ($3|0)>(1);
-  if ($25) {
-   label = 9;
-  } else {
-   (__gcry_mpih_sub_n($0,$23,$1,$20)|0);
-   $$0154233 = 0;$94 = 0;
-   label = 20;
-  }
- } else {
-  _mul_n($22,$23,$24,$20,$4);
-  label = 9;
- }
- L13: do {
-  if ((label|0) == 9) {
-   $$01619$in$i = $20;
-   while(1) {
-    $$01619$i = (($$01619$in$i) + -1)|0;
-    $27 = (($23) + ($$01619$i<<2)|0);
-    $28 = HEAP32[$27>>2]|0;
-    $29 = (($1) + ($$01619$i<<2)|0);
-    $30 = HEAP32[$29>>2]|0;
-    $31 = ($28|0)==($30|0);
-    if (!($31)) {
-     label = 13;
-     break;
-    }
-    $26 = ($$01619$in$i|0)>(1);
-    if ($26) {
-     $$01619$in$i = $$01619$i;
-    } else {
-     label = 14;
-     break;
-    }
-   }
-   if ((label|0) == 13) {
-    $32 = ($28>>>0)>($30>>>0);
-    if ($32) {
-     label = 14;
-    } else {
-     (__gcry_mpih_sub_n($0,$1,$23,$20)|0);
-     $$0154234 = 1;
-    }
-   }
-   if ((label|0) == 14) {
-    (__gcry_mpih_sub_n($0,$23,$1,$20)|0);
-    $$0154234 = 0;
-   }
-   $$01619$in$i170 = $20;
-   while(1) {
-    $$01619$i171 = (($$01619$in$i170) + -1)|0;
-    $34 = (($24) + ($$01619$i171<<2)|0);
-    $35 = HEAP32[$34>>2]|0;
-    $36 = (($2) + ($$01619$i171<<2)|0);
-    $37 = HEAP32[$36>>2]|0;
-    $38 = ($35|0)==($37|0);
-    if (!($38)) {
-     break;
-    }
-    $33 = ($$01619$in$i170|0)>(1);
-    if ($33) {
-     $$01619$in$i170 = $$01619$i171;
-    } else {
-     $$0154233 = $$0154234;$94 = 1;
-     label = 20;
-     break L13;
-    }
-   }
-   $39 = ($35>>>0)>($37>>>0);
-   if ($39) {
-    $$0154233 = $$0154234;$94 = 1;
-    label = 20;
-   } else {
-    $42 = (($0) + ($20<<2)|0);
-    (__gcry_mpih_sub_n($42,$2,$24,$20)|0);
-    $$1 = $$0154234;$43 = $42;$95 = 1;
-   }
-  }
- } while(0);
- if ((label|0) == 20) {
-  $40 = (($0) + ($20<<2)|0);
-  (__gcry_mpih_sub_n($40,$24,$2,$20)|0);
-  $41 = $$0154233 ^ 1;
-  $$1 = $41;$43 = $40;$95 = $94;
- }
- if ($21) {
-  _mul_n_basecase($4,$0,$43,$20);
- } else {
-  $44 = (($4) + ($3<<2)|0);
-  _mul_n($4,$0,$43,$20,$44);
- }
- if ($95) {
-  $45 = (($0) + ($20<<2)|0);
-  $$0153201 = 0;
-  while(1) {
-   $46 = (($22) + ($$0153201<<2)|0);
-   $47 = HEAP32[$46>>2]|0;
-   $48 = (($45) + ($$0153201<<2)|0);
-   HEAP32[$48>>2] = $47;
-   $49 = (($$0153201) + 1)|0;
-   $50 = ($49|0)<($20|0);
-   if ($50) {
-    $$0153201 = $49;
-   } else {
-    break;
-   }
-  }
- }
- $51 = (($22) + ($20<<2)|0);
- $52 = (__gcry_mpih_add_n($22,$22,$51,$20)|0);
- $53 = ($$1|0)==(0);
- if ($53) {
-  $56 = (__gcry_mpih_add_n($43,$43,$4,$3)|0);
-  $57 = (($56) + ($52))|0;
-  $$0155 = $57;
- } else {
-  $54 = (__gcry_mpih_sub_n($43,$43,$4,$3)|0);
-  $55 = (($52) - ($54))|0;
-  $$0155 = $55;
- }
- if ($21) {
-  _mul_n_basecase($4,$1,$2,$20);
- } else {
-  $58 = (($4) + ($3<<2)|0);
-  _mul_n($4,$1,$2,$20,$58);
- }
- $59 = (__gcry_mpih_add_n($43,$43,$4,$3)|0);
- $60 = (($59) + ($$0155))|0;
- $61 = ($60|0)==(0);
- L49: do {
-  if (!($61)) {
-   $62 = (($0) + ($20<<2)|0);
-   $63 = (($62) + ($3<<2)|0);
-   $64 = HEAP32[$63>>2]|0;
-   $65 = (($64) + ($60))|0;
-   HEAP32[$63>>2] = $65;
-   $66 = ($65>>>0)<($64>>>0);
-   if ($66) {
-    $67 = (($20) + -1)|0;
-    $68 = ($67|0)==(0);
-    if (!($68)) {
-     $$pn232 = $63;$70 = $67;
-     while(1) {
-      $$02637$i157 = ((($$pn232)) + 4|0);
-      $72 = HEAP32[$$02637$i157>>2]|0;
-      $73 = (($72) + 1)|0;
-      HEAP32[$$02637$i157>>2] = $73;
-      $74 = ($73|0)==(0);
-      if (!($74)) {
-       break L49;
-      }
-      $69 = (($70) + -1)|0;
-      $71 = ($69|0)==(0);
-      if ($71) {
-       break;
-      } else {
-       $$pn232 = $$02637$i157;$70 = $69;
-      }
-     }
-    }
-   }
-  }
- } while(0);
- if ($95) {
-  $$0200 = 0;
-  while(1) {
-   $75 = (($4) + ($$0200<<2)|0);
-   $76 = HEAP32[$75>>2]|0;
-   $77 = (($0) + ($$0200<<2)|0);
-   HEAP32[$77>>2] = $76;
-   $78 = (($$0200) + 1)|0;
-   $79 = ($78|0)<($20|0);
-   if ($79) {
-    $$0200 = $78;
-   } else {
-    break;
-   }
-  }
- }
- $80 = (($4) + ($20<<2)|0);
- $81 = (__gcry_mpih_add_n($43,$43,$80,$20)|0);
- $82 = ($81|0)==(0);
- if ($82) {
-  return;
- }
- $83 = HEAP32[$22>>2]|0;
- $84 = (($83) + 1)|0;
- HEAP32[$22>>2] = $84;
- $85 = ($83|0)==(-1);
- if (!($85)) {
-  return;
- }
- $86 = (($3) + -1)|0;
- $87 = ($86|0)==(0);
- if ($87) {
-  return;
- }
- $$pn = $22;$89 = $86;
- while(1) {
-  $$02637$i = ((($$pn)) + 4|0);
-  $91 = HEAP32[$$02637$i>>2]|0;
-  $92 = (($91) + 1)|0;
-  HEAP32[$$02637$i>>2] = $92;
-  $93 = ($92|0)==(0);
-  if (!($93)) {
-   label = 49;
-   break;
-  }
-  $88 = (($89) + -1)|0;
-  $90 = ($88|0)==(0);
-  if ($90) {
-   label = 49;
-   break;
-  } else {
-   $$pn = $$02637$i;$89 = $88;
-  }
- }
- if ((label|0) == 49) {
-  return;
- }
-}
-function __gcry_mpih_mul_karatsuba_case($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$0$us = 0, $$02637$i = 0, $$02637$i96 = 0, $$02637$i96$us = 0, 
$$02836$i = 0, $$02836$i97 = 0, $$02836$i97$us = 0, $$035$i = 0, $$035$i103 = 
0, $$035$i103$us = 0, $$090 = 0, $$090$us = 0, $$092 = 0, $$092$us = 0, $$1 = 
0, $$1$i = 0, $$1$i100 = 0, $$1$i100$us = 0, $$127$i = 0;
- var $$127$i99 = 0, $$127$i99$us = 0, $$129$i = 0, $$129$i98 = 0, $$129$i98$us 
= 0, $$191 = 0, $$193 = 0, $$pre = 0, $$pre$phi155Z2D = 0, $$pre$phiZ2D = 0, 
$$pre154 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0;
- var $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 
= 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0;
- var $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 
= 0, $140 = 0, $15 = 0, $16 = 0, $17 = 0;
- var $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 
0, $55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond$i = 0, 
$exitcond$i104 = 0, $exitcond$i104$us = 0, $phitmp = 0, $phitmp94 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $6 = ((($5)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $$pre = ((($5)) + 8|0);
-  $$pre$phiZ2D = $$pre;
-  label = 5;
- } else {
-  $9 = ((($5)) + 12|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)<($4|0);
-  if ($11) {
-   $12 = ((($5)) + 8|0);
-   $13 = HEAP32[$12>>2]|0;
-   __gcry_mpi_free_limb_space($7,$13);
-   $$pre$phiZ2D = $12;
-   label = 5;
-  } else {
-   $23 = $7;
-  }
- }
- if ((label|0) == 5) {
-  $14 = $4 << 1;
-  HEAP32[$$pre$phiZ2D>>2] = $14;
-  $15 = (__gcry_is_secure($1)|0);
-  $16 = ($15|0)==(0);
-  if ($16) {
-   $17 = (__gcry_is_secure($3)|0);
-   $18 = ($17|0)!=(0);
-   $phitmp = $18&1;
-   $19 = $phitmp;
-  } else {
-   $19 = 1;
-  }
-  $20 = (__gcry_mpi_alloc_limb_space($14,$19)|0);
-  HEAP32[$6>>2] = $20;
-  $21 = ((($5)) + 12|0);
-  HEAP32[$21>>2] = $4;
-  $23 = $20;
- }
- $22 = ($4|0)<(16);
- if ($22) {
-  _mul_n_basecase($0,$1,$3,$4);
- } else {
-  _mul_n($0,$1,$3,$4,$23);
- }
- $24 = (($0) + ($4<<2)|0);
- $25 = (($1) + ($4<<2)|0);
- $26 = (($2) - ($4))|0;
- $27 = ($26|0)<($4|0);
- if ($27) {
-  $$1 = $24;$$191 = $25;$$193 = $26;
- } else {
-  $28 = ((($5)) + 16|0);
-  $29 = HEAP32[$28>>2]|0;
-  $30 = ($29|0)==(0|0);
-  if ($30) {
-   $$pre154 = ((($5)) + 20|0);
-   $$pre$phi155Z2D = $$pre154;
-   label = 16;
-  } else {
-   $31 = ((($5)) + 24|0);
-   $32 = HEAP32[$31>>2]|0;
-   $33 = ($32|0)<($4|0);
-   if ($33) {
-    $34 = ((($5)) + 20|0);
-    $35 = HEAP32[$34>>2]|0;
-    __gcry_mpi_free_limb_space($29,$35);
-    $$pre$phi155Z2D = $34;
-    label = 16;
-   } else {
-    $140 = $29;
-   }
-  }
-  if ((label|0) == 16) {
-   $36 = $4 << 1;
-   HEAP32[$$pre$phi155Z2D>>2] = $36;
-   $37 = (__gcry_is_secure($25)|0);
-   $38 = ($37|0)==(0);
-   if ($38) {
-    $39 = (__gcry_is_secure($3)|0);
-    $40 = ($39|0)!=(0);
-    $phitmp94 = $40&1;
-    $41 = $phitmp94;
-   } else {
-    $41 = 1;
-   }
-   $42 = (__gcry_mpi_alloc_limb_space($36,$41)|0);
-   HEAP32[$28>>2] = $42;
-   $43 = ((($5)) + 24|0);
-   HEAP32[$43>>2] = $4;
-   $140 = $42;
-  }
-  $44 = (($4) + -1)|0;
-  $45 = ($44|0)==(0);
-  if ($22) {
-   $$0$us = $24;$$090$us = $25;$$092$us = $26;$46 = $140;
-   while(1) {
-    _mul_n_basecase($46,$$090$us,$3,$4);
-    $47 = HEAP32[$28>>2]|0;
-    $48 = (__gcry_mpih_add_n($$0$us,$$0$us,$47,$4)|0);
-    $49 = (($$0$us) + ($4<<2)|0);
-    $50 = HEAP32[$28>>2]|0;
-    $51 = (($50) + ($4<<2)|0);
-    $52 = ((($51)) + 4|0);
-    $53 = HEAP32[$51>>2]|0;
-    $54 = (($53) + ($48))|0;
-    $55 = ((($49)) + 4|0);
-    HEAP32[$49>>2] = $54;
-    $56 = ($54>>>0)<($53>>>0);
-    L31: do {
-     if ($56) {
-      if (!($45)) {
-       $$02637$i96$us = $52;$$02836$i97$us = $55;$70 = $44;
-       while(1) {
-        $57 = ((($$02637$i96$us)) + 4|0);
-        $58 = HEAP32[$$02637$i96$us>>2]|0;
-        $59 = (($58) + 1)|0;
-        $60 = ((($$02836$i97$us)) + 4|0);
-        HEAP32[$$02836$i97$us>>2] = $59;
-        $61 = ($59|0)==(0);
-        if (!($61)) {
-         $$1$i100$us = $70;$$127$i99$us = $57;$$129$i98$us = $60;
-         label = 26;
-         break L31;
-        }
-        $69 = (($70) + -1)|0;
-        $71 = ($69|0)==(0);
-        if ($71) {
-         break;
-        } else {
-         $$02637$i96$us = $57;$$02836$i97$us = $60;$70 = $69;
-        }
-       }
-      }
-     } else {
-      $$1$i100$us = $4;$$127$i99$us = $52;$$129$i98$us = $55;
-      label = 26;
-     }
-    } while(0);
-    if ((label|0) == 26) {
-     label = 0;
-     $62 = ($$129$i98$us|0)==($$127$i99$us|0);
-     if (!($62)) {
-      $63 = (($$1$i100$us) + -1)|0;
-      $64 = ($$1$i100$us|0)>(1);
-      if ($64) {
-       $$035$i103$us = 0;
-       while(1) {
-        $65 = (($$127$i99$us) + ($$035$i103$us<<2)|0);
-        $66 = HEAP32[$65>>2]|0;
-        $67 = (($$129$i98$us) + ($$035$i103$us<<2)|0);
-        HEAP32[$67>>2] = $66;
-        $68 = (($$035$i103$us) + 1)|0;
-        $exitcond$i104$us = ($68|0)==($63|0);
-        if ($exitcond$i104$us) {
-         break;
-        } else {
-         $$035$i103$us = $68;
-        }
-       }
-      }
-     }
-    }
-    $72 = (($$090$us) + ($4<<2)|0);
-    $73 = (($$092$us) - ($4))|0;
-    $74 = ($73|0)<($4|0);
-    if ($74) {
-     $$1 = $49;$$191 = $72;$$193 = $73;
-     break;
-    } else {
-     $$0$us = $49;$$090$us = $72;$$092$us = $73;$46 = $50;
-    }
-   }
-  } else {
-   $$0 = $24;$$090 = $25;$$092 = $26;$76 = $140;
-   while(1) {
-    $75 = HEAP32[$6>>2]|0;
-    _mul_n($76,$$090,$3,$4,$75);
-    $77 = HEAP32[$28>>2]|0;
-    $78 = (__gcry_mpih_add_n($$0,$$0,$77,$4)|0);
-    $79 = (($$0) + ($4<<2)|0);
-    $80 = HEAP32[$28>>2]|0;
-    $81 = (($80) + ($4<<2)|0);
-    $82 = ((($81)) + 4|0);
-    $83 = HEAP32[$81>>2]|0;
-    $84 = (($83) + ($78))|0;
-    $85 = ((($79)) + 4|0);
-    HEAP32[$79>>2] = $84;
-    $86 = ($84>>>0)<($83>>>0);
-    L47: do {
-     if ($86) {
-      if (!($45)) {
-       $$02637$i96 = $82;$$02836$i97 = $85;$88 = $44;
-       while(1) {
-        $90 = ((($$02637$i96)) + 4|0);
-        $91 = HEAP32[$$02637$i96>>2]|0;
-        $92 = (($91) + 1)|0;
-        $93 = ((($$02836$i97)) + 4|0);
-        HEAP32[$$02836$i97>>2] = $92;
-        $94 = ($92|0)==(0);
-        if (!($94)) {
-         $$1$i100 = $88;$$127$i99 = $90;$$129$i98 = $93;
-         label = 37;
-         break L47;
-        }
-        $87 = (($88) + -1)|0;
-        $89 = ($87|0)==(0);
-        if ($89) {
-         break;
-        } else {
-         $$02637$i96 = $90;$$02836$i97 = $93;$88 = $87;
-        }
-       }
-      }
-     } else {
-      $$1$i100 = $4;$$127$i99 = $82;$$129$i98 = $85;
-      label = 37;
-     }
-    } while(0);
-    if ((label|0) == 37) {
-     label = 0;
-     $95 = ($$129$i98|0)==($$127$i99|0);
-     if (!($95)) {
-      $96 = (($$1$i100) + -1)|0;
-      $97 = ($$1$i100|0)>(1);
-      if ($97) {
-       $$035$i103 = 0;
-       while(1) {
-        $98 = (($$127$i99) + ($$035$i103<<2)|0);
-        $99 = HEAP32[$98>>2]|0;
-        $100 = (($$129$i98) + ($$035$i103<<2)|0);
-        HEAP32[$100>>2] = $99;
-        $101 = (($$035$i103) + 1)|0;
-        $exitcond$i104 = ($101|0)==($96|0);
-        if ($exitcond$i104) {
-         break;
-        } else {
-         $$035$i103 = $101;
-        }
-       }
-      }
-     }
-    }
-    $102 = (($$090) + ($4<<2)|0);
-    $103 = (($$092) - ($4))|0;
-    $104 = ($103|0)<($4|0);
-    if ($104) {
-     $$1 = $79;$$191 = $102;$$193 = $103;
-     break;
-    } else {
-     $$0 = $79;$$090 = $102;$$092 = $103;$76 = $80;
-    }
-   }
-  }
- }
- $105 = ($$193|0)==(0);
- if ($105) {
-  return;
- }
- $106 = ($$193|0)<(16);
- if ($106) {
-  $107 = HEAP32[$6>>2]|0;
-  (__gcry_mpih_mul($107,$3,$4,$$191,$$193)|0);
- } else {
-  $108 = HEAP32[$5>>2]|0;
-  $109 = ($108|0)==(0|0);
-  if ($109) {
-   $110 = (__gcry_xcalloc(1,28)|0);
-   HEAP32[$5>>2] = $110;
-   $112 = $110;
-  } else {
-   $112 = $108;
-  }
-  $111 = HEAP32[$6>>2]|0;
-  __gcry_mpih_mul_karatsuba_case($111,$3,$4,$$191,$$193,$112);
- }
- $113 = HEAP32[$6>>2]|0;
- $114 = (__gcry_mpih_add_n($$1,$$1,$113,$4)|0);
- $115 = (($$1) + ($4<<2)|0);
- $116 = HEAP32[$6>>2]|0;
- $117 = (($116) + ($4<<2)|0);
- $118 = ((($117)) + 4|0);
- $119 = HEAP32[$117>>2]|0;
- $120 = (($119) + ($114))|0;
- $121 = ((($115)) + 4|0);
- HEAP32[$115>>2] = $120;
- $122 = ($120>>>0)<($119>>>0);
- L71: do {
-  if ($122) {
-   $123 = (($$193) + -1)|0;
-   $124 = ($123|0)==(0);
-   if ($124) {
-    return;
-   }
-   $$02637$i = $118;$$02836$i = $121;$126 = $123;
-   while(1) {
-    $128 = ((($$02637$i)) + 4|0);
-    $129 = HEAP32[$$02637$i>>2]|0;
-    $130 = (($129) + 1)|0;
-    $131 = ((($$02836$i)) + 4|0);
-    HEAP32[$$02836$i>>2] = $130;
-    $132 = ($130|0)==(0);
-    if (!($132)) {
-     $$1$i = $126;$$127$i = $128;$$129$i = $131;
-     break L71;
-    }
-    $125 = (($126) + -1)|0;
-    $127 = ($125|0)==(0);
-    if ($127) {
-     break;
-    } else {
-     $$02637$i = $128;$$02836$i = $131;$126 = $125;
-    }
-   }
-   return;
-  } else {
-   $$1$i = $$193;$$127$i = $118;$$129$i = $121;
-  }
- } while(0);
- $133 = ($$129$i|0)==($$127$i|0);
- if ($133) {
-  return;
- }
- $134 = (($$1$i) + -1)|0;
- $135 = ($$1$i|0)>(1);
- if (!($135)) {
-  return;
- }
- $$035$i = 0;
- while(1) {
-  $136 = (($$127$i) + ($$035$i<<2)|0);
-  $137 = HEAP32[$136>>2]|0;
-  $138 = (($$129$i) + ($$035$i<<2)|0);
-  HEAP32[$138>>2] = $137;
-  $139 = (($$035$i) + 1)|0;
-  $exitcond$i = ($139|0)==($134|0);
-  if ($exitcond$i) {
-   break;
-  } else {
-   $$035$i = $139;
-  }
- }
- return;
-}
-function __gcry_mpih_mul($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$06576 = 0, $$06674 = 0, $$067 = 0, $$07075 = 0, $$169 = 0, $$2 = 0, 
$$in$i = 0, $$pn = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, $exitcond = 0, $exitcond81 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $5 = sp;
- $6 = (($0) + ($2<<2)|0);
- $7 = ($4|0)<(16);
- if (!($7)) {
-  $28 = (($6) + ($4<<2)|0);
-  $29 = ((($28)) + -4|0);
-  
;HEAP32[$5>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;HEAP32[$5+12>>2]=0|0;HEAP32[$5+16>>2]=0|0;HEAP32[$5+20>>2]=0|0;HEAP32[$5+24>>2]=0|0;
-  __gcry_mpih_mul_karatsuba_case($0,$1,$2,$3,$4,$5);
-  $30 = ((($5)) + 16|0);
-  $31 = HEAP32[$30>>2]|0;
-  $32 = ($31|0)==(0|0);
-  if (!($32)) {
-   $33 = ((($5)) + 20|0);
-   $34 = HEAP32[$33>>2]|0;
-   __gcry_mpi_free_limb_space($31,$34);
-  }
-  $35 = ((($5)) + 4|0);
-  $36 = HEAP32[$35>>2]|0;
-  $37 = ($36|0)==(0|0);
-  if (!($37)) {
-   $38 = ((($5)) + 8|0);
-   $39 = HEAP32[$38>>2]|0;
-   __gcry_mpi_free_limb_space($36,$39);
-  }
-  $40 = HEAP32[$5>>2]|0;
-  $41 = ($40|0)==(0|0);
-  if (!($41)) {
-   $$in$i = $40;
-   while(1) {
-    $42 = HEAP32[$$in$i>>2]|0;
-    $43 = ((($$in$i)) + 16|0);
-    $44 = HEAP32[$43>>2]|0;
-    $45 = ($44|0)==(0|0);
-    if (!($45)) {
-     $46 = ((($$in$i)) + 20|0);
-     $47 = HEAP32[$46>>2]|0;
-     __gcry_mpi_free_limb_space($44,$47);
-    }
-    $48 = ((($$in$i)) + 4|0);
-    $49 = HEAP32[$48>>2]|0;
-    $50 = ($49|0)==(0|0);
-    if (!($50)) {
-     $51 = ((($$in$i)) + 8|0);
-     $52 = HEAP32[$51>>2]|0;
-     __gcry_mpi_free_limb_space($49,$52);
-    }
-    __gcry_free($$in$i);
-    $53 = ($42|0)==(0|0);
-    if ($53) {
-     break;
-    } else {
-     $$in$i = $42;
-    }
-   }
-  }
-  $54 = HEAP32[$29>>2]|0;
-  $$169 = $54;
-  STACKTOP = sp;return ($$169|0);
- }
- $8 = ($4|0)==(0);
- if ($8) {
-  $$169 = 0;
-  STACKTOP = sp;return ($$169|0);
- }
- $9 = HEAP32[$3>>2]|0;
- $10 = ($9>>>0)<(2);
- do {
-  if ($10) {
-   $11 = ($9|0)==(1);
-   $12 = ($2|0)>(0);
-   if (!($11)) {
-    if (!($12)) {
-     $$067 = 0;
-     break;
-    }
-    $17 = $2 << 2;
-    _memset(($0|0),0,($17|0))|0;
-    $$067 = 0;
-    break;
-   }
-   if ($12) {
-    $$06576 = 0;
-    while(1) {
-     $13 = (($1) + ($$06576<<2)|0);
-     $14 = HEAP32[$13>>2]|0;
-     $15 = (($0) + ($$06576<<2)|0);
-     HEAP32[$15>>2] = $14;
-     $16 = (($$06576) + 1)|0;
-     $exitcond81 = ($16|0)==($2|0);
-     if ($exitcond81) {
-      $$067 = 0;
-      break;
-     } else {
-      $$06576 = $16;
-     }
-    }
-   } else {
-    $$067 = 0;
-   }
-  } else {
-   $18 = (__gcry_mpih_mul_1($0,$1,$2,$9)|0);
-   $$067 = $18;
-  }
- } while(0);
- HEAP32[$6>>2] = $$067;
- $19 = ($4|0)>(1);
- if (!($19)) {
-  $$169 = $$067;
-  STACKTOP = sp;return ($$169|0);
- }
- $$06674 = 1;$$pn = $0;
- while(1) {
-  $$07075 = ((($$pn)) + 4|0);
-  $20 = (($3) + ($$06674<<2)|0);
-  $21 = HEAP32[$20>>2]|0;
-  $22 = ($21>>>0)<(2);
-  if ($22) {
-   $23 = ($21|0)==(1);
-   if ($23) {
-    $24 = (__gcry_mpih_add_n($$07075,$$07075,$1,$2)|0);
-    $$2 = $24;
-   } else {
-    $$2 = 0;
-   }
-  } else {
-   $25 = (__gcry_mpih_addmul_1($$07075,$1,$2,$21)|0);
-   $$2 = $25;
-  }
-  $26 = (($$07075) + ($2<<2)|0);
-  HEAP32[$26>>2] = $$2;
-  $27 = (($$06674) + 1)|0;
-  $exitcond = ($27|0)==($4|0);
-  if ($exitcond) {
-   $$169 = $$2;
-   break;
-  } else {
-   $$06674 = $27;$$pn = $$07075;
-  }
- }
- STACKTOP = sp;return ($$169|0);
-}
-function __gcry_mpih_release_karatsuba_ctx($0) {
- $0 = $0|0;
- var $$in = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $3 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 16|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)==(0|0);
- if (!($3)) {
-  $4 = ((($0)) + 20|0);
-  $5 = HEAP32[$4>>2]|0;
-  __gcry_mpi_free_limb_space($2,$5);
- }
- $6 = ((($0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if (!($8)) {
-  $9 = ((($0)) + 8|0);
-  $10 = HEAP32[$9>>2]|0;
-  __gcry_mpi_free_limb_space($7,$10);
- }
- $11 = HEAP32[$0>>2]|0;
- $12 = ($11|0)==(0|0);
- if ($12) {
-  return;
- }
- $$in = $11;
- while(1) {
-  $13 = HEAP32[$$in>>2]|0;
-  $14 = ((($$in)) + 16|0);
-  $15 = HEAP32[$14>>2]|0;
-  $16 = ($15|0)==(0|0);
-  if (!($16)) {
-   $17 = ((($$in)) + 20|0);
-   $18 = HEAP32[$17>>2]|0;
-   __gcry_mpi_free_limb_space($15,$18);
-  }
-  $19 = ((($$in)) + 4|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ($20|0)==(0|0);
-  if (!($21)) {
-   $22 = ((($$in)) + 8|0);
-   $23 = HEAP32[$22>>2]|0;
-   __gcry_mpi_free_limb_space($20,$23);
-  }
-  __gcry_free($$in);
-  $24 = ($13|0)==(0|0);
-  if ($24) {
-   break;
-  } else {
-   $$in = $13;
-  }
- }
- return;
-}
-function __gcry_mpih_rshift($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$lcssa = 0, $$034$lcssa = 0, $$03435 = 0, $$036 = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0, $exitcond = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $4 = ((($0)) + -4|0);
- $5 = (32 - ($3))|0;
- $6 = HEAP32[$1>>2]|0;
- $7 = $6 << $5;
- $8 = ($2|0)>(1);
- if ($8) {
-  $$03435 = $6;$$036 = 1;
-  while(1) {
-   $9 = (($1) + ($$036<<2)|0);
-   $10 = HEAP32[$9>>2]|0;
-   $11 = $$03435 >>> $3;
-   $12 = $10 << $5;
-   $13 = $12 | $11;
-   $14 = (($4) + ($$036<<2)|0);
-   HEAP32[$14>>2] = $13;
-   $15 = (($$036) + 1)|0;
-   $exitcond = ($15|0)==($2|0);
-   if ($exitcond) {
-    $$0$lcssa = $2;$$034$lcssa = $10;
-    break;
-   } else {
-    $$03435 = $10;$$036 = $15;
-   }
-  }
- } else {
-  $$0$lcssa = 1;$$034$lcssa = $6;
- }
- $16 = $$034$lcssa >>> $3;
- $17 = (($4) + ($$0$lcssa<<2)|0);
- HEAP32[$17>>2] = $16;
- return ($7|0);
-}
-function __gcry_mpih_sub_n($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$031 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (0 - ($3))|0;
- $5 = (($1) + ($3<<2)|0);
- $6 = (($2) + ($3<<2)|0);
- $7 = (($0) + ($3<<2)|0);
- $$0 = $4;$$031 = 0;
- while(1) {
-  $8 = (($6) + ($$0<<2)|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = (($5) + ($$0<<2)|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (($9) + ($$031))|0;
-  $13 = ($12>>>0)<($$031>>>0);
-  $14 = $13&1;
-  $15 = (($11) - ($12))|0;
-  $16 = ($15>>>0)>($11>>>0);
-  $17 = $16&1;
-  $18 = (($17) + ($14))|0;
-  $19 = (($7) + ($$0<<2)|0);
-  HEAP32[$19>>2] = $15;
-  $20 = (($$0) + 1)|0;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   break;
-  } else {
-   $$0 = $20;$$031 = $18;
-  }
- }
- return ($18|0);
-}
-function __gcry_mpi_get_hw_config() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ((15041)|0);
-}
-function __gcry_mpi_init() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $0 = (__gcry_xmalloc(20)|0);
- $1 = (__gcry_xmalloc(4)|0);
- $2 = ((($0)) + 16|0);
- HEAP32[$2>>2] = $1;
- HEAP32[$0>>2] = 1;
- $3 = ((($0)) + 4|0);
- $4 = ((($0)) + 8|0);
- $5 = ((($0)) + 12|0);
- HEAP32[$1>>2] = 0;
- HEAP32[$3>>2] = 0;
- HEAP32[$4>>2] = 0;
- HEAP32[17788] = $0;
- HEAP32[$5>>2] = 48;
- $6 = (__gcry_xmalloc(20)|0);
- $7 = (__gcry_xmalloc(4)|0);
- $8 = ((($6)) + 16|0);
- HEAP32[$8>>2] = $7;
- HEAP32[$6>>2] = 1;
- $9 = ((($6)) + 4|0);
- $10 = ((($6)) + 8|0);
- $11 = ((($6)) + 12|0);
- HEAP32[$7>>2] = 1;
- HEAP32[$9>>2] = 1;
- HEAP32[$10>>2] = 0;
- HEAP32[(71156)>>2] = $6;
- HEAP32[$11>>2] = 48;
- $12 = (__gcry_xmalloc(20)|0);
- $13 = (__gcry_xmalloc(4)|0);
- $14 = ((($12)) + 16|0);
- HEAP32[$14>>2] = $13;
- HEAP32[$12>>2] = 1;
- $15 = ((($12)) + 4|0);
- $16 = ((($12)) + 8|0);
- $17 = ((($12)) + 12|0);
- HEAP32[$13>>2] = 2;
- HEAP32[$15>>2] = 1;
- HEAP32[$16>>2] = 0;
- HEAP32[(71160)>>2] = $12;
- HEAP32[$17>>2] = 48;
- $18 = (__gcry_xmalloc(20)|0);
- $19 = (__gcry_xmalloc(4)|0);
- $20 = ((($18)) + 16|0);
- HEAP32[$20>>2] = $19;
- HEAP32[$18>>2] = 1;
- $21 = ((($18)) + 4|0);
- $22 = ((($18)) + 8|0);
- $23 = ((($18)) + 12|0);
- HEAP32[$19>>2] = 3;
- HEAP32[$21>>2] = 1;
- HEAP32[$22>>2] = 0;
- HEAP32[(71164)>>2] = $18;
- HEAP32[$23>>2] = 48;
- $24 = (__gcry_xmalloc(20)|0);
- $25 = (__gcry_xmalloc(4)|0);
- $26 = ((($24)) + 16|0);
- HEAP32[$26>>2] = $25;
- HEAP32[$24>>2] = 1;
- $27 = ((($24)) + 4|0);
- $28 = ((($24)) + 8|0);
- $29 = ((($24)) + 12|0);
- HEAP32[$25>>2] = 4;
- HEAP32[$27>>2] = 1;
- HEAP32[$28>>2] = 0;
- HEAP32[(71168)>>2] = $24;
- HEAP32[$29>>2] = 48;
- $30 = (__gcry_xmalloc(20)|0);
- $31 = (__gcry_xmalloc(4)|0);
- $32 = ((($30)) + 16|0);
- HEAP32[$32>>2] = $31;
- HEAP32[$30>>2] = 1;
- $33 = ((($30)) + 4|0);
- $34 = ((($30)) + 8|0);
- $35 = ((($30)) + 12|0);
- HEAP32[$31>>2] = 8;
- HEAP32[$33>>2] = 1;
- HEAP32[$34>>2] = 0;
- HEAP32[(71172)>>2] = $30;
- HEAP32[$35>>2] = 48;
- return 0;
-}
-function __gcry_mpi_alloc_set_ui($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_xmalloc(20)|0);
- $2 = (__gcry_xmalloc(4)|0);
- $3 = ((($1)) + 16|0);
- HEAP32[$3>>2] = $2;
- HEAP32[$1>>2] = 1;
- $4 = ((($1)) + 4|0);
- $5 = ((($1)) + 8|0);
- $6 = ((($1)) + 12|0);
- HEAP32[$6>>2] = 0;
- HEAP32[$2>>2] = $0;
- $7 = ($0|0)!=(0);
- $8 = $7&1;
- HEAP32[$4>>2] = $8;
- HEAP32[$5>>2] = 0;
- return ($1|0);
-}
-function __gcry_mpi_alloc($0) {
- $0 = $0|0;
- var $$op$i = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_xmalloc(20)|0);
- $2 = ($0|0)==(0);
- if ($2) {
-  $5 = 0;
- } else {
-  $$op$i = $0 << 2;
-  $3 = (__gcry_xmalloc($$op$i)|0);
-  $5 = $3;
- }
- $4 = ((($1)) + 16|0);
- HEAP32[$4>>2] = $5;
- HEAP32[$1>>2] = $0;
- $6 = ((($1)) + 4|0);
- HEAP32[$6>>2] = 0;
- $7 = ((($1)) + 8|0);
- HEAP32[$7>>2] = 0;
- $8 = ((($1)) + 12|0);
- HEAP32[$8>>2] = 0;
- return ($1|0);
-}
-function __gcry_mpi_alloc_limb_space($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$op = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $2 = ($0|0)!=(0);
- $$op = $0 << 2;
- $3 = $2 ? $$op : 4;
- $4 = ($1|0)==(0);
- if ($4) {
-  $6 = (__gcry_xmalloc($3)|0);
-  $7 = $6;
- } else {
-  $5 = (__gcry_xmalloc_secure($3)|0);
-  $7 = $5;
- }
- if ($2) {
-  return ($7|0);
- }
- HEAP32[$7>>2] = 0;
- return ($7|0);
-}
-function __gcry_mpi_alloc_secure($0) {
- $0 = $0|0;
- var $$op$i = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gcry_xmalloc(20)|0);
- $2 = ($0|0)==(0);
- if ($2) {
-  $5 = 0;
- } else {
-  $$op$i = $0 << 2;
-  $3 = (__gcry_xmalloc_secure($$op$i)|0);
-  $5 = $3;
- }
- $4 = ((($1)) + 16|0);
- HEAP32[$4>>2] = $5;
- HEAP32[$1>>2] = $0;
- $6 = ((($1)) + 12|0);
- HEAP32[$6>>2] = 1;
- $7 = ((($1)) + 4|0);
- HEAP32[$7>>2] = 0;
- $8 = ((($1)) + 8|0);
- HEAP32[$8>>2] = 0;
- return ($1|0);
-}
-function __gcry_mpi_free_limb_space($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$lcssa = 0, $$036$lcssa = 0, $$03644 = 0, $$045 = 0, $$1 = 0, $$137 = 
0, $$2 = 0, $$238 = 0, $$33942 = 0, $$343 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, $scevgep = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  return;
- }
- $3 = $1 << 2;
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = $0;
-  $6 = $5 & 7;
-  $7 = ($6|0)==(0);
-  if ($7) {
-   $$0$lcssa = $0;$$036$lcssa = $3;
-  } else {
-   $$03644 = $3;$$045 = $0;
-   while(1) {
-    HEAP8[$$045>>0] = 0;
-    $8 = ((($$045)) + 1|0);
-    $9 = (($$03644) + -1)|0;
-    $10 = $8;
-    $11 = $10 & 7;
-    $12 = ($11|0)!=(0);
-    $13 = ($9|0)!=(0);
-    $14 = $13 & $12;
-    if ($14) {
-     $$03644 = $9;$$045 = $8;
-    } else {
-     $$0$lcssa = $8;$$036$lcssa = $9;
-     break;
-    }
-   }
-  }
-  $15 = ($$036$lcssa>>>0)<(8);
-  if ($15) {
-   $$2 = $$0$lcssa;$$238 = $$036$lcssa;
-  } else {
-   $16 = (($$036$lcssa) + -8)|0;
-   $17 = $16 & -8;
-   $18 = (($17) + 8)|0;
-   $$1 = $$0$lcssa;$$137 = $$036$lcssa;
-   while(1) {
-    $19 = $$1;
-    $20 = $19;
-    HEAP32[$20>>2] = 0;
-    $21 = (($19) + 4)|0;
-    $22 = $21;
-    HEAP32[$22>>2] = 0;
-    $23 = (($$137) + -8)|0;
-    $24 = ((($$1)) + 8|0);
-    $25 = ($23>>>0)>(7);
-    if ($25) {
-     $$1 = $24;$$137 = $23;
-    } else {
-     break;
-    }
-   }
-   $26 = (($16) - ($17))|0;
-   $scevgep = (($$0$lcssa) + ($18)|0);
-   $$2 = $scevgep;$$238 = $26;
-  }
-  $27 = ($$238|0)==(0);
-  if (!($27)) {
-   $$33942 = $$238;$$343 = $$2;
-   while(1) {
-    HEAP8[$$343>>0] = 0;
-    $28 = ((($$343)) + 1|0);
-    $29 = (($$33942) + -1)|0;
-    $30 = ($29|0)==(0);
-    if ($30) {
-     break;
-    } else {
-     $$33942 = $29;$$343 = $28;
-    }
-   }
-  }
- }
- __gcry_free($0);
- return;
-}
-function __gcry_mpi_assign_limb_space($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa$i = 0, $$036$lcssa$i = 0, $$03644$i = 0, $$045$i = 0, $$1$i = 
0, $$137$i = 0, $$2$i = 0, $$238$i = 0, $$33942$i = 0, $$343$i = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $scevgep$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 16|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)==(0|0);
- if ($5) {
-  HEAP32[$3>>2] = $1;
-  HEAP32[$0>>2] = $2;
-  return;
- }
- $6 = HEAP32[$0>>2]|0;
- $7 = $6 << 2;
- $8 = ($7|0)==(0);
- if (!($8)) {
-  $9 = $4;
-  $10 = $9 & 7;
-  $11 = ($10|0)==(0);
-  if ($11) {
-   $$0$lcssa$i = $4;$$036$lcssa$i = $7;
-  } else {
-   $$03644$i = $7;$$045$i = $4;
-   while(1) {
-    HEAP8[$$045$i>>0] = 0;
-    $12 = ((($$045$i)) + 1|0);
-    $13 = (($$03644$i) + -1)|0;
-    $14 = $12;
-    $15 = $14 & 7;
-    $16 = ($15|0)!=(0);
-    $17 = ($13|0)!=(0);
-    $18 = $17 & $16;
-    if ($18) {
-     $$03644$i = $13;$$045$i = $12;
-    } else {
-     $$0$lcssa$i = $12;$$036$lcssa$i = $13;
-     break;
-    }
-   }
-  }
-  $19 = ($$036$lcssa$i>>>0)<(8);
-  if ($19) {
-   $$2$i = $$0$lcssa$i;$$238$i = $$036$lcssa$i;
-  } else {
-   $20 = (($$036$lcssa$i) + -8)|0;
-   $21 = $20 & -8;
-   $$1$i = $$0$lcssa$i;$$137$i = $$036$lcssa$i;
-   while(1) {
-    $22 = $$1$i;
-    $23 = $22;
-    HEAP32[$23>>2] = 0;
-    $24 = (($22) + 4)|0;
-    $25 = $24;
-    HEAP32[$25>>2] = 0;
-    $26 = (($$137$i) + -8)|0;
-    $27 = ((($$1$i)) + 8|0);
-    $28 = ($26>>>0)>(7);
-    if ($28) {
-     $$1$i = $27;$$137$i = $26;
-    } else {
-     break;
-    }
-   }
-   $29 = (($21) + 8)|0;
-   $30 = (($20) - ($21))|0;
-   $scevgep$i = (($$0$lcssa$i) + ($29)|0);
-   $$2$i = $scevgep$i;$$238$i = $30;
-  }
-  $31 = ($$238$i|0)==(0);
-  if (!($31)) {
-   $$33942$i = $$238$i;$$343$i = $$2$i;
-   while(1) {
-    HEAP8[$$343$i>>0] = 0;
-    $32 = ((($$343$i)) + 1|0);
-    $33 = (($$33942$i) + -1)|0;
-    $34 = ($33|0)==(0);
-    if ($34) {
-     break;
-    } else {
-     $$33942$i = $33;$$343$i = $32;
-    }
-   }
-  }
- }
- __gcry_free($4);
- HEAP32[$3>>2] = $1;
- HEAP32[$0>>2] = $2;
- return;
-}
-function __gcry_mpi_resize($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$024 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $scevgep = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $2 = HEAP32[$0>>2]|0;
- $3 = ($2>>>0)<($1>>>0);
- if (!($3)) {
-  $4 = ((($0)) + 4|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = ($5>>>0)<($2>>>0);
-  if (!($6)) {
-   return;
-  }
-  $7 = ((($0)) + 16|0);
-  $8 = HEAP32[$7>>2]|0;
-  $$024 = $5;
-  while(1) {
-   $9 = (($8) + ($$024<<2)|0);
-   HEAP32[$9>>2] = 0;
-   $10 = (($$024) + 1)|0;
-   $11 = HEAP32[$0>>2]|0;
-   $12 = ($10>>>0)<($11>>>0);
-   if ($12) {
-    $$024 = $10;
-   } else {
-    break;
-   }
-  }
-  return;
- }
- $13 = ((($0)) + 16|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ($14|0)==(0|0);
- do {
-  if ($15) {
-   $22 = ((($0)) + 12|0);
-   $23 = HEAP32[$22>>2]|0;
-   $24 = $23 & 1;
-   $25 = ($24|0)==(0);
-   if ($25) {
-    $27 = (__gcry_xcalloc($1,4)|0);
-    HEAP32[$13>>2] = $27;
-    break;
-   } else {
-    $26 = (__gcry_xcalloc_secure($1,4)|0);
-    HEAP32[$13>>2] = $26;
-    break;
-   }
-  } else {
-   $16 = $1 << 2;
-   $17 = (__gcry_xrealloc($14,$16)|0);
-   HEAP32[$13>>2] = $17;
-   $18 = HEAP32[$0>>2]|0;
-   $19 = ($18>>>0)<($1>>>0);
-   if ($19) {
-    $scevgep = (($17) + ($18<<2)|0);
-    $20 = $18 << 2;
-    $21 = (($16) - ($20))|0;
-    _memset(($scevgep|0),0,($21|0))|0;
-   }
-  }
- } while(0);
- HEAP32[$0>>2] = $1;
- return;
-}
-function __gcry_mpi_clear($0) {
- $0 = $0|0;
- var $$pre = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = ($0|0)==(0|0);
- $$pre = ((($0)) + 12|0);
- if (!($1)) {
-  $2 = HEAP32[$$pre>>2]|0;
-  $3 = $2 & 16;
-  $4 = ($3|0)==(0);
-  if (!($4)) {
-   __gcry_log_info(64098,$vararg_buffer);
-   STACKTOP = sp;return;
-  }
- }
- $5 = ((($0)) + 4|0);
- HEAP32[$5>>2] = 0;
- HEAP32[$$pre>>2] = 0;
- STACKTOP = sp;return;
-}
-function __gcry_mpi_immutable_failed() {
- var $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- __gcry_log_info(64098,$vararg_buffer);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_free($0) {
- $0 = $0|0;
- var $$0$lcssa$i = 0, $$036$lcssa$i = 0, $$03644$i = 0, $$045$i = 0, $$1$i = 
0, $$137$i = 0, $$2$i = 0, $$238$i = 0, $$33942$i = 0, $$343$i = 0, $1 = 0, $10 
= 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, $scevgep$i = 0, $vararg_buffer = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  STACKTOP = sp;return;
- }
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & 32;
- $5 = ($4|0)==(0);
- if (!($5)) {
-  STACKTOP = sp;return;
- }
- $6 = $3 & 4;
- $7 = ($6|0)==(0);
- $8 = ((($0)) + 16|0);
- $9 = HEAP32[$8>>2]|0;
- if ($7) {
-  $10 = ($9|0)==(0|0);
-  if (!($10)) {
-   $11 = HEAP32[$0>>2]|0;
-   $12 = $11 << 2;
-   $13 = ($12|0)==(0);
-   if (!($13)) {
-    $14 = $9;
-    $15 = $14 & 7;
-    $16 = ($15|0)==(0);
-    if ($16) {
-     $$0$lcssa$i = $9;$$036$lcssa$i = $12;
-    } else {
-     $$03644$i = $12;$$045$i = $9;
-     while(1) {
-      HEAP8[$$045$i>>0] = 0;
-      $17 = ((($$045$i)) + 1|0);
-      $18 = (($$03644$i) + -1)|0;
-      $19 = $17;
-      $20 = $19 & 7;
-      $21 = ($20|0)!=(0);
-      $22 = ($18|0)!=(0);
-      $23 = $22 & $21;
-      if ($23) {
-       $$03644$i = $18;$$045$i = $17;
-      } else {
-       $$0$lcssa$i = $17;$$036$lcssa$i = $18;
-       break;
-      }
-     }
-    }
-    $24 = ($$036$lcssa$i>>>0)<(8);
-    if ($24) {
-     $$2$i = $$0$lcssa$i;$$238$i = $$036$lcssa$i;
-    } else {
-     $25 = (($$036$lcssa$i) + -8)|0;
-     $26 = $25 & -8;
-     $$1$i = $$0$lcssa$i;$$137$i = $$036$lcssa$i;
-     while(1) {
-      $27 = $$1$i;
-      $28 = $27;
-      HEAP32[$28>>2] = 0;
-      $29 = (($27) + 4)|0;
-      $30 = $29;
-      HEAP32[$30>>2] = 0;
-      $31 = (($$137$i) + -8)|0;
-      $32 = ((($$1$i)) + 8|0);
-      $33 = ($31>>>0)>(7);
-      if ($33) {
-       $$1$i = $32;$$137$i = $31;
-      } else {
-       break;
-      }
-     }
-     $34 = (($26) + 8)|0;
-     $35 = (($25) - ($26))|0;
-     $scevgep$i = (($$0$lcssa$i) + ($34)|0);
-     $$2$i = $scevgep$i;$$238$i = $35;
-    }
-    $36 = ($$238$i|0)==(0);
-    if (!($36)) {
-     $$33942$i = $$238$i;$$343$i = $$2$i;
-     while(1) {
-      HEAP8[$$343$i>>0] = 0;
-      $37 = ((($$343$i)) + 1|0);
-      $38 = (($$33942$i) + -1)|0;
-      $39 = ($38|0)==(0);
-      if ($39) {
-       break;
-      } else {
-       $$33942$i = $38;$$343$i = $37;
-      }
-     }
-    }
-   }
-   __gcry_free($9);
-  }
- } else {
-  __gcry_free($9);
- }
- $40 = HEAP32[$2>>2]|0;
- $41 = $40 & -3864;
- $42 = ($41|0)==(0);
- if (!($42)) {
-  __gcry_log_bug(64142,$vararg_buffer);
-  // unreachable;
- }
- __gcry_free($0);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_set_opaque($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa$i = 0, $$01819 = 0, $$01820 = 0, $$01821 = 0, $$036$lcssa$i = 
0, $$03644$i = 0, $$045$i = 0, $$1$i = 0, $$137$i = 0, $$2$i = 0, $$238$i = 0, 
$$33942$i = 0, $$343$i = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $scevgep$i = 0, $vararg_buffer = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = ($0|0)==(0|0);
- if ($3) {
-  $4 = (__gcry_xmalloc(20)|0);
-  $5 = ($4|0)==(0|0);
-  
;HEAP32[$4>>2]=0|0;HEAP32[$4+4>>2]=0|0;HEAP32[$4+8>>2]=0|0;HEAP32[$4+12>>2]=0|0;HEAP32[$4+16>>2]=0|0;
-  if ($5) {
-   $$pre = HEAP32[(12)>>2]|0;
-   $$01820 = 0;$12 = $$pre;
-  } else {
-   $$01819 = $4;
-   label = 4;
-  }
- } else {
-  $$01819 = $0;
-  label = 4;
- }
- if ((label|0) == 4) {
-  $6 = ((($$01819)) + 12|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = $7 & 16;
-  $9 = ($8|0)==(0);
-  if ($9) {
-   $$01820 = $$01819;$12 = $7;
-  } else {
-   __gcry_log_info(64098,$vararg_buffer);
-   $$01821 = $$01819;
-   STACKTOP = sp;return ($$01821|0);
-  }
- }
- $10 = ((($$01820)) + 12|0);
- $11 = $12 & 4;
- $13 = ($11|0)==(0);
- $14 = ((($$01820)) + 16|0);
- $15 = HEAP32[$14>>2]|0;
- if ($13) {
-  $16 = ($15|0)==(0|0);
-  if (!($16)) {
-   $17 = HEAP32[$$01820>>2]|0;
-   $18 = $17 << 2;
-   $19 = ($18|0)==(0);
-   if (!($19)) {
-    $20 = $15;
-    $21 = $20 & 7;
-    $22 = ($21|0)==(0);
-    if ($22) {
-     $$0$lcssa$i = $15;$$036$lcssa$i = $18;
-    } else {
-     $$03644$i = $18;$$045$i = $15;
-     while(1) {
-      HEAP8[$$045$i>>0] = 0;
-      $23 = ((($$045$i)) + 1|0);
-      $24 = (($$03644$i) + -1)|0;
-      $25 = $23;
-      $26 = $25 & 7;
-      $27 = ($26|0)!=(0);
-      $28 = ($24|0)!=(0);
-      $29 = $28 & $27;
-      if ($29) {
-       $$03644$i = $24;$$045$i = $23;
-      } else {
-       $$0$lcssa$i = $23;$$036$lcssa$i = $24;
-       break;
-      }
-     }
-    }
-    $30 = ($$036$lcssa$i>>>0)<(8);
-    if ($30) {
-     $$2$i = $$0$lcssa$i;$$238$i = $$036$lcssa$i;
-    } else {
-     $31 = (($$036$lcssa$i) + -8)|0;
-     $32 = $31 & -8;
-     $$1$i = $$0$lcssa$i;$$137$i = $$036$lcssa$i;
-     while(1) {
-      $33 = $$1$i;
-      $34 = $33;
-      HEAP32[$34>>2] = 0;
-      $35 = (($33) + 4)|0;
-      $36 = $35;
-      HEAP32[$36>>2] = 0;
-      $37 = (($$137$i) + -8)|0;
-      $38 = ((($$1$i)) + 8|0);
-      $39 = ($37>>>0)>(7);
-      if ($39) {
-       $$1$i = $38;$$137$i = $37;
-      } else {
-       break;
-      }
-     }
-     $40 = (($32) + 8)|0;
-     $41 = (($31) - ($32))|0;
-     $scevgep$i = (($$0$lcssa$i) + ($40)|0);
-     $$2$i = $scevgep$i;$$238$i = $41;
-    }
-    $42 = ($$238$i|0)==(0);
-    if (!($42)) {
-     $$33942$i = $$238$i;$$343$i = $$2$i;
-     while(1) {
-      HEAP8[$$343$i>>0] = 0;
-      $43 = ((($$343$i)) + 1|0);
-      $44 = (($$33942$i) + -1)|0;
-      $45 = ($44|0)==(0);
-      if ($45) {
-       break;
-      } else {
-       $$33942$i = $44;$$343$i = $43;
-      }
-     }
-    }
-   }
-   __gcry_free($15);
-  }
- } else {
-  __gcry_free($15);
- }
- HEAP32[$14>>2] = $1;
- HEAP32[$$01820>>2] = 0;
- $46 = ((($$01820)) + 4|0);
- HEAP32[$46>>2] = 0;
- $47 = ((($$01820)) + 8|0);
- HEAP32[$47>>2] = $2;
- $48 = HEAP32[$10>>2]|0;
- $49 = $48 & 3840;
- $50 = $49 | 4;
- HEAP32[$10>>2] = $50;
- $51 = (__gcry_is_secure($1)|0);
- $52 = ($51|0)==(0);
- if ($52) {
-  $$01821 = $$01820;
-  STACKTOP = sp;return ($$01821|0);
- }
- $53 = $49 | 5;
- HEAP32[$10>>2] = $53;
- $$01821 = $$01820;
- STACKTOP = sp;return ($$01821|0);
-}
-function __gcry_mpi_set_opaque_copy($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (($2) + 7)|0;
- $4 = $3 >>> 3;
- $5 = (__gcry_is_secure($1)|0);
- $6 = ($5|0)==(0);
- if ($6) {
-  $8 = (__gcry_malloc($4)|0);
-  $10 = $8;
- } else {
-  $7 = (__gcry_malloc_secure($4)|0);
-  $10 = $7;
- }
- $9 = ($10|0)==(0|0);
- if ($9) {
-  $$0 = 0;
-  return ($$0|0);
- }
- _memcpy(($10|0),($1|0),($4|0))|0;
- $11 = (__gcry_mpi_set_opaque($0,$10,$2)|0);
- $$0 = $11;
- return ($$0|0);
-}
-function __gcry_mpi_get_opaque($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & 4;
- $5 = ($4|0)==(0);
- if ($5) {
-  __gcry_log_bug(64174,$vararg_buffer);
-  // unreachable;
- }
- $6 = ($1|0)==(0|0);
- if (!($6)) {
-  $7 = ((($0)) + 8|0);
-  $8 = HEAP32[$7>>2]|0;
-  HEAP32[$1>>2] = $8;
- }
- $9 = ((($0)) + 16|0);
- $10 = HEAP32[$9>>2]|0;
- STACKTOP = sp;return ($10|0);
-}
-function __gcry_mpi_get_opaque_copy($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, 
$4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & 4;
- $5 = ($4|0)==(0);
- if ($5) {
-  __gcry_log_bug(64174,$vararg_buffer);
-  // unreachable;
- }
- $6 = ($1|0)==(0|0);
- if ($6) {
-  $7 = ((($0)) + 16|0);
-  $8 = HEAP32[$7>>2]|0;
-  $15 = 0;$17 = $8;
- } else {
-  $9 = ((($0)) + 8|0);
-  $10 = HEAP32[$9>>2]|0;
-  HEAP32[$1>>2] = $10;
-  $11 = ((($0)) + 16|0);
-  $12 = HEAP32[$11>>2]|0;
-  $13 = ($12|0)==(0|0);
-  if ($13) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  } else {
-   $15 = $10;$17 = $12;
-  }
- }
- $14 = (($15) + 7)|0;
- $16 = $14 >>> 3;
- $18 = (__gcry_is_secure($17)|0);
- $19 = ($18|0)==(0);
- if ($19) {
-  $21 = (__gcry_malloc($16)|0);
-  $23 = $21;
- } else {
-  $20 = (__gcry_malloc_secure($16)|0);
-  $23 = $20;
- }
- $22 = ($23|0)==(0|0);
- if ($22) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- _memcpy(($23|0),($17|0),($16|0))|0;
- $$0 = $23;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_mpi_copy($0) {
- $0 = $0|0;
- var $$035 = 0, $$038 = 0, $$op$i$i36 = 0, $$pre = 0, $$pre$phi39Z2D = 0, 
$$pre$phi41Z2D = 0, $$pre$phi43Z2D = 0, $$sink = 0, $1 = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $$035 = 0;
-  return ($$035|0);
- }
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & 4;
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = ((($0)) + 16|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = (__gcry_is_secure($7)|0);
-  $9 = ($8|0)==(0);
-  $10 = ((($0)) + 8|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (($11) + 7)|0;
-  $13 = (($12|0) / 8)&-1;
-  if ($9) {
-   $15 = (__gcry_xmalloc($13)|0);
-   $21 = $15;
-  } else {
-   $14 = (__gcry_xmalloc_secure($13)|0);
-   $21 = $14;
-  }
-  $16 = HEAP32[$6>>2]|0;
-  $17 = ($16|0)==(0|0);
-  if ($17) {
-   $$pre = HEAP32[$10>>2]|0;
-   $22 = $$pre;
-  } else {
-   $18 = HEAP32[$10>>2]|0;
-   $19 = (($18) + 7)|0;
-   $20 = (($19|0) / 8)&-1;
-   _memcpy(($21|0),($16|0),($20|0))|0;
-   $22 = $18;
-  }
-  $23 = (__gcry_mpi_set_opaque(0,$21,$22)|0);
-  $24 = ((($23)) + 12|0);
-  $25 = HEAP32[$24>>2]|0;
-  $26 = $25 & -49;
-  HEAP32[$24>>2] = $26;
-  $$035 = $23;
-  return ($$035|0);
- }
- $27 = $3 & 1;
- $28 = ($27|0)==(0);
- $29 = ((($0)) + 4|0);
- $30 = HEAP32[$29>>2]|0;
- $31 = (__gcry_xmalloc(20)|0);
- $32 = ($30|0)==(0);
- $$op$i$i36 = $30 << 2;
- if ($28) {
-  if ($32) {
-   $41 = 0;
-  } else {
-   $39 = (__gcry_xmalloc($$op$i$i36)|0);
-   $41 = $39;
-  }
-  $40 = ((($31)) + 16|0);
-  HEAP32[$40>>2] = $41;
-  HEAP32[$31>>2] = $30;
-  $42 = ((($31)) + 4|0);
-  HEAP32[$42>>2] = 0;
-  $43 = ((($31)) + 8|0);
-  HEAP32[$43>>2] = 0;
-  $44 = ((($31)) + 12|0);
-  $$pre$phi39Z2D = $42;$$pre$phi41Z2D = $43;$$pre$phi43Z2D = $44;$$sink = 
$44;$56 = $41;
- } else {
-  if ($32) {
-   $35 = 0;
-  } else {
-   $33 = (__gcry_xmalloc_secure($$op$i$i36)|0);
-   $35 = $33;
-  }
-  $34 = ((($31)) + 16|0);
-  HEAP32[$34>>2] = $35;
-  HEAP32[$31>>2] = $30;
-  $36 = ((($31)) + 12|0);
-  HEAP32[$36>>2] = 1;
-  $37 = ((($31)) + 4|0);
-  HEAP32[$37>>2] = 0;
-  $38 = ((($31)) + 8|0);
-  $$pre$phi39Z2D = $37;$$pre$phi41Z2D = $38;$$pre$phi43Z2D = $36;$$sink = 
$38;$56 = $35;
- }
- HEAP32[$$sink>>2] = 0;
- $45 = HEAP32[$29>>2]|0;
- HEAP32[$$pre$phi39Z2D>>2] = $45;
- $46 = ((($0)) + 8|0);
- $47 = HEAP32[$46>>2]|0;
- HEAP32[$$pre$phi41Z2D>>2] = $47;
- $48 = HEAP32[$2>>2]|0;
- $49 = $48 & -49;
- HEAP32[$$pre$phi43Z2D>>2] = $49;
- $50 = ($45|0)>(0);
- if (!($50)) {
-  $$035 = $31;
-  return ($$035|0);
- }
- $51 = ((($0)) + 16|0);
- $52 = HEAP32[$51>>2]|0;
- $$038 = 0;
- while(1) {
-  $53 = (($52) + ($$038<<2)|0);
-  $54 = HEAP32[$53>>2]|0;
-  $55 = (($56) + ($$038<<2)|0);
-  HEAP32[$55>>2] = $54;
-  $57 = (($$038) + 1)|0;
-  $exitcond = ($57|0)==($45|0);
-  if ($exitcond) {
-   $$035 = $31;
-   break;
-  } else {
-   $$038 = $57;
-  }
- }
- return ($$035|0);
-}
-function __gcry_mpi_neg($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ($0|0)==($1|0);
- if ($2) {
-  $3 = ($0|0)==(0|0);
-  if (!($3)) {
-   $4 = ((($0)) + 12|0);
-   $5 = HEAP32[$4>>2]|0;
-   $6 = $5 & 16;
-   $7 = ($6|0)==(0);
-   if (!($7)) {
-    __gcry_log_info(64098,$vararg_buffer);
-    STACKTOP = sp;return;
-   }
-  }
- } else {
-  (__gcry_mpi_set($0,$1)|0);
- }
- $8 = ((($1)) + 8|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0);
- $11 = $10&1;
- $12 = ((($0)) + 8|0);
- HEAP32[$12>>2] = $11;
- STACKTOP = sp;return;
-}
-function __gcry_mpi_set($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$024$i = 0, $$038 = 0, $$039 = 0, $$op$i$i = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var $exitcond = 0, $scevgep$i = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ((($1)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($1)) + 8|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($0|0)==(0|0);
- if ($6) {
-  $7 = (__gcry_xmalloc(20)|0);
-  $8 = ($3|0)==(0);
-  if ($8) {
-   $11 = 0;
-  } else {
-   $$op$i$i = $3 << 2;
-   $9 = (__gcry_xmalloc($$op$i$i)|0);
-   $11 = $9;
-  }
-  $10 = ((($7)) + 16|0);
-  HEAP32[$10>>2] = $11;
-  HEAP32[$7>>2] = $3;
-  $12 = ((($7)) + 4|0);
-  HEAP32[$12>>2] = 0;
-  $13 = ((($7)) + 8|0);
-  HEAP32[$13>>2] = 0;
-  $14 = ((($7)) + 12|0);
-  HEAP32[$14>>2] = 0;
-  $$038 = $7;
- } else {
-  $$038 = $0;
- }
- $15 = ((($$038)) + 12|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = $16 & 16;
- $18 = ($17|0)==(0);
- if (!($18)) {
-  __gcry_log_info(64098,$vararg_buffer);
-  STACKTOP = sp;return ($$038|0);
- }
- $19 = HEAP32[$$038>>2]|0;
- $20 = ($19|0)<($3|0);
- L11: do {
-  if ($20) {
-   $21 = ($19>>>0)<($3>>>0);
-   if (!($21)) {
-    $22 = ((($$038)) + 4|0);
-    $23 = HEAP32[$22>>2]|0;
-    $24 = ($23>>>0)<($19>>>0);
-    if (!($24)) {
-     break;
-    }
-    $25 = ((($$038)) + 16|0);
-    $26 = HEAP32[$25>>2]|0;
-    $$024$i = $23;
-    while(1) {
-     $27 = (($26) + ($$024$i<<2)|0);
-     HEAP32[$27>>2] = 0;
-     $28 = (($$024$i) + 1)|0;
-     $29 = HEAP32[$$038>>2]|0;
-     $30 = ($28>>>0)<($29>>>0);
-     if ($30) {
-      $$024$i = $28;
-     } else {
-      break L11;
-     }
-    }
-   }
-   $31 = ((($$038)) + 16|0);
-   $32 = HEAP32[$31>>2]|0;
-   $33 = ($32|0)==(0|0);
-   do {
-    if ($33) {
-     $40 = $16 & 1;
-     $41 = ($40|0)==(0);
-     if ($41) {
-      $43 = (__gcry_xcalloc($3,4)|0);
-      HEAP32[$31>>2] = $43;
-      break;
-     } else {
-      $42 = (__gcry_xcalloc_secure($3,4)|0);
-      HEAP32[$31>>2] = $42;
-      break;
-     }
-    } else {
-     $34 = $3 << 2;
-     $35 = (__gcry_xrealloc($32,$34)|0);
-     HEAP32[$31>>2] = $35;
-     $36 = HEAP32[$$038>>2]|0;
-     $37 = ($36>>>0)<($3>>>0);
-     if ($37) {
-      $38 = $36 << 2;
-      $39 = (($34) - ($38))|0;
-      $scevgep$i = (($35) + ($36<<2)|0);
-      _memset(($scevgep$i|0),0,($39|0))|0;
-     }
-    }
-   } while(0);
-   HEAP32[$$038>>2] = $3;
-  }
- } while(0);
- $44 = ((($$038)) + 16|0);
- $45 = HEAP32[$44>>2]|0;
- $46 = ((($1)) + 16|0);
- $47 = HEAP32[$46>>2]|0;
- $48 = ($3|0)>(0);
- if ($48) {
-  $$039 = 0;
-  while(1) {
-   $49 = (($47) + ($$039<<2)|0);
-   $50 = HEAP32[$49>>2]|0;
-   $51 = (($45) + ($$039<<2)|0);
-   HEAP32[$51>>2] = $50;
-   $52 = (($$039) + 1)|0;
-   $exitcond = ($52|0)==($3|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$039 = $52;
-   }
-  }
- }
- $53 = ((($$038)) + 4|0);
- HEAP32[$53>>2] = $3;
- $54 = ((($1)) + 12|0);
- $55 = HEAP32[$54>>2]|0;
- $56 = $55 & -49;
- HEAP32[$15>>2] = $56;
- $57 = ((($$038)) + 8|0);
- HEAP32[$57>>2] = $5;
- STACKTOP = sp;return ($$038|0);
-}
-function __gcry_mpi_alloc_like($0) {
- $0 = $0|0;
- var $$0 = 0, $$op$i$i24 = 0, $$pre$phi26Z2D = 0, $$pre$phi28Z2D = 0, 
$$pre$phi30Z2D = 0, $$sink = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & 4;
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = ((($0)) + 8|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = (($7) + 7)|0;
-  $9 = (($8|0) / 8)&-1;
-  $10 = ((($0)) + 16|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (__gcry_is_secure($11)|0);
-  $13 = ($12|0)==(0);
-  if ($13) {
-   $15 = (__gcry_malloc($9)|0);
-   $17 = $15;
-  } else {
-   $14 = (__gcry_malloc_secure($9)|0);
-   $17 = $14;
-  }
-  $16 = HEAP32[$10>>2]|0;
-  _memcpy(($17|0),($16|0),($9|0))|0;
-  $18 = HEAP32[$6>>2]|0;
-  $19 = (__gcry_mpi_set_opaque(0,$17,$18)|0);
-  $$0 = $19;
-  return ($$0|0);
- }
- $20 = $3 & 1;
- $21 = ($20|0)==(0);
- $22 = ((($0)) + 4|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = (__gcry_xmalloc(20)|0);
- $25 = ($23|0)==(0);
- $$op$i$i24 = $23 << 2;
- if ($21) {
-  if ($25) {
-   $34 = 0;
-  } else {
-   $32 = (__gcry_xmalloc($$op$i$i24)|0);
-   $34 = $32;
-  }
-  $33 = ((($24)) + 16|0);
-  HEAP32[$33>>2] = $34;
-  HEAP32[$24>>2] = $23;
-  $35 = ((($24)) + 4|0);
-  HEAP32[$35>>2] = 0;
-  $36 = ((($24)) + 8|0);
-  HEAP32[$36>>2] = 0;
-  $37 = ((($24)) + 12|0);
-  $$pre$phi26Z2D = $35;$$pre$phi28Z2D = $36;$$pre$phi30Z2D = $37;$$sink = $37;
- } else {
-  if ($25) {
-   $28 = 0;
-  } else {
-   $26 = (__gcry_xmalloc_secure($$op$i$i24)|0);
-   $28 = $26;
-  }
-  $27 = ((($24)) + 16|0);
-  HEAP32[$27>>2] = $28;
-  HEAP32[$24>>2] = $23;
-  $29 = ((($24)) + 12|0);
-  HEAP32[$29>>2] = 1;
-  $30 = ((($24)) + 4|0);
-  HEAP32[$30>>2] = 0;
-  $31 = ((($24)) + 8|0);
-  $$pre$phi26Z2D = $30;$$pre$phi28Z2D = $31;$$pre$phi30Z2D = $29;$$sink = $31;
- }
- HEAP32[$$sink>>2] = 0;
- HEAP32[$$pre$phi26Z2D>>2] = 0;
- HEAP32[$$pre$phi28Z2D>>2] = 0;
- $38 = HEAP32[$2>>2]|0;
- HEAP32[$$pre$phi30Z2D>>2] = $38;
- $$0 = $24;
- return ($$0|0);
-}
-function __gcry_mpi_snatch($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$lcssa$i$i = 0, $$036$lcssa$i$i = 0, $$03644$i$i = 0, $$045$i$i = 0, 
$$1$i$i = 0, $$137$i$i = 0, $$2$i$i = 0, $$238$i$i = 0, $$33942$i$i = 0, 
$$343$i$i = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0;
- var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, $scevgep$i$i = 0, $vararg_buffer = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ($0|0)==(0|0);
- if (!($2)) {
-  $3 = ((($0)) + 12|0);
-  $4 = HEAP32[$3>>2]|0;
-  $5 = $4 & 16;
-  $6 = ($5|0)==(0);
-  if (!($6)) {
-   __gcry_log_info(64098,$vararg_buffer);
-   STACKTOP = sp;return;
-  }
-  $7 = ((($1)) + 16|0);
-  $8 = HEAP32[$7>>2]|0;
-  $9 = HEAP32[$1>>2]|0;
-  $10 = ((($0)) + 16|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = ($11|0)==(0|0);
-  if (!($12)) {
-   $13 = HEAP32[$0>>2]|0;
-   $14 = $13 << 2;
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $16 = $11;
-    $17 = $16 & 7;
-    $18 = ($17|0)==(0);
-    if ($18) {
-     $$0$lcssa$i$i = $11;$$036$lcssa$i$i = $14;
-    } else {
-     $$03644$i$i = $14;$$045$i$i = $11;
-     while(1) {
-      HEAP8[$$045$i$i>>0] = 0;
-      $19 = ((($$045$i$i)) + 1|0);
-      $20 = (($$03644$i$i) + -1)|0;
-      $21 = $19;
-      $22 = $21 & 7;
-      $23 = ($22|0)!=(0);
-      $24 = ($20|0)!=(0);
-      $25 = $24 & $23;
-      if ($25) {
-       $$03644$i$i = $20;$$045$i$i = $19;
-      } else {
-       $$0$lcssa$i$i = $19;$$036$lcssa$i$i = $20;
-       break;
-      }
-     }
-    }
-    $26 = ($$036$lcssa$i$i>>>0)<(8);
-    if ($26) {
-     $$2$i$i = $$0$lcssa$i$i;$$238$i$i = $$036$lcssa$i$i;
-    } else {
-     $27 = (($$036$lcssa$i$i) + -8)|0;
-     $$1$i$i = $$0$lcssa$i$i;$$137$i$i = $$036$lcssa$i$i;
-     while(1) {
-      $28 = $$1$i$i;
-      $29 = $28;
-      HEAP32[$29>>2] = 0;
-      $30 = (($28) + 4)|0;
-      $31 = $30;
-      HEAP32[$31>>2] = 0;
-      $32 = (($$137$i$i) + -8)|0;
-      $33 = ((($$1$i$i)) + 8|0);
-      $34 = ($32>>>0)>(7);
-      if ($34) {
-       $$1$i$i = $33;$$137$i$i = $32;
-      } else {
-       break;
-      }
-     }
-     $35 = $27 & -8;
-     $36 = (($35) + 8)|0;
-     $37 = (($27) - ($35))|0;
-     $scevgep$i$i = (($$0$lcssa$i$i) + ($36)|0);
-     $$2$i$i = $scevgep$i$i;$$238$i$i = $37;
-    }
-    $38 = ($$238$i$i|0)==(0);
-    if (!($38)) {
-     $$33942$i$i = $$238$i$i;$$343$i$i = $$2$i$i;
-     while(1) {
-      HEAP8[$$343$i$i>>0] = 0;
-      $39 = ((($$343$i$i)) + 1|0);
-      $40 = (($$33942$i$i) + -1)|0;
-      $41 = ($40|0)==(0);
-      if ($41) {
-       break;
-      } else {
-       $$33942$i$i = $40;$$343$i$i = $39;
-      }
-     }
-    }
-   }
-   __gcry_free($11);
-  }
-  HEAP32[$10>>2] = $8;
-  HEAP32[$0>>2] = $9;
-  $42 = ((($1)) + 4|0);
-  $43 = HEAP32[$42>>2]|0;
-  $44 = ((($0)) + 4|0);
-  HEAP32[$44>>2] = $43;
-  $45 = ((($1)) + 8|0);
-  $46 = HEAP32[$45>>2]|0;
-  $47 = ((($0)) + 8|0);
-  HEAP32[$47>>2] = $46;
-  $48 = ((($1)) + 12|0);
-  $49 = HEAP32[$48>>2]|0;
-  HEAP32[$3>>2] = $49;
-  HEAP32[$1>>2] = 0;
-  HEAP32[$42>>2] = 0;
-  HEAP32[$7>>2] = 0;
- }
- __gcry_mpi_free($1);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_set_cond($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$034 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $vararg_buffer = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = HEAP32[$1>>2]|0;
- $4 = ($2|0)!=(0);
- $5 = $4 << 31 >> 31;
- $6 = HEAP32[$0>>2]|0;
- $7 = ($6|0)==($3|0);
- if (!($7)) {
-  __gcry_log_bug(64204,$vararg_buffer);
-  // unreachable;
- }
- $8 = ($3|0)>(0);
- if ($8) {
-  $9 = ((($0)) + 16|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ((($1)) + 16|0);
-  $12 = HEAP32[$11>>2]|0;
-  $$034 = 0;
-  while(1) {
-   $13 = (($10) + ($$034<<2)|0);
-   $14 = HEAP32[$13>>2]|0;
-   $15 = (($12) + ($$034<<2)|0);
-   $16 = HEAP32[$15>>2]|0;
-   $17 = $16 ^ $14;
-   $18 = $17 & $5;
-   $19 = $18 ^ $14;
-   HEAP32[$13>>2] = $19;
-   $20 = (($$034) + 1)|0;
-   $exitcond = ($20|0)==($3|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$034 = $20;
-   }
-  }
- }
- $21 = ((($0)) + 4|0);
- $22 = HEAP32[$21>>2]|0;
- $23 = ((($1)) + 4|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = $24 ^ $22;
- $26 = $25 & $5;
- $27 = $26 ^ $22;
- HEAP32[$21>>2] = $27;
- $28 = ((($0)) + 8|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = ((($1)) + 8|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = $31 ^ $29;
- $33 = $32 & $5;
- $34 = $33 ^ $29;
- HEAP32[$28>>2] = $34;
- STACKTOP = sp;return ($0|0);
-}
-function __gcry_mpi_set_ui($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$01314 = 0, $$01315 = 0, $$01316 = 0, $$024$i = 0, $10 = 0, $11 = 0, $12 
= 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 
= 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $3 = (__gcry_xmalloc(20)|0);
-  $4 = (__gcry_xmalloc(4)|0);
-  $5 = ((($3)) + 16|0);
-  HEAP32[$5>>2] = $4;
-  HEAP32[$3>>2] = 1;
-  $6 = ((($3)) + 4|0);
-  HEAP32[$6>>2] = 0;
-  $7 = ((($3)) + 8|0);
-  HEAP32[$7>>2] = 0;
-  $8 = ((($3)) + 12|0);
-  HEAP32[$8>>2] = 0;
-  $9 = ($3|0)==(0|0);
-  if ($9) {
-   $$01315 = 0;
-  } else {
-   $$01314 = $3;
-   label = 3;
-  }
- } else {
-  $$01314 = $0;
-  label = 3;
- }
- if ((label|0) == 3) {
-  $10 = ((($$01314)) + 12|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = $11 & 16;
-  $13 = ($12|0)==(0);
-  if ($13) {
-   $$01315 = $$01314;
-  } else {
-   __gcry_log_info(64098,$vararg_buffer);
-   $$01316 = $$01314;
-   STACKTOP = sp;return ($$01316|0);
-  }
- }
- $14 = HEAP32[$$01315>>2]|0;
- $15 = ($14|0)<(1);
- L8: do {
-  if ($15) {
-   $16 = ($14|0)==(0);
-   if (!($16)) {
-    $17 = ((($$01315)) + 4|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ($18>>>0)<($14>>>0);
-    if (!($19)) {
-     break;
-    }
-    $20 = ((($$01315)) + 16|0);
-    $21 = HEAP32[$20>>2]|0;
-    $$024$i = $18;
-    while(1) {
-     $22 = (($21) + ($$024$i<<2)|0);
-     HEAP32[$22>>2] = 0;
-     $23 = (($$024$i) + 1)|0;
-     $24 = HEAP32[$$01315>>2]|0;
-     $25 = ($23>>>0)<($24>>>0);
-     if ($25) {
-      $$024$i = $23;
-     } else {
-      break L8;
-     }
-    }
-   }
-   $26 = ((($$01315)) + 16|0);
-   $27 = HEAP32[$26>>2]|0;
-   $28 = ($27|0)==(0|0);
-   do {
-    if ($28) {
-     $32 = ((($$01315)) + 12|0);
-     $33 = HEAP32[$32>>2]|0;
-     $34 = $33 & 1;
-     $35 = ($34|0)==(0);
-     if ($35) {
-      $37 = (__gcry_xcalloc(1,4)|0);
-      HEAP32[$26>>2] = $37;
-      break;
-     } else {
-      $36 = (__gcry_xcalloc_secure(1,4)|0);
-      HEAP32[$26>>2] = $36;
-      break;
-     }
-    } else {
-     $29 = (__gcry_xrealloc($27,4)|0);
-     HEAP32[$26>>2] = $29;
-     $30 = HEAP32[$$01315>>2]|0;
-     $31 = ($30|0)==(0);
-     if ($31) {
-      HEAP32[$29>>2] = 0;
-     }
-    }
-   } while(0);
-   HEAP32[$$01315>>2] = 1;
-  }
- } while(0);
- $38 = ((($$01315)) + 16|0);
- $39 = HEAP32[$38>>2]|0;
- HEAP32[$39>>2] = $1;
- $40 = ($1|0)!=(0);
- $41 = $40&1;
- $42 = ((($$01315)) + 4|0);
- HEAP32[$42>>2] = $41;
- $43 = ((($$01315)) + 8|0);
- HEAP32[$43>>2] = 0;
- $44 = ((($$01315)) + 12|0);
- HEAP32[$44>>2] = 0;
- $$01316 = $$01315;
- STACKTOP = sp;return ($$01316|0);
-}
-function __gcry_mpi_swap($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $2 = sp;
- 
;HEAP32[$2>>2]=HEAP32[$0>>2]|0;HEAP32[$2+4>>2]=HEAP32[$0+4>>2]|0;HEAP32[$2+8>>2]=HEAP32[$0+8>>2]|0;HEAP32[$2+12>>2]=HEAP32[$0+12>>2]|0;HEAP32[$2+16>>2]=HEAP32[$0+16>>2]|0;
- 
;HEAP32[$0>>2]=HEAP32[$1>>2]|0;HEAP32[$0+4>>2]=HEAP32[$1+4>>2]|0;HEAP32[$0+8>>2]=HEAP32[$1+8>>2]|0;HEAP32[$0+12>>2]=HEAP32[$1+12>>2]|0;HEAP32[$0+16>>2]=HEAP32[$1+16>>2]|0;
- 
;HEAP32[$1>>2]=HEAP32[$2>>2]|0;HEAP32[$1+4>>2]=HEAP32[$2+4>>2]|0;HEAP32[$1+8>>2]=HEAP32[$2+8>>2]|0;HEAP32[$1+12>>2]=HEAP32[$2+12>>2]|0;HEAP32[$1+16>>2]=HEAP32[$2+16>>2]|0;
- STACKTOP = sp;return;
-}
-function __gcry_mpi_swap_cond($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$044 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, $exitcond = 0;
- var $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = HEAP32[$0>>2]|0;
- $4 = ($2|0)!=(0);
- $5 = $4 << 31 >> 31;
- $6 = HEAP32[$1>>2]|0;
- $7 = ($3|0)==($6|0);
- if (!($7)) {
-  __gcry_log_bug(64235,$vararg_buffer);
-  // unreachable;
- }
- $8 = ($3|0)>(0);
- if ($8) {
-  $9 = ((($0)) + 16|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ((($1)) + 16|0);
-  $12 = HEAP32[$11>>2]|0;
-  $$044 = 0;
-  while(1) {
-   $13 = (($10) + ($$044<<2)|0);
-   $14 = HEAP32[$13>>2]|0;
-   $15 = (($12) + ($$044<<2)|0);
-   $16 = HEAP32[$15>>2]|0;
-   $17 = $16 ^ $14;
-   $18 = $17 & $5;
-   $19 = $18 ^ $14;
-   HEAP32[$13>>2] = $19;
-   $20 = HEAP32[$15>>2]|0;
-   $21 = $20 ^ $18;
-   HEAP32[$15>>2] = $21;
-   $22 = (($$044) + 1)|0;
-   $exitcond = ($22|0)==($3|0);
-   if ($exitcond) {
-    break;
-   } else {
-    $$044 = $22;
-   }
-  }
- }
- $23 = ((($0)) + 4|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = ((($1)) + 4|0);
- $26 = HEAP32[$25>>2]|0;
- $27 = $26 ^ $24;
- $28 = $27 & $5;
- $29 = $28 ^ $24;
- HEAP32[$23>>2] = $29;
- $30 = HEAP32[$25>>2]|0;
- $31 = $30 ^ $28;
- HEAP32[$25>>2] = $31;
- $32 = ((($0)) + 8|0);
- $33 = HEAP32[$32>>2]|0;
- $34 = ((($1)) + 8|0);
- $35 = HEAP32[$34>>2]|0;
- $36 = $35 ^ $33;
- $37 = $36 & $5;
- $38 = $37 ^ $33;
- HEAP32[$32>>2] = $38;
- $39 = HEAP32[$34>>2]|0;
- $40 = $39 ^ $37;
- HEAP32[$34>>2] = $40;
- STACKTOP = sp;return;
-}
-function __gcry_mpi_new($0) {
- $0 = $0|0;
- var $$op$i$i = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + 31)|0;
- $2 = $1 >>> 5;
- $3 = (__gcry_xmalloc(20)|0);
- $4 = ($2|0)==(0);
- if ($4) {
-  $7 = 0;
- } else {
-  $$op$i$i = $2 << 2;
-  $5 = (__gcry_xmalloc($$op$i$i)|0);
-  $7 = $5;
- }
- $6 = ((($3)) + 16|0);
- HEAP32[$6>>2] = $7;
- HEAP32[$3>>2] = $2;
- $8 = ((($3)) + 4|0);
- HEAP32[$8>>2] = 0;
- $9 = ((($3)) + 8|0);
- HEAP32[$9>>2] = 0;
- $10 = ((($3)) + 12|0);
- HEAP32[$10>>2] = 0;
- return ($3|0);
-}
-function __gcry_mpi_snew($0) {
- $0 = $0|0;
- var $$op$i$i = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + 31)|0;
- $2 = $1 >>> 5;
- $3 = (__gcry_xmalloc(20)|0);
- $4 = ($2|0)==(0);
- if ($4) {
-  $7 = 0;
- } else {
-  $$op$i$i = $2 << 2;
-  $5 = (__gcry_xmalloc_secure($$op$i$i)|0);
-  $7 = $5;
- }
- $6 = ((($3)) + 16|0);
- HEAP32[$6>>2] = $7;
- HEAP32[$3>>2] = $2;
- $8 = ((($3)) + 12|0);
- HEAP32[$8>>2] = 1;
- $9 = ((($3)) + 4|0);
- HEAP32[$9>>2] = 0;
- $10 = ((($3)) + 8|0);
- HEAP32[$10>>2] = 0;
- return ($3|0);
-}
-function __gcry_mpi_release($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gcry_mpi_free($0);
- return;
-}
-function __gcry_mpi_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = (($1) + 7)|0;
- $4 = $3 >>> 3;
- $5 = ($0|0)!=(0|0);
- if ($5) {
-  $6 = ((($0)) + 12|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = $7 & 16;
-  $9 = ($8|0)==(0);
-  if (!($9)) {
-   __gcry_log_info(64098,$vararg_buffer);
-   STACKTOP = sp;return;
-  }
- }
- $10 = ($2|0)==(0);
- do {
-  if ($10) {
-   if ($5) {
-    $11 = ((($0)) + 12|0);
-    $12 = HEAP32[$11>>2]|0;
-    $13 = $12 & 1;
-    $14 = ($13|0)==(0);
-    if ($14) {
-     label = 8;
-    } else {
-     $15 = (__gcry_xmalloc_secure($4)|0);
-     $17 = $15;
-    }
-   } else {
-    label = 8;
-   }
-   if ((label|0) == 8) {
-    $16 = (__gcry_xmalloc($4)|0);
-    $17 = $16;
-   }
-   __gcry_create_nonce($17,$4);
-   $$0 = $17;
-  } else {
-   if ($5) {
-    $18 = ((($0)) + 12|0);
-    $19 = HEAP32[$18>>2]|0;
-    $20 = $19 & 1;
-    $21 = ($20|0)==(0);
-    if (!($21)) {
-     $22 = (__gcry_random_bytes_secure($4,$2)|0);
-     $$0 = $22;
-     break;
-    }
-   }
-   $23 = (__gcry_random_bytes($4,$2)|0);
-   $$0 = $23;
-  }
- } while(0);
- __gcry_mpi_set_buffer($0,$$0,$4,0);
- __gcry_free($$0);
- STACKTOP = sp;return;
-}
-function __gcry_mpi_get_flag($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$in = 0, $$sink7 = 0, $2 = 0, $3 = 0, $4 = 0, $vararg_buffer 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- switch ($1|0) {
- case 2048: case 1024: case 512: case 256: case 1:  {
-  $$sink7 = $1;
-  break;
- }
- case 2:  {
-  $$sink7 = 4;
-  break;
- }
- case 4:  {
-  $$sink7 = 16;
-  break;
- }
- case 8:  {
-  $$sink7 = 32;
-  break;
- }
- default: {
-  __gcry_log_bug(64267,$vararg_buffer);
-  // unreachable;
- }
- }
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & $$sink7;
- $$0$in = ($4|0)!=(0);
- $$0 = $$0$in&1;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_mpi_const($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = ($0>>>0)>(6);
- if ($1) {
-  HEAP32[$vararg_buffer>>2] = $0;
-  __gcry_log_bug(64287,$vararg_buffer);
-  // unreachable;
- }
- $2 = (71152 + ($0<<2)|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ($3|0)==(0|0);
- if ($4) {
-  __gcry_log_bug(64318,$vararg_buffer1);
-  // unreachable;
- } else {
-  STACKTOP = sp;return ($3|0);
- }
- return (0)|0;
-}
-function __gcry_compat_identification() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (15200|0);
-}
-function __gcry_hmac256_new($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$05765 = 0, $$3 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 
0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0;
- var $99 = 0, $exitcond = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $2 = sp;
- $3 = (_malloc(172)|0);
- $4 = ($3|0)==(0|0);
- if ($4) {
-  $$3 = 0;
-  STACKTOP = sp;return ($$3|0);
- }
- HEAP32[$3>>2] = 1779033703;
- $5 = ((($3)) + 4|0);
- HEAP32[$5>>2] = -1150833019;
- $6 = ((($3)) + 8|0);
- HEAP32[$6>>2] = 1013904242;
- $7 = ((($3)) + 12|0);
- HEAP32[$7>>2] = -1521486534;
- $8 = ((($3)) + 16|0);
- HEAP32[$8>>2] = 1359893119;
- $9 = ((($3)) + 20|0);
- HEAP32[$9>>2] = -1694144372;
- $10 = ((($3)) + 24|0);
- HEAP32[$10>>2] = 528734635;
- $11 = ((($3)) + 28|0);
- HEAP32[$11>>2] = 1541459225;
- $12 = ((($3)) + 32|0);
- HEAP32[$12>>2] = 0;
- $13 = ((($3)) + 36|0);
- HEAP32[$13>>2] = 0;
- $14 = ((($3)) + 40|0);
- HEAP8[$14>>0] = 0;
- $15 = ($0|0)==(0|0);
- if ($15) {
-  $$3 = $3;
-  STACKTOP = sp;return ($$3|0);
- }
- dest=$2; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $16 = ((($3)) + 105|0);
- dest=$16; stop=dest+64|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while 
((dest|0) < (stop|0));
- $17 = ($1>>>0)<(65);
- do {
-  if ($17) {
-   _memcpy(($2|0),($0|0),($1|0))|0;
-   _memcpy(($16|0),($0|0),($1|0))|0;
-  } else {
-   $18 = (_malloc(172)|0);
-   $19 = ($18|0)==(0|0);
-   if (!($19)) {
-    HEAP32[$18>>2] = 1779033703;
-    $20 = ((($18)) + 4|0);
-    HEAP32[$20>>2] = -1150833019;
-    $21 = ((($18)) + 8|0);
-    HEAP32[$21>>2] = 1013904242;
-    $22 = ((($18)) + 12|0);
-    HEAP32[$22>>2] = -1521486534;
-    $23 = ((($18)) + 16|0);
-    HEAP32[$23>>2] = 1359893119;
-    $24 = ((($18)) + 20|0);
-    HEAP32[$24>>2] = -1694144372;
-    $25 = ((($18)) + 24|0);
-    HEAP32[$25>>2] = 528734635;
-    $26 = ((($18)) + 28|0);
-    HEAP32[$26>>2] = 1541459225;
-    $27 = ((($18)) + 32|0);
-    HEAP32[$27>>2] = 0;
-    $28 = ((($18)) + 36|0);
-    HEAP32[$28>>2] = 0;
-    $29 = ((($18)) + 40|0);
-    HEAP8[$29>>0] = 0;
-    __gcry_hmac256_update($18,$0,$1);
-    _finalize($18);
-    $30 = ((($18)) + 41|0);
-    dest=$2; src=$30; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    dest=$16; src=$30; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    __gcry_hmac256_release($18);
-    break;
-   }
-   _free($3);
-   $$3 = 0;
-   STACKTOP = sp;return ($$3|0);
-  }
- } while(0);
- $$05765 = 0;
- while(1) {
-  $31 = (($2) + ($$05765)|0);
-  $32 = HEAP8[$31>>0]|0;
-  $33 = $32 ^ 54;
-  HEAP8[$31>>0] = $33;
-  $34 = (($16) + ($$05765)|0);
-  $35 = HEAP8[$34>>0]|0;
-  $36 = $35 ^ 92;
-  HEAP8[$34>>0] = $36;
-  $37 = (($$05765) + 1)|0;
-  $exitcond = ($37|0)==(64);
-  if ($exitcond) {
-   break;
-  } else {
-   $$05765 = $37;
-  }
- }
- HEAP8[$14>>0] = 2;
- __gcry_hmac256_update($3,$2,64);
- HEAP8[$2>>0] = 0;
- $38 = ((($2)) + 1|0);
- HEAP8[$38>>0] = 0;
- $39 = ((($2)) + 2|0);
- HEAP8[$39>>0] = 0;
- $40 = ((($2)) + 3|0);
- HEAP8[$40>>0] = 0;
- $41 = ((($2)) + 4|0);
- HEAP8[$41>>0] = 0;
- $42 = ((($2)) + 5|0);
- HEAP8[$42>>0] = 0;
- $43 = ((($2)) + 6|0);
- HEAP8[$43>>0] = 0;
- $44 = ((($2)) + 7|0);
- HEAP8[$44>>0] = 0;
- $45 = ((($2)) + 8|0);
- HEAP8[$45>>0] = 0;
- $46 = ((($2)) + 9|0);
- HEAP8[$46>>0] = 0;
- $47 = ((($2)) + 10|0);
- HEAP8[$47>>0] = 0;
- $48 = ((($2)) + 11|0);
- HEAP8[$48>>0] = 0;
- $49 = ((($2)) + 12|0);
- HEAP8[$49>>0] = 0;
- $50 = ((($2)) + 13|0);
- HEAP8[$50>>0] = 0;
- $51 = ((($2)) + 14|0);
- HEAP8[$51>>0] = 0;
- $52 = ((($2)) + 15|0);
- HEAP8[$52>>0] = 0;
- $53 = ((($2)) + 16|0);
- HEAP8[$53>>0] = 0;
- $54 = ((($2)) + 17|0);
- HEAP8[$54>>0] = 0;
- $55 = ((($2)) + 18|0);
- HEAP8[$55>>0] = 0;
- $56 = ((($2)) + 19|0);
- HEAP8[$56>>0] = 0;
- $57 = ((($2)) + 20|0);
- HEAP8[$57>>0] = 0;
- $58 = ((($2)) + 21|0);
- HEAP8[$58>>0] = 0;
- $59 = ((($2)) + 22|0);
- HEAP8[$59>>0] = 0;
- $60 = ((($2)) + 23|0);
- HEAP8[$60>>0] = 0;
- $61 = ((($2)) + 24|0);
- HEAP8[$61>>0] = 0;
- $62 = ((($2)) + 25|0);
- HEAP8[$62>>0] = 0;
- $63 = ((($2)) + 26|0);
- HEAP8[$63>>0] = 0;
- $64 = ((($2)) + 27|0);
- HEAP8[$64>>0] = 0;
- $65 = ((($2)) + 28|0);
- HEAP8[$65>>0] = 0;
- $66 = ((($2)) + 29|0);
- HEAP8[$66>>0] = 0;
- $67 = ((($2)) + 30|0);
- HEAP8[$67>>0] = 0;
- $68 = ((($2)) + 31|0);
- HEAP8[$68>>0] = 0;
- $69 = ((($2)) + 32|0);
- HEAP8[$69>>0] = 0;
- $70 = ((($2)) + 33|0);
- HEAP8[$70>>0] = 0;
- $71 = ((($2)) + 34|0);
- HEAP8[$71>>0] = 0;
- $72 = ((($2)) + 35|0);
- HEAP8[$72>>0] = 0;
- $73 = ((($2)) + 36|0);
- HEAP8[$73>>0] = 0;
- $74 = ((($2)) + 37|0);
- HEAP8[$74>>0] = 0;
- $75 = ((($2)) + 38|0);
- HEAP8[$75>>0] = 0;
- $76 = ((($2)) + 39|0);
- HEAP8[$76>>0] = 0;
- $77 = ((($2)) + 40|0);
- HEAP8[$77>>0] = 0;
- $78 = ((($2)) + 41|0);
- HEAP8[$78>>0] = 0;
- $79 = ((($2)) + 42|0);
- HEAP8[$79>>0] = 0;
- $80 = ((($2)) + 43|0);
- HEAP8[$80>>0] = 0;
- $81 = ((($2)) + 44|0);
- HEAP8[$81>>0] = 0;
- $82 = ((($2)) + 45|0);
- HEAP8[$82>>0] = 0;
- $83 = ((($2)) + 46|0);
- HEAP8[$83>>0] = 0;
- $84 = ((($2)) + 47|0);
- HEAP8[$84>>0] = 0;
- $85 = ((($2)) + 48|0);
- HEAP8[$85>>0] = 0;
- $86 = ((($2)) + 49|0);
- HEAP8[$86>>0] = 0;
- $87 = ((($2)) + 50|0);
- HEAP8[$87>>0] = 0;
- $88 = ((($2)) + 51|0);
- HEAP8[$88>>0] = 0;
- $89 = ((($2)) + 52|0);
- HEAP8[$89>>0] = 0;
- $90 = ((($2)) + 53|0);
- HEAP8[$90>>0] = 0;
- $91 = ((($2)) + 54|0);
- HEAP8[$91>>0] = 0;
- $92 = ((($2)) + 55|0);
- HEAP8[$92>>0] = 0;
- $93 = ((($2)) + 56|0);
- HEAP8[$93>>0] = 0;
- $94 = ((($2)) + 57|0);
- HEAP8[$94>>0] = 0;
- $95 = ((($2)) + 58|0);
- HEAP8[$95>>0] = 0;
- $96 = ((($2)) + 59|0);
- HEAP8[$96>>0] = 0;
- $97 = ((($2)) + 60|0);
- HEAP8[$97>>0] = 0;
- $98 = ((($2)) + 61|0);
- HEAP8[$98>>0] = 0;
- $99 = ((($2)) + 62|0);
- HEAP8[$99>>0] = 0;
- $100 = ((($2)) + 63|0);
- HEAP8[$100>>0] = 0;
- $$3 = $3;
- STACKTOP = sp;return ($$3|0);
-}
-function __gcry_hmac256_update($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$03147$lcssa = 0, $$0314770 = 0, $$048$lcssa = 0, $$04869 = 0, $$1 = 0, 
$$132 = 0, $$2$lcssa = 0, $$233$lcssa = 0, $$23343 = 0, $$244 = 0, $$3344066 = 
0, $$34165 = 0, $$lcssa = 0, $$mask = 0, $$mask$i = 0, $$mask$i36 = 0, $$pre = 
0, $$pre58 = 0, $10 = 0, $11 = 0;
- var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 
0, $29 = 0, $3 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0;
- var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0, 
$8 = 0, $9 = 0, $or$cond = 0;
- var $or$cond74 = 0, $scevgep = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 40|0);
- $4 = HEAP8[$3>>0]|0;
- $$mask = $4 & 1;
- $5 = ($$mask<<24>>24)==(0);
- if (!($5)) {
-  return;
- }
- $6 = ((($0)) + 36|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(64);
- if ($8) {
-  $9 = ((($0)) + 41|0);
-  _transform_1707($0,$9);
-  HEAP32[$6>>2] = 0;
-  $10 = ((($0)) + 32|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = (($11) + 1)|0;
-  HEAP32[$10>>2] = $12;
-  $15 = 0;
- } else {
-  $15 = $7;
- }
- $13 = ($1|0)==(0|0);
- if ($13) {
-  return;
- }
- $14 = ($15|0)==(0);
- L10: do {
-  if ($14) {
-   $$1 = $1;$$132 = $2;$63 = 0;
-  } else {
-   $16 = ($2|0)==(0);
-   L12: do {
-    if (!($16)) {
-     $17 = ($15|0)<(64);
-     if ($17) {
-      $$0314770 = $2;$$04869 = $1;$20 = $15;
-      while(1) {
-       $18 = HEAP8[$$04869>>0]|0;
-       $19 = (($20) + 1)|0;
-       HEAP32[$6>>2] = $19;
-       $21 = (((($0)) + 41|0) + ($20)|0);
-       HEAP8[$21>>0] = $18;
-       $22 = (($$0314770) + -1)|0;
-       $23 = ($22|0)==(0);
-       if ($23) {
-        break L12;
-       }
-       $24 = ((($$04869)) + 1|0);
-       $$pre = HEAP32[$6>>2]|0;
-       $25 = ($$pre|0)<(64);
-       if ($25) {
-        $$0314770 = $22;$$04869 = $24;$20 = $$pre;
-       } else {
-        $$03147$lcssa = $22;$$048$lcssa = $24;$$lcssa = $$pre;
-        break;
-       }
-      }
-     } else {
-      $$03147$lcssa = $2;$$048$lcssa = $1;$$lcssa = $15;
-     }
-     $26 = HEAP8[$3>>0]|0;
-     $$mask$i36 = $26 & 1;
-     $27 = ($$mask$i36<<24>>24)==(0);
-     $28 = ($$lcssa|0)==(64);
-     $or$cond = $28 & $27;
-     if (!($or$cond)) {
-      $$1 = $$048$lcssa;$$132 = $$03147$lcssa;$63 = $$lcssa;
-      break L10;
-     }
-     $29 = ((($0)) + 41|0);
-     _transform_1707($0,$29);
-     HEAP32[$6>>2] = 0;
-     $30 = ((($0)) + 32|0);
-     $31 = HEAP32[$30>>2]|0;
-     $32 = (($31) + 1)|0;
-     HEAP32[$30>>2] = $32;
-     $$1 = $$048$lcssa;$$132 = $$03147$lcssa;$63 = 0;
-     break L10;
-    }
-   } while(0);
-   $33 = HEAP8[$3>>0]|0;
-   $$mask$i = $33 & 1;
-   $34 = ($$mask$i<<24>>24)==(0);
-   if (!($34)) {
-    return;
-   }
-   $35 = HEAP32[$6>>2]|0;
-   $36 = ($35|0)==(64);
-   if (!($36)) {
-    return;
-   }
-   $37 = ((($0)) + 41|0);
-   _transform_1707($0,$37);
-   HEAP32[$6>>2] = 0;
-   $38 = ((($0)) + 32|0);
-   $39 = HEAP32[$38>>2]|0;
-   $40 = (($39) + 1)|0;
-   HEAP32[$38>>2] = $40;
-   return;
-  }
- } while(0);
- $41 = ($$132>>>0)>(63);
- if ($41) {
-  $42 = ((($0)) + 32|0);
-  $43 = (($$132) + -64)|0;
-  $44 = $43 & -64;
-  $45 = (($44) + 64)|0;
-  $$23343 = $$132;$$244 = $$1;
-  while(1) {
-   _transform_1707($0,$$244);
-   HEAP32[$6>>2] = 0;
-   $46 = HEAP32[$42>>2]|0;
-   $47 = (($46) + 1)|0;
-   HEAP32[$42>>2] = $47;
-   $48 = (($$23343) + -64)|0;
-   $49 = ((($$244)) + 64|0);
-   $50 = ($48>>>0)>(63);
-   if ($50) {
-    $$23343 = $48;$$244 = $49;
-   } else {
-    break;
-   }
-  }
-  $51 = (($43) - ($44))|0;
-  $scevgep = (($$1) + ($45)|0);
-  $$2$lcssa = $scevgep;$$233$lcssa = $51;$54 = 0;
- } else {
-  $$2$lcssa = $$1;$$233$lcssa = $$132;$54 = $63;
- }
- $52 = ($$233$lcssa|0)!=(0);
- $53 = ($54|0)<(64);
- $or$cond74 = $52 & $53;
- if (!($or$cond74)) {
-  return;
- }
- $$3344066 = $$233$lcssa;$$34165 = $$2$lcssa;$57 = $54;
- while(1) {
-  $55 = HEAP8[$$34165>>0]|0;
-  $56 = (($57) + 1)|0;
-  HEAP32[$6>>2] = $56;
-  $58 = (((($0)) + 41|0) + ($57)|0);
-  HEAP8[$58>>0] = $55;
-  $59 = (($$3344066) + -1)|0;
-  $60 = ($59|0)==(0);
-  if ($60) {
-   label = 24;
-   break;
-  }
-  $61 = ((($$34165)) + 1|0);
-  $$pre58 = HEAP32[$6>>2]|0;
-  $62 = ($$pre58|0)<(64);
-  if ($62) {
-   $$3344066 = $59;$$34165 = $61;$57 = $$pre58;
-  } else {
-   label = 24;
-   break;
-  }
- }
- if ((label|0) == 24) {
-  return;
- }
-}
-function _finalize($0) {
- $0 = $0|0;
- var $$lcssa = 0, $$mask = 0, $$mask$i115 = 0, $$phi$trans$insert = 0, $$pre = 
0, $$pre$phi120Z2D = 0, $$pre$phiZ2D = 0, $$pre119 = 0, $1 = 0, $10 = 0, $100 = 
0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 
0, $109 = 0;
- var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 
= 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0;
- var $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 
= 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0;
- var $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0;
- var $164 = 0, $165 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $spec$select = 0, 
dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 40|0);
- $2 = HEAP8[$1>>0]|0;
- $$mask = $2 & 1;
- $3 = ($$mask<<24>>24)==(0);
- if (!($3)) {
-  return;
- }
- $4 = ((($0)) + 36|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($5|0)==(64);
- if ($6) {
-  $7 = ((($0)) + 41|0);
-  _transform_1707($0,$7);
-  HEAP32[$4>>2] = 0;
-  $8 = ((($0)) + 32|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = (($9) + 1)|0;
-  HEAP32[$8>>2] = $10;
-  $$pre$phi120Z2D = $7;$$pre$phiZ2D = $8;$12 = $10;$15 = 0;
- } else {
-  $$phi$trans$insert = ((($0)) + 32|0);
-  $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-  $$pre119 = (((($0)) + 41|0) + ($5)|0);
-  $$pre$phi120Z2D = $$pre119;$$pre$phiZ2D = $$phi$trans$insert;$12 = $$pre;$15 
= $5;
- }
- $11 = $12 << 6;
- $13 = $12 >>> 26;
- $14 = (($11) + ($15))|0;
- $16 = ($14>>>0)<($11>>>0);
- $17 = $16&1;
- $spec$select = (($13) + ($17))|0;
- $18 = $14 << 3;
- $19 = $spec$select << 3;
- $20 = $14 >>> 29;
- $21 = $19 | $20;
- $22 = ($15|0)<(56);
- $23 = ((($0)) + 41|0);
- $24 = (($15) + 1)|0;
- HEAP32[$4>>2] = $24;
- HEAP8[$$pre$phi120Z2D>>0] = -128;
- $25 = HEAP32[$4>>2]|0;
- if ($22) {
-  $26 = ($25|0)<(56);
-  if ($26) {
-   $28 = $25;
-   while(1) {
-    $27 = (($28) + 1)|0;
-    HEAP32[$4>>2] = $27;
-    $29 = (((($0)) + 41|0) + ($28)|0);
-    HEAP8[$29>>0] = 0;
-    $30 = HEAP32[$4>>2]|0;
-    $31 = ($30|0)<(56);
-    if ($31) {
-     $28 = $30;
-    } else {
-     break;
-    }
-   }
-  }
- } else {
-  $32 = ($25|0)<(64);
-  if ($32) {
-   $34 = $25;
-   while(1) {
-    $33 = (($34) + 1)|0;
-    HEAP32[$4>>2] = $33;
-    $35 = (((($0)) + 41|0) + ($34)|0);
-    HEAP8[$35>>0] = 0;
-    $36 = HEAP32[$4>>2]|0;
-    $37 = ($36|0)<(64);
-    if ($37) {
-     $34 = $36;
-    } else {
-     $$lcssa = $36;
-     break;
-    }
-   }
-  } else {
-   $$lcssa = $25;
-  }
-  $38 = HEAP8[$1>>0]|0;
-  $$mask$i115 = $38 & 1;
-  $39 = ($$mask$i115<<24>>24)==(0);
-  $40 = ($$lcssa|0)==(64);
-  $or$cond = $40 & $39;
-  if ($or$cond) {
-   $41 = ((($0)) + 41|0);
-   _transform_1707($0,$41);
-   HEAP32[$4>>2] = 0;
-   $42 = HEAP32[$$pre$phiZ2D>>2]|0;
-   $43 = (($42) + 1)|0;
-   HEAP32[$$pre$phiZ2D>>2] = $43;
-  }
-  dest=$23; stop=dest+56|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while 
((dest|0) < (stop|0));
- }
- $44 = ((($0)) + 97|0);
- HEAP8[$44>>0] = 0;
- $45 = ((($0)) + 98|0);
- HEAP8[$45>>0] = 0;
- $46 = $spec$select >>> 5;
- $47 = $46&255;
- $48 = ((($0)) + 99|0);
- HEAP8[$48>>0] = $47;
- $49 = $21&255;
- $50 = ((($0)) + 100|0);
- HEAP8[$50>>0] = $49;
- $51 = $14 >>> 21;
- $52 = $51&255;
- $53 = ((($0)) + 101|0);
- HEAP8[$53>>0] = $52;
- $54 = $14 >>> 13;
- $55 = $54&255;
- $56 = ((($0)) + 102|0);
- HEAP8[$56>>0] = $55;
- $57 = $14 >>> 5;
- $58 = $57&255;
- $59 = ((($0)) + 103|0);
- HEAP8[$59>>0] = $58;
- $60 = $18&255;
- $61 = ((($0)) + 104|0);
- HEAP8[$61>>0] = $60;
- _transform_1707($0,$23);
- $62 = HEAP32[$0>>2]|0;
- $63 = $62 >>> 24;
- $64 = $63&255;
- $65 = ((($0)) + 42|0);
- HEAP8[$23>>0] = $64;
- $66 = $62 >>> 16;
- $67 = $66&255;
- $68 = ((($0)) + 43|0);
- HEAP8[$65>>0] = $67;
- $69 = $62 >>> 8;
- $70 = $69&255;
- $71 = ((($0)) + 44|0);
- HEAP8[$68>>0] = $70;
- $72 = $62&255;
- $73 = ((($0)) + 45|0);
- HEAP8[$71>>0] = $72;
- $74 = ((($0)) + 4|0);
- $75 = HEAP32[$74>>2]|0;
- $76 = $75 >>> 24;
- $77 = $76&255;
- $78 = ((($0)) + 46|0);
- HEAP8[$73>>0] = $77;
- $79 = $75 >>> 16;
- $80 = $79&255;
- $81 = ((($0)) + 47|0);
- HEAP8[$78>>0] = $80;
- $82 = $75 >>> 8;
- $83 = $82&255;
- $84 = ((($0)) + 48|0);
- HEAP8[$81>>0] = $83;
- $85 = $75&255;
- $86 = ((($0)) + 49|0);
- HEAP8[$84>>0] = $85;
- $87 = ((($0)) + 8|0);
- $88 = HEAP32[$87>>2]|0;
- $89 = $88 >>> 24;
- $90 = $89&255;
- $91 = ((($0)) + 50|0);
- HEAP8[$86>>0] = $90;
- $92 = $88 >>> 16;
- $93 = $92&255;
- $94 = ((($0)) + 51|0);
- HEAP8[$91>>0] = $93;
- $95 = $88 >>> 8;
- $96 = $95&255;
- $97 = ((($0)) + 52|0);
- HEAP8[$94>>0] = $96;
- $98 = $88&255;
- $99 = ((($0)) + 53|0);
- HEAP8[$97>>0] = $98;
- $100 = ((($0)) + 12|0);
- $101 = HEAP32[$100>>2]|0;
- $102 = $101 >>> 24;
- $103 = $102&255;
- $104 = ((($0)) + 54|0);
- HEAP8[$99>>0] = $103;
- $105 = $101 >>> 16;
- $106 = $105&255;
- $107 = ((($0)) + 55|0);
- HEAP8[$104>>0] = $106;
- $108 = $101 >>> 8;
- $109 = $108&255;
- $110 = ((($0)) + 56|0);
- HEAP8[$107>>0] = $109;
- $111 = $101&255;
- $112 = ((($0)) + 57|0);
- HEAP8[$110>>0] = $111;
- $113 = ((($0)) + 16|0);
- $114 = HEAP32[$113>>2]|0;
- $115 = $114 >>> 24;
- $116 = $115&255;
- $117 = ((($0)) + 58|0);
- HEAP8[$112>>0] = $116;
- $118 = $114 >>> 16;
- $119 = $118&255;
- $120 = ((($0)) + 59|0);
- HEAP8[$117>>0] = $119;
- $121 = $114 >>> 8;
- $122 = $121&255;
- $123 = ((($0)) + 60|0);
- HEAP8[$120>>0] = $122;
- $124 = $114&255;
- $125 = ((($0)) + 61|0);
- HEAP8[$123>>0] = $124;
- $126 = ((($0)) + 20|0);
- $127 = HEAP32[$126>>2]|0;
- $128 = $127 >>> 24;
- $129 = $128&255;
- $130 = ((($0)) + 62|0);
- HEAP8[$125>>0] = $129;
- $131 = $127 >>> 16;
- $132 = $131&255;
- $133 = ((($0)) + 63|0);
- HEAP8[$130>>0] = $132;
- $134 = $127 >>> 8;
- $135 = $134&255;
- $136 = ((($0)) + 64|0);
- HEAP8[$133>>0] = $135;
- $137 = $127&255;
- $138 = ((($0)) + 65|0);
- HEAP8[$136>>0] = $137;
- $139 = ((($0)) + 24|0);
- $140 = HEAP32[$139>>2]|0;
- $141 = $140 >>> 24;
- $142 = $141&255;
- $143 = ((($0)) + 66|0);
- HEAP8[$138>>0] = $142;
- $144 = $140 >>> 16;
- $145 = $144&255;
- $146 = ((($0)) + 67|0);
- HEAP8[$143>>0] = $145;
- $147 = $140 >>> 8;
- $148 = $147&255;
- $149 = ((($0)) + 68|0);
- HEAP8[$146>>0] = $148;
- $150 = $140&255;
- $151 = ((($0)) + 69|0);
- HEAP8[$149>>0] = $150;
- $152 = ((($0)) + 28|0);
- $153 = HEAP32[$152>>2]|0;
- $154 = $153 >>> 24;
- $155 = $154&255;
- $156 = ((($0)) + 70|0);
- HEAP8[$151>>0] = $155;
- $157 = $153 >>> 16;
- $158 = $157&255;
- $159 = ((($0)) + 71|0);
- HEAP8[$156>>0] = $158;
- $160 = $153 >>> 8;
- $161 = $160&255;
- $162 = ((($0)) + 72|0);
- HEAP8[$159>>0] = $161;
- $163 = $153&255;
- HEAP8[$162>>0] = $163;
- $164 = HEAP8[$1>>0]|0;
- $165 = $164 | 1;
- HEAP8[$1>>0] = $165;
- return;
-}
-function __gcry_hmac256_release($0) {
- $0 = $0|0;
- var $$mask = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = ((($0)) + 40|0);
- $3 = HEAP8[$2>>0]|0;
- $$mask = $3 & 2;
- $4 = ($$mask<<24>>24)==(0);
- if (!($4)) {
-  $5 = ((($0)) + 105|0);
-  HEAP8[$5>>0] = 0;
-  $6 = ((($0)) + 106|0);
-  HEAP8[$6>>0] = 0;
-  $7 = ((($0)) + 107|0);
-  HEAP8[$7>>0] = 0;
-  $8 = ((($0)) + 108|0);
-  HEAP8[$8>>0] = 0;
-  $9 = ((($0)) + 109|0);
-  HEAP8[$9>>0] = 0;
-  $10 = ((($0)) + 110|0);
-  HEAP8[$10>>0] = 0;
-  $11 = ((($0)) + 111|0);
-  HEAP8[$11>>0] = 0;
-  $12 = ((($0)) + 112|0);
-  HEAP8[$12>>0] = 0;
-  $13 = ((($0)) + 113|0);
-  HEAP8[$13>>0] = 0;
-  $14 = ((($0)) + 114|0);
-  HEAP8[$14>>0] = 0;
-  $15 = ((($0)) + 115|0);
-  HEAP8[$15>>0] = 0;
-  $16 = ((($0)) + 116|0);
-  HEAP8[$16>>0] = 0;
-  $17 = ((($0)) + 117|0);
-  HEAP8[$17>>0] = 0;
-  $18 = ((($0)) + 118|0);
-  HEAP8[$18>>0] = 0;
-  $19 = ((($0)) + 119|0);
-  HEAP8[$19>>0] = 0;
-  $20 = ((($0)) + 120|0);
-  HEAP8[$20>>0] = 0;
-  $21 = ((($0)) + 121|0);
-  HEAP8[$21>>0] = 0;
-  $22 = ((($0)) + 122|0);
-  HEAP8[$22>>0] = 0;
-  $23 = ((($0)) + 123|0);
-  HEAP8[$23>>0] = 0;
-  $24 = ((($0)) + 124|0);
-  HEAP8[$24>>0] = 0;
-  $25 = ((($0)) + 125|0);
-  HEAP8[$25>>0] = 0;
-  $26 = ((($0)) + 126|0);
-  HEAP8[$26>>0] = 0;
-  $27 = ((($0)) + 127|0);
-  HEAP8[$27>>0] = 0;
-  $28 = ((($0)) + 128|0);
-  HEAP8[$28>>0] = 0;
-  $29 = ((($0)) + 129|0);
-  HEAP8[$29>>0] = 0;
-  $30 = ((($0)) + 130|0);
-  HEAP8[$30>>0] = 0;
-  $31 = ((($0)) + 131|0);
-  HEAP8[$31>>0] = 0;
-  $32 = ((($0)) + 132|0);
-  HEAP8[$32>>0] = 0;
-  $33 = ((($0)) + 133|0);
-  HEAP8[$33>>0] = 0;
-  $34 = ((($0)) + 134|0);
-  HEAP8[$34>>0] = 0;
-  $35 = ((($0)) + 135|0);
-  HEAP8[$35>>0] = 0;
-  $36 = ((($0)) + 136|0);
-  HEAP8[$36>>0] = 0;
-  $37 = ((($0)) + 137|0);
-  HEAP8[$37>>0] = 0;
-  $38 = ((($0)) + 138|0);
-  HEAP8[$38>>0] = 0;
-  $39 = ((($0)) + 139|0);
-  HEAP8[$39>>0] = 0;
-  $40 = ((($0)) + 140|0);
-  HEAP8[$40>>0] = 0;
-  $41 = ((($0)) + 141|0);
-  HEAP8[$41>>0] = 0;
-  $42 = ((($0)) + 142|0);
-  HEAP8[$42>>0] = 0;
-  $43 = ((($0)) + 143|0);
-  HEAP8[$43>>0] = 0;
-  $44 = ((($0)) + 144|0);
-  HEAP8[$44>>0] = 0;
-  $45 = ((($0)) + 145|0);
-  HEAP8[$45>>0] = 0;
-  $46 = ((($0)) + 146|0);
-  HEAP8[$46>>0] = 0;
-  $47 = ((($0)) + 147|0);
-  HEAP8[$47>>0] = 0;
-  $48 = ((($0)) + 148|0);
-  HEAP8[$48>>0] = 0;
-  $49 = ((($0)) + 149|0);
-  HEAP8[$49>>0] = 0;
-  $50 = ((($0)) + 150|0);
-  HEAP8[$50>>0] = 0;
-  $51 = ((($0)) + 151|0);
-  HEAP8[$51>>0] = 0;
-  $52 = ((($0)) + 152|0);
-  HEAP8[$52>>0] = 0;
-  $53 = ((($0)) + 153|0);
-  HEAP8[$53>>0] = 0;
-  $54 = ((($0)) + 154|0);
-  HEAP8[$54>>0] = 0;
-  $55 = ((($0)) + 155|0);
-  HEAP8[$55>>0] = 0;
-  $56 = ((($0)) + 156|0);
-  HEAP8[$56>>0] = 0;
-  $57 = ((($0)) + 157|0);
-  HEAP8[$57>>0] = 0;
-  $58 = ((($0)) + 158|0);
-  HEAP8[$58>>0] = 0;
-  $59 = ((($0)) + 159|0);
-  HEAP8[$59>>0] = 0;
-  $60 = ((($0)) + 160|0);
-  HEAP8[$60>>0] = 0;
-  $61 = ((($0)) + 161|0);
-  HEAP8[$61>>0] = 0;
-  $62 = ((($0)) + 162|0);
-  HEAP8[$62>>0] = 0;
-  $63 = ((($0)) + 163|0);
-  HEAP8[$63>>0] = 0;
-  $64 = ((($0)) + 164|0);
-  HEAP8[$64>>0] = 0;
-  $65 = ((($0)) + 165|0);
-  HEAP8[$65>>0] = 0;
-  $66 = ((($0)) + 166|0);
-  HEAP8[$66>>0] = 0;
-  $67 = ((($0)) + 167|0);
-  HEAP8[$67>>0] = 0;
-  $68 = ((($0)) + 168|0);
-  HEAP8[$68>>0] = 0;
- }
- _free($0);
- return;
-}
-function _transform_1707($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0107122 = 0, $$0108121 = 0, $$0108121$phi = 0, $$0109120 = 0, 
$$0109120$phi = 0, $$0110119 = 0, $$0110119$phi = 0, $$0111118 = 0, $$0112117 = 
0, $$0112117$phi = 0, $$0113116 = 0, $$0113116$phi = 0, $$0114115 = 0, 
$$0114115$phi = 0, $$2124 = 0, $$3123 = 0, $$pre = 0, $10 = 0, $100 = 0, $101 = 
0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, 
$127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, 
$134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0;
- var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 
= 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0;
- var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0;
- var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 
= 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0;
- var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 
= 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 
= 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0;
- var $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, 
$217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, 
$224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0;
- var $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 
= 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0;
- var $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 
= 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0;
- var $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 
= 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 
= 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0;
- var $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 
= 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 
= 0, $298 = 0, $3 = 0, $30 = 0, $31 = 0;
- var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, 
$4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, 
$exitcond131 = 0, dest = 0, label = 0, sp = 0, src = 0;
- var stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(320|0);
- $2 = sp + 256|0;
- $3 = sp;
- $4 = HEAP32[$0>>2]|0;
- $5 = ((($0)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($0)) + 8|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 12|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ((($0)) + 16|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ((($0)) + 20|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ((($0)) + 24|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = ((($0)) + 28|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = ((($1)) + 1|0);
- $20 = HEAP8[$1>>0]|0;
- $21 = ((($2)) + 3|0);
- HEAP8[$21>>0] = $20;
- $22 = ((($1)) + 2|0);
- $23 = HEAP8[$19>>0]|0;
- $24 = ((($2)) + 2|0);
- HEAP8[$24>>0] = $23;
- $25 = ((($1)) + 3|0);
- $26 = HEAP8[$22>>0]|0;
- $27 = ((($2)) + 1|0);
- HEAP8[$27>>0] = $26;
- $28 = ((($1)) + 4|0);
- $29 = HEAP8[$25>>0]|0;
- HEAP8[$2>>0] = $29;
- $30 = ((($2)) + 4|0);
- $31 = ((($1)) + 5|0);
- $32 = HEAP8[$28>>0]|0;
- $33 = ((($30)) + 3|0);
- HEAP8[$33>>0] = $32;
- $34 = ((($1)) + 6|0);
- $35 = HEAP8[$31>>0]|0;
- $36 = ((($30)) + 2|0);
- HEAP8[$36>>0] = $35;
- $37 = ((($1)) + 7|0);
- $38 = HEAP8[$34>>0]|0;
- $39 = ((($30)) + 1|0);
- HEAP8[$39>>0] = $38;
- $40 = ((($1)) + 8|0);
- $41 = HEAP8[$37>>0]|0;
- HEAP8[$30>>0] = $41;
- $42 = ((($2)) + 8|0);
- $43 = ((($1)) + 9|0);
- $44 = HEAP8[$40>>0]|0;
- $45 = ((($42)) + 3|0);
- HEAP8[$45>>0] = $44;
- $46 = ((($1)) + 10|0);
- $47 = HEAP8[$43>>0]|0;
- $48 = ((($42)) + 2|0);
- HEAP8[$48>>0] = $47;
- $49 = ((($1)) + 11|0);
- $50 = HEAP8[$46>>0]|0;
- $51 = ((($42)) + 1|0);
- HEAP8[$51>>0] = $50;
- $52 = ((($1)) + 12|0);
- $53 = HEAP8[$49>>0]|0;
- HEAP8[$42>>0] = $53;
- $54 = ((($2)) + 12|0);
- $55 = ((($1)) + 13|0);
- $56 = HEAP8[$52>>0]|0;
- $57 = ((($54)) + 3|0);
- HEAP8[$57>>0] = $56;
- $58 = ((($1)) + 14|0);
- $59 = HEAP8[$55>>0]|0;
- $60 = ((($54)) + 2|0);
- HEAP8[$60>>0] = $59;
- $61 = ((($1)) + 15|0);
- $62 = HEAP8[$58>>0]|0;
- $63 = ((($54)) + 1|0);
- HEAP8[$63>>0] = $62;
- $64 = ((($1)) + 16|0);
- $65 = HEAP8[$61>>0]|0;
- HEAP8[$54>>0] = $65;
- $66 = ((($2)) + 16|0);
- $67 = ((($1)) + 17|0);
- $68 = HEAP8[$64>>0]|0;
- $69 = ((($66)) + 3|0);
- HEAP8[$69>>0] = $68;
- $70 = ((($1)) + 18|0);
- $71 = HEAP8[$67>>0]|0;
- $72 = ((($66)) + 2|0);
- HEAP8[$72>>0] = $71;
- $73 = ((($1)) + 19|0);
- $74 = HEAP8[$70>>0]|0;
- $75 = ((($66)) + 1|0);
- HEAP8[$75>>0] = $74;
- $76 = ((($1)) + 20|0);
- $77 = HEAP8[$73>>0]|0;
- HEAP8[$66>>0] = $77;
- $78 = ((($2)) + 20|0);
- $79 = ((($1)) + 21|0);
- $80 = HEAP8[$76>>0]|0;
- $81 = ((($78)) + 3|0);
- HEAP8[$81>>0] = $80;
- $82 = ((($1)) + 22|0);
- $83 = HEAP8[$79>>0]|0;
- $84 = ((($78)) + 2|0);
- HEAP8[$84>>0] = $83;
- $85 = ((($1)) + 23|0);
- $86 = HEAP8[$82>>0]|0;
- $87 = ((($78)) + 1|0);
- HEAP8[$87>>0] = $86;
- $88 = ((($1)) + 24|0);
- $89 = HEAP8[$85>>0]|0;
- HEAP8[$78>>0] = $89;
- $90 = ((($2)) + 24|0);
- $91 = ((($1)) + 25|0);
- $92 = HEAP8[$88>>0]|0;
- $93 = ((($90)) + 3|0);
- HEAP8[$93>>0] = $92;
- $94 = ((($1)) + 26|0);
- $95 = HEAP8[$91>>0]|0;
- $96 = ((($90)) + 2|0);
- HEAP8[$96>>0] = $95;
- $97 = ((($1)) + 27|0);
- $98 = HEAP8[$94>>0]|0;
- $99 = ((($90)) + 1|0);
- HEAP8[$99>>0] = $98;
- $100 = ((($1)) + 28|0);
- $101 = HEAP8[$97>>0]|0;
- HEAP8[$90>>0] = $101;
- $102 = ((($2)) + 28|0);
- $103 = ((($1)) + 29|0);
- $104 = HEAP8[$100>>0]|0;
- $105 = ((($102)) + 3|0);
- HEAP8[$105>>0] = $104;
- $106 = ((($1)) + 30|0);
- $107 = HEAP8[$103>>0]|0;
- $108 = ((($102)) + 2|0);
- HEAP8[$108>>0] = $107;
- $109 = ((($1)) + 31|0);
- $110 = HEAP8[$106>>0]|0;
- $111 = ((($102)) + 1|0);
- HEAP8[$111>>0] = $110;
- $112 = ((($1)) + 32|0);
- $113 = HEAP8[$109>>0]|0;
- HEAP8[$102>>0] = $113;
- $114 = ((($2)) + 32|0);
- $115 = ((($1)) + 33|0);
- $116 = HEAP8[$112>>0]|0;
- $117 = ((($114)) + 3|0);
- HEAP8[$117>>0] = $116;
- $118 = ((($1)) + 34|0);
- $119 = HEAP8[$115>>0]|0;
- $120 = ((($114)) + 2|0);
- HEAP8[$120>>0] = $119;
- $121 = ((($1)) + 35|0);
- $122 = HEAP8[$118>>0]|0;
- $123 = ((($114)) + 1|0);
- HEAP8[$123>>0] = $122;
- $124 = ((($1)) + 36|0);
- $125 = HEAP8[$121>>0]|0;
- HEAP8[$114>>0] = $125;
- $126 = ((($2)) + 36|0);
- $127 = ((($1)) + 37|0);
- $128 = HEAP8[$124>>0]|0;
- $129 = ((($126)) + 3|0);
- HEAP8[$129>>0] = $128;
- $130 = ((($1)) + 38|0);
- $131 = HEAP8[$127>>0]|0;
- $132 = ((($126)) + 2|0);
- HEAP8[$132>>0] = $131;
- $133 = ((($1)) + 39|0);
- $134 = HEAP8[$130>>0]|0;
- $135 = ((($126)) + 1|0);
- HEAP8[$135>>0] = $134;
- $136 = ((($1)) + 40|0);
- $137 = HEAP8[$133>>0]|0;
- HEAP8[$126>>0] = $137;
- $138 = ((($2)) + 40|0);
- $139 = ((($1)) + 41|0);
- $140 = HEAP8[$136>>0]|0;
- $141 = ((($138)) + 3|0);
- HEAP8[$141>>0] = $140;
- $142 = ((($1)) + 42|0);
- $143 = HEAP8[$139>>0]|0;
- $144 = ((($138)) + 2|0);
- HEAP8[$144>>0] = $143;
- $145 = ((($1)) + 43|0);
- $146 = HEAP8[$142>>0]|0;
- $147 = ((($138)) + 1|0);
- HEAP8[$147>>0] = $146;
- $148 = ((($1)) + 44|0);
- $149 = HEAP8[$145>>0]|0;
- HEAP8[$138>>0] = $149;
- $150 = ((($2)) + 44|0);
- $151 = ((($1)) + 45|0);
- $152 = HEAP8[$148>>0]|0;
- $153 = ((($150)) + 3|0);
- HEAP8[$153>>0] = $152;
- $154 = ((($1)) + 46|0);
- $155 = HEAP8[$151>>0]|0;
- $156 = ((($150)) + 2|0);
- HEAP8[$156>>0] = $155;
- $157 = ((($1)) + 47|0);
- $158 = HEAP8[$154>>0]|0;
- $159 = ((($150)) + 1|0);
- HEAP8[$159>>0] = $158;
- $160 = ((($1)) + 48|0);
- $161 = HEAP8[$157>>0]|0;
- HEAP8[$150>>0] = $161;
- $162 = ((($2)) + 48|0);
- $163 = ((($1)) + 49|0);
- $164 = HEAP8[$160>>0]|0;
- $165 = ((($162)) + 3|0);
- HEAP8[$165>>0] = $164;
- $166 = ((($1)) + 50|0);
- $167 = HEAP8[$163>>0]|0;
- $168 = ((($162)) + 2|0);
- HEAP8[$168>>0] = $167;
- $169 = ((($1)) + 51|0);
- $170 = HEAP8[$166>>0]|0;
- $171 = ((($162)) + 1|0);
- HEAP8[$171>>0] = $170;
- $172 = ((($1)) + 52|0);
- $173 = HEAP8[$169>>0]|0;
- HEAP8[$162>>0] = $173;
- $174 = ((($2)) + 52|0);
- $175 = ((($1)) + 53|0);
- $176 = HEAP8[$172>>0]|0;
- $177 = ((($174)) + 3|0);
- HEAP8[$177>>0] = $176;
- $178 = ((($1)) + 54|0);
- $179 = HEAP8[$175>>0]|0;
- $180 = ((($174)) + 2|0);
- HEAP8[$180>>0] = $179;
- $181 = ((($1)) + 55|0);
- $182 = HEAP8[$178>>0]|0;
- $183 = ((($174)) + 1|0);
- HEAP8[$183>>0] = $182;
- $184 = ((($1)) + 56|0);
- $185 = HEAP8[$181>>0]|0;
- HEAP8[$174>>0] = $185;
- $186 = ((($2)) + 56|0);
- $187 = ((($1)) + 57|0);
- $188 = HEAP8[$184>>0]|0;
- $189 = ((($186)) + 3|0);
- HEAP8[$189>>0] = $188;
- $190 = ((($1)) + 58|0);
- $191 = HEAP8[$187>>0]|0;
- $192 = ((($186)) + 2|0);
- HEAP8[$192>>0] = $191;
- $193 = ((($1)) + 59|0);
- $194 = HEAP8[$190>>0]|0;
- $195 = ((($186)) + 1|0);
- HEAP8[$195>>0] = $194;
- $196 = ((($1)) + 60|0);
- $197 = HEAP8[$193>>0]|0;
- HEAP8[$186>>0] = $197;
- $198 = ((($2)) + 60|0);
- $199 = ((($1)) + 61|0);
- $200 = HEAP8[$196>>0]|0;
- $201 = ((($198)) + 3|0);
- HEAP8[$201>>0] = $200;
- $202 = ((($1)) + 62|0);
- $203 = HEAP8[$199>>0]|0;
- $204 = ((($198)) + 2|0);
- HEAP8[$204>>0] = $203;
- $205 = ((($1)) + 63|0);
- $206 = HEAP8[$202>>0]|0;
- $207 = ((($198)) + 1|0);
- HEAP8[$207>>0] = $206;
- $208 = HEAP8[$205>>0]|0;
- HEAP8[$198>>0] = $208;
- dest=$3; src=$2; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; 
dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));
- $$pre = HEAP32[$3>>2]|0;
- $$2124 = 16;$237 = $$pre;
- while(1) {
-  $209 = (($$2124) + -2)|0;
-  $210 = (($3) + ($209<<2)|0);
-  $211 = HEAP32[$210>>2]|0;
-  $212 = $211 >>> 17;
-  $213 = $211 << 15;
-  $214 = $213 | $212;
-  $215 = $211 >>> 19;
-  $216 = $211 << 13;
-  $217 = $216 | $215;
-  $218 = $211 >>> 10;
-  $219 = $217 ^ $218;
-  $220 = $219 ^ $214;
-  $221 = (($$2124) + -7)|0;
-  $222 = (($3) + ($221<<2)|0);
-  $223 = HEAP32[$222>>2]|0;
-  $224 = (($$2124) + -15)|0;
-  $225 = (($3) + ($224<<2)|0);
-  $226 = HEAP32[$225>>2]|0;
-  $227 = $226 >>> 7;
-  $228 = $226 << 25;
-  $229 = $228 | $227;
-  $230 = $226 >>> 18;
-  $231 = $226 << 14;
-  $232 = $231 | $230;
-  $233 = $226 >>> 3;
-  $234 = $232 ^ $233;
-  $235 = $234 ^ $229;
-  $236 = (($237) + ($223))|0;
-  $238 = (($236) + ($220))|0;
-  $239 = (($238) + ($235))|0;
-  $240 = (($3) + ($$2124<<2)|0);
-  HEAP32[$240>>2] = $239;
-  $241 = (($$2124) + 1)|0;
-  $exitcond131 = ($241|0)==(64);
-  if ($exitcond131) {
-   break;
-  } else {
-   $$2124 = $241;$237 = $226;
-  }
- }
- $$0107122 = $4;$$0108121 = $18;$$0109120 = $16;$$0110119 = $14;$$0111118 = 
$12;$$0112117 = $10;$$0113116 = $8;$$0114115 = $6;$$3123 = 0;
- while(1) {
-  $242 = $$0111118 >>> 6;
-  $243 = $$0111118 << 26;
-  $244 = $243 | $242;
-  $245 = $$0111118 >>> 11;
-  $246 = $$0111118 << 21;
-  $247 = $246 | $245;
-  $248 = $244 ^ $247;
-  $249 = $$0111118 >>> 25;
-  $250 = $$0111118 << 7;
-  $251 = $250 | $249;
-  $252 = $248 ^ $251;
-  $253 = (($252) + ($$0108121))|0;
-  $254 = $$0109120 ^ $$0110119;
-  $255 = $254 & $$0111118;
-  $256 = $255 ^ $$0109120;
-  $257 = (($253) + ($256))|0;
-  $258 = (15440 + ($$3123<<2)|0);
-  $259 = HEAP32[$258>>2]|0;
-  $260 = (($257) + ($259))|0;
-  $261 = (($3) + ($$3123<<2)|0);
-  $262 = HEAP32[$261>>2]|0;
-  $263 = (($260) + ($262))|0;
-  $264 = $$0107122 >>> 2;
-  $265 = $$0107122 << 30;
-  $266 = $265 | $264;
-  $267 = $$0107122 >>> 13;
-  $268 = $$0107122 << 19;
-  $269 = $268 | $267;
-  $270 = $266 ^ $269;
-  $271 = $$0107122 >>> 22;
-  $272 = $$0107122 << 10;
-  $273 = $272 | $271;
-  $274 = $270 ^ $273;
-  $275 = $$0107122 & $$0114115;
-  $276 = $$0107122 | $$0114115;
-  $277 = $276 & $$0113116;
-  $278 = $277 | $275;
-  $279 = (($274) + ($278))|0;
-  $280 = (($263) + ($$0112117))|0;
-  $281 = (($279) + ($263))|0;
-  $282 = (($$3123) + 1)|0;
-  $exitcond = ($282|0)==(64);
-  if ($exitcond) {
-   break;
-  } else {
-   $$0114115$phi = $$0107122;$$0113116$phi = $$0114115;$$0112117$phi = 
$$0113116;$$0110119$phi = $$0111118;$$0109120$phi = $$0110119;$$0108121$phi = 
$$0109120;$$0107122 = $281;$$0111118 = $280;$$3123 = $282;$$0114115 = 
$$0114115$phi;$$0113116 = $$0113116$phi;$$0112117 = $$0112117$phi;$$0110119 = 
$$0110119$phi;$$0109120 = $$0109120$phi;$$0108121 = $$0108121$phi;
-  }
- }
- $283 = HEAP32[$0>>2]|0;
- $284 = (($283) + ($281))|0;
- HEAP32[$0>>2] = $284;
- $285 = HEAP32[$5>>2]|0;
- $286 = (($285) + ($$0107122))|0;
- HEAP32[$5>>2] = $286;
- $287 = HEAP32[$7>>2]|0;
- $288 = (($287) + ($$0114115))|0;
- HEAP32[$7>>2] = $288;
- $289 = HEAP32[$9>>2]|0;
- $290 = (($289) + ($$0113116))|0;
- HEAP32[$9>>2] = $290;
- $291 = HEAP32[$11>>2]|0;
- $292 = (($291) + ($280))|0;
- HEAP32[$11>>2] = $292;
- $293 = HEAP32[$13>>2]|0;
- $294 = (($293) + ($$0111118))|0;
- HEAP32[$13>>2] = $294;
- $295 = HEAP32[$15>>2]|0;
- $296 = (($295) + ($$0110119))|0;
- HEAP32[$15>>2] = $296;
- $297 = HEAP32[$17>>2]|0;
- $298 = (($297) + ($$0109120))|0;
- HEAP32[$17>>2] = $298;
- STACKTOP = sp;return;
-}
-function __gcry_hmac256_finalize($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$1 = 0, $$mask = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- _finalize($0);
- $2 = ((($0)) + 40|0);
- $3 = HEAP8[$2>>0]|0;
- $$mask = $3 & 2;
- $4 = ($$mask<<24>>24)==(0);
- do {
-  if (!($4)) {
-   $5 = (_malloc(172)|0);
-   $6 = ($5|0)==(0|0);
-   if (!($6)) {
-    HEAP32[$5>>2] = 1779033703;
-    $7 = ((($5)) + 4|0);
-    HEAP32[$7>>2] = -1150833019;
-    $8 = ((($5)) + 8|0);
-    HEAP32[$8>>2] = 1013904242;
-    $9 = ((($5)) + 12|0);
-    HEAP32[$9>>2] = -1521486534;
-    $10 = ((($5)) + 16|0);
-    HEAP32[$10>>2] = 1359893119;
-    $11 = ((($5)) + 20|0);
-    HEAP32[$11>>2] = -1694144372;
-    $12 = ((($5)) + 24|0);
-    HEAP32[$12>>2] = 528734635;
-    $13 = ((($5)) + 28|0);
-    HEAP32[$13>>2] = 1541459225;
-    $14 = ((($5)) + 32|0);
-    HEAP32[$14>>2] = 0;
-    $15 = ((($5)) + 36|0);
-    HEAP32[$15>>2] = 0;
-    $16 = ((($5)) + 40|0);
-    HEAP8[$16>>0] = 0;
-    $17 = ((($0)) + 105|0);
-    __gcry_hmac256_update($5,$17,64);
-    $18 = ((($0)) + 41|0);
-    __gcry_hmac256_update($5,$18,32);
-    _finalize($5);
-    $19 = ((($5)) + 41|0);
-    dest=$18; src=$19; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    __gcry_hmac256_release($5);
-    break;
-   }
-   _free($0);
-   $$1 = 0;
-   return ($$1|0);
-  }
- } while(0);
- $20 = ($1|0)==(0|0);
- if (!($20)) {
-  HEAP32[$1>>2] = 32;
- }
- $21 = ((($0)) + 41|0);
- $$1 = $21;
- return ($$1|0);
-}
-function __gcry_cipher_aeswrap_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$06169 = 0, $$06268 = 0, $$06466 = 0, $$06466$us = 0, $$1$lcssa 
= 0, $$167 = 0, $$167$us = 0, $$pre$phiZ2D = 0, $$promoted = 0, $$promoted101 = 
0, $$promoted103 = 0, $$promoted105 = 0, $$promoted107 = 0, $$promoted109 = 0, 
$$promoted99 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0;
- var $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 
= 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 
= 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0;
- var $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, 
$128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, 
$135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0;
- var $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 
= 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 
= 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0;
- var $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 
= 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 
= 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0;
- var $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 
= 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0;
- var $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 
= 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 
= 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0;
- var $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, 
$219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, 
$226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0;
- var $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, 
$237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, 
$244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0;
- var $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 
= 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 
= 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0;
- var $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 
= 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 
= 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0;
- var $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 
= 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 
= 0, $30 = 0, $300 = 0, $301 = 0, $31 = 0;
- var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $spec$select = 0, 
$spec$select142 = 0, $spec$select144 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ((($0)) + 12|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($7)) + 20|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(16);
- if (!($10)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- $11 = (($4) + 8)|0;
- $12 = ($11>>>0)>($2>>>0);
- if ($12) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = $4 & 7;
- $14 = ($13|0)==(0);
- if (!($14)) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = $4 >>> 3;
- $16 = ($4>>>0)<(16);
- if ($16) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = ((($0)) + 80|0);
- $18 = ((($0)) + 56|0);
- $19 = HEAP8[$18>>0]|0;
- $20 = $19 & 2;
- $21 = ($20<<24>>24)==(0);
- if ($21) {
-  $33 = $1;
-  $34 = $33;
-  
HEAP8[$34>>0]=-1499027802&255;HEAP8[$34+1>>0]=(-1499027802>>8)&255;HEAP8[$34+2>>0]=(-1499027802>>16)&255;HEAP8[$34+3>>0]=-1499027802>>24;
-  $35 = (($33) + 4)|0;
-  $36 = $35;
-  
HEAP8[$36>>0]=-1499027802&255;HEAP8[$36+1>>0]=(-1499027802>>8)&255;HEAP8[$36+2>>0]=(-1499027802>>16)&255;HEAP8[$36+3>>0]=-1499027802>>24;
-  $$pre$phiZ2D = $1;
- } else {
-  $22 = ((($0)) + 64|0);
-  $23 = $22;
-  $24 = $23;
-  $25 = 
HEAPU8[$24>>0]|(HEAPU8[$24+1>>0]<<8)|(HEAPU8[$24+2>>0]<<16)|(HEAPU8[$24+3>>0]<<24);
-  $26 = (($23) + 4)|0;
-  $27 = $26;
-  $28 = 
HEAPU8[$27>>0]|(HEAPU8[$27+1>>0]<<8)|(HEAPU8[$27+2>>0]<<16)|(HEAPU8[$27+3>>0]<<24);
-  $29 = $1;
-  $30 = $29;
-  
HEAP8[$30>>0]=$25&255;HEAP8[$30+1>>0]=($25>>8)&255;HEAP8[$30+2>>0]=($25>>16)&255;HEAP8[$30+3>>0]=$25>>24;
-  $31 = (($29) + 4)|0;
-  $32 = $31;
-  
HEAP8[$32>>0]=$28&255;HEAP8[$32+1>>0]=($28>>8)&255;HEAP8[$32+2>>0]=($28>>16)&255;HEAP8[$32+3>>0]=$28>>24;
-  $$pre$phiZ2D = $1;
- }
- $37 = ((($1)) + 8|0);
- _memmove(($37|0),($3|0),($4|0))|0;
- $38 = $5;
- $39 = $38;
- HEAP32[$39>>2] = 0;
- $40 = (($38) + 4)|0;
- $41 = $40;
- HEAP32[$41>>2] = 0;
- $42 = ($15|0)==(0);
- $43 = ((($0)) + 88|0);
- $44 = ((($0)) + 496|0);
- $45 = $1;
- $46 = $17;
- $47 = $46 | $45;
- $48 = $47 & 3;
- $49 = ($48|0)==(0);
- $50 = ((($17)) + 4|0);
- $51 = ((($5)) + 4|0);
- $52 = ((($1)) + 4|0);
- $53 = ((($5)) + 7|0);
- $54 = ((($5)) + 6|0);
- $55 = ((($5)) + 5|0);
- $56 = ((($5)) + 4|0);
- $57 = ((($5)) + 3|0);
- $58 = ((($5)) + 2|0);
- $59 = ((($5)) + 1|0);
- $60 = ((($17)) + 1|0);
- $61 = ((($5)) + 7|0);
- $62 = ((($5)) + 6|0);
- $63 = ((($1)) + 1|0);
- $64 = ((($17)) + 2|0);
- $65 = ((($1)) + 2|0);
- $66 = ((($17)) + 3|0);
- $67 = ((($1)) + 3|0);
- $68 = ((($17)) + 4|0);
- $69 = ((($1)) + 4|0);
- $70 = ((($17)) + 5|0);
- $71 = ((($1)) + 5|0);
- $72 = ((($17)) + 6|0);
- $73 = ((($1)) + 6|0);
- $74 = ((($17)) + 7|0);
- $75 = ((($1)) + 7|0);
- $76 = ((($5)) + 5|0);
- $77 = ((($5)) + 4|0);
- $78 = ((($5)) + 3|0);
- $79 = ((($5)) + 2|0);
- $80 = ((($5)) + 1|0);
- $$06169 = 0;$$06268 = 0;$249 = 0;$250 = 0;$251 = 0;$252 = 0;$253 = 0;$254 = 
0;$255 = 0;$256 = 0;$257 = 0;$258 = 0;$259 = 0;$260 = 0;$261 = 0;$262 = 0;
- while(1) {
-  do {
-   if ($42) {
-    $$1$lcssa = $$06169;$263 = $249;$264 = $250;$265 = $251;$266 = $252;$267 = 
$253;$268 = $254;$269 = $255;$270 = $256;$271 = $257;$272 = $258;$273 = 
$259;$274 = $260;$275 = $261;$276 = $262;
-   } else {
-    if ($49) {
-     $$06466$us = 1;$$167$us = $$06169;$110 = $262;$113 = $252;$233 = 
$251;$236 = $250;$239 = $258;$242 = $257;$245 = $256;$248 = $249;$277 = 
$260;$278 = $261;
-     while(1) {
-      $81 = $$pre$phiZ2D;
-      $82 = $81;
-      $83 = 
HEAPU8[$82>>0]|(HEAPU8[$82+1>>0]<<8)|(HEAPU8[$82+2>>0]<<16)|(HEAPU8[$82+3>>0]<<24);
-      $84 = (($81) + 4)|0;
-      $85 = $84;
-      $86 = 
HEAPU8[$85>>0]|(HEAPU8[$85+1>>0]<<8)|(HEAPU8[$85+2>>0]<<16)|(HEAPU8[$85+3>>0]<<24);
-      $87 = $17;
-      $88 = $87;
-      
HEAP8[$88>>0]=$83&255;HEAP8[$88+1>>0]=($83>>8)&255;HEAP8[$88+2>>0]=($83>>16)&255;HEAP8[$88+3>>0]=$83>>24;
-      $89 = (($87) + 4)|0;
-      $90 = $89;
-      
HEAP8[$90>>0]=$86&255;HEAP8[$90+1>>0]=($86>>8)&255;HEAP8[$90+2>>0]=($86>>16)&255;HEAP8[$90+3>>0]=$86>>24;
-      $91 = $$06466$us << 3;
-      $92 = (($1) + ($91)|0);
-      $93 = $92;
-      $94 = $93;
-      $95 = 
HEAPU8[$94>>0]|(HEAPU8[$94+1>>0]<<8)|(HEAPU8[$94+2>>0]<<16)|(HEAPU8[$94+3>>0]<<24);
-      $96 = (($93) + 4)|0;
-      $97 = $96;
-      $98 = 
HEAPU8[$97>>0]|(HEAPU8[$97+1>>0]<<8)|(HEAPU8[$97+2>>0]<<16)|(HEAPU8[$97+3>>0]<<24);
-      $99 = $43;
-      $100 = $99;
-      
HEAP8[$100>>0]=$95&255;HEAP8[$100+1>>0]=($95>>8)&255;HEAP8[$100+2>>0]=($95>>16)&255;HEAP8[$100+3>>0]=$95>>24;
-      $101 = (($99) + 4)|0;
-      $102 = $101;
-      
HEAP8[$102>>0]=$98&255;HEAP8[$102+1>>0]=($98>>8)&255;HEAP8[$102+2>>0]=($98>>16)&255;HEAP8[$102+3>>0]=$98>>24;
-      $103 = HEAP32[$6>>2]|0;
-      $104 = ((($103)) + 36|0);
-      $105 = HEAP32[$104>>2]|0;
-      $106 = (FUNCTION_TABLE_iiii[$105 & 127]($44,$17,$17)|0);
-      $107 = ($106>>>0)>($$167$us>>>0);
-      $108 = $107 ? $106 : $$167$us;
-      $109 = (($110) + 1)<<24>>24;
-      HEAP8[$53>>0] = $109;
-      $111 = ($109<<24>>24)==(0);
-      if ($111) {
-       $112 = (($113) + 1)<<24>>24;
-       HEAP8[$54>>0] = $112;
-       $114 = ($112<<24>>24)==(0);
-       if ($114) {
-        $232 = (($233) + 1)<<24>>24;
-        HEAP8[$55>>0] = $232;
-        $234 = ($232<<24>>24)==(0);
-        if ($234) {
-         $235 = (($236) + 1)<<24>>24;
-         HEAP8[$56>>0] = $235;
-         $237 = ($235<<24>>24)==(0);
-         if ($237) {
-          $238 = (($239) + 1)<<24>>24;
-          HEAP8[$57>>0] = $238;
-          $240 = ($238<<24>>24)==(0);
-          if ($240) {
-           $241 = (($242) + 1)<<24>>24;
-           HEAP8[$58>>0] = $241;
-           $243 = ($241<<24>>24)==(0);
-           if ($243) {
-            $244 = (($245) + 1)<<24>>24;
-            HEAP8[$59>>0] = $244;
-            $246 = ($244<<24>>24)==(0);
-            if ($246) {
-             $247 = (($248) + 1)<<24>>24;
-             HEAP8[$5>>0] = $247;
-             $279 = 0;$280 = 0;$281 = 0;$282 = 0;$283 = 0;$284 = 0;$285 = 0;
-            } else {
-             $279 = 0;$280 = 0;$281 = $244;$282 = 0;$283 = 0;$284 = 0;$285 = 0;
-            }
-           } else {
-            $279 = 0;$280 = 0;$281 = $245;$282 = $241;$283 = 0;$284 = 0;$285 = 
0;
-           }
-          } else {
-           $279 = 0;$280 = 0;$281 = $245;$282 = $242;$283 = $238;$284 = 0;$285 
= 0;
-          }
-         } else {
-          $279 = 0;$280 = 0;$281 = $245;$282 = $242;$283 = $239;$284 = 0;$285 
= 0;
-         }
-        } else {
-         $279 = $232;$280 = 0;$281 = $245;$282 = $242;$283 = $239;$284 = 
$232;$285 = 0;
-        }
-       } else {
-        $279 = $233;$280 = $112;$281 = $245;$282 = $242;$283 = $239;$284 = 
$277;$285 = $112;
-       }
-      } else {
-       $279 = $233;$280 = $113;$281 = $245;$282 = $242;$283 = $239;$284 = 
$277;$285 = $278;
-      }
-      $115 = HEAP32[$17>>2]|0;
-      $116 = HEAP32[$5>>2]|0;
-      $117 = $116 ^ $115;
-      HEAP32[$1>>2] = $117;
-      $118 = HEAP32[$50>>2]|0;
-      $119 = HEAP32[$51>>2]|0;
-      $120 = $119 ^ $118;
-      HEAP32[$52>>2] = $120;
-      $121 = $43;
-      $122 = $121;
-      $123 = 
HEAPU8[$122>>0]|(HEAPU8[$122+1>>0]<<8)|(HEAPU8[$122+2>>0]<<16)|(HEAPU8[$122+3>>0]<<24);
-      $124 = (($121) + 4)|0;
-      $125 = $124;
-      $126 = 
HEAPU8[$125>>0]|(HEAPU8[$125+1>>0]<<8)|(HEAPU8[$125+2>>0]<<16)|(HEAPU8[$125+3>>0]<<24);
-      $127 = $92;
-      $128 = $127;
-      
HEAP8[$128>>0]=$123&255;HEAP8[$128+1>>0]=($123>>8)&255;HEAP8[$128+2>>0]=($123>>16)&255;HEAP8[$128+3>>0]=$123>>24;
-      $129 = (($127) + 4)|0;
-      $130 = $129;
-      
HEAP8[$130>>0]=$126&255;HEAP8[$130+1>>0]=($126>>8)&255;HEAP8[$130+2>>0]=($126>>16)&255;HEAP8[$130+3>>0]=$126>>24;
-      $131 = (($$06466$us) + 1)|0;
-      $132 = ($$06466$us>>>0)<($15>>>0);
-      $133 = $119&255;
-      $134 = $116&255;
-      if ($132) {
-       $$06466$us = $131;$$167$us = $108;$110 = $109;$113 = $280;$233 = 
$279;$236 = $133;$239 = $283;$242 = $282;$245 = $281;$248 = $134;$277 = 
$284;$278 = $285;
-      } else {
-       $$1$lcssa = $108;$263 = $134;$264 = $133;$265 = $279;$266 = $280;$267 = 
$133;$268 = $134;$269 = $134;$270 = $281;$271 = $282;$272 = $283;$273 = 
$133;$274 = $284;$275 = $285;$276 = $109;
-       break;
-      }
-     }
-    } else {
-     $$promoted = HEAP8[$62>>0]|0;
-     $$promoted99 = HEAP8[$76>>0]|0;
-     $$promoted101 = HEAP8[$77>>0]|0;
-     $$promoted103 = HEAP8[$78>>0]|0;
-     $$promoted105 = HEAP8[$79>>0]|0;
-     $$promoted107 = HEAP8[$80>>0]|0;
-     $$promoted109 = HEAP8[$5>>0]|0;
-     $$06466 = 1;$$167 = $$06169;$164 = $262;$167 = $261;$213 = $260;$216 = 
$259;$219 = $258;$222 = $257;$225 = $256;$228 = $255;$229 = $$promoted109;$230 
= $249;$231 = $254;$286 = $$promoted107;$287 = $$promoted105;$288 = 
$$promoted103;$289 = $$promoted101;$290 = $$promoted99;$291 = $$promoted;$292 = 
$250;$293 = $251;$294 = $252;$295 = $253;
-     while(1) {
-      $135 = $$pre$phiZ2D;
-      $136 = $135;
-      $137 = 
HEAPU8[$136>>0]|(HEAPU8[$136+1>>0]<<8)|(HEAPU8[$136+2>>0]<<16)|(HEAPU8[$136+3>>0]<<24);
-      $138 = (($135) + 4)|0;
-      $139 = $138;
-      $140 = 
HEAPU8[$139>>0]|(HEAPU8[$139+1>>0]<<8)|(HEAPU8[$139+2>>0]<<16)|(HEAPU8[$139+3>>0]<<24);
-      $141 = $17;
-      $142 = $141;
-      
HEAP8[$142>>0]=$137&255;HEAP8[$142+1>>0]=($137>>8)&255;HEAP8[$142+2>>0]=($137>>16)&255;HEAP8[$142+3>>0]=$137>>24;
-      $143 = (($141) + 4)|0;
-      $144 = $143;
-      
HEAP8[$144>>0]=$140&255;HEAP8[$144+1>>0]=($140>>8)&255;HEAP8[$144+2>>0]=($140>>16)&255;HEAP8[$144+3>>0]=$140>>24;
-      $145 = $$06466 << 3;
-      $146 = (($1) + ($145)|0);
-      $147 = $146;
-      $148 = $147;
-      $149 = 
HEAPU8[$148>>0]|(HEAPU8[$148+1>>0]<<8)|(HEAPU8[$148+2>>0]<<16)|(HEAPU8[$148+3>>0]<<24);
-      $150 = (($147) + 4)|0;
-      $151 = $150;
-      $152 = 
HEAPU8[$151>>0]|(HEAPU8[$151+1>>0]<<8)|(HEAPU8[$151+2>>0]<<16)|(HEAPU8[$151+3>>0]<<24);
-      $153 = $43;
-      $154 = $153;
-      
HEAP8[$154>>0]=$149&255;HEAP8[$154+1>>0]=($149>>8)&255;HEAP8[$154+2>>0]=($149>>16)&255;HEAP8[$154+3>>0]=$149>>24;
-      $155 = (($153) + 4)|0;
-      $156 = $155;
-      
HEAP8[$156>>0]=$152&255;HEAP8[$156+1>>0]=($152>>8)&255;HEAP8[$156+2>>0]=($152>>16)&255;HEAP8[$156+3>>0]=$152>>24;
-      $157 = HEAP32[$6>>2]|0;
-      $158 = ((($157)) + 36|0);
-      $159 = HEAP32[$158>>2]|0;
-      $160 = (FUNCTION_TABLE_iiii[$159 & 127]($44,$17,$17)|0);
-      $161 = ($160>>>0)>($$167>>>0);
-      $162 = $161 ? $160 : $$167;
-      $163 = (($164) + 1)<<24>>24;
-      $165 = ($163<<24>>24)==(0);
-      if ($165) {
-       $166 = (($167) + 1)<<24>>24;
-       $168 = ($166<<24>>24)==(0);
-       if ($168) {
-        $212 = (($213) + 1)<<24>>24;
-        $214 = ($212<<24>>24)==(0);
-        if ($214) {
-         $215 = (($216) + 1)<<24>>24;
-         $217 = ($215<<24>>24)==(0);
-         if ($217) {
-          $218 = (($219) + 1)<<24>>24;
-          $220 = ($218<<24>>24)==(0);
-          if ($220) {
-           $221 = (($222) + 1)<<24>>24;
-           $223 = ($221<<24>>24)==(0);
-           if ($223) {
-            $224 = (($225) + 1)<<24>>24;
-            $226 = ($224<<24>>24)==(0);
-            $227 = (($228) + 1)<<24>>24;
-            $spec$select = $226 ? $227 : $229;
-            $spec$select142 = $226 ? $227 : $230;
-            $spec$select144 = $226 ? $227 : $231;
-            $171 = $spec$select144;$174 = $224;$177 = 0;$180 = 0;$183 = 0;$186 
= $212;$189 = $166;$204 = $215;$205 = $218;$206 = $221;$207 = $224;$208 = 
$spec$select;$296 = $spec$select142;$297 = 0;$298 = 0;$299 = 0;$300 = 0;$301 = 
0;
-           } else {
-            $171 = $231;$174 = $225;$177 = $221;$180 = 0;$183 = 0;$186 = 
$212;$189 = $166;$204 = $215;$205 = $218;$206 = $221;$207 = $286;$208 = 
$229;$296 = $230;$297 = 0;$298 = 0;$299 = 0;$300 = 0;$301 = 0;
-           }
-          } else {
-           $171 = $231;$174 = $225;$177 = $222;$180 = $218;$183 = 0;$186 = 
$212;$189 = $166;$204 = $215;$205 = $218;$206 = $287;$207 = $286;$208 = 
$229;$296 = $230;$297 = 0;$298 = 0;$299 = 0;$300 = 0;$301 = 0;
-          }
-         } else {
-          $171 = $231;$174 = $225;$177 = $222;$180 = $219;$183 = $215;$186 = 
$212;$189 = $166;$204 = $215;$205 = $288;$206 = $287;$207 = $286;$208 = 
$229;$296 = $230;$297 = $215;$298 = 0;$299 = 0;$300 = 0;$301 = 0;
-         }
-        } else {
-         $171 = $231;$174 = $225;$177 = $222;$180 = $219;$183 = $295;$186 = 
$212;$189 = $166;$204 = $289;$205 = $288;$206 = $287;$207 = $286;$208 = 
$229;$296 = $230;$297 = $292;$298 = $212;$299 = 0;$300 = $212;$301 = 0;
-        }
-       } else {
-        $171 = $231;$174 = $225;$177 = $222;$180 = $219;$183 = $295;$186 = 
$290;$189 = $166;$204 = $289;$205 = $288;$206 = $287;$207 = $286;$208 = 
$229;$296 = $230;$297 = $292;$298 = $293;$299 = $166;$300 = $213;$301 = $166;
-       }
-      } else {
-       $171 = $231;$174 = $225;$177 = $222;$180 = $219;$183 = $295;$186 = 
$290;$189 = $291;$204 = $289;$205 = $288;$206 = $287;$207 = $286;$208 = 
$229;$296 = $230;$297 = $292;$298 = $293;$299 = $294;$300 = $213;$301 = $167;
-      }
-      $169 = HEAP8[$17>>0]|0;
-      $170 = $171 ^ $169;
-      HEAP8[$1>>0] = $170;
-      $172 = HEAP8[$60>>0]|0;
-      $173 = $174 ^ $172;
-      HEAP8[$63>>0] = $173;
-      $175 = HEAP8[$64>>0]|0;
-      $176 = $177 ^ $175;
-      HEAP8[$65>>0] = $176;
-      $178 = HEAP8[$66>>0]|0;
-      $179 = $180 ^ $178;
-      HEAP8[$67>>0] = $179;
-      $181 = HEAP8[$68>>0]|0;
-      $182 = $183 ^ $181;
-      HEAP8[$69>>0] = $182;
-      $184 = HEAP8[$70>>0]|0;
-      $185 = $186 ^ $184;
-      HEAP8[$71>>0] = $185;
-      $187 = HEAP8[$72>>0]|0;
-      $188 = $189 ^ $187;
-      HEAP8[$73>>0] = $188;
-      $190 = HEAP8[$74>>0]|0;
-      $191 = $163 ^ $190;
-      HEAP8[$75>>0] = $191;
-      $192 = $43;
-      $193 = $192;
-      $194 = 
HEAPU8[$193>>0]|(HEAPU8[$193+1>>0]<<8)|(HEAPU8[$193+2>>0]<<16)|(HEAPU8[$193+3>>0]<<24);
-      $195 = (($192) + 4)|0;
-      $196 = $195;
-      $197 = 
HEAPU8[$196>>0]|(HEAPU8[$196+1>>0]<<8)|(HEAPU8[$196+2>>0]<<16)|(HEAPU8[$196+3>>0]<<24);
-      $198 = $146;
-      $199 = $198;
-      
HEAP8[$199>>0]=$194&255;HEAP8[$199+1>>0]=($194>>8)&255;HEAP8[$199+2>>0]=($194>>16)&255;HEAP8[$199+3>>0]=$194>>24;
-      $200 = (($198) + 4)|0;
-      $201 = $200;
-      
HEAP8[$201>>0]=$197&255;HEAP8[$201+1>>0]=($197>>8)&255;HEAP8[$201+2>>0]=($197>>16)&255;HEAP8[$201+3>>0]=$197>>24;
-      $202 = (($$06466) + 1)|0;
-      $203 = ($$06466>>>0)<($15>>>0);
-      if ($203) {
-       $$06466 = $202;$$167 = $162;$164 = $163;$167 = $301;$213 = $300;$216 = 
$183;$219 = $180;$222 = $177;$225 = $174;$228 = $171;$229 = $208;$230 = 
$296;$231 = $171;$286 = $207;$287 = $206;$288 = $205;$289 = $204;$290 = 
$186;$291 = $189;$292 = $297;$293 = $298;$294 = $299;$295 = $183;
-      } else {
-       break;
-      }
-     }
-     HEAP8[$61>>0] = $163;
-     HEAP8[$62>>0] = $189;
-     HEAP8[$76>>0] = $186;
-     HEAP8[$77>>0] = $204;
-     HEAP8[$78>>0] = $205;
-     HEAP8[$79>>0] = $206;
-     HEAP8[$80>>0] = $207;
-     HEAP8[$5>>0] = $208;
-     $$1$lcssa = $162;$263 = $296;$264 = $297;$265 = $298;$266 = $299;$267 = 
$183;$268 = $171;$269 = $171;$270 = $174;$271 = $177;$272 = $180;$273 = 
$183;$274 = $300;$275 = $301;$276 = $163;
-     break;
-    }
-   }
-  } while(0);
-  $209 = (($$06268) + 1)|0;
-  $exitcond = ($209|0)==(6);
-  if ($exitcond) {
-   break;
-  } else {
-   $$06169 = $$1$lcssa;$$06268 = $209;$249 = $263;$250 = $264;$251 = $265;$252 
= $266;$253 = $267;$254 = $268;$255 = $269;$256 = $270;$257 = $271;$258 = 
$272;$259 = $273;$260 = $274;$261 = $275;$262 = $276;
-  }
- }
- $210 = ($$1$lcssa|0)==(0);
- if ($210) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $211 = (($$1$lcssa) + 16)|0;
- ___gcry_burn_stack($211);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_aeswrap_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$07990 = 0, $$08089 = 0, $$08487 = 0, $$08487$us = 0, $$1$lcssa 
= 0, $$181 = 0, $$188 = 0, $$188$us = 0, $$promoted = 0, $$promoted123 = 0, 
$$promoted125 = 0, $$promoted127 = 0, $$promoted129 = 0, $$promoted131 = 0, 
$$promoted133 = 0, $$promoted135 = 0, $10 = 0, $100 = 0, $101 = 0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, 
$127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, 
$134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0;
- var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 
= 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0;
- var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0;
- var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 
= 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0;
- var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 
= 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 
= 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0;
- var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, 
$218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, 
$225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0;
- var $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 
= 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 
= 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0;
- var $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 
= 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 
= 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0;
- var $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 
= 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 
= 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0;
- var $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 
= 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 
= 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0;
- var $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, 
$309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, 
$spec$select = 0, $spec$select137 = 0, $spec$select138 = 0, $spec$select140 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ((($0)) + 12|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($7)) + 20|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(16);
- if (!($10)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- $11 = (($2) + 8)|0;
- $12 = ($11>>>0)<($4>>>0);
- if ($12) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = $4 & 7;
- $14 = ($13|0)!=(0);
- $15 = ($4>>>0)<(24);
- $or$cond = $15 | $14;
- if ($or$cond) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = $4 >>> 3;
- $17 = ((($0)) + 96|0);
- $18 = ((($0)) + 80|0);
- $19 = $3;
- $20 = $19;
- $21 = 
HEAPU8[$20>>0]|(HEAPU8[$20+1>>0]<<8)|(HEAPU8[$20+2>>0]<<16)|(HEAPU8[$20+3>>0]<<24);
- $22 = (($19) + 4)|0;
- $23 = $22;
- $24 = 
HEAPU8[$23>>0]|(HEAPU8[$23+1>>0]<<8)|(HEAPU8[$23+2>>0]<<16)|(HEAPU8[$23+3>>0]<<24);
- $25 = $17;
- $26 = $25;
- 
HEAP8[$26>>0]=$21&255;HEAP8[$26+1>>0]=($21>>8)&255;HEAP8[$26+2>>0]=($21>>16)&255;HEAP8[$26+3>>0]=$21>>24;
- $27 = (($25) + 4)|0;
- $28 = $27;
- 
HEAP8[$28>>0]=$24&255;HEAP8[$28+1>>0]=($24>>8)&255;HEAP8[$28+2>>0]=($24>>16)&255;HEAP8[$28+3>>0]=$24>>24;
- $29 = ((($3)) + 8|0);
- $30 = (($4) + -8)|0;
- _memmove(($1|0),($29|0),($30|0))|0;
- $31 = (($16) + -1)|0;
- $32 = ($31*6)|0;
- $33 = $32&255;
- $34 = ((($5)) + 7|0);
- HEAP8[$34>>0] = $33;
- $35 = $32 >>> 8;
- $36 = $35&255;
- $37 = ((($5)) + 6|0);
- HEAP8[$37>>0] = $36;
- $38 = $32 >>> 16;
- $39 = $38&255;
- $40 = ((($5)) + 5|0);
- HEAP8[$40>>0] = $39;
- $41 = $32 >>> 24;
- $42 = $41&255;
- $43 = ((($5)) + 4|0);
- HEAP8[$43>>0] = $42;
- HEAP32[$5>>2] = 0;
- $44 = ($31|0)==(0);
- $45 = $18;
- $46 = $17;
- $47 = $46 | $45;
- $48 = $47 & 3;
- $49 = ($48|0)==(0);
- $50 = ((($0)) + 100|0);
- $51 = ((($18)) + 4|0);
- $52 = ((($0)) + 88|0);
- $53 = ((($0)) + 496|0);
- $54 = ((($5)) + 3|0);
- $55 = ((($5)) + 2|0);
- $56 = ((($5)) + 1|0);
- $57 = ((($0)) + 97|0);
- $58 = ((($18)) + 1|0);
- $59 = ((($0)) + 98|0);
- $60 = ((($18)) + 2|0);
- $61 = ((($0)) + 99|0);
- $62 = ((($18)) + 3|0);
- $63 = ((($0)) + 100|0);
- $64 = ((($18)) + 4|0);
- $65 = ((($0)) + 101|0);
- $66 = ((($5)) + 5|0);
- $67 = ((($18)) + 5|0);
- $68 = ((($0)) + 102|0);
- $69 = ((($5)) + 6|0);
- $70 = ((($18)) + 6|0);
- $71 = ((($0)) + 103|0);
- $72 = ((($5)) + 7|0);
- $73 = ((($18)) + 7|0);
- $74 = ((($5)) + 3|0);
- $75 = ((($5)) + 2|0);
- $76 = ((($5)) + 1|0);
- $$07990 = 0;$$08089 = 5;$274 = 0;$275 = $42;$276 = $39;$277 = $36;$278 = 
$33;$279 = $42;$280 = 0;$281 = 0;$282 = 0;$283 = 0;
- while(1) {
-  do {
-   if ($44) {
-    $$1$lcssa = $$07990;$284 = $274;$285 = $275;$286 = $276;$287 = $277;$288 = 
$278;$289 = $279;$290 = $280;$291 = $281;$292 = $282;$293 = $283;
-   } else {
-    if ($49) {
-     $$08487$us = $31;$$188$us = $$07990;$103 = $278;$108 = $277;$260 = 
$276;$265 = $280;$268 = $281;$271 = $282;
-     while(1) {
-      $77 = HEAP32[$17>>2]|0;
-      $78 = HEAP32[$5>>2]|0;
-      $79 = $78 ^ $77;
-      HEAP32[$18>>2] = $79;
-      $80 = HEAP32[$50>>2]|0;
-      $81 = HEAP32[$43>>2]|0;
-      $82 = $81 ^ $80;
-      HEAP32[$51>>2] = $82;
-      $83 = $$08487$us << 3;
-      $84 = (($83) + -8)|0;
-      $85 = (($1) + ($84)|0);
-      $86 = $85;
-      $87 = $86;
-      $88 = 
HEAPU8[$87>>0]|(HEAPU8[$87+1>>0]<<8)|(HEAPU8[$87+2>>0]<<16)|(HEAPU8[$87+3>>0]<<24);
-      $89 = (($86) + 4)|0;
-      $90 = $89;
-      $91 = 
HEAPU8[$90>>0]|(HEAPU8[$90+1>>0]<<8)|(HEAPU8[$90+2>>0]<<16)|(HEAPU8[$90+3>>0]<<24);
-      $92 = $52;
-      $93 = $92;
-      
HEAP8[$93>>0]=$88&255;HEAP8[$93+1>>0]=($88>>8)&255;HEAP8[$93+2>>0]=($88>>16)&255;HEAP8[$93+3>>0]=$88>>24;
-      $94 = (($92) + 4)|0;
-      $95 = $94;
-      
HEAP8[$95>>0]=$91&255;HEAP8[$95+1>>0]=($91>>8)&255;HEAP8[$95+2>>0]=($91>>16)&255;HEAP8[$95+3>>0]=$91>>24;
-      $96 = HEAP32[$6>>2]|0;
-      $97 = ((($96)) + 40|0);
-      $98 = HEAP32[$97>>2]|0;
-      $99 = (FUNCTION_TABLE_iiii[$98 & 127]($53,$18,$18)|0);
-      $100 = ($99>>>0)>($$188$us>>>0);
-      $101 = $100 ? $99 : $$188$us;
-      $102 = (($103) + -1)<<24>>24;
-      HEAP8[$34>>0] = $102;
-      $104 = ($103<<24>>24)==(0);
-      $105 = $78&255;
-      $106 = $81&255;
-      if ($104) {
-       $107 = (($108) + -1)<<24>>24;
-       HEAP8[$37>>0] = $107;
-       $109 = ($108<<24>>24)==(0);
-       if ($109) {
-        $259 = (($260) + -1)<<24>>24;
-        HEAP8[$40>>0] = $259;
-        $261 = ($260<<24>>24)==(0);
-        if ($261) {
-         $262 = (($106) + -1)<<24>>24;
-         HEAP8[$43>>0] = $262;
-         $263 = ($106<<24>>24)==(0);
-         if ($263) {
-          $264 = (($265) + -1)<<24>>24;
-          HEAP8[$54>>0] = $264;
-          $266 = ($265<<24>>24)==(0);
-          if ($266) {
-           $267 = (($268) + -1)<<24>>24;
-           HEAP8[$55>>0] = $267;
-           $269 = ($268<<24>>24)==(0);
-           if ($269) {
-            $270 = (($271) + -1)<<24>>24;
-            HEAP8[$56>>0] = $270;
-            $272 = ($271<<24>>24)==(0);
-            if ($272) {
-             $273 = (($105) + -1)<<24>>24;
-             HEAP8[$5>>0] = $273;
-             $294 = $273;$295 = -1;$296 = -1;$297 = -1;$298 = -1;$299 = 
-1;$300 = -1;
-            } else {
-             $294 = $105;$295 = -1;$296 = -1;$297 = -1;$298 = -1;$299 = 
-1;$300 = $270;
-            }
-           } else {
-            $294 = $105;$295 = -1;$296 = -1;$297 = -1;$298 = -1;$299 = 
$267;$300 = $271;
-           }
-          } else {
-           $294 = $105;$295 = -1;$296 = -1;$297 = -1;$298 = $264;$299 = 
$268;$300 = $271;
-          }
-         } else {
-          $294 = $105;$295 = $262;$296 = -1;$297 = -1;$298 = $265;$299 = 
$268;$300 = $271;
-         }
-        } else {
-         $294 = $105;$295 = $106;$296 = $259;$297 = -1;$298 = $265;$299 = 
$268;$300 = $271;
-        }
-       } else {
-        $294 = $105;$295 = $106;$296 = $260;$297 = $107;$298 = $265;$299 = 
$268;$300 = $271;
-       }
-      } else {
-       $294 = $105;$295 = $106;$296 = $260;$297 = $108;$298 = $265;$299 = 
$268;$300 = $271;
-      }
-      $110 = $18;
-      $111 = $110;
-      $112 = 
HEAPU8[$111>>0]|(HEAPU8[$111+1>>0]<<8)|(HEAPU8[$111+2>>0]<<16)|(HEAPU8[$111+3>>0]<<24);
-      $113 = (($110) + 4)|0;
-      $114 = $113;
-      $115 = 
HEAPU8[$114>>0]|(HEAPU8[$114+1>>0]<<8)|(HEAPU8[$114+2>>0]<<16)|(HEAPU8[$114+3>>0]<<24);
-      $116 = $17;
-      $117 = $116;
-      
HEAP8[$117>>0]=$112&255;HEAP8[$117+1>>0]=($112>>8)&255;HEAP8[$117+2>>0]=($112>>16)&255;HEAP8[$117+3>>0]=$112>>24;
-      $118 = (($116) + 4)|0;
-      $119 = $118;
-      
HEAP8[$119>>0]=$115&255;HEAP8[$119+1>>0]=($115>>8)&255;HEAP8[$119+2>>0]=($115>>16)&255;HEAP8[$119+3>>0]=$115>>24;
-      $120 = $52;
-      $121 = $120;
-      $122 = 
HEAPU8[$121>>0]|(HEAPU8[$121+1>>0]<<8)|(HEAPU8[$121+2>>0]<<16)|(HEAPU8[$121+3>>0]<<24);
-      $123 = (($120) + 4)|0;
-      $124 = $123;
-      $125 = 
HEAPU8[$124>>0]|(HEAPU8[$124+1>>0]<<8)|(HEAPU8[$124+2>>0]<<16)|(HEAPU8[$124+3>>0]<<24);
-      $126 = $85;
-      $127 = $126;
-      
HEAP8[$127>>0]=$122&255;HEAP8[$127+1>>0]=($122>>8)&255;HEAP8[$127+2>>0]=($122>>16)&255;HEAP8[$127+3>>0]=$122>>24;
-      $128 = (($126) + 4)|0;
-      $129 = $128;
-      
HEAP8[$129>>0]=$125&255;HEAP8[$129+1>>0]=($125>>8)&255;HEAP8[$129+2>>0]=($125>>16)&255;HEAP8[$129+3>>0]=$125>>24;
-      $130 = (($$08487$us) + -1)|0;
-      $131 = ($130|0)==(0);
-      if ($131) {
-       $$1$lcssa = $101;$284 = $294;$285 = $295;$286 = $296;$287 = $297;$288 = 
$102;$289 = $295;$290 = $298;$291 = $299;$292 = $300;$293 = $294;
-       break;
-      } else {
-       $$08487$us = $130;$$188$us = $101;$103 = $102;$108 = $297;$260 = 
$296;$265 = $298;$268 = $299;$271 = $300;
-      }
-     }
-    } else {
-     $$promoted = HEAP8[$66>>0]|0;
-     $$promoted123 = HEAP8[$69>>0]|0;
-     $$promoted125 = HEAP8[$72>>0]|0;
-     $$promoted127 = HEAP8[$43>>0]|0;
-     $$promoted129 = HEAP8[$74>>0]|0;
-     $$promoted131 = HEAP8[$75>>0]|0;
-     $$promoted133 = HEAP8[$76>>0]|0;
-     $$promoted135 = HEAP8[$5>>0]|0;
-     $$08487 = $31;$$188 = $$07990;$134 = $283;$137 = $282;$140 = $281;$143 = 
$280;$146 = $279;$149 = $$promoted;$152 = $$promoted123;$155 = 
$$promoted125;$176 = $278;$179 = $277;$245 = $276;$248 = $275;$257 = $274;$258 
= $$promoted135;$301 = $$promoted133;$302 = $$promoted131;$303 = 
$$promoted129;$304 = $$promoted127;
-     while(1) {
-      $132 = HEAP8[$17>>0]|0;
-      $133 = $134 ^ $132;
-      HEAP8[$18>>0] = $133;
-      $135 = HEAP8[$57>>0]|0;
-      $136 = $137 ^ $135;
-      HEAP8[$58>>0] = $136;
-      $138 = HEAP8[$59>>0]|0;
-      $139 = $140 ^ $138;
-      HEAP8[$60>>0] = $139;
-      $141 = HEAP8[$61>>0]|0;
-      $142 = $143 ^ $141;
-      HEAP8[$62>>0] = $142;
-      $144 = HEAP8[$63>>0]|0;
-      $145 = $146 ^ $144;
-      HEAP8[$64>>0] = $145;
-      $147 = HEAP8[$65>>0]|0;
-      $148 = $149 ^ $147;
-      HEAP8[$67>>0] = $148;
-      $150 = HEAP8[$68>>0]|0;
-      $151 = $152 ^ $150;
-      HEAP8[$70>>0] = $151;
-      $153 = HEAP8[$71>>0]|0;
-      $154 = $155 ^ $153;
-      HEAP8[$73>>0] = $154;
-      $156 = $$08487 << 3;
-      $157 = (($156) + -8)|0;
-      $158 = (($1) + ($157)|0);
-      $159 = $158;
-      $160 = $159;
-      $161 = 
HEAPU8[$160>>0]|(HEAPU8[$160+1>>0]<<8)|(HEAPU8[$160+2>>0]<<16)|(HEAPU8[$160+3>>0]<<24);
-      $162 = (($159) + 4)|0;
-      $163 = $162;
-      $164 = 
HEAPU8[$163>>0]|(HEAPU8[$163+1>>0]<<8)|(HEAPU8[$163+2>>0]<<16)|(HEAPU8[$163+3>>0]<<24);
-      $165 = $52;
-      $166 = $165;
-      
HEAP8[$166>>0]=$161&255;HEAP8[$166+1>>0]=($161>>8)&255;HEAP8[$166+2>>0]=($161>>16)&255;HEAP8[$166+3>>0]=$161>>24;
-      $167 = (($165) + 4)|0;
-      $168 = $167;
-      
HEAP8[$168>>0]=$164&255;HEAP8[$168+1>>0]=($164>>8)&255;HEAP8[$168+2>>0]=($164>>16)&255;HEAP8[$168+3>>0]=$164>>24;
-      $169 = HEAP32[$6>>2]|0;
-      $170 = ((($169)) + 40|0);
-      $171 = HEAP32[$170>>2]|0;
-      $172 = (FUNCTION_TABLE_iiii[$171 & 127]($53,$18,$18)|0);
-      $173 = ($172>>>0)>($$188>>>0);
-      $174 = $173 ? $172 : $$188;
-      $175 = (($176) + -1)<<24>>24;
-      $177 = ($176<<24>>24)==(0);
-      if ($177) {
-       $178 = (($179) + -1)<<24>>24;
-       $180 = ($179<<24>>24)==(0);
-       if ($180) {
-        $244 = (($245) + -1)<<24>>24;
-        $246 = ($245<<24>>24)==(0);
-        if ($246) {
-         $247 = (($248) + -1)<<24>>24;
-         $249 = ($248<<24>>24)==(0);
-         if ($249) {
-          $250 = (($143) + -1)<<24>>24;
-          $251 = ($143<<24>>24)==(0);
-          if ($251) {
-           $252 = (($140) + -1)<<24>>24;
-           $253 = ($140<<24>>24)==(0);
-           if ($253) {
-            $254 = (($137) + -1)<<24>>24;
-            $255 = ($137<<24>>24)==(0);
-            $256 = (($257) + -1)<<24>>24;
-            $spec$select137 = $255 ? $256 : $258;
-            $spec$select138 = $255 ? $256 : $257;
-            $spec$select140 = $255 ? $256 : $134;
-            $203 = $244;$204 = $178;$205 = $247;$206 = $250;$207 = $252;$208 = 
$254;$209 = $spec$select137;$305 = $spec$select138;$306 = -1;$307 = -1;$308 = 
-1;$309 = -1;$310 = -1;$311 = -1;$312 = $254;$313 = $spec$select140;
-           } else {
-            $203 = $244;$204 = $178;$205 = $247;$206 = $250;$207 = $252;$208 = 
$301;$209 = $258;$305 = $257;$306 = -1;$307 = -1;$308 = -1;$309 = -1;$310 = 
-1;$311 = $252;$312 = $137;$313 = $134;
-           }
-          } else {
-           $203 = $244;$204 = $178;$205 = $247;$206 = $250;$207 = $302;$208 = 
$301;$209 = $258;$305 = $257;$306 = -1;$307 = -1;$308 = -1;$309 = -1;$310 = 
$250;$311 = $140;$312 = $137;$313 = $134;
-          }
-         } else {
-          $203 = $244;$204 = $178;$205 = $247;$206 = $303;$207 = $302;$208 = 
$301;$209 = $258;$305 = $257;$306 = $247;$307 = -1;$308 = -1;$309 = $247;$310 = 
$143;$311 = $140;$312 = $137;$313 = $134;
-         }
-        } else {
-         $203 = $244;$204 = $178;$205 = $304;$206 = $303;$207 = $302;$208 = 
$301;$209 = $258;$305 = $257;$306 = $248;$307 = $244;$308 = -1;$309 = $146;$310 
= $143;$311 = $140;$312 = $137;$313 = $134;
-        }
-       } else {
-        $203 = $149;$204 = $178;$205 = $304;$206 = $303;$207 = $302;$208 = 
$301;$209 = $258;$305 = $257;$306 = $248;$307 = $245;$308 = $178;$309 = 
$146;$310 = $143;$311 = $140;$312 = $137;$313 = $134;
-       }
-      } else {
-       $203 = $149;$204 = $152;$205 = $304;$206 = $303;$207 = $302;$208 = 
$301;$209 = $258;$305 = $257;$306 = $248;$307 = $245;$308 = $179;$309 = 
$146;$310 = $143;$311 = $140;$312 = $137;$313 = $134;
-      }
-      $181 = $18;
-      $182 = $181;
-      $183 = 
HEAPU8[$182>>0]|(HEAPU8[$182+1>>0]<<8)|(HEAPU8[$182+2>>0]<<16)|(HEAPU8[$182+3>>0]<<24);
-      $184 = (($181) + 4)|0;
-      $185 = $184;
-      $186 = 
HEAPU8[$185>>0]|(HEAPU8[$185+1>>0]<<8)|(HEAPU8[$185+2>>0]<<16)|(HEAPU8[$185+3>>0]<<24);
-      $187 = $17;
-      $188 = $187;
-      
HEAP8[$188>>0]=$183&255;HEAP8[$188+1>>0]=($183>>8)&255;HEAP8[$188+2>>0]=($183>>16)&255;HEAP8[$188+3>>0]=$183>>24;
-      $189 = (($187) + 4)|0;
-      $190 = $189;
-      
HEAP8[$190>>0]=$186&255;HEAP8[$190+1>>0]=($186>>8)&255;HEAP8[$190+2>>0]=($186>>16)&255;HEAP8[$190+3>>0]=$186>>24;
-      $191 = $52;
-      $192 = $191;
-      $193 = 
HEAPU8[$192>>0]|(HEAPU8[$192+1>>0]<<8)|(HEAPU8[$192+2>>0]<<16)|(HEAPU8[$192+3>>0]<<24);
-      $194 = (($191) + 4)|0;
-      $195 = $194;
-      $196 = 
HEAPU8[$195>>0]|(HEAPU8[$195+1>>0]<<8)|(HEAPU8[$195+2>>0]<<16)|(HEAPU8[$195+3>>0]<<24);
-      $197 = $158;
-      $198 = $197;
-      
HEAP8[$198>>0]=$193&255;HEAP8[$198+1>>0]=($193>>8)&255;HEAP8[$198+2>>0]=($193>>16)&255;HEAP8[$198+3>>0]=$193>>24;
-      $199 = (($197) + 4)|0;
-      $200 = $199;
-      
HEAP8[$200>>0]=$196&255;HEAP8[$200+1>>0]=($196>>8)&255;HEAP8[$200+2>>0]=($196>>16)&255;HEAP8[$200+3>>0]=$196>>24;
-      $201 = (($$08487) + -1)|0;
-      $202 = ($201|0)==(0);
-      if ($202) {
-       break;
-      } else {
-       $$08487 = $201;$$188 = $174;$134 = $313;$137 = $312;$140 = $311;$143 = 
$310;$146 = $309;$149 = $203;$152 = $204;$155 = $175;$176 = $175;$179 = 
$308;$245 = $307;$248 = $306;$257 = $305;$258 = $209;$301 = $208;$302 = 
$207;$303 = $206;$304 = $205;
-      }
-     }
-     HEAP8[$66>>0] = $203;
-     HEAP8[$69>>0] = $204;
-     HEAP8[$72>>0] = $175;
-     HEAP8[$43>>0] = $205;
-     HEAP8[$74>>0] = $206;
-     HEAP8[$75>>0] = $207;
-     HEAP8[$76>>0] = $208;
-     HEAP8[$5>>0] = $209;
-     $$1$lcssa = $174;$284 = $305;$285 = $306;$286 = $307;$287 = $308;$288 = 
$175;$289 = $309;$290 = $310;$291 = $311;$292 = $312;$293 = $313;
-     break;
-    }
-   }
-  } while(0);
-  $210 = (($$08089) + -1)|0;
-  $211 = ($$08089|0)==(0);
-  if ($211) {
-   break;
-  } else {
-   $$07990 = $$1$lcssa;$$08089 = $210;$274 = $284;$275 = $285;$276 = $286;$277 
= $287;$278 = $288;$279 = $289;$280 = $290;$281 = $291;$282 = $292;$283 = $293;
-  }
- }
- $212 = ((($0)) + 56|0);
- $213 = HEAP8[$212>>0]|0;
- $214 = $213 & 2;
- $215 = ($214<<24>>24)==(0);
- if ($215) {
-  $218 = HEAP8[$17>>0]|0;
-  $219 = ($218<<24>>24)==(-90);
-  if ($219) {
-   $220 = ((($0)) + 97|0);
-   $221 = HEAP8[$220>>0]|0;
-   $222 = ($221<<24>>24)==(-90);
-   if ($222) {
-    $227 = ((($0)) + 98|0);
-    $228 = HEAP8[$227>>0]|0;
-    $229 = ($228<<24>>24)==(-90);
-    if ($229) {
-     $230 = ((($0)) + 99|0);
-     $231 = HEAP8[$230>>0]|0;
-     $232 = ($231<<24>>24)==(-90);
-     if ($232) {
-      $233 = HEAP8[$50>>0]|0;
-      $234 = ($233<<24>>24)==(-90);
-      if ($234) {
-       $235 = ((($0)) + 101|0);
-       $236 = HEAP8[$235>>0]|0;
-       $237 = ($236<<24>>24)==(-90);
-       if ($237) {
-        $238 = ((($0)) + 102|0);
-        $239 = HEAP8[$238>>0]|0;
-        $240 = ($239<<24>>24)==(-90);
-        if ($240) {
-         $241 = ((($0)) + 103|0);
-         $242 = HEAP8[$241>>0]|0;
-         $243 = ($242<<24>>24)!=(-90);
-         $spec$select = $243&1;
-         $$181 = $spec$select;
-        } else {
-         $$181 = 1;
-        }
-       } else {
-        $$181 = 1;
-       }
-      } else {
-       $$181 = 1;
-      }
-     } else {
-      $$181 = 1;
-     }
-    } else {
-     $$181 = 1;
-    }
-   } else {
-    $$181 = 1;
-   }
-  } else {
-   $$181 = 1;
-  }
- } else {
-  $216 = ((($0)) + 64|0);
-  $217 = (_memcmp($17,$216,8)|0);
-  $$181 = $217;
- }
- $223 = ($$1$lcssa|0)==(0);
- if (!($223)) {
-  $224 = (($$1$lcssa) + 16)|0;
-  ___gcry_burn_stack($224);
- }
- $225 = ($$181|0)==(0);
- $226 = $225 ? 0 : 10;
- $$0 = $226;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_cbc_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0 = 0, $$0122$lcssa = 0, $$0122173 = 0, $$0122173$us = 0, 
$$0123 = 0, $$0124$lcssa = 0, $$0124172 = 0, $$0124172$us = 0, $$0127$lcssa = 
0, $$0127171 = 0, $$0127171$us = 0, $$0129$lcssa = 0, $$0129164 = 0, 
$$0131$lcssa = 0, $$0131170 = 0, $$0131170$phi = 0, $$0131170$us = 0, 
$$0131170$us$phi = 0, $$0134169 = 0;
- var $$0134169$us = 0, $$02434$i = 0, $$02434$i149 = 0, $$02533$i = 0, 
$$02533$i150 = 0, $$026$i = 0, $$026$i153 = 0, $$028$i = 0, $$028$i152 = 0, 
$$03449$i$us = 0, $$035$i = 0, $$035$i148 = 0, $$03548$i$us = 0, $$03647$i$us = 
0, $$037$i$us = 0, $$039$i$us = 0, $$041$i$us = 0, $$050$i$us = 0, $$1 = 0, 
$$1$i$us = 0;
- var $$1$i142 = 0, $$1$i154 = 0, $$1128 = 0, $$1130162 = 0, $$1132$lcssa = 0, 
$$1132163 = 0, $$12731$i = 0, $$12731$i158 = 0, $$12930$i = 0, $$12930$i159 = 
0, $$13845$i = 0, $$13845$i$us = 0, $$14044$i = 0, $$14044$i$us = 0, $$14243$i 
= 0, $$14243$i$us = 0, $$2 = 0, $$2126 = 0, $$2133161 = 0, $$232$i = 0;
- var $$232$i157 = 0, $$246$i = 0, $$246$i$us = 0, $$pre = 0, $$pre$phiZ2D = 0, 
$$pre191 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0;
- var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, 
$137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, 
$144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0;
- var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 
= 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0;
- var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 
= 0, $30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $exitcond188 = 0, $or$cond = 
0, $or$cond$i140 = 0, $or$cond$i144 = 0, $or$cond136 = 0, $or$cond137 = 0, 
$or$cond139 = 0;
- var $scevgep$i$us = 0, $scevgep$i141 = 0, $scevgep$i145 = 0, $scevgep44$i = 
0, $scevgep44$i146 = 0, $scevgep61$i$us = 0, $scevgep63$i$us = 0, $spec$select 
= 0, $spec$select138 = 0, $spec$select138$us = 0, $uglygep = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($6)) + 36|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (($4>>>0) / ($8>>>0))&-1;
- $12 = ((($0)) + 52|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = $13 & 8;
- $15 = ($14|0)==(0);
- $16 = $15 ? $4 : $8;
- $17 = ($16>>>0)>($2>>>0);
- if ($17) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $18 = Math_imul($11, $8)|0;
- $19 = (($4) - ($18))|0;
- $20 = ($19|0)==(0);
- if ($20) {
-  $$pre191 = $13 & 4;
-  $$pre$phiZ2D = $$pre191;
- } else {
-  $21 = ($8>>>0)>=($4>>>0);
-  $22 = $13 & 4;
-  $23 = ($22|0)==(0);
-  $or$cond = $21 | $23;
-  if ($or$cond) {
-   $$0 = 139;
-   return ($$0|0);
-  } else {
-   $$pre$phiZ2D = $22;
-  }
- }
- $24 = ($$pre$phiZ2D|0)!=(0);
- $25 = ($8>>>0)<($4>>>0);
- $or$cond136 = $25 & $24;
- $or$cond137 = $or$cond136 & $20;
- $26 = $or$cond137 << 31 >> 31;
- $$0123 = (($11) + ($26))|0;
- $27 = ((($0)) + 28|0);
- $28 = HEAP32[$27>>2]|0;
- $29 = ($28|0)==(0|0);
- if ($29) {
-  $38 = ((($0)) + 64|0);
-  $39 = ($$0123|0)==(0);
-  if ($39) {
-   $$1 = 0;$$1128 = $3;$$2126 = $1;$122 = $13;
-  } else {
-   $40 = ($8>>>0)>(3);
-   $41 = (($8) + -4)|0;
-   $42 = $41 & -4;
-   $43 = (($42) + 4)|0;
-   $44 = ((($0)) + 496|0);
-   $45 = (($41) - ($42))|0;
-   if ($40) {
-    $$0122173$us = 0;$$0124172$us = $1;$$0127171$us = $3;$$0131170$us = 
$38;$$0134169$us = 0;
-    while(1) {
-     $46 = $$0124172$us;
-     $47 = $$0127171$us;
-     $48 = $$0131170$us;
-     $49 = $47 | $48;
-     $50 = $49 | $46;
-     $51 = $50 & 3;
-     $52 = ($51|0)==(0);
-     if ($52) {
-      $scevgep61$i$us = (($$0131170$us) + ($43)|0);
-      $$03449$i$us = $$0131170$us;$$03548$i$us = $$0127171$us;$$03647$i$us = 
$$0124172$us;$$050$i$us = $8;
-      while(1) {
-       $53 = ((($$03548$i$us)) + 4|0);
-       $54 = HEAP32[$$03548$i$us>>2]|0;
-       $55 = ((($$03449$i$us)) + 4|0);
-       $56 = HEAP32[$$03449$i$us>>2]|0;
-       $57 = $56 ^ $54;
-       $58 = ((($$03647$i$us)) + 4|0);
-       HEAP32[$$03647$i$us>>2] = $57;
-       $59 = (($$050$i$us) + -4)|0;
-       $60 = ($59>>>0)>(3);
-       if ($60) {
-        $$03449$i$us = $55;$$03548$i$us = $53;$$03647$i$us = $58;$$050$i$us = 
$59;
-       } else {
-        break;
-       }
-      }
-      $scevgep$i$us = (($$0127171$us) + ($43)|0);
-      $scevgep63$i$us = (($$0124172$us) + ($43)|0);
-      $$037$i$us = $scevgep61$i$us;$$039$i$us = $scevgep$i$us;$$041$i$us = 
$scevgep63$i$us;$$1$i$us = $45;
-     } else {
-      $$037$i$us = $$0131170$us;$$039$i$us = $$0127171$us;$$041$i$us = 
$$0124172$us;$$1$i$us = $8;
-     }
-     $61 = ($$1$i$us|0)==(0);
-     if (!($61)) {
-      $$13845$i$us = $$037$i$us;$$14044$i$us = $$039$i$us;$$14243$i$us = 
$$041$i$us;$$246$i$us = $$1$i$us;
-      while(1) {
-       $62 = ((($$14044$i$us)) + 1|0);
-       $63 = HEAP8[$$14044$i$us>>0]|0;
-       $64 = ((($$13845$i$us)) + 1|0);
-       $65 = HEAP8[$$13845$i$us>>0]|0;
-       $66 = $65 ^ $63;
-       $67 = ((($$14243$i$us)) + 1|0);
-       HEAP8[$$14243$i$us>>0] = $66;
-       $68 = (($$246$i$us) + -1)|0;
-       $69 = ($68|0)==(0);
-       if ($69) {
-        break;
-       } else {
-        $$13845$i$us = $64;$$14044$i$us = $62;$$14243$i$us = $67;$$246$i$us = 
$68;
-       }
-      }
-     }
-     $70 = (FUNCTION_TABLE_iiii[$10 & 127]($44,$$0124172$us,$$0124172$us)|0);
-     $71 = ($70>>>0)>($$0122173$us>>>0);
-     $72 = $71 ? $70 : $$0122173$us;
-     $73 = (($$0127171$us) + ($8)|0);
-     $74 = HEAP32[$12>>2]|0;
-     $75 = $74 & 8;
-     $76 = ($75|0)==(0);
-     $77 = (($$0124172$us) + ($8)|0);
-     $spec$select138$us = $76 ? $77 : $$0124172$us;
-     $78 = (($$0134169$us) + 1)|0;
-     $79 = ($78>>>0)<($$0123>>>0);
-     if ($79) {
-      $$0131170$us$phi = $$0124172$us;$$0122173$us = $72;$$0124172$us = 
$spec$select138$us;$$0127171$us = $73;$$0134169$us = $78;$$0131170$us = 
$$0131170$us$phi;
-     } else {
-      $$0122$lcssa = $72;$$0124$lcssa = $spec$select138$us;$$0127$lcssa = 
$73;$$0131$lcssa = $$0124172$us;$170 = $74;
-      break;
-     }
-    }
-   } else {
-    $80 = ($8|0)==(0);
-    $$0122173 = 0;$$0124172 = $1;$$0127171 = $3;$$0131170 = $38;$$0134169 = 0;
-    while(1) {
-     if (!($80)) {
-      $$13845$i = $$0131170;$$14044$i = $$0127171;$$14243$i = 
$$0124172;$$246$i = $8;
-      while(1) {
-       $81 = ((($$14044$i)) + 1|0);
-       $82 = HEAP8[$$14044$i>>0]|0;
-       $83 = ((($$13845$i)) + 1|0);
-       $84 = HEAP8[$$13845$i>>0]|0;
-       $85 = $84 ^ $82;
-       $86 = ((($$14243$i)) + 1|0);
-       HEAP8[$$14243$i>>0] = $85;
-       $87 = (($$246$i) + -1)|0;
-       $88 = ($87|0)==(0);
-       if ($88) {
-        break;
-       } else {
-        $$13845$i = $83;$$14044$i = $81;$$14243$i = $86;$$246$i = $87;
-       }
-      }
-     }
-     $89 = (FUNCTION_TABLE_iiii[$10 & 127]($44,$$0124172,$$0124172)|0);
-     $90 = ($89>>>0)>($$0122173>>>0);
-     $91 = $90 ? $89 : $$0122173;
-     $92 = (($$0127171) + ($8)|0);
-     $93 = HEAP32[$12>>2]|0;
-     $94 = $93 & 8;
-     $95 = ($94|0)==(0);
-     $96 = (($$0124172) + ($8)|0);
-     $spec$select138 = $95 ? $96 : $$0124172;
-     $97 = (($$0134169) + 1)|0;
-     $98 = ($97>>>0)<($$0123>>>0);
-     if ($98) {
-      $$0131170$phi = $$0124172;$$0122173 = $91;$$0124172 = 
$spec$select138;$$0127171 = $92;$$0134169 = $97;$$0131170 = $$0131170$phi;
-     } else {
-      $$0122$lcssa = $91;$$0124$lcssa = $spec$select138;$$0127$lcssa = 
$92;$$0131$lcssa = $$0124172;$170 = $93;
-      break;
-     }
-    }
-   }
-   $99 = ($$0131$lcssa|0)==($38|0);
-   if ($99) {
-    $$1 = $$0122$lcssa;$$1128 = $$0127$lcssa;$$2126 = $$0124$lcssa;$122 = $170;
-   } else {
-    $100 = $38;
-    $101 = $$0131$lcssa;
-    $102 = $101 | $100;
-    $103 = $102 & 3;
-    $104 = ($103|0)==(0);
-    $105 = ($8>>>0)>(3);
-    $or$cond$i144 = $105 & $104;
-    if ($or$cond$i144) {
-     $106 = (($8) + -4)|0;
-     $107 = $106 & -4;
-     $108 = (($107) + 4)|0;
-     $scevgep$i145 = (($$0131$lcssa) + ($108)|0);
-     $$02434$i149 = $$0131$lcssa;$$02533$i150 = $38;$$035$i148 = $8;
-     while(1) {
-      $109 = ((($$02434$i149)) + 4|0);
-      $110 = HEAP32[$$02434$i149>>2]|0;
-      $111 = ((($$02533$i150)) + 4|0);
-      HEAP32[$$02533$i150>>2] = $110;
-      $112 = (($$035$i148) + -4)|0;
-      $113 = ($112>>>0)>(3);
-      if ($113) {
-       $$02434$i149 = $109;$$02533$i150 = $111;$$035$i148 = $112;
-      } else {
-       break;
-      }
-     }
-     $scevgep44$i146 = (($38) + ($108)|0);
-     $114 = (($106) - ($107))|0;
-     $$026$i153 = $scevgep$i145;$$028$i152 = $scevgep44$i146;$$1$i154 = $114;
-    } else {
-     $$026$i153 = $$0131$lcssa;$$028$i152 = $38;$$1$i154 = $8;
-    }
-    $115 = ($$1$i154|0)==(0);
-    if ($115) {
-     $$1 = $$0122$lcssa;$$1128 = $$0127$lcssa;$$2126 = $$0124$lcssa;$122 = 
$170;
-    } else {
-     $$12731$i158 = $$026$i153;$$12930$i159 = $$028$i152;$$232$i157 = $$1$i154;
-     while(1) {
-      $116 = ((($$12731$i158)) + 1|0);
-      $117 = HEAP8[$$12731$i158>>0]|0;
-      $118 = ((($$12930$i159)) + 1|0);
-      HEAP8[$$12930$i159>>0] = $117;
-      $119 = (($$232$i157) + -1)|0;
-      $120 = ($119|0)==(0);
-      if ($120) {
-       break;
-      } else {
-       $$12731$i158 = $116;$$12930$i159 = $118;$$232$i157 = $119;
-      }
-     }
-     $$pre = HEAP32[$12>>2]|0;
-     $$1 = $$0122$lcssa;$$1128 = $$0127$lcssa;$$2126 = $$0124$lcssa;$122 = 
$$pre;
-    }
-   }
-  }
- } else {
-  $30 = ((($0)) + 496|0);
-  $31 = ((($0)) + 64|0);
-  FUNCTION_TABLE_viiiiii[$28 & 63]($30,$31,$1,$3,$$0123,$14);
-  $32 = Math_imul($$0123, $8)|0;
-  $33 = (($3) + ($32)|0);
-  $34 = HEAP32[$12>>2]|0;
-  $35 = $34 & 8;
-  $36 = ($35|0)==(0);
-  $37 = (($1) + ($32)|0);
-  $spec$select = $36 ? $37 : $1;
-  $$1 = 0;$$1128 = $33;$$2126 = $spec$select;$122 = $34;
- }
- $121 = $122 & 4;
- $123 = ($121|0)!=(0);
- $or$cond139 = $25 & $123;
- if ($or$cond139) {
-  $$ = $20 ? $8 : $19;
-  $124 = (0 - ($8))|0;
-  $125 = (($$2126) + ($124)|0);
-  $126 = ((($0)) + 64|0);
-  $127 = ($$|0)==(0);
-  if ($127) {
-   $$0129$lcssa = 0;$$1132$lcssa = $126;
-  } else {
-   $128 = (($$) + 64)|0;
-   $$0129164 = 0;$$1132163 = $126;
-   while(1) {
-    $129 = (($$1128) + ($$0129164)|0);
-    $130 = HEAP8[$129>>0]|0;
-    $131 = (($125) + ($$0129164)|0);
-    $132 = HEAP8[$131>>0]|0;
-    $133 = (($$2126) + ($$0129164)|0);
-    HEAP8[$133>>0] = $132;
-    $134 = ((($$1132163)) + 1|0);
-    $135 = HEAP8[$$1132163>>0]|0;
-    $136 = $135 ^ $130;
-    HEAP8[$131>>0] = $136;
-    $137 = (($$0129164) + 1)|0;
-    $exitcond188 = ($137|0)==($$|0);
-    if ($exitcond188) {
-     break;
-    } else {
-     $$0129164 = $137;$$1132163 = $134;
-    }
-   }
-   $uglygep = (($0) + ($128)|0);
-   $$0129$lcssa = $$;$$1132$lcssa = $uglygep;
-  }
-  $138 = ($$0129$lcssa>>>0)<($8>>>0);
-  if ($138) {
-   $$1130162 = $$0129$lcssa;$$2133161 = $$1132$lcssa;
-   while(1) {
-    $139 = ((($$2133161)) + 1|0);
-    $140 = HEAP8[$$2133161>>0]|0;
-    $141 = (($125) + ($$1130162)|0);
-    HEAP8[$141>>0] = $140;
-    $142 = (($$1130162) + 1)|0;
-    $exitcond = ($142|0)==($8|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$1130162 = $142;$$2133161 = $139;
-    }
-   }
-  }
-  $143 = ((($0)) + 496|0);
-  $144 = (FUNCTION_TABLE_iiii[$10 & 127]($143,$125,$125)|0);
-  $145 = ($144>>>0)>($$1>>>0);
-  $146 = $145 ? $144 : $$1;
-  $147 = $126;
-  $148 = $125;
-  $149 = $148 | $147;
-  $150 = $149 & 3;
-  $151 = ($150|0)==(0);
-  $152 = ($8>>>0)>(3);
-  $or$cond$i140 = $152 & $151;
-  if ($or$cond$i140) {
-   $153 = (($8) + -4)|0;
-   $154 = $153 & -4;
-   $155 = (($154) + 4)|0;
-   $scevgep$i141 = (($125) + ($155)|0);
-   $$02434$i = $125;$$02533$i = $126;$$035$i = $8;
-   while(1) {
-    $156 = ((($$02434$i)) + 4|0);
-    $157 = HEAP32[$$02434$i>>2]|0;
-    $158 = ((($$02533$i)) + 4|0);
-    HEAP32[$$02533$i>>2] = $157;
-    $159 = (($$035$i) + -4)|0;
-    $160 = ($159>>>0)>(3);
-    if ($160) {
-     $$02434$i = $156;$$02533$i = $158;$$035$i = $159;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i = (($126) + ($155)|0);
-   $161 = (($153) - ($154))|0;
-   $$026$i = $scevgep$i141;$$028$i = $scevgep44$i;$$1$i142 = $161;
-  } else {
-   $$026$i = $125;$$028$i = $126;$$1$i142 = $8;
-  }
-  $162 = ($$1$i142|0)==(0);
-  if ($162) {
-   $$2 = $146;
-  } else {
-   $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i142;
-   while(1) {
-    $163 = ((($$12731$i)) + 1|0);
-    $164 = HEAP8[$$12731$i>>0]|0;
-    $165 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $164;
-    $166 = (($$232$i) + -1)|0;
-    $167 = ($166|0)==(0);
-    if ($167) {
-     $$2 = $146;
-     break;
-    } else {
-     $$12731$i = $163;$$12930$i = $165;$$232$i = $166;
-    }
-   }
-  }
- } else {
-  $$2 = $$1;
- }
- $168 = ($$2|0)==(0);
- if ($168) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $169 = (($$2) + 16)|0;
- ___gcry_burn_stack($169);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_cipher_cbc_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0122218 = 0, $$0122218$us = 0, $$0125 = 0, $$0126217 = 0, 
$$0126217$us = 0, $$0128214 = 0, $$0129216 = 0, $$0129216$us = 0, $$0130215 = 
0, $$0130215$us = 0, $$02434$i = 0, $$02434$i147 = 0, $$02434$i185 = 0, 
$$02434$i202 = 0, $$02533$i = 0, $$02533$i148 = 0, $$02533$i186 = 0, 
$$02533$i203 = 0, $$026$i = 0;
- var $$026$i151 = 0, $$026$i189 = 0, $$026$i206 = 0, $$028$i = 0, $$028$i150 = 
0, $$028$i188 = 0, $$028$i205 = 0, $$03449$i = 0, $$03449$i165 = 0, $$035$i = 
0, $$035$i146 = 0, $$035$i184 = 0, $$035$i201 = 0, $$03548$i = 0, $$03548$i166 
= 0, $$037$i = 0, $$037$i171 = 0, $$041$i = 0, $$041$i169 = 0, $$050$i = 0;
- var $$050$i139$us = 0, $$050$i164 = 0, $$05270$i$us = 0, $$05369$i$us = 0, 
$$05468$i$us = 0, $$05567$i$us = 0, $$056$i$us = 0, $$058$i$us = 0, $$060$i$us 
= 0, $$071$i$us = 0, $$1 = 0, $$1$i = 0, $$1$i135 = 0, $$1$i140$us = 0, 
$$1$i152 = 0, $$1$i172 = 0, $$1$i190 = 0, $$1$i207 = 0, $$1124 = 0, $$1127 = 0;
- var $$1131 = 0, $$12731$i = 0, $$12731$i156 = 0, $$12731$i194 = 0, 
$$12731$i211 = 0, $$12930$i = 0, $$12930$i157 = 0, $$12930$i195 = 0, 
$$12930$i212 = 0, $$13845$i = 0, $$13845$i176 = 0, $$14044$i = 0, $$14044$i177 
= 0, $$15165$i = 0, $$15165$i$us = 0, $$15764$i = 0, $$15764$i$us = 0, 
$$15963$i = 0, $$15963$i$us = 0, $$16162$i = 0;
- var $$16162$i$us = 0, $$2 = 0, $$232$i = 0, $$232$i155 = 0, $$232$i193 = 0, 
$$232$i210 = 0, $$246$i = 0, $$246$i175 = 0, $$266$i = 0, $$266$i$us = 0, 
$$phi$trans$insert = 0, $$pre = 0, $$pre$phi241Z2D = 0, $$pre$phiZ2D = 0, 
$$pre240 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0;
- var $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 
= 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 
= 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0;
- var $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, 
$129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, 
$136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0;
- var $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, 
$147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, 
$154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0;
- var $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 
= 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0;
- var $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 
= 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0;
- var $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 
= 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 
= 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0;
- var $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 
= 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 
= 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0;
- var $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, 
$238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0;
- var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, 
$40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 
0, $49 = 0, $5 = 0, $50 = 0;
- var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0;
- var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0;
- var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $exitcond232 = 0, 
$exitcond237 = 0, $or$cond = 0, $or$cond$i = 0, $or$cond$i133 = 0, 
$or$cond$i142 = 0;
- var $or$cond$i159 = 0, $or$cond$i180 = 0, $or$cond$i197 = 0, $or$cond132 = 0, 
$scevgep = 0, $scevgep$i = 0, $scevgep$i134 = 0, $scevgep$i138$us = 0, 
$scevgep$i143 = 0, $scevgep$i160 = 0, $scevgep$i181 = 0, $scevgep$i198 = 0, 
$scevgep231 = 0, $scevgep236 = 0, $scevgep44$i = 0, $scevgep44$i144 = 0, 
$scevgep44$i182 = 0, $scevgep44$i199 = 0, $scevgep61$i = 0, $scevgep61$i161 = 0;
- var $scevgep84$i = 0, $scevgep86$i$us = 0, $scevgep88$i = 0, $spec$select = 
0, $spec$select$v = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($6)) + 40|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (($4>>>0) / ($8>>>0))&-1;
- $12 = ($2>>>0)<($4>>>0);
- if ($12) {
-  $$0125 = 200;
-  return ($$0125|0);
- }
- $13 = Math_imul($11, $8)|0;
- $14 = (($4) - ($13))|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  $$phi$trans$insert = ((($0)) + 52|0);
-  $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-  $$pre240 = $$pre & 4;
-  $$pre$phi241Z2D = $$pre240;$$pre$phiZ2D = $$phi$trans$insert;
- } else {
-  $16 = ($8>>>0)<($4>>>0);
-  if (!($16)) {
-   $$0125 = 139;
-   return ($$0125|0);
-  }
-  $17 = ((($0)) + 52|0);
-  $18 = HEAP32[$17>>2]|0;
-  $19 = $18 & 4;
-  $20 = ($19|0)==(0);
-  if ($20) {
-   $$0125 = 139;
-   return ($$0125|0);
-  } else {
-   $$pre$phi241Z2D = $19;$$pre$phiZ2D = $17;
-  }
- }
- $21 = ($$pre$phi241Z2D|0)!=(0);
- $22 = ($8>>>0)<($4>>>0);
- $or$cond = $22 & $21;
- if ($or$cond) {
-  $spec$select$v = $15 ? -2 : -1;
-  $spec$select = (($spec$select$v) + ($11))|0;
-  $23 = ((($0)) + 96|0);
-  $24 = ((($0)) + 64|0);
-  $25 = $23;
-  $26 = $24;
-  $27 = $26 | $25;
-  $28 = $27 & 3;
-  $29 = ($28|0)==(0);
-  $30 = ($8>>>0)>(3);
-  $or$cond$i = $29 & $30;
-  if ($or$cond$i) {
-   $31 = (($8) + -4)|0;
-   $32 = $31 & -4;
-   $33 = (($32) + 4)|0;
-   $scevgep$i = (($24) + ($33)|0);
-   $$02434$i = $24;$$02533$i = $23;$$035$i = $8;
-   while(1) {
-    $34 = ((($$02434$i)) + 4|0);
-    $35 = HEAP32[$$02434$i>>2]|0;
-    $36 = ((($$02533$i)) + 4|0);
-    HEAP32[$$02533$i>>2] = $35;
-    $37 = (($$035$i) + -4)|0;
-    $38 = ($37>>>0)>(3);
-    if ($38) {
-     $$02434$i = $34;$$02533$i = $36;$$035$i = $37;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i = (((($0)) + 96|0) + ($33)|0);
-   $39 = (($31) - ($32))|0;
-   $$026$i = $scevgep$i;$$028$i = $scevgep44$i;$$1$i = $39;
-  } else {
-   $$026$i = $24;$$028$i = $23;$$1$i = $8;
-  }
-  $40 = ($$1$i|0)==(0);
-  if ($40) {
-   $$1124 = $spec$select;
-  } else {
-   $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i;
-   while(1) {
-    $41 = ((($$12731$i)) + 1|0);
-    $42 = HEAP8[$$12731$i>>0]|0;
-    $43 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $42;
-    $44 = (($$232$i) + -1)|0;
-    $45 = ($44|0)==(0);
-    if ($45) {
-     $$1124 = $spec$select;
-     break;
-    } else {
-     $$12731$i = $41;$$12930$i = $43;$$232$i = $44;
-    }
-   }
-  }
- } else {
-  $$1124 = $11;
- }
- $46 = ((($0)) + 32|0);
- $47 = HEAP32[$46>>2]|0;
- $48 = ($47|0)==(0|0);
- do {
-  if ($48) {
-   $54 = ($$1124|0)==(0);
-   if ($54) {
-    $$1 = 0;$$1127 = $1;$$1131 = $3;
-   } else {
-    $55 = ((($0)) + 496|0);
-    $56 = ((($0)) + 96|0);
-    $57 = ((($0)) + 64|0);
-    $58 = $56;
-    $59 = $57;
-    $60 = $59 | $58;
-    $61 = ($8>>>0)>(3);
-    $62 = (($8) + -4)|0;
-    $63 = $62 & -4;
-    $64 = (($63) + 4)|0;
-    $scevgep84$i = (((($0)) + 96|0) + ($64)|0);
-    $scevgep88$i = (($57) + ($64)|0);
-    $65 = (($62) - ($63))|0;
-    $66 = Math_imul($$1124, $8)|0;
-    $scevgep = (($3) + ($66)|0);
-    if (!($61)) {
-     $100 = ($8|0)==(0);
-     $$0122218 = 0;$$0126217 = $1;$$0129216 = 0;$$0130215 = $3;
-     while(1) {
-      $101 = (FUNCTION_TABLE_iiii[$10 & 127]($55,$56,$$0130215)|0);
-      $102 = ($101>>>0)>($$0122218>>>0);
-      $103 = $102 ? $101 : $$0122218;
-      if (!($100)) {
-       $$15165$i = $$0126217;$$15764$i = $57;$$15963$i = $$0130215;$$16162$i = 
$56;$$266$i = $8;
-       while(1) {
-        $104 = ((($$15963$i)) + 1|0);
-        $105 = HEAP8[$$15963$i>>0]|0;
-        $106 = HEAP8[$$15764$i>>0]|0;
-        $107 = ((($$16162$i)) + 1|0);
-        $108 = HEAP8[$$16162$i>>0]|0;
-        $109 = $108 ^ $106;
-        $110 = ((($$15165$i)) + 1|0);
-        HEAP8[$$15165$i>>0] = $109;
-        $111 = ((($$15764$i)) + 1|0);
-        HEAP8[$$15764$i>>0] = $105;
-        $112 = (($$266$i) + -1)|0;
-        $113 = ($112|0)==(0);
-        if ($113) {
-         break;
-        } else {
-         $$15165$i = $110;$$15764$i = $111;$$15963$i = $104;$$16162$i = 
$107;$$266$i = $112;
-        }
-       }
-      }
-      $114 = (($$0130215) + ($8)|0);
-      $115 = (($$0126217) + ($8)|0);
-      $116 = (($$0129216) + 1)|0;
-      $exitcond237 = ($116|0)==($$1124|0);
-      if ($exitcond237) {
-       break;
-      } else {
-       $$0122218 = $103;$$0126217 = $115;$$0129216 = $116;$$0130215 = $114;
-      }
-     }
-     $scevgep236 = (($1) + ($66)|0);
-     $$1 = $103;$$1127 = $scevgep236;$$1131 = $scevgep;
-     break;
-    }
-    $$0122218$us = 0;$$0126217$us = $1;$$0129216$us = 0;$$0130215$us = $3;
-    while(1) {
-     $67 = (FUNCTION_TABLE_iiii[$10 & 127]($55,$56,$$0130215$us)|0);
-     $68 = ($67>>>0)>($$0122218$us>>>0);
-     $69 = $68 ? $67 : $$0122218$us;
-     $70 = $$0130215$us;
-     $71 = $$0126217$us;
-     $72 = $60 | $70;
-     $73 = $72 | $71;
-     $74 = $73 & 3;
-     $75 = ($74|0)==(0);
-     if ($75) {
-      $scevgep$i138$us = (($$0130215$us) + ($64)|0);
-      $$05270$i$us = $56;$$05369$i$us = $$0130215$us;$$05468$i$us = 
$57;$$05567$i$us = $$0126217$us;$$071$i$us = $8;
-      while(1) {
-       $76 = ((($$05369$i$us)) + 4|0);
-       $77 = HEAP32[$$05369$i$us>>2]|0;
-       $78 = HEAP32[$$05468$i$us>>2]|0;
-       $79 = ((($$05270$i$us)) + 4|0);
-       $80 = HEAP32[$$05270$i$us>>2]|0;
-       $81 = $80 ^ $78;
-       $82 = ((($$05567$i$us)) + 4|0);
-       HEAP32[$$05567$i$us>>2] = $81;
-       $83 = ((($$05468$i$us)) + 4|0);
-       HEAP32[$$05468$i$us>>2] = $77;
-       $84 = (($$071$i$us) + -4)|0;
-       $85 = ($84>>>0)>(3);
-       if ($85) {
-        $$05270$i$us = $79;$$05369$i$us = $76;$$05468$i$us = $83;$$05567$i$us 
= $82;$$071$i$us = $84;
-       } else {
-        break;
-       }
-      }
-      $scevgep86$i$us = (($$0126217$us) + ($64)|0);
-      $$050$i139$us = $scevgep86$i$us;$$056$i$us = $scevgep88$i;$$058$i$us = 
$scevgep$i138$us;$$060$i$us = $scevgep84$i;$$1$i140$us = $65;
-     } else {
-      $$050$i139$us = $$0126217$us;$$056$i$us = $57;$$058$i$us = 
$$0130215$us;$$060$i$us = $56;$$1$i140$us = $8;
-     }
-     $86 = ($$1$i140$us|0)==(0);
-     if (!($86)) {
-      $$15165$i$us = $$050$i139$us;$$15764$i$us = $$056$i$us;$$15963$i$us = 
$$058$i$us;$$16162$i$us = $$060$i$us;$$266$i$us = $$1$i140$us;
-      while(1) {
-       $87 = ((($$15963$i$us)) + 1|0);
-       $88 = HEAP8[$$15963$i$us>>0]|0;
-       $89 = HEAP8[$$15764$i$us>>0]|0;
-       $90 = ((($$16162$i$us)) + 1|0);
-       $91 = HEAP8[$$16162$i$us>>0]|0;
-       $92 = $91 ^ $89;
-       $93 = ((($$15165$i$us)) + 1|0);
-       HEAP8[$$15165$i$us>>0] = $92;
-       $94 = ((($$15764$i$us)) + 1|0);
-       HEAP8[$$15764$i$us>>0] = $88;
-       $95 = (($$266$i$us) + -1)|0;
-       $96 = ($95|0)==(0);
-       if ($96) {
-        break;
-       } else {
-        $$15165$i$us = $93;$$15764$i$us = $94;$$15963$i$us = $87;$$16162$i$us 
= $90;$$266$i$us = $95;
-       }
-      }
-     }
-     $97 = (($$0130215$us) + ($8)|0);
-     $98 = (($$0126217$us) + ($8)|0);
-     $99 = (($$0129216$us) + 1)|0;
-     $exitcond232 = ($99|0)==($$1124|0);
-     if ($exitcond232) {
-      break;
-     } else {
-      $$0122218$us = $69;$$0126217$us = $98;$$0129216$us = $99;$$0130215$us = 
$97;
-     }
-    }
-    $scevgep231 = (($1) + ($66)|0);
-    $$1 = $69;$$1127 = $scevgep231;$$1131 = $scevgep;
-   }
-  } else {
-   $49 = ((($0)) + 496|0);
-   $50 = ((($0)) + 64|0);
-   FUNCTION_TABLE_viiiii[$47 & 127]($49,$50,$1,$3,$$1124);
-   $51 = Math_imul($$1124, $8)|0;
-   $52 = (($3) + ($51)|0);
-   $53 = (($1) + ($51)|0);
-   $$1 = 0;$$1127 = $53;$$1131 = $52;
-  }
- } while(0);
- $117 = HEAP32[$$pre$phiZ2D>>2]|0;
- $118 = $117 & 4;
- $119 = ($118|0)!=(0);
- $or$cond132 = $22 & $119;
- if ($or$cond132) {
-  $$ = $15 ? $8 : $14;
-  $120 = ((($0)) + 96|0);
-  $121 = ((($0)) + 64|0);
-  $122 = $120;
-  $123 = $121;
-  $124 = $123 | $122;
-  $125 = $124 & 3;
-  $126 = ($125|0)==(0);
-  $127 = ($8>>>0)>(3);
-  $or$cond$i180 = $126 & $127;
-  if ($or$cond$i180) {
-   $128 = (($8) + -4)|0;
-   $129 = $128 & -4;
-   $130 = (($129) + 4)|0;
-   $scevgep$i181 = (($121) + ($130)|0);
-   $$02434$i185 = $121;$$02533$i186 = $120;$$035$i184 = $8;
-   while(1) {
-    $131 = ((($$02434$i185)) + 4|0);
-    $132 = HEAP32[$$02434$i185>>2]|0;
-    $133 = ((($$02533$i186)) + 4|0);
-    HEAP32[$$02533$i186>>2] = $132;
-    $134 = (($$035$i184) + -4)|0;
-    $135 = ($134>>>0)>(3);
-    if ($135) {
-     $$02434$i185 = $131;$$02533$i186 = $133;$$035$i184 = $134;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i182 = (((($0)) + 96|0) + ($130)|0);
-   $136 = (($128) - ($129))|0;
-   $$026$i189 = $scevgep$i181;$$028$i188 = $scevgep44$i182;$$1$i190 = $136;
-  } else {
-   $$026$i189 = $121;$$028$i188 = $120;$$1$i190 = $8;
-  }
-  $137 = ($$1$i190|0)==(0);
-  if (!($137)) {
-   $$12731$i194 = $$026$i189;$$12930$i195 = $$028$i188;$$232$i193 = $$1$i190;
-   while(1) {
-    $138 = ((($$12731$i194)) + 1|0);
-    $139 = HEAP8[$$12731$i194>>0]|0;
-    $140 = ((($$12930$i195)) + 1|0);
-    HEAP8[$$12930$i195>>0] = $139;
-    $141 = (($$232$i193) + -1)|0;
-    $142 = ($141|0)==(0);
-    if ($142) {
-     break;
-    } else {
-     $$12731$i194 = $138;$$12930$i195 = $140;$$232$i193 = $141;
-    }
-   }
-  }
-  $143 = (($$1131) + ($8)|0);
-  $144 = $143;
-  $145 = $144 | $123;
-  $146 = $145 & 3;
-  $147 = ($146|0)==(0);
-  $148 = ($$>>>0)>(3);
-  $or$cond$i197 = $148 & $147;
-  if ($or$cond$i197) {
-   $149 = (($$) + -4)|0;
-   $150 = $149 & -4;
-   $151 = (($150) + 4)|0;
-   $scevgep$i198 = (($143) + ($151)|0);
-   $$02434$i202 = $143;$$02533$i203 = $121;$$035$i201 = $$;
-   while(1) {
-    $152 = ((($$02434$i202)) + 4|0);
-    $153 = HEAP32[$$02434$i202>>2]|0;
-    $154 = ((($$02533$i203)) + 4|0);
-    HEAP32[$$02533$i203>>2] = $153;
-    $155 = (($$035$i201) + -4)|0;
-    $156 = ($155>>>0)>(3);
-    if ($156) {
-     $$02434$i202 = $152;$$02533$i203 = $154;$$035$i201 = $155;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i199 = (($121) + ($151)|0);
-   $157 = (($149) - ($150))|0;
-   $$026$i206 = $scevgep$i198;$$028$i205 = $scevgep44$i199;$$1$i207 = $157;
-  } else {
-   $$026$i206 = $143;$$028$i205 = $121;$$1$i207 = $$;
-  }
-  $158 = ($$1$i207|0)==(0);
-  if (!($158)) {
-   $$12731$i211 = $$026$i206;$$12930$i212 = $$028$i205;$$232$i210 = $$1$i207;
-   while(1) {
-    $159 = ((($$12731$i211)) + 1|0);
-    $160 = HEAP8[$$12731$i211>>0]|0;
-    $161 = ((($$12930$i212)) + 1|0);
-    HEAP8[$$12930$i212>>0] = $160;
-    $162 = (($$232$i210) + -1)|0;
-    $163 = ($162|0)==(0);
-    if ($163) {
-     break;
-    } else {
-     $$12731$i211 = $159;$$12930$i212 = $161;$$232$i210 = $162;
-    }
-   }
-  }
-  $164 = ((($0)) + 496|0);
-  $165 = (FUNCTION_TABLE_iiii[$10 & 127]($164,$$1127,$$1131)|0);
-  $166 = ($165>>>0)>($$1>>>0);
-  $167 = $166 ? $165 : $$1;
-  $168 = $$1127;
-  $169 = $168 | $123;
-  $170 = $169 & 3;
-  $171 = ($170|0)==(0);
-  $or$cond$i159 = $148 & $171;
-  if ($or$cond$i159) {
-   $172 = (($$) + -4)|0;
-   $173 = $172 & -4;
-   $174 = (($173) + 4)|0;
-   $scevgep$i160 = (($$1127) + ($174)|0);
-   $$03449$i165 = $121;$$03548$i166 = $$1127;$$050$i164 = $$;
-   while(1) {
-    $175 = ((($$03548$i166)) + 4|0);
-    $176 = HEAP32[$$03548$i166>>2]|0;
-    $177 = ((($$03449$i165)) + 4|0);
-    $178 = HEAP32[$$03449$i165>>2]|0;
-    $179 = $178 ^ $176;
-    HEAP32[$$03548$i166>>2] = $179;
-    $180 = (($$050$i164) + -4)|0;
-    $181 = ($180>>>0)>(3);
-    if ($181) {
-     $$03449$i165 = $177;$$03548$i166 = $175;$$050$i164 = $180;
-    } else {
-     break;
-    }
-   }
-   $scevgep61$i161 = (($121) + ($174)|0);
-   $182 = (($172) - ($173))|0;
-   $$037$i171 = $scevgep61$i161;$$041$i169 = $scevgep$i160;$$1$i172 = $182;
-  } else {
-   $$037$i171 = $121;$$041$i169 = $$1127;$$1$i172 = $$;
-  }
-  $183 = ($$1$i172|0)==(0);
-  if (!($183)) {
-   $$13845$i176 = $$037$i171;$$14044$i177 = $$041$i169;$$246$i175 = $$1$i172;
-   while(1) {
-    $184 = ((($$14044$i177)) + 1|0);
-    $185 = HEAP8[$$14044$i177>>0]|0;
-    $186 = ((($$13845$i176)) + 1|0);
-    $187 = HEAP8[$$13845$i176>>0]|0;
-    $188 = $187 ^ $185;
-    HEAP8[$$14044$i177>>0] = $188;
-    $189 = (($$246$i175) + -1)|0;
-    $190 = ($189|0)==(0);
-    if ($190) {
-     break;
-    } else {
-     $$13845$i176 = $186;$$14044$i177 = $184;$$246$i175 = $189;
-    }
-   }
-  }
-  $191 = (($$1127) + ($8)|0);
-  $192 = $191;
-  $193 = $192 | $168;
-  $194 = $193 & 3;
-  $195 = ($194|0)==(0);
-  $or$cond$i142 = $148 & $195;
-  if ($or$cond$i142) {
-   $196 = (($$) + -4)|0;
-   $197 = $196 & -4;
-   $198 = (($197) + 4)|0;
-   $scevgep$i143 = (($$1127) + ($198)|0);
-   $$02434$i147 = $$1127;$$02533$i148 = $191;$$035$i146 = $$;
-   while(1) {
-    $199 = ((($$02434$i147)) + 4|0);
-    $200 = HEAP32[$$02434$i147>>2]|0;
-    $201 = ((($$02533$i148)) + 4|0);
-    HEAP32[$$02533$i148>>2] = $200;
-    $202 = (($$035$i146) + -4)|0;
-    $203 = ($202>>>0)>(3);
-    if ($203) {
-     $$02434$i147 = $199;$$02533$i148 = $201;$$035$i146 = $202;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i144 = (($191) + ($198)|0);
-   $204 = (($196) - ($197))|0;
-   $$026$i151 = $scevgep$i143;$$028$i150 = $scevgep44$i144;$$1$i152 = $204;
-  } else {
-   $$026$i151 = $$1127;$$028$i150 = $191;$$1$i152 = $$;
-  }
-  $205 = ($$1$i152|0)==(0);
-  if (!($205)) {
-   $$12731$i156 = $$026$i151;$$12930$i157 = $$028$i150;$$232$i155 = $$1$i152;
-   while(1) {
-    $206 = ((($$12731$i156)) + 1|0);
-    $207 = HEAP8[$$12731$i156>>0]|0;
-    $208 = ((($$12930$i157)) + 1|0);
-    HEAP8[$$12930$i157>>0] = $207;
-    $209 = (($$232$i155) + -1)|0;
-    $210 = ($209|0)==(0);
-    if ($210) {
-     break;
-    } else {
-     $$12731$i156 = $206;$$12930$i157 = $208;$$232$i155 = $209;
-    }
-   }
-  }
-  $211 = ($$>>>0)<($8>>>0);
-  if ($211) {
-   $$0128214 = $$;
-   while(1) {
-    $212 = (($$1127) + ($$0128214)|0);
-    $213 = HEAP8[$212>>0]|0;
-    $214 = (($121) + ($$0128214)|0);
-    HEAP8[$214>>0] = $213;
-    $215 = (($$0128214) + 1)|0;
-    $exitcond = ($215|0)==($8|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$0128214 = $215;
-    }
-   }
-  }
-  $216 = (FUNCTION_TABLE_iiii[$10 & 127]($164,$$1127,$121)|0);
-  $217 = ($216>>>0)>($167>>>0);
-  $218 = $217 ? $216 : $167;
-  $219 = $168 | $122;
-  $220 = $219 & 3;
-  $221 = ($220|0)==(0);
-  $or$cond$i133 = $127 & $221;
-  if ($or$cond$i133) {
-   $222 = (($8) + -4)|0;
-   $223 = $222 & -4;
-   $224 = (($223) + 4)|0;
-   $scevgep$i134 = (($$1127) + ($224)|0);
-   $$03449$i = $120;$$03548$i = $$1127;$$050$i = $8;
-   while(1) {
-    $225 = ((($$03548$i)) + 4|0);
-    $226 = HEAP32[$$03548$i>>2]|0;
-    $227 = ((($$03449$i)) + 4|0);
-    $228 = HEAP32[$$03449$i>>2]|0;
-    $229 = $228 ^ $226;
-    HEAP32[$$03548$i>>2] = $229;
-    $230 = (($$050$i) + -4)|0;
-    $231 = ($230>>>0)>(3);
-    if ($231) {
-     $$03449$i = $227;$$03548$i = $225;$$050$i = $230;
-    } else {
-     break;
-    }
-   }
-   $scevgep61$i = (((($0)) + 96|0) + ($224)|0);
-   $232 = (($222) - ($223))|0;
-   $$037$i = $scevgep61$i;$$041$i = $scevgep$i134;$$1$i135 = $232;
-  } else {
-   $$037$i = $120;$$041$i = $$1127;$$1$i135 = $8;
-  }
-  $233 = ($$1$i135|0)==(0);
-  if ($233) {
-   $$2 = $218;
-  } else {
-   $$13845$i = $$037$i;$$14044$i = $$041$i;$$246$i = $$1$i135;
-   while(1) {
-    $234 = ((($$14044$i)) + 1|0);
-    $235 = HEAP8[$$14044$i>>0]|0;
-    $236 = ((($$13845$i)) + 1|0);
-    $237 = HEAP8[$$13845$i>>0]|0;
-    $238 = $237 ^ $235;
-    HEAP8[$$14044$i>>0] = $238;
-    $239 = (($$246$i) + -1)|0;
-    $240 = ($239|0)==(0);
-    if ($240) {
-     $$2 = $218;
-     break;
-    } else {
-     $$13845$i = $236;$$14044$i = $234;$$246$i = $239;
-    }
-   }
-  }
- } else {
-  $$2 = $$1;
- }
- $241 = ($$2|0)==(0);
- if ($241) {
-  $$0125 = 0;
-  return ($$0125|0);
- }
- $242 = (($$2) + 16)|0;
- ___gcry_burn_stack($242);
- $$0125 = 0;
- return ($$0125|0);
-}
-function __gcry_cipher_ccm_set_nonce($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$off = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, dest = 0;
- var label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- $3 = (15 - ($2))|0;
- $4 = (($3) + 255)|0;
- $5 = ($1|0)==(0|0);
- if ($5) {
-  $$0 = 45;
-  return ($$0|0);
- }
- $$off = (($3) + -2)|0;
- $6 = ($$off>>>0)>(6);
- if ($6) {
-  $$0 = 139;
-  return ($$0|0);
- }
- $7 = ((($0)) + 128|0);
- _memset(($7|0),0,368)|0;
- $8 = ((($0)) + 56|0);
- HEAP32[$8>>2] = 0;
- $9 = ((($0)) + 64|0);
- $10 = ((($0)) + 80|0);
- $11 = $4&255;
- dest=$9; stop=dest+52|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- HEAP8[$10>>0] = $11;
- $12 = ((($10)) + 1|0);
- _memcpy(($12|0),($1|0),($2|0))|0;
- $13 = (($2) + 1)|0;
- $14 = (($10) + ($13)|0);
- _memset(($14|0),0,($3|0))|0;
- HEAP8[$9>>0] = $11;
- $15 = ((($9)) + 1|0);
- _memcpy(($15|0),($1|0),($2|0))|0;
- $16 = (($9) + ($13)|0);
- _memset(($16|0),0,($3|0))|0;
- $17 = ((($0)) + 184|0);
- $18 = HEAP8[$17>>0]|0;
- $19 = $18 | 1;
- HEAP8[$17>>0] = $19;
- $$0 = 0;
- return ($$0|0);
-}
-function _do_cbc_mac($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$0107 = 0, $$0108 = 0, $$0121 = 0, $$0127 = 0, $$1109145 = 0, 
$$1122 = 0, $$1128144 = 0, $$1146 = 0, $$2 = 0, $$2110 = 0, $$2123160 = 0, 
$$2129 = 0, $$3111161 = 0, $$3124 = 0, $$3162 = 0, $$4 = 0, $$4112 = 0, $$4125 
= 0, $$6 = 0;
- var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0;
- var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 
= 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0;
- var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 
= 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 
= 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0;
- var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 
= 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 
= 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0;
- var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, 
$179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, 
$186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0;
- var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, 
$197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, 
$204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0;
- var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 
= 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 
= 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0;
- var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 
= 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 
= 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0;
- var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 
= 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 
= 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0;
- var $263 = 0, $264 = 0, $265 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 
0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 
0, $40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $or$cond = 0, $or$cond3 = 0, $scevgep177 = 0, 
$scevgep182 = 0, $scevgep183 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 36|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 164|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($2|0)==(0);
- if ($11) {
-  $12 = ($10|0)!=(0);
-  $13 = ($3|0)!=(0);
-  $or$cond = $13 & $12;
-  if (!($or$cond)) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $14 = ((($0)) + 148|0);
- $15 = ($3|0)==(0);
- $16 = ((($0)) + 64|0);
- $17 = $16;
- $18 = $14;
- $19 = $17 | $18;
- $20 = $19 & 3;
- $21 = ($20|0)==(0);
- $22 = ((($0)) + 28|0);
- $23 = ((($16)) + 4|0);
- $24 = ((($0)) + 152|0);
- $25 = ((($0)) + 72|0);
- $26 = ((($0)) + 156|0);
- $27 = ((($0)) + 76|0);
- $28 = ((($0)) + 160|0);
- $29 = ((($0)) + 496|0);
- $30 = ((($16)) + 1|0);
- $31 = ((($0)) + 149|0);
- $32 = ((($16)) + 2|0);
- $33 = ((($0)) + 150|0);
- $34 = ((($16)) + 3|0);
- $35 = ((($0)) + 151|0);
- $36 = ((($16)) + 4|0);
- $37 = ((($0)) + 152|0);
- $38 = ((($16)) + 5|0);
- $39 = ((($0)) + 153|0);
- $40 = ((($16)) + 6|0);
- $41 = ((($0)) + 154|0);
- $42 = ((($16)) + 7|0);
- $43 = ((($0)) + 155|0);
- $44 = ((($0)) + 72|0);
- $45 = ((($0)) + 156|0);
- $46 = ((($0)) + 73|0);
- $47 = ((($0)) + 157|0);
- $48 = ((($0)) + 74|0);
- $49 = ((($0)) + 158|0);
- $50 = ((($0)) + 75|0);
- $51 = ((($0)) + 159|0);
- $52 = ((($0)) + 76|0);
- $53 = ((($0)) + 160|0);
- $54 = ((($0)) + 77|0);
- $55 = ((($0)) + 161|0);
- $56 = ((($0)) + 78|0);
- $57 = ((($0)) + 162|0);
- $58 = ((($0)) + 79|0);
- $59 = ((($0)) + 163|0);
- $60 = ((($4)) + 8|0);
- $61 = ((($16)) + 1|0);
- $62 = ((($16)) + 2|0);
- $63 = ((($16)) + 3|0);
- $64 = ((($16)) + 4|0);
- $65 = ((($16)) + 5|0);
- $66 = ((($16)) + 6|0);
- $67 = ((($16)) + 7|0);
- $68 = ((($0)) + 72|0);
- $69 = ((($0)) + 73|0);
- $70 = ((($0)) + 74|0);
- $71 = ((($0)) + 75|0);
- $72 = ((($0)) + 76|0);
- $73 = ((($0)) + 77|0);
- $74 = ((($0)) + 78|0);
- $75 = ((($0)) + 79|0);
- $$0107 = $1;$$0108 = $2;$$0121 = 0;$$0127 = $10;
- while(1) {
-  $76 = (($$0108) + ($$0127))|0;
-  $77 = ($76>>>0)<(16);
-  $78 = ($$0127|0)!=(0);
-  $or$cond3 = $78 | $77;
-  if ($or$cond3) {
-   $79 = ($$0108|0)!=(0);
-   $80 = ($$0127>>>0)<(16);
-   $81 = $80 & $79;
-   if ($81) {
-    $$1109145 = $$0108;$$1128144 = $$0127;$$1146 = $$0107;
-    while(1) {
-     $82 = ((($$1146)) + 1|0);
-     $83 = HEAP8[$$1146>>0]|0;
-     $84 = (($$1128144) + 1)|0;
-     $85 = (($14) + ($$1128144)|0);
-     HEAP8[$85>>0] = $83;
-     $86 = (($$1109145) + -1)|0;
-     $87 = ($86|0)!=(0);
-     $88 = ($84>>>0)<(16);
-     $89 = $88 & $87;
-     if ($89) {
-      $$1109145 = $86;$$1128144 = $84;$$1146 = $82;
-     } else {
-      $$2 = $82;$$2110 = $86;$$2129 = $84;
-      break;
-     }
-    }
-   } else {
-    $$2 = $$0107;$$2110 = $$0108;$$2129 = $$0127;
-   }
-  } else {
-   $$2 = $$0107;$$2110 = $$0108;$$2129 = 0;
-  }
-  $90 = ($$2110|0)==(0);
-  if ($90) {
-   if ($15) {
-    $$4125 = $$0121;$$6 = $$2129;
-    break;
-   }
-   $91 = ($$2129>>>0)<(16);
-   if ($91) {
-    $scevgep177 = (($14) + ($$2129)|0);
-    $92 = (16 - ($$2129))|0;
-    _memset(($scevgep177|0),0,($92|0))|0;
-    label = 13;
-   } else {
-    label = 13;
-   }
-  } else {
-   $93 = ($$2129|0)==(0);
-   if ($93) {
-    $$1122 = $$0121;
-   } else {
-    label = 13;
-   }
-  }
-  if ((label|0) == 13) {
-   label = 0;
-   if ($21) {
-    $94 = HEAP32[$16>>2]|0;
-    $95 = HEAP32[$14>>2]|0;
-    $96 = $95 ^ $94;
-    HEAP32[$16>>2] = $96;
-    $97 = HEAP32[$23>>2]|0;
-    $98 = HEAP32[$24>>2]|0;
-    $99 = $98 ^ $97;
-    HEAP32[$23>>2] = $99;
-    $100 = HEAP32[$25>>2]|0;
-    $101 = HEAP32[$26>>2]|0;
-    $102 = $101 ^ $100;
-    HEAP32[$25>>2] = $102;
-    $103 = HEAP32[$27>>2]|0;
-    $104 = HEAP32[$28>>2]|0;
-    $105 = $104 ^ $103;
-    HEAP32[$27>>2] = $105;
-   } else {
-    $106 = HEAP8[$16>>0]|0;
-    $107 = HEAP8[$14>>0]|0;
-    $108 = $107 ^ $106;
-    HEAP8[$16>>0] = $108;
-    $109 = HEAP8[$30>>0]|0;
-    $110 = HEAP8[$31>>0]|0;
-    $111 = $110 ^ $109;
-    HEAP8[$30>>0] = $111;
-    $112 = HEAP8[$32>>0]|0;
-    $113 = HEAP8[$33>>0]|0;
-    $114 = $113 ^ $112;
-    HEAP8[$32>>0] = $114;
-    $115 = HEAP8[$34>>0]|0;
-    $116 = HEAP8[$35>>0]|0;
-    $117 = $116 ^ $115;
-    HEAP8[$34>>0] = $117;
-    $118 = HEAP8[$36>>0]|0;
-    $119 = HEAP8[$37>>0]|0;
-    $120 = $119 ^ $118;
-    HEAP8[$36>>0] = $120;
-    $121 = HEAP8[$38>>0]|0;
-    $122 = HEAP8[$39>>0]|0;
-    $123 = $122 ^ $121;
-    HEAP8[$38>>0] = $123;
-    $124 = HEAP8[$40>>0]|0;
-    $125 = HEAP8[$41>>0]|0;
-    $126 = $125 ^ $124;
-    HEAP8[$40>>0] = $126;
-    $127 = HEAP8[$42>>0]|0;
-    $128 = HEAP8[$43>>0]|0;
-    $129 = $128 ^ $127;
-    HEAP8[$42>>0] = $129;
-    $130 = HEAP8[$44>>0]|0;
-    $131 = HEAP8[$45>>0]|0;
-    $132 = $131 ^ $130;
-    HEAP8[$44>>0] = $132;
-    $133 = HEAP8[$46>>0]|0;
-    $134 = HEAP8[$47>>0]|0;
-    $135 = $134 ^ $133;
-    HEAP8[$46>>0] = $135;
-    $136 = HEAP8[$48>>0]|0;
-    $137 = HEAP8[$49>>0]|0;
-    $138 = $137 ^ $136;
-    HEAP8[$48>>0] = $138;
-    $139 = HEAP8[$50>>0]|0;
-    $140 = HEAP8[$51>>0]|0;
-    $141 = $140 ^ $139;
-    HEAP8[$50>>0] = $141;
-    $142 = HEAP8[$52>>0]|0;
-    $143 = HEAP8[$53>>0]|0;
-    $144 = $143 ^ $142;
-    HEAP8[$52>>0] = $144;
-    $145 = HEAP8[$54>>0]|0;
-    $146 = HEAP8[$55>>0]|0;
-    $147 = $146 ^ $145;
-    HEAP8[$54>>0] = $147;
-    $148 = HEAP8[$56>>0]|0;
-    $149 = HEAP8[$57>>0]|0;
-    $150 = $149 ^ $148;
-    HEAP8[$56>>0] = $150;
-    $151 = HEAP8[$58>>0]|0;
-    $152 = HEAP8[$59>>0]|0;
-    $153 = $152 ^ $151;
-    HEAP8[$58>>0] = $153;
-   }
-   $154 = (FUNCTION_TABLE_iiii[$8 & 127]($29,$16,$16)|0);
-   $155 = ($$0121>>>0)>($154>>>0);
-   $156 = $155 ? $$0121 : $154;
-   $$1122 = $156;
-  }
-  $157 = HEAP32[$22>>2]|0;
-  $158 = ($157|0)==(0|0);
-  if ($158) {
-   $171 = ($$2110>>>0)>(15);
-   if ($171) {
-    $172 = (($$2110) + -16)|0;
-    $173 = $172 & -16;
-    $scevgep182 = ((($$2)) + 16|0);
-    $$2123160 = $$1122;$$3111161 = $$2110;$$3162 = $$2;
-    while(1) {
-     $174 = $$3162;
-     $175 = $174 | $17;
-     $176 = $175 & 3;
-     $177 = ($176|0)==(0);
-     if ($177) {
-      $178 = HEAP32[$16>>2]|0;
-      $179 = ((($$3162)) + 4|0);
-      $180 = HEAP32[$$3162>>2]|0;
-      $181 = $180 ^ $178;
-      HEAP32[$16>>2] = $181;
-      $182 = HEAP32[$23>>2]|0;
-      $183 = ((($$3162)) + 8|0);
-      $184 = HEAP32[$179>>2]|0;
-      $185 = $184 ^ $182;
-      HEAP32[$23>>2] = $185;
-      $186 = HEAP32[$25>>2]|0;
-      $187 = ((($$3162)) + 12|0);
-      $188 = HEAP32[$183>>2]|0;
-      $189 = $188 ^ $186;
-      HEAP32[$25>>2] = $189;
-      $190 = HEAP32[$27>>2]|0;
-      $191 = HEAP32[$187>>2]|0;
-      $192 = $191 ^ $190;
-      HEAP32[$27>>2] = $192;
-     } else {
-      $193 = HEAP8[$16>>0]|0;
-      $194 = ((($$3162)) + 1|0);
-      $195 = HEAP8[$$3162>>0]|0;
-      $196 = $195 ^ $193;
-      HEAP8[$16>>0] = $196;
-      $197 = HEAP8[$61>>0]|0;
-      $198 = ((($$3162)) + 2|0);
-      $199 = HEAP8[$194>>0]|0;
-      $200 = $199 ^ $197;
-      HEAP8[$61>>0] = $200;
-      $201 = HEAP8[$62>>0]|0;
-      $202 = ((($$3162)) + 3|0);
-      $203 = HEAP8[$198>>0]|0;
-      $204 = $203 ^ $201;
-      HEAP8[$62>>0] = $204;
-      $205 = HEAP8[$63>>0]|0;
-      $206 = ((($$3162)) + 4|0);
-      $207 = HEAP8[$202>>0]|0;
-      $208 = $207 ^ $205;
-      HEAP8[$63>>0] = $208;
-      $209 = HEAP8[$64>>0]|0;
-      $210 = ((($$3162)) + 5|0);
-      $211 = HEAP8[$206>>0]|0;
-      $212 = $211 ^ $209;
-      HEAP8[$64>>0] = $212;
-      $213 = HEAP8[$65>>0]|0;
-      $214 = ((($$3162)) + 6|0);
-      $215 = HEAP8[$210>>0]|0;
-      $216 = $215 ^ $213;
-      HEAP8[$65>>0] = $216;
-      $217 = HEAP8[$66>>0]|0;
-      $218 = ((($$3162)) + 7|0);
-      $219 = HEAP8[$214>>0]|0;
-      $220 = $219 ^ $217;
-      HEAP8[$66>>0] = $220;
-      $221 = HEAP8[$67>>0]|0;
-      $222 = ((($$3162)) + 8|0);
-      $223 = HEAP8[$218>>0]|0;
-      $224 = $223 ^ $221;
-      HEAP8[$67>>0] = $224;
-      $225 = HEAP8[$68>>0]|0;
-      $226 = ((($$3162)) + 9|0);
-      $227 = HEAP8[$222>>0]|0;
-      $228 = $227 ^ $225;
-      HEAP8[$68>>0] = $228;
-      $229 = HEAP8[$69>>0]|0;
-      $230 = ((($$3162)) + 10|0);
-      $231 = HEAP8[$226>>0]|0;
-      $232 = $231 ^ $229;
-      HEAP8[$69>>0] = $232;
-      $233 = HEAP8[$70>>0]|0;
-      $234 = ((($$3162)) + 11|0);
-      $235 = HEAP8[$230>>0]|0;
-      $236 = $235 ^ $233;
-      HEAP8[$70>>0] = $236;
-      $237 = HEAP8[$71>>0]|0;
-      $238 = ((($$3162)) + 12|0);
-      $239 = HEAP8[$234>>0]|0;
-      $240 = $239 ^ $237;
-      HEAP8[$71>>0] = $240;
-      $241 = HEAP8[$72>>0]|0;
-      $242 = ((($$3162)) + 13|0);
-      $243 = HEAP8[$238>>0]|0;
-      $244 = $243 ^ $241;
-      HEAP8[$72>>0] = $244;
-      $245 = HEAP8[$73>>0]|0;
-      $246 = ((($$3162)) + 14|0);
-      $247 = HEAP8[$242>>0]|0;
-      $248 = $247 ^ $245;
-      HEAP8[$73>>0] = $248;
-      $249 = HEAP8[$74>>0]|0;
-      $250 = ((($$3162)) + 15|0);
-      $251 = HEAP8[$246>>0]|0;
-      $252 = $251 ^ $249;
-      HEAP8[$74>>0] = $252;
-      $253 = HEAP8[$75>>0]|0;
-      $254 = HEAP8[$250>>0]|0;
-      $255 = $254 ^ $253;
-      HEAP8[$75>>0] = $255;
-     }
-     $256 = (FUNCTION_TABLE_iiii[$8 & 127]($29,$16,$16)|0);
-     $257 = ($$2123160>>>0)>($256>>>0);
-     $258 = $257 ? $$2123160 : $256;
-     $259 = (($$3111161) + -16)|0;
-     $260 = ((($$3162)) + 16|0);
-     $261 = ($259>>>0)>(15);
-     if ($261) {
-      $$2123160 = $258;$$3111161 = $259;$$3162 = $260;
-     } else {
-      break;
-     }
-    }
-    $262 = (($172) - ($173))|0;
-    $scevgep183 = (($scevgep182) + ($173)|0);
-    $$3124 = $258;$$4 = $scevgep183;$$4112 = $262;
-   } else {
-    $$3124 = $$1122;$$4 = $$2;$$4112 = $$2110;
-   }
-  } else {
-   $159 = $$2110 >>> 4;
-   FUNCTION_TABLE_viiiiii[$157 & 63]($29,$16,$4,$$2,$159,1);
-   $160 = $$2110 & -16;
-   $161 = (($$2) + ($160)|0);
-   $162 = (($$2110) - ($160))|0;
-   $163 = $4;
-   $164 = $163;
-   HEAP32[$164>>2] = 0;
-   $165 = (($163) + 4)|0;
-   $166 = $165;
-   HEAP32[$166>>2] = 0;
-   $167 = $60;
-   $168 = $167;
-   HEAP32[$168>>2] = 0;
-   $169 = (($167) + 4)|0;
-   $170 = $169;
-   HEAP32[$170>>2] = 0;
-   $$3124 = $$1122;$$4 = $161;$$4112 = $162;
-  }
-  $263 = ($$4112|0)==(0);
-  if ($263) {
-   $$4125 = $$3124;$$6 = 0;
-   break;
-  } else {
-   $$0107 = $$4;$$0108 = $$4112;$$0121 = $$3124;$$0127 = 0;
-  }
- }
- HEAP32[$9>>2] = $$6;
- $264 = ($$4125|0)==(0);
- $265 = (($$4125) + 16)|0;
- $spec$select = $264 ? 0 : $265;
- $$0 = $spec$select;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_ccm_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ($2>>>0)<($4>>>0);
- if ($5) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $6 = ((($0)) + 184|0);
- $7 = HEAP8[$6>>0]|0;
- $8 = $7 & 1;
- $9 = ($8<<24>>24)==(0);
- if ($9) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $10 = ((($0)) + 56|0);
- $11 = HEAP8[$10>>0]|0;
- $12 = $11 & 4;
- $13 = ($12<<24>>24)!=(0);
- $14 = $7 & 2;
- $15 = ($14<<24>>24)==(0);
- $or$cond = $15 | $13;
- if ($or$cond) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $16 = ((($0)) + 136|0);
- $17 = $16;
- $18 = $17;
- $19 = HEAP32[$18>>2]|0;
- $20 = (($17) + 4)|0;
- $21 = $20;
- $22 = HEAP32[$21>>2]|0;
- $23 = ($19|0)==(0);
- $24 = ($22|0)==(0);
- $25 = $23 & $24;
- if (!($25)) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $26 = ((($0)) + 128|0);
- $27 = $26;
- $28 = $27;
- $29 = HEAP32[$28>>2]|0;
- $30 = (($27) + 4)|0;
- $31 = $30;
- $32 = HEAP32[$31>>2]|0;
- $33 = ($32>>>0)<(0);
- $34 = ($29>>>0)<($4>>>0);
- $35 = ($32|0)==(0);
- $36 = $35 & $34;
- $37 = $33 | $36;
- if ($37) {
-  $$0 = 139;
-  return ($$0|0);
- }
- $38 = (_i64Subtract(($29|0),($32|0),($4|0),0)|0);
- $39 = tempRet0;
- $40 = $26;
- $41 = $40;
- HEAP32[$41>>2] = $38;
- $42 = (($40) + 4)|0;
- $43 = $42;
- HEAP32[$43>>2] = $39;
- $44 = (_do_cbc_mac($0,$3,$4,0)|0);
- $45 = ($44|0)==(0);
- if (!($45)) {
-  $46 = (($44) + 20)|0;
-  ___gcry_burn_stack($46);
- }
- $47 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$3,$4)|0);
- $$0 = $47;
- return ($$0|0);
-}
-function __gcry_cipher_ccm_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ($2>>>0)<($4>>>0);
- if ($5) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $6 = ((($0)) + 184|0);
- $7 = HEAP8[$6>>0]|0;
- $8 = $7 & 1;
- $9 = ($8<<24>>24)==(0);
- if ($9) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $10 = ((($0)) + 56|0);
- $11 = HEAP8[$10>>0]|0;
- $12 = $11 & 4;
- $13 = ($12<<24>>24)!=(0);
- $14 = $7 & 2;
- $15 = ($14<<24>>24)==(0);
- $or$cond = $15 | $13;
- if ($or$cond) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $16 = ((($0)) + 136|0);
- $17 = $16;
- $18 = $17;
- $19 = HEAP32[$18>>2]|0;
- $20 = (($17) + 4)|0;
- $21 = $20;
- $22 = HEAP32[$21>>2]|0;
- $23 = ($19|0)==(0);
- $24 = ($22|0)==(0);
- $25 = $23 & $24;
- if (!($25)) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $26 = ((($0)) + 128|0);
- $27 = $26;
- $28 = $27;
- $29 = HEAP32[$28>>2]|0;
- $30 = (($27) + 4)|0;
- $31 = $30;
- $32 = HEAP32[$31>>2]|0;
- $33 = ($32>>>0)<(0);
- $34 = ($29>>>0)<($4>>>0);
- $35 = ($32|0)==(0);
- $36 = $35 & $34;
- $37 = $33 | $36;
- if ($37) {
-  $$0 = 139;
-  return ($$0|0);
- }
- $38 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$3,$4)|0);
- $39 = ($38|0)==(0);
- if (!($39)) {
-  $$0 = $38;
-  return ($$0|0);
- }
- $40 = $26;
- $41 = $40;
- $42 = HEAP32[$41>>2]|0;
- $43 = (($40) + 4)|0;
- $44 = $43;
- $45 = HEAP32[$44>>2]|0;
- $46 = (_i64Subtract(($42|0),($45|0),($4|0),0)|0);
- $47 = tempRet0;
- $48 = $26;
- $49 = $48;
- HEAP32[$49>>2] = $46;
- $50 = (($48) + 4)|0;
- $51 = $50;
- HEAP32[$51>>2] = $47;
- $52 = (_do_cbc_mac($0,$1,$4,0)|0);
- $53 = ($52|0)==(0);
- if ($53) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $54 = (($52) + 20)|0;
- ___gcry_burn_stack($54);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_cipher_cfb_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$0134259 = 0, $$0134259$us = 0, $$0135 = 0, $$0139 = 0, $$0143 
= 0, $$02434$i = 0, $$02434$i240 = 0, $$02533$i = 0, $$02533$i241 = 0, $$026$i 
= 0, $$026$i244 = 0, $$028$i = 0, $$028$i243 = 0, $$03449$i = 0, $$03449$i153 = 
0, $$03449$i174 = 0, $$03449$i199 = 0, $$03449$i220$us = 0, $$035$i = 0;
- var $$035$i239 = 0, $$03548$i = 0, $$03548$i154 = 0, $$03548$i175 = 0, 
$$03548$i200 = 0, $$03548$i221$us = 0, $$03647$i = 0, $$03647$i155 = 0, 
$$03647$i176 = 0, $$03647$i201 = 0, $$03647$i222$us = 0, $$037$i = 0, 
$$037$i159 = 0, $$037$i205 = 0, $$037$i226$us = 0, $$039$i = 0, $$039$i158 = 0, 
$$039$i204 = 0, $$039$i225$us = 0, $$041$i = 0;
- var $$041$i157 = 0, $$041$i203 = 0, $$041$i224$us = 0, $$050$i = 0, 
$$050$i152 = 0, $$050$i173 = 0, $$050$i198 = 0, $$050$i219$us = 0, $$1 = 0, 
$$1$i = 0, $$1$i160 = 0, $$1$i191 = 0, $$1$i206 = 0, $$1$i227$us = 0, $$1$i245 
= 0, $$1136258 = 0, $$1136258$us = 0, $$1140257 = 0, $$1140257$us = 0, 
$$1144256 = 0;
- var $$1144256$us = 0, $$12731$i = 0, $$12731$i249 = 0, $$12930$i = 0, 
$$12930$i250 = 0, $$13845$i = 0, $$13845$i164 = 0, $$13845$i185 = 0, 
$$13845$i185$ph = 0, $$13845$i210 = 0, $$13845$i231 = 0, $$13845$i231$us = 0, 
$$14044$i = 0, $$14044$i165 = 0, $$14044$i186 = 0, $$14044$i186$ph = 0, 
$$14044$i211 = 0, $$14044$i232 = 0, $$14044$i232$us = 0, $$14243$i = 0;
- var $$14243$i166 = 0, $$14243$i187 = 0, $$14243$i187$ph = 0, $$14243$i212 = 
0, $$14243$i233 = 0, $$14243$i233$us = 0, $$2 = 0, $$2137 = 0, $$2141 = 0, 
$$2145 = 0, $$232$i = 0, $$232$i248 = 0, $$246$i = 0, $$246$i163 = 0, 
$$246$i184 = 0, $$246$i184$ph = 0, $$246$i209 = 0, $$246$i230 = 0, 
$$246$i230$us = 0, $$3 = 0;
- var $$3138 = 0, $$3142 = 0, $$3146 = 0, $$pre = 0, $$pre271 = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0;
- var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, 
$138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, 
$145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0;
- var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 
= 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0;
- var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 
= 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0;
- var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 
= 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 
= 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0;
- var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 
= 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 
= 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0;
- var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, 
$229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, 
$236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0;
- var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, 
$247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, 
$254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0;
- var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 
= 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $28 = 0, $29 = 
0, $30 = 0, $31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 
0, $69 = 0, $7 = 0, $70 = 0;
- var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, 
$79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0;
- var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0, $or$cond$i = 0, $or$cond$i147 = 0, $or$cond$i168 = 
0, $or$cond$i189 = 0, $or$cond$i193 = 0, $or$cond$i235 = 0, $scevgep$i = 0, 
$scevgep$i148 = 0, $scevgep$i169 = 0;
- var $scevgep$i190 = 0, $scevgep$i194 = 0, $scevgep$i215$us = 0, $scevgep$i236 
= 0, $scevgep44$i = 0, $scevgep44$i237 = 0, $scevgep61$i = 0, $scevgep61$i149 = 
0, $scevgep61$i170 = 0, $scevgep61$i195 = 0, $scevgep61$i216 = 0, $scevgep63$i 
= 0, $scevgep63$i150 = 0, $scevgep63$i171 = 0, $scevgep63$i196 = 0, 
$scevgep63$i217$us = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 36|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($6)) + 20|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = $10 << 1;
- $12 = ($2>>>0)<($4>>>0);
- if ($12) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $13 = ((($0)) + 112|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ($14>>>0)<($4>>>0);
- if (!($15)) {
-  $16 = ((($0)) + 64|0);
-  $17 = (($16) + ($10)|0);
-  $18 = (0 - ($14))|0;
-  $19 = (($17) + ($18)|0);
-  $20 = $3;
-  $21 = $1;
-  $22 = $19;
-  $23 = $20 | $21;
-  $24 = $23 | $22;
-  $25 = $24 & 3;
-  $26 = ($25|0)==(0);
-  $27 = ($4>>>0)>(3);
-  $or$cond$i = $27 & $26;
-  if ($or$cond$i) {
-   $28 = (($4) + -4)|0;
-   $29 = $28 & -4;
-   $30 = (($29) + 4)|0;
-   $scevgep61$i = (($19) + ($30)|0);
-   $$03449$i = $3;$$03548$i = $19;$$03647$i = $1;$$050$i = $4;
-   while(1) {
-    $31 = ((($$03449$i)) + 4|0);
-    $32 = HEAP32[$$03449$i>>2]|0;
-    $33 = ((($$03548$i)) + 4|0);
-    $34 = HEAP32[$$03548$i>>2]|0;
-    $35 = $34 ^ $32;
-    HEAP32[$$03548$i>>2] = $35;
-    $36 = ((($$03647$i)) + 4|0);
-    HEAP32[$$03647$i>>2] = $35;
-    $37 = (($$050$i) + -4)|0;
-    $38 = ($37>>>0)>(3);
-    if ($38) {
-     $$03449$i = $31;$$03548$i = $33;$$03647$i = $36;$$050$i = $37;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i = (($3) + ($30)|0);
-   $scevgep63$i = (($1) + ($30)|0);
-   $39 = (($28) - ($29))|0;
-   $$037$i = $scevgep$i;$$039$i = $scevgep61$i;$$041$i = $scevgep63$i;$$1$i = 
$39;
-  } else {
-   $$037$i = $3;$$039$i = $19;$$041$i = $1;$$1$i = $4;
-  }
-  $40 = ($$1$i|0)==(0);
-  if ($40) {
-   $50 = $14;
-  } else {
-   $$13845$i = $$037$i;$$14044$i = $$039$i;$$14243$i = $$041$i;$$246$i = $$1$i;
-   while(1) {
-    $41 = ((($$13845$i)) + 1|0);
-    $42 = HEAP8[$$13845$i>>0]|0;
-    $43 = ((($$14044$i)) + 1|0);
-    $44 = HEAP8[$$14044$i>>0]|0;
-    $45 = $44 ^ $42;
-    HEAP8[$$14044$i>>0] = $45;
-    $46 = ((($$14243$i)) + 1|0);
-    HEAP8[$$14243$i>>0] = $45;
-    $47 = (($$246$i) + -1)|0;
-    $48 = ($47|0)==(0);
-    if ($48) {
-     break;
-    } else {
-     $$13845$i = $41;$$14044$i = $43;$$14243$i = $46;$$246$i = $47;
-    }
-   }
-   $$pre = HEAP32[$13>>2]|0;
-   $50 = $$pre;
-  }
-  $49 = (($50) - ($4))|0;
-  HEAP32[$13>>2] = $49;
-  $$0 = 0;
-  return ($$0|0);
- }
- $51 = ($14|0)==(0);
- if ($51) {
-  $$0135 = $1;$$0139 = $3;$$0143 = $4;
- } else {
-  $52 = (($4) - ($14))|0;
-  $53 = ((($0)) + 64|0);
-  $54 = (($53) + ($10)|0);
-  $55 = (0 - ($14))|0;
-  $56 = (($54) + ($55)|0);
-  $57 = $3;
-  $58 = $1;
-  $59 = $56;
-  $60 = $57 | $58;
-  $61 = $60 | $59;
-  $62 = $61 & 3;
-  $63 = ($62|0)==(0);
-  $64 = ($14>>>0)>(3);
-  $or$cond$i168 = $64 & $63;
-  if ($or$cond$i168) {
-   $65 = (($14) + -4)|0;
-   $66 = $65 & -4;
-   $67 = (($66) + 4)|0;
-   $scevgep61$i170 = (($56) + ($67)|0);
-   $$03449$i174 = $3;$$03548$i175 = $56;$$03647$i176 = $1;$$050$i173 = $14;
-   while(1) {
-    $68 = ((($$03449$i174)) + 4|0);
-    $69 = HEAP32[$$03449$i174>>2]|0;
-    $70 = ((($$03548$i175)) + 4|0);
-    $71 = HEAP32[$$03548$i175>>2]|0;
-    $72 = $71 ^ $69;
-    HEAP32[$$03548$i175>>2] = $72;
-    $73 = ((($$03647$i176)) + 4|0);
-    HEAP32[$$03647$i176>>2] = $72;
-    $74 = (($$050$i173) + -4)|0;
-    $75 = ($74>>>0)>(3);
-    if ($75) {
-     $$03449$i174 = $68;$$03548$i175 = $70;$$03647$i176 = $73;$$050$i173 = $74;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i169 = (($3) + ($67)|0);
-   $scevgep63$i171 = (($1) + ($67)|0);
-   $76 = (($65) - ($66))|0;
-   $77 = ($76|0)==(0);
-   if ($77) {
-    $87 = $14;
-   } else {
-    $$13845$i185$ph = $scevgep$i169;$$14044$i186$ph = 
$scevgep61$i170;$$14243$i187$ph = $scevgep63$i171;$$246$i184$ph = $76;
-    label = 17;
-   }
-  } else {
-   $$13845$i185$ph = $3;$$14044$i186$ph = $56;$$14243$i187$ph = 
$1;$$246$i184$ph = $14;
-   label = 17;
-  }
-  if ((label|0) == 17) {
-   $$13845$i185 = $$13845$i185$ph;$$14044$i186 = $$14044$i186$ph;$$14243$i187 
= $$14243$i187$ph;$$246$i184 = $$246$i184$ph;
-   while(1) {
-    $78 = ((($$13845$i185)) + 1|0);
-    $79 = HEAP8[$$13845$i185>>0]|0;
-    $80 = ((($$14044$i186)) + 1|0);
-    $81 = HEAP8[$$14044$i186>>0]|0;
-    $82 = $81 ^ $79;
-    HEAP8[$$14044$i186>>0] = $82;
-    $83 = ((($$14243$i187)) + 1|0);
-    HEAP8[$$14243$i187>>0] = $82;
-    $84 = (($$246$i184) + -1)|0;
-    $85 = ($84|0)==(0);
-    if ($85) {
-     break;
-    } else {
-     $$13845$i185 = $78;$$14044$i186 = $80;$$14243$i187 = $83;$$246$i184 = $84;
-    }
-   }
-   $$pre271 = HEAP32[$13>>2]|0;
-   $87 = $$pre271;
-  }
-  $86 = (($1) + ($87)|0);
-  $88 = (($3) + ($87)|0);
-  HEAP32[$13>>2] = 0;
-  $$0135 = $86;$$0139 = $88;$$0143 = $52;
- }
- $89 = ($$0143>>>0)<($11>>>0);
- L34: do {
-  if ($89) {
-   $$1 = 0;$$2137 = $$0135;$$2141 = $$0139;$$2145 = $$0143;
-  } else {
-   $90 = ((($0)) + 20|0);
-   $91 = HEAP32[$90>>2]|0;
-   $92 = ($91|0)==(0|0);
-   if (!($92)) {
-    $93 = (($$0143>>>0) / ($10>>>0))&-1;
-    $94 = ((($0)) + 496|0);
-    $95 = ((($0)) + 64|0);
-    FUNCTION_TABLE_viiiii[$91 & 127]($94,$95,$$0135,$$0139,$93);
-    $96 = Math_imul($93, $10)|0;
-    $97 = (($$0135) + ($96)|0);
-    $98 = (($$0139) + ($96)|0);
-    $99 = (($$0143) - ($96))|0;
-    $$1 = 0;$$2137 = $97;$$2141 = $98;$$2145 = $99;
-    break;
-   }
-   $100 = ((($0)) + 496|0);
-   $101 = ((($0)) + 64|0);
-   $102 = $101;
-   $103 = ($10>>>0)>(3);
-   $104 = (($10) + -4)|0;
-   $105 = $104 & -4;
-   $106 = (($105) + 4)|0;
-   $scevgep61$i216 = (($101) + ($106)|0);
-   $107 = (($104) - ($105))|0;
-   if (!($103)) {
-    $138 = ($10|0)==(0);
-    $$0134259 = 0;$$1136258 = $$0135;$$1140257 = $$0139;$$1144256 = $$0143;
-    while(1) {
-     $139 = (FUNCTION_TABLE_iiii[$8 & 127]($100,$101,$101)|0);
-     $140 = ($139>>>0)>($$0134259>>>0);
-     $141 = $140 ? $139 : $$0134259;
-     if (!($138)) {
-      $$13845$i231 = $$1140257;$$14044$i232 = $101;$$14243$i233 = 
$$1136258;$$246$i230 = $10;
-      while(1) {
-       $142 = ((($$13845$i231)) + 1|0);
-       $143 = HEAP8[$$13845$i231>>0]|0;
-       $144 = ((($$14044$i232)) + 1|0);
-       $145 = HEAP8[$$14044$i232>>0]|0;
-       $146 = $145 ^ $143;
-       HEAP8[$$14044$i232>>0] = $146;
-       $147 = ((($$14243$i233)) + 1|0);
-       HEAP8[$$14243$i233>>0] = $146;
-       $148 = (($$246$i230) + -1)|0;
-       $149 = ($148|0)==(0);
-       if ($149) {
-        break;
-       } else {
-        $$13845$i231 = $142;$$14044$i232 = $144;$$14243$i233 = $147;$$246$i230 
= $148;
-       }
-      }
-     }
-     $150 = (($$1136258) + ($10)|0);
-     $151 = (($$1140257) + ($10)|0);
-     $152 = (($$1144256) - ($10))|0;
-     $153 = ($152>>>0)<($11>>>0);
-     if ($153) {
-      $$1 = $141;$$2137 = $150;$$2141 = $151;$$2145 = $152;
-      break L34;
-     } else {
-      $$0134259 = $141;$$1136258 = $150;$$1140257 = $151;$$1144256 = $152;
-     }
-    }
-   }
-   $$0134259$us = 0;$$1136258$us = $$0135;$$1140257$us = $$0139;$$1144256$us = 
$$0143;
-   while(1) {
-    $108 = (FUNCTION_TABLE_iiii[$8 & 127]($100,$101,$101)|0);
-    $109 = ($108>>>0)>($$0134259$us>>>0);
-    $110 = $109 ? $108 : $$0134259$us;
-    $111 = $$1140257$us;
-    $112 = $$1136258$us;
-    $113 = $111 | $102;
-    $114 = $113 | $112;
-    $115 = $114 & 3;
-    $116 = ($115|0)==(0);
-    if ($116) {
-     $scevgep$i215$us = (($$1140257$us) + ($106)|0);
-     $$03449$i220$us = $$1140257$us;$$03548$i221$us = $101;$$03647$i222$us = 
$$1136258$us;$$050$i219$us = $10;
-     while(1) {
-      $117 = ((($$03449$i220$us)) + 4|0);
-      $118 = HEAP32[$$03449$i220$us>>2]|0;
-      $119 = ((($$03548$i221$us)) + 4|0);
-      $120 = HEAP32[$$03548$i221$us>>2]|0;
-      $121 = $120 ^ $118;
-      HEAP32[$$03548$i221$us>>2] = $121;
-      $122 = ((($$03647$i222$us)) + 4|0);
-      HEAP32[$$03647$i222$us>>2] = $121;
-      $123 = (($$050$i219$us) + -4)|0;
-      $124 = ($123>>>0)>(3);
-      if ($124) {
-       $$03449$i220$us = $117;$$03548$i221$us = $119;$$03647$i222$us = 
$122;$$050$i219$us = $123;
-      } else {
-       break;
-      }
-     }
-     $scevgep63$i217$us = (($$1136258$us) + ($106)|0);
-     $$037$i226$us = $scevgep$i215$us;$$039$i225$us = 
$scevgep61$i216;$$041$i224$us = $scevgep63$i217$us;$$1$i227$us = $107;
-    } else {
-     $$037$i226$us = $$1140257$us;$$039$i225$us = $101;$$041$i224$us = 
$$1136258$us;$$1$i227$us = $10;
-    }
-    $125 = ($$1$i227$us|0)==(0);
-    if (!($125)) {
-     $$13845$i231$us = $$037$i226$us;$$14044$i232$us = 
$$039$i225$us;$$14243$i233$us = $$041$i224$us;$$246$i230$us = $$1$i227$us;
-     while(1) {
-      $126 = ((($$13845$i231$us)) + 1|0);
-      $127 = HEAP8[$$13845$i231$us>>0]|0;
-      $128 = ((($$14044$i232$us)) + 1|0);
-      $129 = HEAP8[$$14044$i232$us>>0]|0;
-      $130 = $129 ^ $127;
-      HEAP8[$$14044$i232$us>>0] = $130;
-      $131 = ((($$14243$i233$us)) + 1|0);
-      HEAP8[$$14243$i233$us>>0] = $130;
-      $132 = (($$246$i230$us) + -1)|0;
-      $133 = ($132|0)==(0);
-      if ($133) {
-       break;
-      } else {
-       $$13845$i231$us = $126;$$14044$i232$us = $128;$$14243$i233$us = 
$131;$$246$i230$us = $132;
-      }
-     }
-    }
-    $134 = (($$1136258$us) + ($10)|0);
-    $135 = (($$1140257$us) + ($10)|0);
-    $136 = (($$1144256$us) - ($10))|0;
-    $137 = ($136>>>0)<($11>>>0);
-    if ($137) {
-     $$1 = $110;$$2137 = $134;$$2141 = $135;$$2145 = $136;
-     break;
-    } else {
-     $$0134259$us = $110;$$1136258$us = $134;$$1140257$us = $135;$$1144256$us 
= $136;
-    }
-   }
-  }
- } while(0);
- $154 = ($$2145>>>0)<($10>>>0);
- if ($154) {
-  $$2 = $$1;$$3138 = $$2137;$$3142 = $$2141;$$3146 = $$2145;
- } else {
-  $155 = ((($0)) + 96|0);
-  $156 = ((($0)) + 64|0);
-  $157 = $155;
-  $158 = $156;
-  $159 = $158 | $157;
-  $160 = $159 & 3;
-  $161 = ($160|0)==(0);
-  $162 = ($10>>>0)>(3);
-  $or$cond$i235 = $161 & $162;
-  if ($or$cond$i235) {
-   $163 = (($10) + -4)|0;
-   $164 = $163 & -4;
-   $165 = (($164) + 4)|0;
-   $scevgep$i236 = (($156) + ($165)|0);
-   $$02434$i240 = $156;$$02533$i241 = $155;$$035$i239 = $10;
-   while(1) {
-    $166 = ((($$02434$i240)) + 4|0);
-    $167 = HEAP32[$$02434$i240>>2]|0;
-    $168 = ((($$02533$i241)) + 4|0);
-    HEAP32[$$02533$i241>>2] = $167;
-    $169 = (($$035$i239) + -4)|0;
-    $170 = ($169>>>0)>(3);
-    if ($170) {
-     $$02434$i240 = $166;$$02533$i241 = $168;$$035$i239 = $169;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i237 = (((($0)) + 96|0) + ($165)|0);
-   $171 = (($163) - ($164))|0;
-   $$026$i244 = $scevgep$i236;$$028$i243 = $scevgep44$i237;$$1$i245 = $171;
-  } else {
-   $$026$i244 = $156;$$028$i243 = $155;$$1$i245 = $10;
-  }
-  $172 = ($$1$i245|0)==(0);
-  if (!($172)) {
-   $$12731$i249 = $$026$i244;$$12930$i250 = $$028$i243;$$232$i248 = $$1$i245;
-   while(1) {
-    $173 = ((($$12731$i249)) + 1|0);
-    $174 = HEAP8[$$12731$i249>>0]|0;
-    $175 = ((($$12930$i250)) + 1|0);
-    HEAP8[$$12930$i250>>0] = $174;
-    $176 = (($$232$i248) + -1)|0;
-    $177 = ($176|0)==(0);
-    if ($177) {
-     break;
-    } else {
-     $$12731$i249 = $173;$$12930$i250 = $175;$$232$i248 = $176;
-    }
-   }
-  }
-  $178 = ((($0)) + 496|0);
-  $179 = (FUNCTION_TABLE_iiii[$8 & 127]($178,$156,$156)|0);
-  $180 = ($179>>>0)>($$1>>>0);
-  $181 = $180 ? $179 : $$1;
-  $182 = $$2141;
-  $183 = $$2137;
-  $184 = $182 | $158;
-  $185 = $184 | $183;
-  $186 = $185 & 3;
-  $187 = ($186|0)==(0);
-  $or$cond$i193 = $162 & $187;
-  if ($or$cond$i193) {
-   $188 = (($10) + -4)|0;
-   $189 = $188 & -4;
-   $190 = (($189) + 4)|0;
-   $scevgep61$i195 = (($156) + ($190)|0);
-   $$03449$i199 = $$2141;$$03548$i200 = $156;$$03647$i201 = $$2137;$$050$i198 
= $10;
-   while(1) {
-    $191 = ((($$03449$i199)) + 4|0);
-    $192 = HEAP32[$$03449$i199>>2]|0;
-    $193 = ((($$03548$i200)) + 4|0);
-    $194 = HEAP32[$$03548$i200>>2]|0;
-    $195 = $194 ^ $192;
-    HEAP32[$$03548$i200>>2] = $195;
-    $196 = ((($$03647$i201)) + 4|0);
-    HEAP32[$$03647$i201>>2] = $195;
-    $197 = (($$050$i198) + -4)|0;
-    $198 = ($197>>>0)>(3);
-    if ($198) {
-     $$03449$i199 = $191;$$03548$i200 = $193;$$03647$i201 = $196;$$050$i198 = 
$197;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i194 = (($$2141) + ($190)|0);
-   $scevgep63$i196 = (($$2137) + ($190)|0);
-   $199 = (($188) - ($189))|0;
-   $$037$i205 = $scevgep$i194;$$039$i204 = $scevgep61$i195;$$041$i203 = 
$scevgep63$i196;$$1$i206 = $199;
-  } else {
-   $$037$i205 = $$2141;$$039$i204 = $156;$$041$i203 = $$2137;$$1$i206 = $10;
-  }
-  $200 = ($$1$i206|0)==(0);
-  if (!($200)) {
-   $$13845$i210 = $$037$i205;$$14044$i211 = $$039$i204;$$14243$i212 = 
$$041$i203;$$246$i209 = $$1$i206;
-   while(1) {
-    $201 = ((($$13845$i210)) + 1|0);
-    $202 = HEAP8[$$13845$i210>>0]|0;
-    $203 = ((($$14044$i211)) + 1|0);
-    $204 = HEAP8[$$14044$i211>>0]|0;
-    $205 = $204 ^ $202;
-    HEAP8[$$14044$i211>>0] = $205;
-    $206 = ((($$14243$i212)) + 1|0);
-    HEAP8[$$14243$i212>>0] = $205;
-    $207 = (($$246$i209) + -1)|0;
-    $208 = ($207|0)==(0);
-    if ($208) {
-     break;
-    } else {
-     $$13845$i210 = $201;$$14044$i211 = $203;$$14243$i212 = $206;$$246$i209 = 
$207;
-    }
-   }
-  }
-  $209 = (($$2137) + ($10)|0);
-  $210 = (($$2141) + ($10)|0);
-  $211 = (($$2145) - ($10))|0;
-  $$2 = $181;$$3138 = $209;$$3142 = $210;$$3146 = $211;
- }
- $212 = ($$3146|0)==(0);
- if ($212) {
-  $$3 = $$2;
- } else {
-  $213 = ((($0)) + 96|0);
-  $214 = ((($0)) + 64|0);
-  $215 = $213;
-  $216 = $214;
-  $217 = $216 | $215;
-  $218 = $217 & 3;
-  $219 = ($218|0)==(0);
-  $220 = ($10>>>0)>(3);
-  $or$cond$i189 = $219 & $220;
-  if ($or$cond$i189) {
-   $221 = (($10) + -4)|0;
-   $222 = $221 & -4;
-   $223 = (($222) + 4)|0;
-   $scevgep$i190 = (($214) + ($223)|0);
-   $$02434$i = $214;$$02533$i = $213;$$035$i = $10;
-   while(1) {
-    $224 = ((($$02434$i)) + 4|0);
-    $225 = HEAP32[$$02434$i>>2]|0;
-    $226 = ((($$02533$i)) + 4|0);
-    HEAP32[$$02533$i>>2] = $225;
-    $227 = (($$035$i) + -4)|0;
-    $228 = ($227>>>0)>(3);
-    if ($228) {
-     $$02434$i = $224;$$02533$i = $226;$$035$i = $227;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i = (((($0)) + 96|0) + ($223)|0);
-   $229 = (($221) - ($222))|0;
-   $$026$i = $scevgep$i190;$$028$i = $scevgep44$i;$$1$i191 = $229;
-  } else {
-   $$026$i = $214;$$028$i = $213;$$1$i191 = $10;
-  }
-  $230 = ($$1$i191|0)==(0);
-  if (!($230)) {
-   $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i191;
-   while(1) {
-    $231 = ((($$12731$i)) + 1|0);
-    $232 = HEAP8[$$12731$i>>0]|0;
-    $233 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $232;
-    $234 = (($$232$i) + -1)|0;
-    $235 = ($234|0)==(0);
-    if ($235) {
-     break;
-    } else {
-     $$12731$i = $231;$$12930$i = $233;$$232$i = $234;
-    }
-   }
-  }
-  $236 = ((($0)) + 496|0);
-  $237 = (FUNCTION_TABLE_iiii[$8 & 127]($236,$214,$214)|0);
-  $238 = ($237>>>0)>($$2>>>0);
-  $239 = $238 ? $237 : $$2;
-  $240 = (($10) - ($$3146))|0;
-  HEAP32[$13>>2] = $240;
-  $241 = $$3142;
-  $242 = $$3138;
-  $243 = $241 | $216;
-  $244 = $243 | $242;
-  $245 = $244 & 3;
-  $246 = ($245|0)==(0);
-  $247 = ($$3146>>>0)>(3);
-  $or$cond$i147 = $247 & $246;
-  if ($or$cond$i147) {
-   $248 = (($$3146) + -4)|0;
-   $249 = $248 & -4;
-   $250 = (($249) + 4)|0;
-   $scevgep61$i149 = (($214) + ($250)|0);
-   $$03449$i153 = $$3142;$$03548$i154 = $214;$$03647$i155 = $$3138;$$050$i152 
= $$3146;
-   while(1) {
-    $251 = ((($$03449$i153)) + 4|0);
-    $252 = HEAP32[$$03449$i153>>2]|0;
-    $253 = ((($$03548$i154)) + 4|0);
-    $254 = HEAP32[$$03548$i154>>2]|0;
-    $255 = $254 ^ $252;
-    HEAP32[$$03548$i154>>2] = $255;
-    $256 = ((($$03647$i155)) + 4|0);
-    HEAP32[$$03647$i155>>2] = $255;
-    $257 = (($$050$i152) + -4)|0;
-    $258 = ($257>>>0)>(3);
-    if ($258) {
-     $$03449$i153 = $251;$$03548$i154 = $253;$$03647$i155 = $256;$$050$i152 = 
$257;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i148 = (($$3142) + ($250)|0);
-   $scevgep63$i150 = (($$3138) + ($250)|0);
-   $259 = (($248) - ($249))|0;
-   $$037$i159 = $scevgep$i148;$$039$i158 = $scevgep61$i149;$$041$i157 = 
$scevgep63$i150;$$1$i160 = $259;
-  } else {
-   $$037$i159 = $$3142;$$039$i158 = $214;$$041$i157 = $$3138;$$1$i160 = $$3146;
-  }
-  $260 = ($$1$i160|0)==(0);
-  if ($260) {
-   $$3 = $239;
-  } else {
-   $$13845$i164 = $$037$i159;$$14044$i165 = $$039$i158;$$14243$i166 = 
$$041$i157;$$246$i163 = $$1$i160;
-   while(1) {
-    $261 = ((($$13845$i164)) + 1|0);
-    $262 = HEAP8[$$13845$i164>>0]|0;
-    $263 = ((($$14044$i165)) + 1|0);
-    $264 = HEAP8[$$14044$i165>>0]|0;
-    $265 = $264 ^ $262;
-    HEAP8[$$14044$i165>>0] = $265;
-    $266 = ((($$14243$i166)) + 1|0);
-    HEAP8[$$14243$i166>>0] = $265;
-    $267 = (($$246$i163) + -1)|0;
-    $268 = ($267|0)==(0);
-    if ($268) {
-     $$3 = $239;
-     break;
-    } else {
-     $$13845$i164 = $261;$$14044$i165 = $263;$$14243$i166 = $266;$$246$i163 = 
$267;
-    }
-   }
-  }
- }
- $269 = ($$3|0)==(0);
- if ($269) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $270 = (($$3) + 16)|0;
- ___gcry_burn_stack($270);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_cipher_cfb_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$0134256 = 0, $$0134256$us = 0, $$0135 = 0, $$0139 = 0, $$0143 
= 0, $$02434$i = 0, $$02434$i236 = 0, $$02533$i = 0, $$02533$i237 = 0, $$026$i 
= 0, $$026$i240 = 0, $$028$i = 0, $$028$i239 = 0, $$035$i = 0, $$035$i235 = 0, 
$$050$i$i = 0, $$050$i$i159 = 0, $$050$i$i201 = 0, $$050$i$i222$us = 0;
- var $$05270$i$i = 0, $$05270$i$i151 = 0, $$05270$i$i172 = 0, $$05270$i$i193 = 
0, $$05270$i$i214$us = 0, $$05468$i$i = 0, $$05468$i$i152 = 0, $$05468$i$i173 = 
0, $$05468$i$i194 = 0, $$05468$i$i215$us = 0, $$05567$i$i = 0, $$05567$i$i153 = 
0, $$05567$i$i174 = 0, $$05567$i$i195 = 0, $$05567$i$i216$us = 0, $$056$i$i = 
0, $$056$i$i158 = 0, $$056$i$i200 = 0, $$056$i$i221$us = 0, $$060$i$i = 0;
- var $$060$i$i157 = 0, $$060$i$i199 = 0, $$060$i$i220$us = 0, $$071$i$i = 0, 
$$071$i$i150 = 0, $$071$i$i171 = 0, $$071$i$i192 = 0, $$071$i$i213$us = 0, $$1 
= 0, $$1$i = 0, $$1$i$i = 0, $$1$i$i160 = 0, $$1$i$i202 = 0, $$1$i$i223$us = 0, 
$$1$i241 = 0, $$1136255 = 0, $$1136255$us = 0, $$1140253 = 0, $$1140253$us = 0, 
$$1144252 = 0;
- var $$1144252$us = 0, $$12731$i = 0, $$12731$i245 = 0, $$12930$i = 0, 
$$12930$i246 = 0, $$15165$i$i = 0, $$15165$i$i164 = 0, $$15165$i$i185 = 0, 
$$15165$i$i185$ph = 0, $$15165$i$i206 = 0, $$15165$i$i227 = 0, 
$$15165$i$i227$us = 0, $$15764$i$i = 0, $$15764$i$i165 = 0, $$15764$i$i186 = 0, 
$$15764$i$i186$ph = 0, $$15764$i$i207 = 0, $$15764$i$i228 = 0, 
$$15764$i$i228$us = 0, $$15963$i$i = 0;
- var $$15963$i$i166 = 0, $$15963$i$i187 = 0, $$15963$i$i187$ph = 0, 
$$15963$i$i208 = 0, $$15963$i$i229 = 0, $$15963$i$i229$us = 0, $$2 = 0, $$2137 
= 0, $$2141 = 0, $$2145 = 0, $$232$i = 0, $$232$i244 = 0, $$266$i$i = 0, 
$$266$i$i163 = 0, $$266$i$i184 = 0, $$266$i$i184$ph = 0, $$266$i$i205 = 0, 
$$266$i$i226 = 0, $$266$i$i226$us = 0, $$3 = 0;
- var $$3138 = 0, $$3142 = 0, $$3146 = 0, $$pre = 0, $$pre272 = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0;
- var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, 
$138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, 
$145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0;
- var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 
= 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0;
- var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 
= 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0;
- var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 
= 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 
= 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0;
- var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 
= 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 
= 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0;
- var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, 
$229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, 
$236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0;
- var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, 
$247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, 
$254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0;
- var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 
= 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $28 = 0, $29 = 
0, $30 = 0, $31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 
0, $69 = 0, $7 = 0, $70 = 0;
- var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, 
$79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0;
- var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0, $or$cond$i = 0, $or$cond$i$i = 0, $or$cond$i$i147 = 
0, $or$cond$i$i168 = 0, $or$cond$i$i189 = 0, $or$cond$i231 = 0, $scevgep$i = 0, 
$scevgep$i$i = 0, $scevgep$i$i154 = 0;
- var $scevgep$i$i175 = 0, $scevgep$i$i196 = 0, $scevgep$i$i217$us = 0, 
$scevgep$i232 = 0, $scevgep44$i = 0, $scevgep44$i233 = 0, $scevgep86$i$i = 0, 
$scevgep86$i$i148 = 0, $scevgep86$i$i169 = 0, $scevgep86$i$i190 = 0, 
$scevgep86$i$i211$us = 0, $scevgep88$i$i = 0, $scevgep88$i$i155 = 0, 
$scevgep88$i$i176 = 0, $scevgep88$i$i197 = 0, $scevgep88$i$i218 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 36|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($6)) + 20|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = $10 << 1;
- $12 = ($2>>>0)<($4>>>0);
- if ($12) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $13 = ((($0)) + 112|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ($14>>>0)<($4>>>0);
- if (!($15)) {
-  $16 = ((($0)) + 64|0);
-  $17 = (($16) + ($10)|0);
-  $18 = (0 - ($14))|0;
-  $19 = (($17) + ($18)|0);
-  $20 = $3;
-  $21 = $1;
-  $22 = $19;
-  $23 = $20 | $21;
-  $24 = $23 | $22;
-  $25 = $24 & 3;
-  $26 = ($25|0)==(0);
-  $27 = ($4>>>0)>(3);
-  $or$cond$i$i = $27 & $26;
-  if ($or$cond$i$i) {
-   $28 = (($4) + -4)|0;
-   $29 = $28 & -4;
-   $30 = (($29) + 4)|0;
-   $$05270$i$i = $3;$$05468$i$i = $19;$$05567$i$i = $1;$$071$i$i = $4;
-   while(1) {
-    $31 = ((($$05270$i$i)) + 4|0);
-    $32 = HEAP32[$$05270$i$i>>2]|0;
-    $33 = HEAP32[$$05468$i$i>>2]|0;
-    $34 = $33 ^ $32;
-    $35 = ((($$05567$i$i)) + 4|0);
-    HEAP32[$$05567$i$i>>2] = $34;
-    $36 = ((($$05468$i$i)) + 4|0);
-    HEAP32[$$05468$i$i>>2] = $32;
-    $37 = (($$071$i$i) + -4)|0;
-    $38 = ($37>>>0)>(3);
-    if ($38) {
-     $$05270$i$i = $31;$$05468$i$i = $36;$$05567$i$i = $35;$$071$i$i = $37;
-    } else {
-     break;
-    }
-   }
-   $scevgep86$i$i = (($1) + ($30)|0);
-   $scevgep$i$i = (($3) + ($30)|0);
-   $scevgep88$i$i = (($19) + ($30)|0);
-   $39 = (($28) - ($29))|0;
-   $$050$i$i = $scevgep86$i$i;$$056$i$i = $scevgep88$i$i;$$060$i$i = 
$scevgep$i$i;$$1$i$i = $39;
-  } else {
-   $$050$i$i = $1;$$056$i$i = $19;$$060$i$i = $3;$$1$i$i = $4;
-  }
-  $40 = ($$1$i$i|0)==(0);
-  if ($40) {
-   $50 = $14;
-  } else {
-   $$15165$i$i = $$050$i$i;$$15764$i$i = $$056$i$i;$$15963$i$i = 
$$060$i$i;$$266$i$i = $$1$i$i;
-   while(1) {
-    $41 = ((($$15963$i$i)) + 1|0);
-    $42 = HEAP8[$$15963$i$i>>0]|0;
-    $43 = HEAP8[$$15764$i$i>>0]|0;
-    $44 = $43 ^ $42;
-    $45 = ((($$15165$i$i)) + 1|0);
-    HEAP8[$$15165$i$i>>0] = $44;
-    $46 = ((($$15764$i$i)) + 1|0);
-    HEAP8[$$15764$i$i>>0] = $42;
-    $47 = (($$266$i$i) + -1)|0;
-    $48 = ($47|0)==(0);
-    if ($48) {
-     break;
-    } else {
-     $$15165$i$i = $45;$$15764$i$i = $46;$$15963$i$i = $41;$$266$i$i = $47;
-    }
-   }
-   $$pre = HEAP32[$13>>2]|0;
-   $50 = $$pre;
-  }
-  $49 = (($50) - ($4))|0;
-  HEAP32[$13>>2] = $49;
-  $$0 = 0;
-  return ($$0|0);
- }
- $51 = ($14|0)==(0);
- if ($51) {
-  $$0135 = $1;$$0139 = $3;$$0143 = $4;
- } else {
-  $52 = (($4) - ($14))|0;
-  $53 = ((($0)) + 64|0);
-  $54 = (($53) + ($10)|0);
-  $55 = (0 - ($14))|0;
-  $56 = (($54) + ($55)|0);
-  $57 = $3;
-  $58 = $1;
-  $59 = $56;
-  $60 = $57 | $58;
-  $61 = $60 | $59;
-  $62 = $61 & 3;
-  $63 = ($62|0)==(0);
-  $64 = ($14>>>0)>(3);
-  $or$cond$i$i168 = $64 & $63;
-  if ($or$cond$i$i168) {
-   $65 = (($14) + -4)|0;
-   $66 = $65 & -4;
-   $67 = (($66) + 4)|0;
-   $$05270$i$i172 = $3;$$05468$i$i173 = $56;$$05567$i$i174 = $1;$$071$i$i171 = 
$14;
-   while(1) {
-    $68 = ((($$05270$i$i172)) + 4|0);
-    $69 = HEAP32[$$05270$i$i172>>2]|0;
-    $70 = HEAP32[$$05468$i$i173>>2]|0;
-    $71 = $70 ^ $69;
-    $72 = ((($$05567$i$i174)) + 4|0);
-    HEAP32[$$05567$i$i174>>2] = $71;
-    $73 = ((($$05468$i$i173)) + 4|0);
-    HEAP32[$$05468$i$i173>>2] = $69;
-    $74 = (($$071$i$i171) + -4)|0;
-    $75 = ($74>>>0)>(3);
-    if ($75) {
-     $$05270$i$i172 = $68;$$05468$i$i173 = $73;$$05567$i$i174 = 
$72;$$071$i$i171 = $74;
-    } else {
-     break;
-    }
-   }
-   $scevgep86$i$i169 = (($1) + ($67)|0);
-   $scevgep$i$i175 = (($3) + ($67)|0);
-   $scevgep88$i$i176 = (($56) + ($67)|0);
-   $76 = (($65) - ($66))|0;
-   $77 = ($76|0)==(0);
-   if ($77) {
-    $87 = $14;
-   } else {
-    $$15165$i$i185$ph = $scevgep86$i$i169;$$15764$i$i186$ph = 
$scevgep88$i$i176;$$15963$i$i187$ph = $scevgep$i$i175;$$266$i$i184$ph = $76;
-    label = 17;
-   }
-  } else {
-   $$15165$i$i185$ph = $1;$$15764$i$i186$ph = $56;$$15963$i$i187$ph = 
$3;$$266$i$i184$ph = $14;
-   label = 17;
-  }
-  if ((label|0) == 17) {
-   $$15165$i$i185 = $$15165$i$i185$ph;$$15764$i$i186 = 
$$15764$i$i186$ph;$$15963$i$i187 = $$15963$i$i187$ph;$$266$i$i184 = 
$$266$i$i184$ph;
-   while(1) {
-    $78 = ((($$15963$i$i187)) + 1|0);
-    $79 = HEAP8[$$15963$i$i187>>0]|0;
-    $80 = HEAP8[$$15764$i$i186>>0]|0;
-    $81 = $80 ^ $79;
-    $82 = ((($$15165$i$i185)) + 1|0);
-    HEAP8[$$15165$i$i185>>0] = $81;
-    $83 = ((($$15764$i$i186)) + 1|0);
-    HEAP8[$$15764$i$i186>>0] = $79;
-    $84 = (($$266$i$i184) + -1)|0;
-    $85 = ($84|0)==(0);
-    if ($85) {
-     break;
-    } else {
-     $$15165$i$i185 = $82;$$15764$i$i186 = $83;$$15963$i$i187 = 
$78;$$266$i$i184 = $84;
-    }
-   }
-   $$pre272 = HEAP32[$13>>2]|0;
-   $87 = $$pre272;
-  }
-  $86 = (($1) + ($87)|0);
-  $88 = (($3) + ($87)|0);
-  HEAP32[$13>>2] = 0;
-  $$0135 = $86;$$0139 = $88;$$0143 = $52;
- }
- $89 = ($$0143>>>0)<($11>>>0);
- L34: do {
-  if ($89) {
-   $$1 = 0;$$2137 = $$0135;$$2141 = $$0139;$$2145 = $$0143;
-  } else {
-   $90 = ((($0)) + 24|0);
-   $91 = HEAP32[$90>>2]|0;
-   $92 = ($91|0)==(0|0);
-   if (!($92)) {
-    $93 = (($$0143>>>0) / ($10>>>0))&-1;
-    $94 = ((($0)) + 496|0);
-    $95 = ((($0)) + 64|0);
-    FUNCTION_TABLE_viiiii[$91 & 127]($94,$95,$$0135,$$0139,$93);
-    $96 = Math_imul($93, $10)|0;
-    $97 = (($$0135) + ($96)|0);
-    $98 = (($$0139) + ($96)|0);
-    $99 = (($$0143) - ($96))|0;
-    $$1 = 0;$$2137 = $97;$$2141 = $98;$$2145 = $99;
-    break;
-   }
-   $100 = ((($0)) + 496|0);
-   $101 = ((($0)) + 64|0);
-   $102 = $101;
-   $103 = ($10>>>0)>(3);
-   $104 = (($10) + -4)|0;
-   $105 = $104 & -4;
-   $106 = (($105) + 4)|0;
-   $scevgep88$i$i218 = (($101) + ($106)|0);
-   $107 = (($104) - ($105))|0;
-   if (!($103)) {
-    $138 = ($10|0)==(0);
-    $$0134256 = 0;$$1136255 = $$0135;$$1140253 = $$0139;$$1144252 = $$0143;
-    while(1) {
-     $139 = (FUNCTION_TABLE_iiii[$8 & 127]($100,$101,$101)|0);
-     $140 = ($139>>>0)>($$0134256>>>0);
-     $141 = $140 ? $139 : $$0134256;
-     if (!($138)) {
-      $$15165$i$i227 = $$1136255;$$15764$i$i228 = $101;$$15963$i$i229 = 
$$1140253;$$266$i$i226 = $10;
-      while(1) {
-       $142 = ((($$15963$i$i229)) + 1|0);
-       $143 = HEAP8[$$15963$i$i229>>0]|0;
-       $144 = HEAP8[$$15764$i$i228>>0]|0;
-       $145 = $144 ^ $143;
-       $146 = ((($$15165$i$i227)) + 1|0);
-       HEAP8[$$15165$i$i227>>0] = $145;
-       $147 = ((($$15764$i$i228)) + 1|0);
-       HEAP8[$$15764$i$i228>>0] = $143;
-       $148 = (($$266$i$i226) + -1)|0;
-       $149 = ($148|0)==(0);
-       if ($149) {
-        break;
-       } else {
-        $$15165$i$i227 = $146;$$15764$i$i228 = $147;$$15963$i$i229 = 
$142;$$266$i$i226 = $148;
-       }
-      }
-     }
-     $150 = (($$1136255) + ($10)|0);
-     $151 = (($$1140253) + ($10)|0);
-     $152 = (($$1144252) - ($10))|0;
-     $153 = ($152>>>0)<($11>>>0);
-     if ($153) {
-      $$1 = $141;$$2137 = $150;$$2141 = $151;$$2145 = $152;
-      break L34;
-     } else {
-      $$0134256 = $141;$$1136255 = $150;$$1140253 = $151;$$1144252 = $152;
-     }
-    }
-   }
-   $$0134256$us = 0;$$1136255$us = $$0135;$$1140253$us = $$0139;$$1144252$us = 
$$0143;
-   while(1) {
-    $108 = (FUNCTION_TABLE_iiii[$8 & 127]($100,$101,$101)|0);
-    $109 = ($108>>>0)>($$0134256$us>>>0);
-    $110 = $109 ? $108 : $$0134256$us;
-    $111 = $$1140253$us;
-    $112 = $$1136255$us;
-    $113 = $111 | $102;
-    $114 = $113 | $112;
-    $115 = $114 & 3;
-    $116 = ($115|0)==(0);
-    if ($116) {
-     $$05270$i$i214$us = $$1140253$us;$$05468$i$i215$us = 
$101;$$05567$i$i216$us = $$1136255$us;$$071$i$i213$us = $10;
-     while(1) {
-      $117 = ((($$05270$i$i214$us)) + 4|0);
-      $118 = HEAP32[$$05270$i$i214$us>>2]|0;
-      $119 = HEAP32[$$05468$i$i215$us>>2]|0;
-      $120 = $119 ^ $118;
-      $121 = ((($$05567$i$i216$us)) + 4|0);
-      HEAP32[$$05567$i$i216$us>>2] = $120;
-      $122 = ((($$05468$i$i215$us)) + 4|0);
-      HEAP32[$$05468$i$i215$us>>2] = $118;
-      $123 = (($$071$i$i213$us) + -4)|0;
-      $124 = ($123>>>0)>(3);
-      if ($124) {
-       $$05270$i$i214$us = $117;$$05468$i$i215$us = $122;$$05567$i$i216$us = 
$121;$$071$i$i213$us = $123;
-      } else {
-       break;
-      }
-     }
-     $scevgep86$i$i211$us = (($$1136255$us) + ($106)|0);
-     $scevgep$i$i217$us = (($$1140253$us) + ($106)|0);
-     $$050$i$i222$us = $scevgep86$i$i211$us;$$056$i$i221$us = 
$scevgep88$i$i218;$$060$i$i220$us = $scevgep$i$i217$us;$$1$i$i223$us = $107;
-    } else {
-     $$050$i$i222$us = $$1136255$us;$$056$i$i221$us = $101;$$060$i$i220$us = 
$$1140253$us;$$1$i$i223$us = $10;
-    }
-    $125 = ($$1$i$i223$us|0)==(0);
-    if (!($125)) {
-     $$15165$i$i227$us = $$050$i$i222$us;$$15764$i$i228$us = 
$$056$i$i221$us;$$15963$i$i229$us = $$060$i$i220$us;$$266$i$i226$us = 
$$1$i$i223$us;
-     while(1) {
-      $126 = ((($$15963$i$i229$us)) + 1|0);
-      $127 = HEAP8[$$15963$i$i229$us>>0]|0;
-      $128 = HEAP8[$$15764$i$i228$us>>0]|0;
-      $129 = $128 ^ $127;
-      $130 = ((($$15165$i$i227$us)) + 1|0);
-      HEAP8[$$15165$i$i227$us>>0] = $129;
-      $131 = ((($$15764$i$i228$us)) + 1|0);
-      HEAP8[$$15764$i$i228$us>>0] = $127;
-      $132 = (($$266$i$i226$us) + -1)|0;
-      $133 = ($132|0)==(0);
-      if ($133) {
-       break;
-      } else {
-       $$15165$i$i227$us = $130;$$15764$i$i228$us = $131;$$15963$i$i229$us = 
$126;$$266$i$i226$us = $132;
-      }
-     }
-    }
-    $134 = (($$1136255$us) + ($10)|0);
-    $135 = (($$1140253$us) + ($10)|0);
-    $136 = (($$1144252$us) - ($10))|0;
-    $137 = ($136>>>0)<($11>>>0);
-    if ($137) {
-     $$1 = $110;$$2137 = $134;$$2141 = $135;$$2145 = $136;
-     break;
-    } else {
-     $$0134256$us = $110;$$1136255$us = $134;$$1140253$us = $135;$$1144252$us 
= $136;
-    }
-   }
-  }
- } while(0);
- $154 = ($$2145>>>0)<($10>>>0);
- if ($154) {
-  $$2 = $$1;$$3138 = $$2137;$$3142 = $$2141;$$3146 = $$2145;
- } else {
-  $155 = ((($0)) + 96|0);
-  $156 = ((($0)) + 64|0);
-  $157 = $155;
-  $158 = $156;
-  $159 = $158 | $157;
-  $160 = $159 & 3;
-  $161 = ($160|0)==(0);
-  $162 = ($10>>>0)>(3);
-  $or$cond$i231 = $161 & $162;
-  if ($or$cond$i231) {
-   $163 = (($10) + -4)|0;
-   $164 = $163 & -4;
-   $165 = (($164) + 4)|0;
-   $scevgep$i232 = (($156) + ($165)|0);
-   $$02434$i236 = $156;$$02533$i237 = $155;$$035$i235 = $10;
-   while(1) {
-    $166 = ((($$02434$i236)) + 4|0);
-    $167 = HEAP32[$$02434$i236>>2]|0;
-    $168 = ((($$02533$i237)) + 4|0);
-    HEAP32[$$02533$i237>>2] = $167;
-    $169 = (($$035$i235) + -4)|0;
-    $170 = ($169>>>0)>(3);
-    if ($170) {
-     $$02434$i236 = $166;$$02533$i237 = $168;$$035$i235 = $169;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i233 = (((($0)) + 96|0) + ($165)|0);
-   $171 = (($163) - ($164))|0;
-   $$026$i240 = $scevgep$i232;$$028$i239 = $scevgep44$i233;$$1$i241 = $171;
-  } else {
-   $$026$i240 = $156;$$028$i239 = $155;$$1$i241 = $10;
-  }
-  $172 = ($$1$i241|0)==(0);
-  if (!($172)) {
-   $$12731$i245 = $$026$i240;$$12930$i246 = $$028$i239;$$232$i244 = $$1$i241;
-   while(1) {
-    $173 = ((($$12731$i245)) + 1|0);
-    $174 = HEAP8[$$12731$i245>>0]|0;
-    $175 = ((($$12930$i246)) + 1|0);
-    HEAP8[$$12930$i246>>0] = $174;
-    $176 = (($$232$i244) + -1)|0;
-    $177 = ($176|0)==(0);
-    if ($177) {
-     break;
-    } else {
-     $$12731$i245 = $173;$$12930$i246 = $175;$$232$i244 = $176;
-    }
-   }
-  }
-  $178 = ((($0)) + 496|0);
-  $179 = (FUNCTION_TABLE_iiii[$8 & 127]($178,$156,$156)|0);
-  $180 = ($179>>>0)>($$1>>>0);
-  $181 = $180 ? $179 : $$1;
-  $182 = $$2141;
-  $183 = $$2137;
-  $184 = $182 | $158;
-  $185 = $184 | $183;
-  $186 = $185 & 3;
-  $187 = ($186|0)==(0);
-  $or$cond$i$i189 = $162 & $187;
-  if ($or$cond$i$i189) {
-   $188 = (($10) + -4)|0;
-   $189 = $188 & -4;
-   $190 = (($189) + 4)|0;
-   $$05270$i$i193 = $$2141;$$05468$i$i194 = $156;$$05567$i$i195 = 
$$2137;$$071$i$i192 = $10;
-   while(1) {
-    $191 = ((($$05270$i$i193)) + 4|0);
-    $192 = HEAP32[$$05270$i$i193>>2]|0;
-    $193 = HEAP32[$$05468$i$i194>>2]|0;
-    $194 = $193 ^ $192;
-    $195 = ((($$05567$i$i195)) + 4|0);
-    HEAP32[$$05567$i$i195>>2] = $194;
-    $196 = ((($$05468$i$i194)) + 4|0);
-    HEAP32[$$05468$i$i194>>2] = $192;
-    $197 = (($$071$i$i192) + -4)|0;
-    $198 = ($197>>>0)>(3);
-    if ($198) {
-     $$05270$i$i193 = $191;$$05468$i$i194 = $196;$$05567$i$i195 = 
$195;$$071$i$i192 = $197;
-    } else {
-     break;
-    }
-   }
-   $scevgep86$i$i190 = (($$2137) + ($190)|0);
-   $scevgep$i$i196 = (($$2141) + ($190)|0);
-   $scevgep88$i$i197 = (($156) + ($190)|0);
-   $199 = (($188) - ($189))|0;
-   $$050$i$i201 = $scevgep86$i$i190;$$056$i$i200 = 
$scevgep88$i$i197;$$060$i$i199 = $scevgep$i$i196;$$1$i$i202 = $199;
-  } else {
-   $$050$i$i201 = $$2137;$$056$i$i200 = $156;$$060$i$i199 = $$2141;$$1$i$i202 
= $10;
-  }
-  $200 = ($$1$i$i202|0)==(0);
-  if (!($200)) {
-   $$15165$i$i206 = $$050$i$i201;$$15764$i$i207 = $$056$i$i200;$$15963$i$i208 
= $$060$i$i199;$$266$i$i205 = $$1$i$i202;
-   while(1) {
-    $201 = ((($$15963$i$i208)) + 1|0);
-    $202 = HEAP8[$$15963$i$i208>>0]|0;
-    $203 = HEAP8[$$15764$i$i207>>0]|0;
-    $204 = $203 ^ $202;
-    $205 = ((($$15165$i$i206)) + 1|0);
-    HEAP8[$$15165$i$i206>>0] = $204;
-    $206 = ((($$15764$i$i207)) + 1|0);
-    HEAP8[$$15764$i$i207>>0] = $202;
-    $207 = (($$266$i$i205) + -1)|0;
-    $208 = ($207|0)==(0);
-    if ($208) {
-     break;
-    } else {
-     $$15165$i$i206 = $205;$$15764$i$i207 = $206;$$15963$i$i208 = 
$201;$$266$i$i205 = $207;
-    }
-   }
-  }
-  $209 = (($$2137) + ($10)|0);
-  $210 = (($$2141) + ($10)|0);
-  $211 = (($$2145) - ($10))|0;
-  $$2 = $181;$$3138 = $209;$$3142 = $210;$$3146 = $211;
- }
- $212 = ($$3146|0)==(0);
- if ($212) {
-  $$3 = $$2;
- } else {
-  $213 = ((($0)) + 96|0);
-  $214 = ((($0)) + 64|0);
-  $215 = $213;
-  $216 = $214;
-  $217 = $216 | $215;
-  $218 = $217 & 3;
-  $219 = ($218|0)==(0);
-  $220 = ($10>>>0)>(3);
-  $or$cond$i = $219 & $220;
-  if ($or$cond$i) {
-   $221 = (($10) + -4)|0;
-   $222 = $221 & -4;
-   $223 = (($222) + 4)|0;
-   $scevgep$i = (($214) + ($223)|0);
-   $$02434$i = $214;$$02533$i = $213;$$035$i = $10;
-   while(1) {
-    $224 = ((($$02434$i)) + 4|0);
-    $225 = HEAP32[$$02434$i>>2]|0;
-    $226 = ((($$02533$i)) + 4|0);
-    HEAP32[$$02533$i>>2] = $225;
-    $227 = (($$035$i) + -4)|0;
-    $228 = ($227>>>0)>(3);
-    if ($228) {
-     $$02434$i = $224;$$02533$i = $226;$$035$i = $227;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i = (((($0)) + 96|0) + ($223)|0);
-   $229 = (($221) - ($222))|0;
-   $$026$i = $scevgep$i;$$028$i = $scevgep44$i;$$1$i = $229;
-  } else {
-   $$026$i = $214;$$028$i = $213;$$1$i = $10;
-  }
-  $230 = ($$1$i|0)==(0);
-  if (!($230)) {
-   $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i;
-   while(1) {
-    $231 = ((($$12731$i)) + 1|0);
-    $232 = HEAP8[$$12731$i>>0]|0;
-    $233 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $232;
-    $234 = (($$232$i) + -1)|0;
-    $235 = ($234|0)==(0);
-    if ($235) {
-     break;
-    } else {
-     $$12731$i = $231;$$12930$i = $233;$$232$i = $234;
-    }
-   }
-  }
-  $236 = ((($0)) + 496|0);
-  $237 = (FUNCTION_TABLE_iiii[$8 & 127]($236,$214,$214)|0);
-  $238 = ($237>>>0)>($$2>>>0);
-  $239 = $238 ? $237 : $$2;
-  $240 = (($10) - ($$3146))|0;
-  HEAP32[$13>>2] = $240;
-  $241 = $$3142;
-  $242 = $$3138;
-  $243 = $241 | $216;
-  $244 = $243 | $242;
-  $245 = $244 & 3;
-  $246 = ($245|0)==(0);
-  $247 = ($$3146>>>0)>(3);
-  $or$cond$i$i147 = $247 & $246;
-  if ($or$cond$i$i147) {
-   $248 = (($$3146) + -4)|0;
-   $249 = $248 & -4;
-   $250 = (($249) + 4)|0;
-   $$05270$i$i151 = $$3142;$$05468$i$i152 = $214;$$05567$i$i153 = 
$$3138;$$071$i$i150 = $$3146;
-   while(1) {
-    $251 = ((($$05270$i$i151)) + 4|0);
-    $252 = HEAP32[$$05270$i$i151>>2]|0;
-    $253 = HEAP32[$$05468$i$i152>>2]|0;
-    $254 = $253 ^ $252;
-    $255 = ((($$05567$i$i153)) + 4|0);
-    HEAP32[$$05567$i$i153>>2] = $254;
-    $256 = ((($$05468$i$i152)) + 4|0);
-    HEAP32[$$05468$i$i152>>2] = $252;
-    $257 = (($$071$i$i150) + -4)|0;
-    $258 = ($257>>>0)>(3);
-    if ($258) {
-     $$05270$i$i151 = $251;$$05468$i$i152 = $256;$$05567$i$i153 = 
$255;$$071$i$i150 = $257;
-    } else {
-     break;
-    }
-   }
-   $scevgep86$i$i148 = (($$3138) + ($250)|0);
-   $scevgep$i$i154 = (($$3142) + ($250)|0);
-   $scevgep88$i$i155 = (($214) + ($250)|0);
-   $259 = (($248) - ($249))|0;
-   $$050$i$i159 = $scevgep86$i$i148;$$056$i$i158 = 
$scevgep88$i$i155;$$060$i$i157 = $scevgep$i$i154;$$1$i$i160 = $259;
-  } else {
-   $$050$i$i159 = $$3138;$$056$i$i158 = $214;$$060$i$i157 = $$3142;$$1$i$i160 
= $$3146;
-  }
-  $260 = ($$1$i$i160|0)==(0);
-  if ($260) {
-   $$3 = $239;
-  } else {
-   $$15165$i$i164 = $$050$i$i159;$$15764$i$i165 = $$056$i$i158;$$15963$i$i166 
= $$060$i$i157;$$266$i$i163 = $$1$i$i160;
-   while(1) {
-    $261 = ((($$15963$i$i166)) + 1|0);
-    $262 = HEAP8[$$15963$i$i166>>0]|0;
-    $263 = HEAP8[$$15764$i$i165>>0]|0;
-    $264 = $263 ^ $262;
-    $265 = ((($$15165$i$i164)) + 1|0);
-    HEAP8[$$15165$i$i164>>0] = $264;
-    $266 = ((($$15764$i$i165)) + 1|0);
-    HEAP8[$$15764$i$i165>>0] = $262;
-    $267 = (($$266$i$i163) + -1)|0;
-    $268 = ($267|0)==(0);
-    if ($268) {
-     $$3 = $239;
-     break;
-    } else {
-     $$15165$i$i164 = $265;$$15764$i$i165 = $266;$$15963$i$i166 = 
$261;$$266$i$i163 = $267;
-    }
-   }
-  }
- }
- $269 = ($$3|0)==(0);
- if ($269) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $270 = (($$3) + 16)|0;
- ___gcry_burn_stack($270);
- $$0 = 0;
- return ($$0|0);
-}
-function __gcry_cipher_cmac_set_subkeys($0) {
- $0 = $0|0;
- var $$06683$us$i = 0, $$067$lcssa99$i = 0, $$06778$i = 0, $$068$lcssa98$i = 
0, $$06877$i = 0, $$084$us$i = 0, $$1$i = 0, $$169$i = 0, $$2$i = 0, $$270$i = 
0, $$37175$i = 0, $$376$i = 0, $$lcssa2 = 0, $$phi$trans$insert$i = 0, $$pre = 
0, $$pre$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0;
- var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 
0, $29 = 0, $3 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0;
- var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0;
- var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0;
- var $86 = 0, $87 = 0, $88 = 0, $9 = 0, $scevgep$i = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($3)) + 20|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ($5>>>0)>(16);
- if ($6) {
-  __gcry_bug(64349,113,64363);
-  // unreachable;
- }
- _memset(($1|0),0,($5|0))|0;
- $7 = ((($3)) + 36|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 496|0);
- $10 = (FUNCTION_TABLE_iiii[$8 & 127]($9,$1,$1)|0);
- $11 = ($5|0)==(16);
- $12 = (($5) + -1)|0;
- $13 = ($12|0)>(-1);
- $14 = $11 ? 135 : 27;
- $15 = (($1) + ($12)|0);
- $16 = ((($0)) + 128|0);
- if ($13) {
-  $$06683$us$i = $12;$$084$us$i = 0;
-  while(1) {
-   $17 = (($1) + ($$06683$us$i)|0);
-   $18 = HEAP8[$17>>0]|0;
-   $19 = $$084$us$i&255;
-   $20 = $18&255;
-   $21 = $20 << 1;
-   $22 = ($18&255) >>> 7;
-   $23 = $21 | $19;
-   $24 = $23&255;
-   HEAP8[$17>>0] = $24;
-   $25 = (((($16)) + 1|0) + ($$06683$us$i)|0);
-   HEAP8[$25>>0] = $24;
-   $26 = (($$06683$us$i) + -1)|0;
-   $27 = ($$06683$us$i|0)>(0);
-   if ($27) {
-    $$06683$us$i = $26;$$084$us$i = $22;
-   } else {
-    break;
-   }
-  }
-  $28 = ($22<<24>>24)==(0);
-  $29 = $28 ? 0 : $14;
-  $30 = HEAP8[$15>>0]|0;
-  $31 = $30&255;
-  $32 = $29 ^ $31;
-  $33 = $32&255;
-  $34 = (((($16)) + 1|0) + ($12)|0);
-  HEAP8[$34>>0] = $33;
-  $35 = $32 << 1;
-  $36 = ($33&255) >>> 7;
-  $37 = $35&255;
-  HEAP8[$15>>0] = $37;
-  $38 = (((($16)) + 17|0) + ($12)|0);
-  HEAP8[$38>>0] = $37;
-  $39 = ($12|0)>(0);
-  if ($39) {
-   $40 = (($5) + -2)|0;
-   $72 = $40;$74 = $36;
-   while(1) {
-    $$phi$trans$insert$i = (($1) + ($72)|0);
-    $$pre$i = HEAP8[$$phi$trans$insert$i>>0]|0;
-    $73 = $74&255;
-    $75 = $$pre$i&255;
-    $76 = $75 << 1;
-    $77 = ($$pre$i&255) >>> 7;
-    $78 = $76 | $73;
-    $79 = $78&255;
-    HEAP8[$$phi$trans$insert$i>>0] = $79;
-    $80 = (((($16)) + 17|0) + ($72)|0);
-    HEAP8[$80>>0] = $79;
-    $81 = (($72) + -1)|0;
-    $82 = ($72|0)>(0);
-    if ($82) {
-     $72 = $81;$74 = $77;
-    } else {
-     break;
-    }
-   }
-   $$pre = HEAP8[$15>>0]|0;
-   $$lcssa2 = $77;$86 = $$pre;
-  } else {
-   $$lcssa2 = $36;$86 = $37;
-  }
-  $83 = ($$lcssa2<<24>>24)==(0);
-  $84 = $83 ? 0 : $14;
-  $85 = $86&255;
-  $87 = $84 ^ $85;
-  $88 = $87&255;
-  HEAP8[$15>>0] = $88;
-  HEAP8[$38>>0] = $88;
- } else {
-  $41 = HEAP8[$15>>0]|0;
-  $42 = (((($16)) + 1|0) + ($12)|0);
-  HEAP8[$42>>0] = $41;
-  $43 = (((($16)) + 17|0) + ($12)|0);
-  HEAP8[$43>>0] = $41;
- }
- $44 = $1;
- $45 = $44 & 4;
- $46 = ($45|0)==(0);
- if ($46) {
-  $$067$lcssa99$i = 16;$$068$lcssa98$i = $1;
-  label = 13;
- } else {
-  $$06778$i = 16;$$06877$i = $1;
-  while(1) {
-   HEAP8[$$06877$i>>0] = 0;
-   $47 = ((($$06877$i)) + 1|0);
-   $48 = (($$06778$i) + -1)|0;
-   $49 = $47;
-   $50 = $49 & 7;
-   $51 = ($50|0)!=(0);
-   $52 = ($48|0)!=(0);
-   $53 = $52 & $51;
-   if ($53) {
-    $$06778$i = $48;$$06877$i = $47;
-   } else {
-    break;
-   }
-  }
-  $54 = ($48>>>0)<(8);
-  if ($54) {
-   $$2$i = $48;$$270$i = $47;
-  } else {
-   $$067$lcssa99$i = $48;$$068$lcssa98$i = $47;
-   label = 13;
-  }
- }
- if ((label|0) == 13) {
-  $55 = (($$067$lcssa99$i) + -8)|0;
-  $56 = $55 & -8;
-  $$1$i = $$067$lcssa99$i;$$169$i = $$068$lcssa98$i;
-  while(1) {
-   $57 = $$169$i;
-   $58 = $57;
-   HEAP32[$58>>2] = 0;
-   $59 = (($57) + 4)|0;
-   $60 = $59;
-   HEAP32[$60>>2] = 0;
-   $61 = (($$1$i) + -8)|0;
-   $62 = ((($$169$i)) + 8|0);
-   $63 = ($61>>>0)>(7);
-   if ($63) {
-    $$1$i = $61;$$169$i = $62;
-   } else {
-    break;
-   }
-  }
-  $64 = (($56) + 8)|0;
-  $65 = (($55) - ($56))|0;
-  $scevgep$i = (($$068$lcssa98$i) + ($64)|0);
-  $$2$i = $65;$$270$i = $scevgep$i;
- }
- $66 = ($$2$i|0)==(0);
- if (!($66)) {
-  $$37175$i = $$270$i;$$376$i = $$2$i;
-  while(1) {
-   HEAP8[$$37175$i>>0] = 0;
-   $67 = ((($$37175$i)) + 1|0);
-   $68 = (($$376$i) + -1)|0;
-   $69 = ($68|0)==(0);
-   if ($69) {
-    break;
-   } else {
-    $$37175$i = $67;$$376$i = $68;
-   }
-  }
- }
- $70 = ($10|0)==(0);
- if ($70) {
-  STACKTOP = sp;return 0;
- }
- $71 = (($10) + 16)|0;
- ___gcry_burn_stack($71);
- STACKTOP = sp;return 0;
-}
-function __gcry_cipher_ctr_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0 = 0, $$0126 = 0, $$0135 = 0, $$0138 = 0, $$0138$us = 0, 
$$0140 = 0, $$0143182$us = 0, $$02434$i = 0, $$02533$i = 0, $$03449$i = 0, 
$$03449$i154 = 0, $$03449$i154$us = 0, $$035$i = 0, $$03548$i = 0, $$03548$i155 
= 0, $$03548$i155$us = 0, $$03647$i = 0, $$03647$i156 = 0, $$03647$i156$us = 0;
- var $$037$i = 0, $$037$i160 = 0, $$037$i160$us = 0, $$039$i = 0, $$039$i159 = 
0, $$039$i159$us = 0, $$041$i = 0, $$041$i158 = 0, $$041$i158$us = 0, $$050$i = 
0, $$050$i153 = 0, $$050$i153$us = 0, $$1 = 0, $$1$i = 0, $$1$i161 = 0, 
$$1$i161$us = 0, $$1136 = 0, $$1141 = 0, $$12731$i = 0, $$12731$i$ph = 0;
- var $$12930$i = 0, $$12930$i$ph = 0, $$13845$i = 0, $$13845$i165 = 0, 
$$13845$i165$us = 0, $$14044$i = 0, $$14044$i166 = 0, $$14044$i166$us = 0, 
$$14243$i = 0, $$14243$i167 = 0, $$14243$i167$us = 0, $$2 = 0, $$2$us = 0, 
$$2137 = 0, $$2137$us = 0, $$2142 = 0, $$2142$us = 0, $$232$i = 0, $$232$i$ph = 
0, $$246$i = 0;
- var $$246$i164 = 0, $$246$i164$us = 0, $$lcssa173 = 0, $$lcssa174 = 0, $$pre 
= 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0;
- var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, 
$138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, 
$145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0;
- var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 
= 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0;
- var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 
= 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $19 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0;
- var $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond$i = 0, $or$cond$i144 = 
0, $or$cond$i148 = 0, $or$cond$i148$us = 0, $scevgep$i = 0, $scevgep$i145 = 0, 
$scevgep$i149 = 0, $scevgep$i149$us = 0, $scevgep44$i = 0, $scevgep61$i = 0, 
$scevgep61$i150 = 0, $scevgep61$i150$us = 0, $scevgep63$i = 0, $scevgep63$i151 
= 0, $scevgep63$i151$us = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ((($0)) + 12|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($7)) + 36|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ((($7)) + 20|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ($2>>>0)<($4>>>0);
- if ($12) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = ((($0)) + 112|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  $$0126 = $1;$$0135 = $3;$$0140 = $4;
- } else {
-  $16 = ($11>>>0)>($14>>>0);
-  if (!($16)) {
-   __gcry_assert_failed(64385,64407,53,64420);
-   // unreachable;
-  }
-  $17 = (($11) - ($14))|0;
-  $18 = ($14>>>0)>($4>>>0);
-  $$ = $18 ? $4 : $14;
-  $19 = (((($0)) + 96|0) + ($17)|0);
-  $20 = $1;
-  $21 = $3;
-  $22 = $21 | $20;
-  $23 = $19;
-  $24 = $22 | $23;
-  $25 = $24 & 3;
-  $26 = ($25|0)==(0);
-  $27 = ($$>>>0)>(3);
-  $or$cond$i = $27 & $26;
-  if ($or$cond$i) {
-   $28 = (($$) + -4)|0;
-   $29 = $28 & -4;
-   $30 = (($29) + 4)|0;
-   $scevgep61$i = (($19) + ($30)|0);
-   $$03449$i = $19;$$03548$i = $3;$$03647$i = $1;$$050$i = $$;
-   while(1) {
-    $31 = ((($$03548$i)) + 4|0);
-    $32 = HEAP32[$$03548$i>>2]|0;
-    $33 = ((($$03449$i)) + 4|0);
-    $34 = HEAP32[$$03449$i>>2]|0;
-    $35 = $34 ^ $32;
-    $36 = ((($$03647$i)) + 4|0);
-    HEAP32[$$03647$i>>2] = $35;
-    $37 = (($$050$i) + -4)|0;
-    $38 = ($37>>>0)>(3);
-    if ($38) {
-     $$03449$i = $33;$$03548$i = $31;$$03647$i = $36;$$050$i = $37;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i = (($3) + ($30)|0);
-   $scevgep63$i = (($1) + ($30)|0);
-   $39 = (($28) - ($29))|0;
-   $$037$i = $scevgep61$i;$$039$i = $scevgep$i;$$041$i = $scevgep63$i;$$1$i = 
$39;
-  } else {
-   $$037$i = $19;$$039$i = $3;$$041$i = $1;$$1$i = $$;
-  }
-  $40 = ($$1$i|0)==(0);
-  if ($40) {
-   $50 = $14;
-  } else {
-   $$13845$i = $$037$i;$$14044$i = $$039$i;$$14243$i = $$041$i;$$246$i = $$1$i;
-   while(1) {
-    $41 = ((($$14044$i)) + 1|0);
-    $42 = HEAP8[$$14044$i>>0]|0;
-    $43 = ((($$13845$i)) + 1|0);
-    $44 = HEAP8[$$13845$i>>0]|0;
-    $45 = $44 ^ $42;
-    $46 = ((($$14243$i)) + 1|0);
-    HEAP8[$$14243$i>>0] = $45;
-    $47 = (($$246$i) + -1)|0;
-    $48 = ($47|0)==(0);
-    if ($48) {
-     break;
-    } else {
-     $$13845$i = $43;$$14044$i = $41;$$14243$i = $46;$$246$i = $47;
-    }
-   }
-   $$pre = HEAP32[$13>>2]|0;
-   $50 = $$pre;
-  }
-  $49 = (($50) - ($$))|0;
-  HEAP32[$13>>2] = $49;
-  $51 = (($3) + ($$)|0);
-  $52 = (($1) + ($$)|0);
-  $53 = (($4) - ($$))|0;
-  $$0126 = $52;$$0135 = $51;$$0140 = $53;
- }
- $54 = (($$0140>>>0) / ($11>>>0))&-1;
- $55 = ($11>>>0)>($$0140>>>0);
- if ($55) {
-  $$1 = $$0126;$$1136 = $$0135;$$1141 = $$0140;
- } else {
-  $56 = ((($0)) + 36|0);
-  $57 = HEAP32[$56>>2]|0;
-  $58 = ($57|0)==(0|0);
-  $59 = Math_imul($54, $11)|0;
-  if ($58) {
-   $$1 = $$0126;$$1136 = $$0135;$$1141 = $$0140;
-  } else {
-   $60 = (($$0140) - ($59))|0;
-   $61 = (($$0126) + ($59)|0);
-   $62 = (($$0135) + ($59)|0);
-   $63 = ((($0)) + 80|0);
-   $64 = ((($0)) + 496|0);
-   FUNCTION_TABLE_viiiii[$57 & 127]($64,$63,$$0126,$$0135,$54);
-   $$1 = $61;$$1136 = $62;$$1141 = $60;
-  }
- }
- $65 = ($$1141|0)==(0);
- if ($65) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $66 = ((($0)) + 496|0);
- $67 = ((($0)) + 80|0);
- $68 = ($11|0)>(0);
- if ($68) {
-  $$0138$us = 0;$$2$us = $$1;$$2137$us = $$1136;$$2142$us = $$1141;
-  while(1) {
-   $69 = (FUNCTION_TABLE_iiii[$9 & 127]($66,$5,$67)|0);
-   $70 = ($69>>>0)>($$0138$us>>>0);
-   $$0143182$us = $11;
-   while(1) {
-    $71 = (($$0143182$us) + -1)|0;
-    $72 = (($67) + ($71)|0);
-    $73 = HEAP8[$72>>0]|0;
-    $74 = (($73) + 1)<<24>>24;
-    HEAP8[$72>>0] = $74;
-    $75 = ($74<<24>>24)==(0);
-    $76 = ($$0143182$us|0)>(1);
-    $or$cond = $75 & $76;
-    if ($or$cond) {
-     $$0143182$us = $71;
-    } else {
-     break;
-    }
-   }
-   $77 = $70 ? $69 : $$0138$us;
-   $78 = ($11>>>0)<($$2142$us>>>0);
-   $79 = $78 ? $11 : $$2142$us;
-   $80 = $$2$us;
-   $81 = $$2137$us;
-   $82 = $80 | $81;
-   $83 = $82 & 3;
-   $84 = ($83|0)==(0);
-   $85 = ($79>>>0)>(3);
-   $or$cond$i148$us = $85 & $84;
-   if ($or$cond$i148$us) {
-    $86 = (($79) + -4)|0;
-    $87 = $86 & -4;
-    $88 = (($87) + 4)|0;
-    $scevgep61$i150$us = (($5) + ($88)|0);
-    $$03449$i154$us = $5;$$03548$i155$us = $$2137$us;$$03647$i156$us = 
$$2$us;$$050$i153$us = $79;
-    while(1) {
-     $89 = ((($$03548$i155$us)) + 4|0);
-     $90 = HEAP32[$$03548$i155$us>>2]|0;
-     $91 = ((($$03449$i154$us)) + 4|0);
-     $92 = HEAP32[$$03449$i154$us>>2]|0;
-     $93 = $92 ^ $90;
-     $94 = ((($$03647$i156$us)) + 4|0);
-     HEAP32[$$03647$i156$us>>2] = $93;
-     $95 = (($$050$i153$us) + -4)|0;
-     $96 = ($95>>>0)>(3);
-     if ($96) {
-      $$03449$i154$us = $91;$$03548$i155$us = $89;$$03647$i156$us = 
$94;$$050$i153$us = $95;
-     } else {
-      break;
-     }
-    }
-    $scevgep$i149$us = (($$2137$us) + ($88)|0);
-    $scevgep63$i151$us = (($$2$us) + ($88)|0);
-    $97 = (($86) - ($87))|0;
-    $$037$i160$us = $scevgep61$i150$us;$$039$i159$us = 
$scevgep$i149$us;$$041$i158$us = $scevgep63$i151$us;$$1$i161$us = $97;
-   } else {
-    $$037$i160$us = $5;$$039$i159$us = $$2137$us;$$041$i158$us = 
$$2$us;$$1$i161$us = $79;
-   }
-   $98 = ($$1$i161$us|0)==(0);
-   if (!($98)) {
-    $$13845$i165$us = $$037$i160$us;$$14044$i166$us = 
$$039$i159$us;$$14243$i167$us = $$041$i158$us;$$246$i164$us = $$1$i161$us;
-    while(1) {
-     $99 = ((($$14044$i166$us)) + 1|0);
-     $100 = HEAP8[$$14044$i166$us>>0]|0;
-     $101 = ((($$13845$i165$us)) + 1|0);
-     $102 = HEAP8[$$13845$i165$us>>0]|0;
-     $103 = $102 ^ $100;
-     $104 = ((($$14243$i167$us)) + 1|0);
-     HEAP8[$$14243$i167$us>>0] = $103;
-     $105 = (($$246$i164$us) + -1)|0;
-     $106 = ($105|0)==(0);
-     if ($106) {
-      break;
-     } else {
-      $$13845$i165$us = $101;$$14044$i166$us = $99;$$14243$i167$us = 
$104;$$246$i164$us = $105;
-     }
-    }
-   }
-   $107 = (($$2142$us) - ($79))|0;
-   $108 = (($$2$us) + ($79)|0);
-   $109 = (($$2137$us) + ($79)|0);
-   $110 = ($107|0)==(0);
-   if ($110) {
-    $$lcssa173 = $77;$$lcssa174 = $79;
-    break;
-   } else {
-    $$0138$us = $77;$$2$us = $108;$$2137$us = $109;$$2142$us = $107;
-   }
-  }
- } else {
-  $$0138 = 0;$$2 = $$1;$$2137 = $$1136;$$2142 = $$1141;
-  while(1) {
-   $111 = (FUNCTION_TABLE_iiii[$9 & 127]($66,$5,$67)|0);
-   $112 = ($111>>>0)>($$0138>>>0);
-   $113 = $112 ? $111 : $$0138;
-   $114 = ($11>>>0)<($$2142>>>0);
-   $115 = $114 ? $11 : $$2142;
-   $116 = $$2;
-   $117 = $$2137;
-   $118 = $116 | $117;
-   $119 = $118 & 3;
-   $120 = ($119|0)==(0);
-   $121 = ($115>>>0)>(3);
-   $or$cond$i148 = $121 & $120;
-   if ($or$cond$i148) {
-    $122 = (($115) + -4)|0;
-    $123 = $122 & -4;
-    $124 = (($123) + 4)|0;
-    $scevgep61$i150 = (($5) + ($124)|0);
-    $$03449$i154 = $5;$$03548$i155 = $$2137;$$03647$i156 = $$2;$$050$i153 = 
$115;
-    while(1) {
-     $125 = ((($$03548$i155)) + 4|0);
-     $126 = HEAP32[$$03548$i155>>2]|0;
-     $127 = ((($$03449$i154)) + 4|0);
-     $128 = HEAP32[$$03449$i154>>2]|0;
-     $129 = $128 ^ $126;
-     $130 = ((($$03647$i156)) + 4|0);
-     HEAP32[$$03647$i156>>2] = $129;
-     $131 = (($$050$i153) + -4)|0;
-     $132 = ($131>>>0)>(3);
-     if ($132) {
-      $$03449$i154 = $127;$$03548$i155 = $125;$$03647$i156 = $130;$$050$i153 = 
$131;
-     } else {
-      break;
-     }
-    }
-    $scevgep$i149 = (($$2137) + ($124)|0);
-    $scevgep63$i151 = (($$2) + ($124)|0);
-    $133 = (($122) - ($123))|0;
-    $$037$i160 = $scevgep61$i150;$$039$i159 = $scevgep$i149;$$041$i158 = 
$scevgep63$i151;$$1$i161 = $133;
-   } else {
-    $$037$i160 = $5;$$039$i159 = $$2137;$$041$i158 = $$2;$$1$i161 = $115;
-   }
-   $134 = ($$1$i161|0)==(0);
-   if (!($134)) {
-    $$13845$i165 = $$037$i160;$$14044$i166 = $$039$i159;$$14243$i167 = 
$$041$i158;$$246$i164 = $$1$i161;
-    while(1) {
-     $135 = ((($$14044$i166)) + 1|0);
-     $136 = HEAP8[$$14044$i166>>0]|0;
-     $137 = ((($$13845$i165)) + 1|0);
-     $138 = HEAP8[$$13845$i165>>0]|0;
-     $139 = $138 ^ $136;
-     $140 = ((($$14243$i167)) + 1|0);
-     HEAP8[$$14243$i167>>0] = $139;
-     $141 = (($$246$i164) + -1)|0;
-     $142 = ($141|0)==(0);
-     if ($142) {
-      break;
-     } else {
-      $$13845$i165 = $137;$$14044$i166 = $135;$$14243$i167 = $140;$$246$i164 = 
$141;
-     }
-    }
-   }
-   $143 = (($$2142) - ($115))|0;
-   $144 = (($$2) + ($115)|0);
-   $145 = (($$2137) + ($115)|0);
-   $146 = ($143|0)==(0);
-   if ($146) {
-    $$lcssa173 = $113;$$lcssa174 = $115;
-    break;
-   } else {
-    $$0138 = $113;$$2 = $144;$$2137 = $145;$$2142 = $143;
-   }
-  }
- }
- $147 = (($11) - ($$lcssa174))|0;
- HEAP32[$13>>2] = $147;
- $148 = ($147|0)==(0);
- do {
-  if (!($148)) {
-   $149 = (((($0)) + 96|0) + ($$lcssa174)|0);
-   $150 = (($5) + ($$lcssa174)|0);
-   $151 = $149;
-   $152 = $150;
-   $153 = $152 | $151;
-   $154 = $153 & 3;
-   $155 = ($154|0)==(0);
-   $156 = ($147>>>0)>(3);
-   $or$cond$i144 = $156 & $155;
-   if ($or$cond$i144) {
-    $157 = (($147) + -4)|0;
-    $158 = $157 & -4;
-    $159 = (($158) + 4)|0;
-    $scevgep$i145 = (($150) + ($159)|0);
-    $$02434$i = $150;$$02533$i = $149;$$035$i = $147;
-    while(1) {
-     $160 = ((($$02434$i)) + 4|0);
-     $161 = HEAP32[$$02434$i>>2]|0;
-     $162 = ((($$02533$i)) + 4|0);
-     HEAP32[$$02533$i>>2] = $161;
-     $163 = (($$035$i) + -4)|0;
-     $164 = ($163>>>0)>(3);
-     if ($164) {
-      $$02434$i = $160;$$02533$i = $162;$$035$i = $163;
-     } else {
-      break;
-     }
-    }
-    $scevgep44$i = (($149) + ($159)|0);
-    $165 = (($157) - ($158))|0;
-    $166 = ($165|0)==(0);
-    if ($166) {
-     break;
-    } else {
-     $$12731$i$ph = $scevgep$i145;$$12930$i$ph = $scevgep44$i;$$232$i$ph = 
$165;
-    }
-   } else {
-    $$12731$i$ph = $150;$$12930$i$ph = $149;$$232$i$ph = $147;
-   }
-   $$12731$i = $$12731$i$ph;$$12930$i = $$12930$i$ph;$$232$i = $$232$i$ph;
-   while(1) {
-    $167 = ((($$12731$i)) + 1|0);
-    $168 = HEAP8[$$12731$i>>0]|0;
-    $169 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $168;
-    $170 = (($$232$i) + -1)|0;
-    $171 = ($170|0)==(0);
-    if ($171) {
-     break;
-    } else {
-     $$12731$i = $167;$$12930$i = $169;$$232$i = $170;
-    }
-   }
-  }
- } while(0);
- $172 = $5;
- $173 = $172;
- HEAP32[$173>>2] = 0;
- $174 = (($172) + 4)|0;
- $175 = $174;
- HEAP32[$175>>2] = 0;
- $176 = ((($5)) + 8|0);
- $177 = $176;
- $178 = $177;
- HEAP32[$178>>2] = 0;
- $179 = (($177) + 4)|0;
- $180 = $179;
- HEAP32[$180>>2] = 0;
- $181 = ($$lcssa173|0)==(0);
- if ($181) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $182 = (($$lcssa173) + 16)|0;
- ___gcry_burn_stack($182);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_gcm_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 
0, $45 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $or$cond30 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(16);
- if (!($9)) {
-  $$0 = 12;
-  return ($$0|0);
- }
- $10 = ($2>>>0)<($4>>>0);
- if ($10) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $11 = ((($0)) + 128|0);
- $12 = ((($0)) + 196|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13 & 4;
- $15 = ($14<<24>>24)==(0);
- if (!($15)) {
-  $$0 = 139;
-  return ($$0|0);
- }
- $16 = ((($0)) + 56|0);
- $17 = HEAP8[$16>>0]|0;
- $18 = $17 & 4;
- $19 = $13 & 1;
- $20 = $18 | $19;
- $21 = ($20<<24>>24)==(0);
- if (!($21)) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $22 = $17 & 2;
- $23 = ($22<<24>>24)==(0);
- if ($23) {
-  (__gcry_cipher_gcm_setiv($0,71184,16)|0);
-  $$pre = HEAP8[$12>>0]|0;
-  $25 = $$pre;
- } else {
-  $25 = $13;
- }
- $24 = $25 & 8;
- $26 = ($24<<24>>24)==(0);
- if (!($26)) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $27 = $25 & 2;
- $28 = ($27<<24>>24)==(0);
- if ($28) {
-  _do_ghash_buf($0,$11,0,0,1);
-  $29 = HEAP8[$12>>0]|0;
-  $30 = $29 | 2;
-  HEAP8[$12>>0] = $30;
-  $43 = $30;
- } else {
-  $43 = $25;
- }
- $31 = ((($0)) + 172|0);
- $32 = HEAP32[$31>>2]|0;
- $33 = (($32) + ($4))|0;
- HEAP32[$31>>2] = $33;
- $34 = ($33>>>0)<($4>>>0);
- $35 = ((($0)) + 176|0);
- $36 = HEAP32[$35>>2]|0;
- if ($34) {
-  $37 = (($36) + 1)|0;
-  HEAP32[$35>>2] = $37;
-  $39 = $37;
- } else {
-  $39 = $36;
- }
- $38 = ($39>>>0)>(15);
- if (!($38)) {
-  $40 = ($39|0)==(15);
-  $41 = ($33>>>0)>(4294967264);
-  $or$cond30 = $41 & $40;
-  if (!($or$cond30)) {
-   $44 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$3,$4)|0);
-   $45 = ($44|0)==(0);
-   if (!($45)) {
-    $$0 = $44;
-    return ($$0|0);
-   }
-   _do_ghash_buf($0,$11,$1,$4,0);
-   $$0 = 0;
-   return ($$0|0);
-  }
- }
- $42 = $43 | 4;
- HEAP8[$12>>0] = $42;
- $$0 = 139;
- return ($$0|0);
-}
-function __gcry_cipher_gcm_setiv($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$1$i = 0, $$pre = 0, $$pre$i = 0, $$pre$phi141$iZ2D = 0, 
$$pre$phi142$iZ2D = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $3 = sp + 16|0;
- $4 = sp;
- $5 = ((($0)) + 56|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6 & -7;
- HEAP8[$5>>0] = $7;
- $8 = ((($0)) + 196|0);
- $9 = HEAP8[$8>>0]|0;
- $10 = $9 & -9;
- HEAP8[$8>>0] = $10;
- $11 = (__gcry_fips_mode()|0);
- $12 = ($11|0)==(0);
- $$pre = HEAP8[$8>>0]|0;
- if ($12) {
-  $17 = $$pre;
- } else {
-  $13 = $$pre | 8;
-  HEAP8[$8>>0] = $13;
-  $17 = $13;
- }
- $14 = ((($0)) + 128|0);
- $15 = ((($0)) + 164|0);
- 
;HEAP32[$14>>2]=0|0;HEAP32[$14+4>>2]=0|0;HEAP32[$14+8>>2]=0|0;HEAP32[$14+12>>2]=0|0;
- 
;HEAP32[$15>>2]=0|0;HEAP32[$15+4>>2]=0|0;HEAP32[$15+8>>2]=0|0;HEAP32[$15+12>>2]=0|0;
- $16 = $17 & -8;
- HEAP8[$8>>0] = $16;
- switch ($2|0) {
- case 12:  {
-  $39 = ((($0)) + 80|0);
-  dest=$39; src=$1; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  $40 = ((($0)) + 94|0);
-  HEAP8[$40>>0] = 0;
-  $41 = ((($0)) + 93|0);
-  HEAP8[$41>>0] = 0;
-  $42 = ((($0)) + 92|0);
-  HEAP8[$42>>0] = 0;
-  $43 = ((($0)) + 95|0);
-  HEAP8[$43>>0] = 1;
-  $$pre$phi141$iZ2D = $39;$$pre$phi142$iZ2D = $42;
-  break;
- }
- case 0:  {
-  $$1$i = 139;
-  STACKTOP = sp;return ($$1$i|0);
-  break;
- }
- default: {
-  $18 = ((($0)) + 80|0);
-  
;HEAP32[$18>>2]=0|0;HEAP32[$18+4>>2]=0|0;HEAP32[$18+8>>2]=0|0;HEAP32[$18+12>>2]=0|0;
-  _do_ghash_buf($0,$18,$1,$2,1);
-  $19 = $2 << 3;
-  $20 = (_llvm_bswap_i32(($19|0))|0);
-  $21 = ((($4)) + 12|0);
-  HEAP32[$21>>2] = $20;
-  $22 = $2 >>> 29;
-  $23 = (_llvm_bswap_i32(($22|0))|0);
-  $24 = ((($4)) + 8|0);
-  HEAP32[$24>>2] = $23;
-  $25 = ((($4)) + 4|0);
-  HEAP32[$25>>2] = 0;
-  HEAP32[$4>>2] = 0;
-  _do_ghash_buf($0,$18,$4,16,1);
-  $26 = $3;
-  $27 = $26;
-  HEAP32[$27>>2] = 0;
-  $28 = (($26) + 4)|0;
-  $29 = $28;
-  HEAP32[$29>>2] = 0;
-  $30 = $4;
-  $31 = $30;
-  HEAP32[$31>>2] = 0;
-  $32 = (($30) + 4)|0;
-  $33 = $32;
-  HEAP32[$33>>2] = 0;
-  $34 = ((($4)) + 8|0);
-  $35 = $34;
-  $36 = $35;
-  HEAP32[$36>>2] = 0;
-  $37 = (($35) + 4)|0;
-  $38 = $37;
-  HEAP32[$38>>2] = 0;
-  $$pre$i = ((($0)) + 92|0);
-  $$pre$phi141$iZ2D = $18;$$pre$phi142$iZ2D = $$pre$i;
- }
- }
- $44 = ((($0)) + 12|0);
- $45 = HEAP32[$44>>2]|0;
- $46 = ((($45)) + 36|0);
- $47 = HEAP32[$46>>2]|0;
- $48 = ((($0)) + 496|0);
- $49 = ((($0)) + 180|0);
- (FUNCTION_TABLE_iiii[$47 & 127]($48,$49,$$pre$phi141$iZ2D)|0);
- $50 = HEAP32[$$pre$phi142$iZ2D>>2]|0;
- $51 = (_llvm_bswap_i32(($50|0))|0);
- $52 = (($51) + 1)|0;
- $53 = (_llvm_bswap_i32(($52|0))|0);
- HEAP32[$$pre$phi142$iZ2D>>2] = $53;
- $54 = ((($0)) + 112|0);
- HEAP32[$54>>2] = 0;
- $55 = HEAP8[$5>>0]|0;
- $56 = $55 & -7;
- $57 = $56 | 2;
- HEAP8[$5>>0] = $57;
- $$1$i = 0;
- STACKTOP = sp;return ($$1$i|0);
-}
-function _do_ghash_buf($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$0$us = 0, $$02434$i = 0, $$02434$i$us = 0, $$02533$i = 0, 
$$02533$i$us = 0, $$026$i = 0, $$026$i$us = 0, $$028$i = 0, $$028$i$us = 0, 
$$035$i = 0, $$035$i$us = 0, $$070 = 0, $$070$us = 0, $$073 = 0, $$073$us = 0, 
$$076 = 0, $$076$us = 0, $$1 = 0, $$1$i = 0;
- var $$1$i$us = 0, $$1$us = 0, $$12731$i = 0, $$12731$i$us = 0, $$12930$i = 0, 
$$12930$i$us = 0, $$171 = 0, $$171$us9193 = 0, $$174 = 0, $$174$us9094 = 0, 
$$177 = 0, $$2 = 0, $$2$us = 0, $$232$i = 0, $$232$i$us = 0, $$272 = 0, 
$$272$us = 0, $$275 = 0, $$275$us = 0, $$3 = 0;
- var $$5 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, 
$37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 
0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0;
- var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $or$cond = 0, 
$or$cond$i = 0, $or$cond$i$us = 0, $or$cond3 = 0, $or$cond3$us = 0;
- var $or$cond82 = 0, $scevgep$i = 0, $scevgep$i$us = 0, $scevgep44$i = 0, 
$scevgep44$i$us = 0, $scevgep87 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 160|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($0)) + 224|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($3|0)==(0);
- L1: do {
-  if ($9) {
-   $10 = ($6|0)!=(0);
-   $11 = ($4|0)!=(0);
-   $or$cond = $11 & $10;
-   if ($or$cond) {
-    $12 = ((($0)) + 144|0);
-    $89 = $12;
-    label = 20;
-    break;
-   } else {
-    return;
-   }
-  } else {
-   $13 = ($4|0)==(0);
-   $14 = ((($0)) + 144|0);
-   if ($13) {
-    $$0$us = 0;$$070$us = $2;$$073$us = $3;$$076$us = $6;
-    L8: while(1) {
-     $15 = (($$073$us) + ($$076$us))|0;
-     $16 = ($15>>>0)<(16);
-     $17 = ($$076$us|0)!=(0);
-     $or$cond3$us = $17 | $16;
-     L10: do {
-      if ($or$cond3$us) {
-       $18 = (16 - ($$076$us))|0;
-       $19 = ($18>>>0)<($$073$us>>>0);
-       $20 = $19 ? $18 : $$073$us;
-       $21 = (((($0)) + 144|0) + ($$076$us)|0);
-       $22 = $21;
-       $23 = $$070$us;
-       $24 = $23 | $22;
-       $25 = $24 & 3;
-       $26 = ($25|0)==(0);
-       $27 = ($20>>>0)>(3);
-       $or$cond$i$us = $27 & $26;
-       if ($or$cond$i$us) {
-        $28 = (($20) + -4)|0;
-        $29 = $28 & -4;
-        $30 = (($29) + 4)|0;
-        $scevgep$i$us = (($$070$us) + ($30)|0);
-        $$02434$i$us = $$070$us;$$02533$i$us = $21;$$035$i$us = $20;
-        while(1) {
-         $31 = ((($$02434$i$us)) + 4|0);
-         $32 = HEAP32[$$02434$i$us>>2]|0;
-         $33 = ((($$02533$i$us)) + 4|0);
-         HEAP32[$$02533$i$us>>2] = $32;
-         $34 = (($$035$i$us) + -4)|0;
-         $35 = ($34>>>0)>(3);
-         if ($35) {
-          $$02434$i$us = $31;$$02533$i$us = $33;$$035$i$us = $34;
-         } else {
-          break;
-         }
-        }
-        $scevgep44$i$us = (($21) + ($30)|0);
-        $36 = (($28) - ($29))|0;
-        $$026$i$us = $scevgep$i$us;$$028$i$us = $scevgep44$i$us;$$1$i$us = $36;
-       } else {
-        $$026$i$us = $$070$us;$$028$i$us = $21;$$1$i$us = $20;
-       }
-       $37 = ($$1$i$us|0)==(0);
-       if (!($37)) {
-        $$12731$i$us = $$026$i$us;$$12930$i$us = $$028$i$us;$$232$i$us = 
$$1$i$us;
-        while(1) {
-         $38 = ((($$12731$i$us)) + 1|0);
-         $39 = HEAP8[$$12731$i$us>>0]|0;
-         $40 = ((($$12930$i$us)) + 1|0);
-         HEAP8[$$12930$i$us>>0] = $39;
-         $41 = (($$232$i$us) + -1)|0;
-         $42 = ($41|0)==(0);
-         if ($42) {
-          break;
-         } else {
-          $$12731$i$us = $38;$$12930$i$us = $40;$$232$i$us = $41;
-         }
-        }
-       }
-       $43 = (($20) + ($$076$us))|0;
-       $44 = (($$070$us) + ($20)|0);
-       $45 = (($$073$us) - ($20))|0;
-       $46 = ($45|0)==(0);
-       if ($46) {
-        $$3 = $$0$us;$$5 = $43;
-        break L1;
-       }
-       switch ($43|0) {
-       case 0:  {
-        $$1$us = $$0$us;$$171$us9193 = $44;$$174$us9094 = $45;
-        break L10;
-        break;
-       }
-       case 16:  {
-        break;
-       }
-       default: {
-        break L8;
-       }
-       }
-       $47 = (FUNCTION_TABLE_iiiii[$8 & 127]($0,$1,$14,1)|0);
-       $$1$us = $47;$$171$us9193 = $44;$$174$us9094 = $45;
-      } else {
-       $$1$us = $$0$us;$$171$us9193 = $$070$us;$$174$us9094 = $$073$us;
-      }
-     } while(0);
-     $48 = $$174$us9094 >>> 4;
-     $49 = ($48|0)==(0);
-     $50 = $$174$us9094 & -16;
-     if ($49) {
-      $$2$us = $$1$us;$$272$us = $$171$us9193;$$275$us = $$174$us9094;
-     } else {
-      $51 = (($$174$us9094) - ($50))|0;
-      $52 = (($$171$us9193) + ($50)|0);
-      $53 = (FUNCTION_TABLE_iiiii[$8 & 127]($0,$1,$$171$us9193,$48)|0);
-      $$2$us = $53;$$272$us = $52;$$275$us = $51;
-     }
-     $54 = ($$275$us|0)==(0);
-     if ($54) {
-      $$3 = $$2$us;$$5 = 0;
-      break L1;
-     } else {
-      $$0$us = $$2$us;$$070$us = $$272$us;$$073$us = $$275$us;$$076$us = 0;
-     }
-    }
-    __gcry_assert_failed(64445,64465,499,64478);
-    // unreachable;
-   } else {
-    $89 = $14;
-    label = 20;
-   }
-  }
- } while(0);
- L30: do {
-  if ((label|0) == 20) {
-   $$0 = 0;$$070 = $2;$$073 = $3;$$076 = $6;
-   L32: while(1) {
-    $55 = (($$073) + ($$076))|0;
-    $56 = ($55>>>0)<(16);
-    $57 = ($$076|0)!=(0);
-    $or$cond3 = $57 | $56;
-    if ($or$cond3) {
-     $58 = (16 - ($$076))|0;
-     $59 = ($58>>>0)<($$073>>>0);
-     $60 = $59 ? $58 : $$073;
-     $61 = (((($0)) + 144|0) + ($$076)|0);
-     $62 = $61;
-     $63 = $$070;
-     $64 = $63 | $62;
-     $65 = $64 & 3;
-     $66 = ($65|0)==(0);
-     $67 = ($60>>>0)>(3);
-     $or$cond$i = $67 & $66;
-     if ($or$cond$i) {
-      $68 = (($60) + -4)|0;
-      $69 = $68 & -4;
-      $70 = (($69) + 4)|0;
-      $scevgep$i = (($$070) + ($70)|0);
-      $$02434$i = $$070;$$02533$i = $61;$$035$i = $60;
-      while(1) {
-       $71 = ((($$02434$i)) + 4|0);
-       $72 = HEAP32[$$02434$i>>2]|0;
-       $73 = ((($$02533$i)) + 4|0);
-       HEAP32[$$02533$i>>2] = $72;
-       $74 = (($$035$i) + -4)|0;
-       $75 = ($74>>>0)>(3);
-       if ($75) {
-        $$02434$i = $71;$$02533$i = $73;$$035$i = $74;
-       } else {
-        break;
-       }
-      }
-      $scevgep44$i = (($61) + ($70)|0);
-      $76 = (($68) - ($69))|0;
-      $$026$i = $scevgep$i;$$028$i = $scevgep44$i;$$1$i = $76;
-     } else {
-      $$026$i = $$070;$$028$i = $61;$$1$i = $60;
-     }
-     $77 = ($$1$i|0)==(0);
-     if (!($77)) {
-      $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i;
-      while(1) {
-       $78 = ((($$12731$i)) + 1|0);
-       $79 = HEAP8[$$12731$i>>0]|0;
-       $80 = ((($$12930$i)) + 1|0);
-       HEAP8[$$12930$i>>0] = $79;
-       $81 = (($$232$i) + -1)|0;
-       $82 = ($81|0)==(0);
-       if ($82) {
-        break;
-       } else {
-        $$12731$i = $78;$$12930$i = $80;$$232$i = $81;
-       }
-      }
-     }
-     $83 = (($60) + ($$076))|0;
-     $84 = (($$070) + ($60)|0);
-     $85 = (($$073) - ($60))|0;
-     $$171 = $84;$$174 = $85;$$177 = $83;
-    } else {
-     $$171 = $$070;$$174 = $$073;$$177 = 0;
-    }
-    $86 = ($$174|0)==(0);
-    $87 = ($$177>>>0)<(16);
-    $or$cond82 = $86 & $87;
-    if ($or$cond82) {
-     $scevgep87 = (((($0)) + 144|0) + ($$177)|0);
-     $88 = (16 - ($$177))|0;
-     _memset(($scevgep87|0),0,($88|0))|0;
-     label = 34;
-    } else {
-     switch ($$177|0) {
-     case 0:  {
-      $$1 = $$0;
-      break;
-     }
-     case 16:  {
-      label = 34;
-      break;
-     }
-     default: {
-      break L32;
-     }
-     }
-    }
-    if ((label|0) == 34) {
-     label = 0;
-     $90 = (FUNCTION_TABLE_iiiii[$8 & 127]($0,$1,$89,1)|0);
-     $$1 = $90;
-    }
-    $91 = $$174 >>> 4;
-    $92 = ($91|0)==(0);
-    $93 = $$174 & -16;
-    if ($92) {
-     $$2 = $$1;$$272 = $$171;$$275 = $$174;
-    } else {
-     $94 = (($$174) - ($93))|0;
-     $95 = (($$171) + ($93)|0);
-     $96 = (FUNCTION_TABLE_iiiii[$8 & 127]($0,$1,$$171,$91)|0);
-     $$2 = $96;$$272 = $95;$$275 = $94;
-    }
-    $97 = ($$275|0)==(0);
-    if ($97) {
-     $$3 = $$2;$$5 = 0;
-     break L30;
-    } else {
-     $$0 = $$2;$$070 = $$272;$$073 = $$275;$$076 = 0;
-    }
-   }
-   __gcry_assert_failed(64445,64465,499,64478);
-   // unreachable;
-  }
- } while(0);
- HEAP32[$5>>2] = $$5;
- $98 = ($$3|0)==(0);
- if ($98) {
-  return;
- }
- ___gcry_burn_stack($$3);
- return;
-}
-function __gcry_cipher_gcm_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var $or$cond26 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(16);
- if (!($9)) {
-  $$0 = 12;
-  return ($$0|0);
- }
- $10 = ($2>>>0)<($4>>>0);
- if ($10) {
-  $$0 = 200;
-  return ($$0|0);
- }
- $11 = ((($0)) + 128|0);
- $12 = ((($0)) + 196|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13 & 4;
- $15 = ($14<<24>>24)==(0);
- if (!($15)) {
-  $$0 = 139;
-  return ($$0|0);
- }
- $16 = ((($0)) + 56|0);
- $17 = HEAP8[$16>>0]|0;
- $18 = $17 & 4;
- $19 = $13 & 1;
- $20 = $18 | $19;
- $21 = ($20<<24>>24)==(0);
- if (!($21)) {
-  $$0 = 156;
-  return ($$0|0);
- }
- $22 = $17 & 2;
- $23 = ($22<<24>>24)==(0);
- if ($23) {
-  (__gcry_cipher_gcm_setiv($0,71200,16)|0);
-  $$pre = HEAP8[$12>>0]|0;
-  $25 = $$pre;
- } else {
-  $25 = $13;
- }
- $24 = $25 & 2;
- $26 = ($24<<24>>24)==(0);
- if ($26) {
-  _do_ghash_buf($0,$11,0,0,1);
-  $27 = HEAP8[$12>>0]|0;
-  $28 = $27 | 2;
-  HEAP8[$12>>0] = $28;
-  $41 = $28;
- } else {
-  $41 = $25;
- }
- $29 = ((($0)) + 172|0);
- $30 = HEAP32[$29>>2]|0;
- $31 = (($30) + ($4))|0;
- HEAP32[$29>>2] = $31;
- $32 = ($31>>>0)<($4>>>0);
- $33 = ((($0)) + 176|0);
- $34 = HEAP32[$33>>2]|0;
- if ($32) {
-  $35 = (($34) + 1)|0;
-  HEAP32[$33>>2] = $35;
-  $37 = $35;
- } else {
-  $37 = $34;
- }
- $36 = ($37>>>0)>(15);
- if (!($36)) {
-  $38 = ($37|0)==(15);
-  $39 = ($31>>>0)>(4294967264);
-  $or$cond26 = $39 & $38;
-  if (!($or$cond26)) {
-   _do_ghash_buf($0,$11,$3,$4,0);
-   $42 = (__gcry_cipher_ctr_encrypt($0,$1,$2,$3,$4)|0);
-   $$0 = $42;
-   return ($$0|0);
-  }
- }
- $40 = $41 | 4;
- HEAP8[$12>>0] = $40;
- $$0 = 139;
- return ($$0|0);
-}
-function __gcry_cipher_gcm_setkey($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 
0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 
0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 
= 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0;
- var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 
= 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0;
- var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, 
$178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, 
$185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0;
- var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 
= 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 
0, $203 = 0, $204 = 0, $205 = 0, $206 = 0;
- var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0;
- var $225 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 208|0);
- 
;HEAP32[$1>>2]=0|0;HEAP32[$1+4>>2]=0|0;HEAP32[$1+8>>2]=0|0;HEAP32[$1+12>>2]=0|0;
- $2 = ((($0)) + 12|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = ((($3)) + 36|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = ((($0)) + 496|0);
- (FUNCTION_TABLE_iiii[$5 & 127]($6,$1,$1)|0);
- $7 = ((($0)) + 224|0);
- HEAP32[$7>>2] = 82;
- $8 = ((($0)) + 228|0);
- 
;HEAP32[$8>>2]=0|0;HEAP32[$8+4>>2]=0|0;HEAP32[$8+8>>2]=0|0;HEAP32[$8+12>>2]=0|0;
- $9 = HEAP8[$1>>0]|0;
- $10 = $9&255;
- $11 = $10 << 24;
- $12 = ((($1)) + 1|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13&255;
- $15 = $14 << 16;
- $16 = $15 | $11;
- $17 = ((($1)) + 2|0);
- $18 = HEAP8[$17>>0]|0;
- $19 = $18&255;
- $20 = $19 << 8;
- $21 = $16 | $20;
- $22 = ((($1)) + 3|0);
- $23 = HEAP8[$22>>0]|0;
- $24 = $23&255;
- $25 = $21 | $24;
- $26 = ((($0)) + 356|0);
- HEAP32[$26>>2] = $25;
- $27 = ((($1)) + 4|0);
- $28 = HEAP8[$27>>0]|0;
- $29 = $28&255;
- $30 = $29 << 24;
- $31 = ((($1)) + 5|0);
- $32 = HEAP8[$31>>0]|0;
- $33 = $32&255;
- $34 = $33 << 16;
- $35 = $34 | $30;
- $36 = ((($1)) + 6|0);
- $37 = HEAP8[$36>>0]|0;
- $38 = $37&255;
- $39 = $38 << 8;
- $40 = $35 | $39;
- $41 = ((($1)) + 7|0);
- $42 = HEAP8[$41>>0]|0;
- $43 = $42&255;
- $44 = $40 | $43;
- $45 = ((($0)) + 360|0);
- HEAP32[$45>>2] = $44;
- $46 = ((($0)) + 216|0);
- $47 = HEAP8[$46>>0]|0;
- $48 = $47&255;
- $49 = $48 << 24;
- $50 = ((($0)) + 217|0);
- $51 = HEAP8[$50>>0]|0;
- $52 = $51&255;
- $53 = $52 << 16;
- $54 = $53 | $49;
- $55 = ((($0)) + 218|0);
- $56 = HEAP8[$55>>0]|0;
- $57 = $56&255;
- $58 = $57 << 8;
- $59 = $54 | $58;
- $60 = ((($0)) + 219|0);
- $61 = HEAP8[$60>>0]|0;
- $62 = $61&255;
- $63 = $59 | $62;
- $64 = ((($0)) + 364|0);
- HEAP32[$64>>2] = $63;
- $65 = ((($0)) + 220|0);
- $66 = HEAP8[$65>>0]|0;
- $67 = $66&255;
- $68 = $67 << 24;
- $69 = ((($0)) + 221|0);
- $70 = HEAP8[$69>>0]|0;
- $71 = $70&255;
- $72 = $71 << 16;
- $73 = $72 | $68;
- $74 = ((($0)) + 222|0);
- $75 = HEAP8[$74>>0]|0;
- $76 = $75&255;
- $77 = $76 << 8;
- $78 = $73 | $77;
- $79 = ((($0)) + 223|0);
- $80 = HEAP8[$79>>0]|0;
- $81 = $80&255;
- $82 = $78 | $81;
- $83 = ((($0)) + 368|0);
- HEAP32[$83>>2] = $82;
- $84 = ((($0)) + 292|0);
- $85 = ((($0)) + 296|0);
- $86 = ((($0)) + 300|0);
- $87 = ((($0)) + 304|0);
- $88 = $81 & 1;
- $89 = ($88|0)==(0);
- $90 = $89 ? 0 : -520093696;
- $91 = $82 >>> 1;
- $92 = $62 << 31;
- $93 = $91 | $92;
- HEAP32[$87>>2] = $93;
- $94 = $63 >>> 1;
- $95 = $43 << 31;
- $96 = $94 | $95;
- HEAP32[$86>>2] = $96;
- $97 = $44 >>> 1;
- $98 = $24 << 31;
- $99 = $97 | $98;
- HEAP32[$85>>2] = $99;
- $100 = $25 >>> 1;
- $101 = $90 ^ $100;
- HEAP32[$84>>2] = $101;
- $102 = ((($0)) + 260|0);
- $103 = ((($0)) + 264|0);
- $104 = ((($0)) + 268|0);
- $105 = ((($0)) + 272|0);
- $106 = $81 & 2;
- $107 = ($106|0)==(0);
- $108 = $107 ? 0 : -520093696;
- $109 = $93 >>> 1;
- $110 = $94 << 31;
- $111 = $109 | $110;
- HEAP32[$105>>2] = $111;
- $112 = $96 >>> 1;
- $113 = $97 << 31;
- $114 = $112 | $113;
- HEAP32[$104>>2] = $114;
- $115 = $99 >>> 1;
- $116 = $100 << 31;
- $117 = $115 | $116;
- HEAP32[$103>>2] = $117;
- $118 = $101 >>> 1;
- $119 = $118 ^ $108;
- HEAP32[$102>>2] = $119;
- $120 = ((($0)) + 244|0);
- $121 = ((($0)) + 248|0);
- $122 = ((($0)) + 252|0);
- $123 = ((($0)) + 256|0);
- $124 = $81 & 4;
- $125 = ($124|0)==(0);
- $126 = $125 ? 0 : -520093696;
- $127 = $111 >>> 1;
- $128 = $112 << 31;
- $129 = $127 | $128;
- HEAP32[$123>>2] = $129;
- $130 = $114 >>> 1;
- $131 = $115 << 31;
- $132 = $130 | $131;
- HEAP32[$122>>2] = $132;
- $133 = $117 >>> 1;
- $134 = $118 << 31;
- $135 = $134 | $133;
- HEAP32[$121>>2] = $135;
- $136 = $119 >>> 1;
- $137 = $136 ^ $126;
- HEAP32[$120>>2] = $137;
- $138 = $137 ^ $119;
- $139 = ((($0)) + 276|0);
- HEAP32[$139>>2] = $138;
- $140 = $135 ^ $117;
- $141 = ((($0)) + 280|0);
- HEAP32[$141>>2] = $140;
- $142 = $132 ^ $114;
- $143 = ((($0)) + 284|0);
- HEAP32[$143>>2] = $142;
- $144 = $129 ^ $111;
- $145 = ((($0)) + 288|0);
- HEAP32[$145>>2] = $144;
- $146 = $137 ^ $101;
- $147 = ((($0)) + 308|0);
- HEAP32[$147>>2] = $146;
- $148 = $135 ^ $99;
- $149 = ((($0)) + 312|0);
- HEAP32[$149>>2] = $148;
- $150 = $132 ^ $96;
- $151 = ((($0)) + 316|0);
- HEAP32[$151>>2] = $150;
- $152 = $129 ^ $93;
- $153 = ((($0)) + 320|0);
- HEAP32[$153>>2] = $152;
- $154 = $119 ^ $101;
- $155 = ((($0)) + 324|0);
- HEAP32[$155>>2] = $154;
- $156 = $117 ^ $99;
- $157 = ((($0)) + 328|0);
- HEAP32[$157>>2] = $156;
- $158 = $114 ^ $96;
- $159 = ((($0)) + 332|0);
- HEAP32[$159>>2] = $158;
- $160 = $111 ^ $93;
- $161 = ((($0)) + 336|0);
- HEAP32[$161>>2] = $160;
- $162 = $138 ^ $101;
- $163 = ((($0)) + 340|0);
- HEAP32[$163>>2] = $162;
- $164 = $140 ^ $99;
- $165 = ((($0)) + 344|0);
- HEAP32[$165>>2] = $164;
- $166 = $142 ^ $96;
- $167 = ((($0)) + 348|0);
- HEAP32[$167>>2] = $166;
- $168 = $144 ^ $93;
- $169 = ((($0)) + 352|0);
- HEAP32[$169>>2] = $168;
- $170 = $137 ^ $25;
- $171 = ((($0)) + 372|0);
- HEAP32[$171>>2] = $170;
- $172 = $135 ^ $44;
- $173 = ((($0)) + 376|0);
- HEAP32[$173>>2] = $172;
- $174 = $132 ^ $63;
- $175 = ((($0)) + 380|0);
- HEAP32[$175>>2] = $174;
- $176 = $129 ^ $82;
- $177 = ((($0)) + 384|0);
- HEAP32[$177>>2] = $176;
- $178 = $119 ^ $25;
- $179 = ((($0)) + 388|0);
- HEAP32[$179>>2] = $178;
- $180 = $117 ^ $44;
- $181 = ((($0)) + 392|0);
- HEAP32[$181>>2] = $180;
- $182 = $114 ^ $63;
- $183 = ((($0)) + 396|0);
- HEAP32[$183>>2] = $182;
- $184 = $111 ^ $82;
- $185 = ((($0)) + 400|0);
- HEAP32[$185>>2] = $184;
- $186 = $138 ^ $25;
- $187 = ((($0)) + 404|0);
- HEAP32[$187>>2] = $186;
- $188 = $140 ^ $44;
- $189 = ((($0)) + 408|0);
- HEAP32[$189>>2] = $188;
- $190 = $142 ^ $63;
- $191 = ((($0)) + 412|0);
- HEAP32[$191>>2] = $190;
- $192 = $144 ^ $82;
- $193 = ((($0)) + 416|0);
- HEAP32[$193>>2] = $192;
- $194 = $101 ^ $25;
- $195 = ((($0)) + 420|0);
- HEAP32[$195>>2] = $194;
- $196 = $99 ^ $44;
- $197 = ((($0)) + 424|0);
- HEAP32[$197>>2] = $196;
- $198 = $96 ^ $63;
- $199 = ((($0)) + 428|0);
- HEAP32[$199>>2] = $198;
- $200 = $93 ^ $82;
- $201 = ((($0)) + 432|0);
- HEAP32[$201>>2] = $200;
- $202 = $146 ^ $25;
- $203 = ((($0)) + 436|0);
- HEAP32[$203>>2] = $202;
- $204 = $148 ^ $44;
- $205 = ((($0)) + 440|0);
- HEAP32[$205>>2] = $204;
- $206 = $150 ^ $63;
- $207 = ((($0)) + 444|0);
- HEAP32[$207>>2] = $206;
- $208 = $152 ^ $82;
- $209 = ((($0)) + 448|0);
- HEAP32[$209>>2] = $208;
- $210 = $154 ^ $25;
- $211 = ((($0)) + 452|0);
- HEAP32[$211>>2] = $210;
- $212 = $156 ^ $44;
- $213 = ((($0)) + 456|0);
- HEAP32[$213>>2] = $212;
- $214 = $158 ^ $63;
- $215 = ((($0)) + 460|0);
- HEAP32[$215>>2] = $214;
- $216 = $160 ^ $82;
- $217 = ((($0)) + 464|0);
- HEAP32[$217>>2] = $216;
- $218 = $162 ^ $25;
- $219 = ((($0)) + 468|0);
- HEAP32[$219>>2] = $218;
- $220 = $164 ^ $44;
- $221 = ((($0)) + 472|0);
- HEAP32[$221>>2] = $220;
- $222 = $166 ^ $63;
- $223 = ((($0)) + 476|0);
- HEAP32[$223>>2] = $222;
- $224 = $168 ^ $82;
- $225 = ((($0)) + 480|0);
- HEAP32[$225>>2] = $224;
- return;
-}
-function _ghash_internal($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$i = 0, $$0$lcssa22 = 0, $$01017 = 0, $$01116 = 0, $$070$i = 0, 
$$sroa$044$0$i = 0, $$sroa$15$0$i = 0, $$sroa$22$0$i = 0, $$sroa$8$0$i = 0, $10 
= 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 
= 0, $108 = 0, $109 = 0;
- var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 
= 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0;
- var $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 
= 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0;
- var $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0;
- var $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 
= 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0;
- var $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, 
$189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, 
$196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0;
- var $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, 
$207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, 
$214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0;
- var $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 
= 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 
= 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0;
- var $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 
= 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 
= 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0;
- var $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 
= 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $27 = 0, $28 = 0, $29 = 
0, $30 = 0, $31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = ($3|0)==(0);
- if ($5) {
-  $$0$lcssa22 = 0;$266 = 0;
-  $265 = (($266) + ($$0$lcssa22))|0;
-  STACKTOP = sp;return ($265|0);
- }
- $6 = $1;
- $7 = ((($1)) + 4|0);
- $8 = ((($4)) + 4|0);
- $9 = ((($1)) + 8|0);
- $10 = ((($4)) + 8|0);
- $11 = ((($1)) + 12|0);
- $12 = ((($4)) + 12|0);
- $13 = ((($1)) + 1|0);
- $14 = ((($4)) + 1|0);
- $15 = ((($1)) + 2|0);
- $16 = ((($4)) + 2|0);
- $17 = ((($1)) + 3|0);
- $18 = ((($4)) + 3|0);
- $19 = ((($1)) + 5|0);
- $20 = ((($4)) + 5|0);
- $21 = ((($1)) + 6|0);
- $22 = ((($4)) + 6|0);
- $23 = ((($1)) + 7|0);
- $24 = ((($4)) + 7|0);
- $25 = ((($1)) + 9|0);
- $26 = ((($4)) + 9|0);
- $27 = ((($1)) + 10|0);
- $28 = ((($4)) + 10|0);
- $29 = ((($1)) + 11|0);
- $30 = ((($4)) + 11|0);
- $31 = ((($1)) + 13|0);
- $32 = ((($4)) + 13|0);
- $33 = ((($1)) + 14|0);
- $34 = ((($4)) + 14|0);
- $35 = ((($1)) + 15|0);
- $36 = ((($4)) + 15|0);
- $$01017 = $2;$$01116 = $3;
- while(1) {
-  $37 = $$01017;
-  $38 = $37 | $6;
-  $39 = $38 & 3;
-  $40 = ($39|0)==(0);
-  if ($40) {
-   $41 = HEAP32[$1>>2]|0;
-   $42 = ((($$01017)) + 4|0);
-   $43 = HEAP32[$$01017>>2]|0;
-   $44 = $43 ^ $41;
-   HEAP32[$4>>2] = $44;
-   $45 = HEAP32[$7>>2]|0;
-   $46 = ((($$01017)) + 8|0);
-   $47 = HEAP32[$42>>2]|0;
-   $48 = $47 ^ $45;
-   HEAP32[$8>>2] = $48;
-   $49 = HEAP32[$9>>2]|0;
-   $50 = ((($$01017)) + 12|0);
-   $51 = HEAP32[$46>>2]|0;
-   $52 = $51 ^ $49;
-   HEAP32[$10>>2] = $52;
-   $53 = HEAP32[$11>>2]|0;
-   $54 = HEAP32[$50>>2]|0;
-   $55 = $54 ^ $53;
-   HEAP32[$12>>2] = $55;
-   $56 = $55 >>> 24;
-   $57 = $56&255;
-   $58 = $55 >>> 16;
-   $59 = $58&255;
-   $124 = $57;$132 = $59;
-  } else {
-   $60 = HEAP8[$1>>0]|0;
-   $61 = ((($$01017)) + 1|0);
-   $62 = HEAP8[$$01017>>0]|0;
-   $63 = $62 ^ $60;
-   HEAP8[$4>>0] = $63;
-   $64 = HEAP8[$13>>0]|0;
-   $65 = ((($$01017)) + 2|0);
-   $66 = HEAP8[$61>>0]|0;
-   $67 = $66 ^ $64;
-   HEAP8[$14>>0] = $67;
-   $68 = HEAP8[$15>>0]|0;
-   $69 = ((($$01017)) + 3|0);
-   $70 = HEAP8[$65>>0]|0;
-   $71 = $70 ^ $68;
-   HEAP8[$16>>0] = $71;
-   $72 = HEAP8[$17>>0]|0;
-   $73 = ((($$01017)) + 4|0);
-   $74 = HEAP8[$69>>0]|0;
-   $75 = $74 ^ $72;
-   HEAP8[$18>>0] = $75;
-   $76 = HEAP8[$7>>0]|0;
-   $77 = ((($$01017)) + 5|0);
-   $78 = HEAP8[$73>>0]|0;
-   $79 = $78 ^ $76;
-   HEAP8[$8>>0] = $79;
-   $80 = HEAP8[$19>>0]|0;
-   $81 = ((($$01017)) + 6|0);
-   $82 = HEAP8[$77>>0]|0;
-   $83 = $82 ^ $80;
-   HEAP8[$20>>0] = $83;
-   $84 = HEAP8[$21>>0]|0;
-   $85 = ((($$01017)) + 7|0);
-   $86 = HEAP8[$81>>0]|0;
-   $87 = $86 ^ $84;
-   HEAP8[$22>>0] = $87;
-   $88 = HEAP8[$23>>0]|0;
-   $89 = ((($$01017)) + 8|0);
-   $90 = HEAP8[$85>>0]|0;
-   $91 = $90 ^ $88;
-   HEAP8[$24>>0] = $91;
-   $92 = HEAP8[$9>>0]|0;
-   $93 = ((($$01017)) + 9|0);
-   $94 = HEAP8[$89>>0]|0;
-   $95 = $94 ^ $92;
-   HEAP8[$10>>0] = $95;
-   $96 = HEAP8[$25>>0]|0;
-   $97 = ((($$01017)) + 10|0);
-   $98 = HEAP8[$93>>0]|0;
-   $99 = $98 ^ $96;
-   HEAP8[$26>>0] = $99;
-   $100 = HEAP8[$27>>0]|0;
-   $101 = ((($$01017)) + 11|0);
-   $102 = HEAP8[$97>>0]|0;
-   $103 = $102 ^ $100;
-   HEAP8[$28>>0] = $103;
-   $104 = HEAP8[$29>>0]|0;
-   $105 = ((($$01017)) + 12|0);
-   $106 = HEAP8[$101>>0]|0;
-   $107 = $106 ^ $104;
-   HEAP8[$30>>0] = $107;
-   $108 = HEAP8[$11>>0]|0;
-   $109 = ((($$01017)) + 13|0);
-   $110 = HEAP8[$105>>0]|0;
-   $111 = $110 ^ $108;
-   HEAP8[$12>>0] = $111;
-   $112 = HEAP8[$31>>0]|0;
-   $113 = ((($$01017)) + 14|0);
-   $114 = HEAP8[$109>>0]|0;
-   $115 = $114 ^ $112;
-   HEAP8[$32>>0] = $115;
-   $116 = HEAP8[$33>>0]|0;
-   $117 = ((($$01017)) + 15|0);
-   $118 = HEAP8[$113>>0]|0;
-   $119 = $118 ^ $116;
-   HEAP8[$34>>0] = $119;
-   $120 = HEAP8[$35>>0]|0;
-   $121 = HEAP8[$117>>0]|0;
-   $122 = $121 ^ $120;
-   HEAP8[$36>>0] = $122;
-   $124 = $122;$132 = $119;
-  }
-  $123 = $124&255;
-  $125 = $123 << 2;
-  $126 = $125 & 60;
-  $127 = (((($0)) + 228|0) + ($126<<2)|0);
-  $128 = $123 >>> 4;
-  $129 = $128 << 2;
-  $130 = (((($0)) + 228|0) + ($129<<2)|0);
-  $131 = $132&255;
-  $133 = HEAP32[$127>>2]|0;
-  $134 = $133 >>> 4;
-  $135 = ((($127)) + 12|0);
-  $136 = HEAP32[$135>>2]|0;
-  $137 = $136 << 4;
-  $138 = $137 & 240;
-  $139 = (15696 + ($138<<1)|0);
-  $140 = HEAP16[$139>>1]|0;
-  $141 = $140&65535;
-  $142 = $141 << 16;
-  $143 = HEAP32[$130>>2]|0;
-  $144 = $143 ^ $134;
-  $145 = $144 ^ $142;
-  $146 = ((($127)) + 4|0);
-  $147 = HEAP32[$146>>2]|0;
-  $148 = $147 >>> 4;
-  $149 = $133 << 28;
-  $150 = $148 | $149;
-  $151 = ((($130)) + 4|0);
-  $152 = HEAP32[$151>>2]|0;
-  $153 = $150 ^ $152;
-  $154 = ((($127)) + 8|0);
-  $155 = HEAP32[$154>>2]|0;
-  $156 = $155 >>> 4;
-  $157 = $147 << 28;
-  $158 = $156 | $157;
-  $159 = ((($130)) + 8|0);
-  $160 = HEAP32[$159>>2]|0;
-  $161 = $158 ^ $160;
-  $162 = $136 >>> 4;
-  $163 = $155 << 28;
-  $164 = $163 | $162;
-  $165 = ((($130)) + 12|0);
-  $166 = HEAP32[$165>>2]|0;
-  $167 = $164 ^ $166;
-  $$0$i = 14;$$070$i = $131;$$sroa$044$0$i = $145;$$sroa$15$0$i = 
$161;$$sroa$22$0$i = $167;$$sroa$8$0$i = $153;
-  while(1) {
-   $168 = $$070$i << 2;
-   $169 = $168 & 60;
-   $170 = (((($0)) + 228|0) + ($169<<2)|0);
-   $171 = $$070$i >>> 4;
-   $172 = $171 << 2;
-   $173 = (((($0)) + 228|0) + ($172<<2)|0);
-   $174 = $$sroa$044$0$i >>> 8;
-   $175 = $$sroa$22$0$i & 255;
-   $176 = (15696 + ($175<<1)|0);
-   $177 = HEAP16[$176>>1]|0;
-   $178 = $177&65535;
-   $179 = $178 << 16;
-   $180 = HEAP32[$173>>2]|0;
-   $181 = $$sroa$044$0$i << 24;
-   $182 = $$sroa$8$0$i >>> 8;
-   $183 = $182 | $181;
-   $184 = ((($173)) + 4|0);
-   $185 = HEAP32[$184>>2]|0;
-   $186 = $185 ^ $183;
-   $187 = $$sroa$8$0$i << 24;
-   $188 = $$sroa$15$0$i >>> 8;
-   $189 = $188 | $187;
-   $190 = ((($173)) + 8|0);
-   $191 = HEAP32[$190>>2]|0;
-   $192 = $191 ^ $189;
-   $193 = $$sroa$15$0$i << 24;
-   $194 = $$sroa$22$0$i >>> 8;
-   $195 = $194 | $193;
-   $196 = ((($173)) + 12|0);
-   $197 = HEAP32[$196>>2]|0;
-   $198 = $197 ^ $195;
-   $199 = HEAP32[$170>>2]|0;
-   $200 = $199 >>> 4;
-   $201 = ((($170)) + 12|0);
-   $202 = HEAP32[$201>>2]|0;
-   $203 = $202 << 4;
-   $204 = $203 & 240;
-   $205 = (15696 + ($204<<1)|0);
-   $206 = HEAP16[$205>>1]|0;
-   $207 = $206&65535;
-   $208 = $207 << 16;
-   $209 = $180 ^ $174;
-   $210 = $209 ^ $179;
-   $211 = $210 ^ $200;
-   $212 = $208 ^ $211;
-   $213 = ((($170)) + 4|0);
-   $214 = HEAP32[$213>>2]|0;
-   $215 = $214 >>> 4;
-   $216 = $199 << 28;
-   $217 = $215 | $216;
-   $218 = $186 ^ $217;
-   $219 = ((($170)) + 8|0);
-   $220 = HEAP32[$219>>2]|0;
-   $221 = $220 >>> 4;
-   $222 = $214 << 28;
-   $223 = $221 | $222;
-   $224 = $192 ^ $223;
-   $225 = $202 >>> 4;
-   $226 = $220 << 28;
-   $227 = $226 | $225;
-   $228 = $198 ^ $227;
-   $229 = ($$0$i|0)==(0);
-   if ($229) {
-    break;
-   }
-   $230 = (($$0$i) + -1)|0;
-   $231 = (($4) + ($230)|0);
-   $232 = HEAP8[$231>>0]|0;
-   $233 = $232&255;
-   $$0$i = $230;$$070$i = $233;$$sroa$044$0$i = $212;$$sroa$15$0$i = 
$224;$$sroa$22$0$i = $228;$$sroa$8$0$i = $218;
-  }
-  $234 = $212 >>> 24;
-  $235 = $234&255;
-  HEAP8[$1>>0] = $235;
-  $236 = $212 >>> 16;
-  $237 = $236&255;
-  HEAP8[$13>>0] = $237;
-  $238 = $211 >>> 8;
-  $239 = $238&255;
-  HEAP8[$15>>0] = $239;
-  $240 = $211&255;
-  HEAP8[$17>>0] = $240;
-  $241 = $218 >>> 24;
-  $242 = $241&255;
-  HEAP8[$7>>0] = $242;
-  $243 = $218 >>> 16;
-  $244 = $243&255;
-  HEAP8[$19>>0] = $244;
-  $245 = $218 >>> 8;
-  $246 = $245&255;
-  HEAP8[$21>>0] = $246;
-  $247 = $218&255;
-  HEAP8[$23>>0] = $247;
-  $248 = $224 >>> 24;
-  $249 = $248&255;
-  HEAP8[$9>>0] = $249;
-  $250 = $224 >>> 16;
-  $251 = $250&255;
-  HEAP8[$25>>0] = $251;
-  $252 = $224 >>> 8;
-  $253 = $252&255;
-  HEAP8[$27>>0] = $253;
-  $254 = $224&255;
-  HEAP8[$29>>0] = $254;
-  $255 = $228 >>> 24;
-  $256 = $255&255;
-  HEAP8[$11>>0] = $256;
-  $257 = $228 >>> 16;
-  $258 = $257&255;
-  HEAP8[$31>>0] = $258;
-  $259 = $228 >>> 8;
-  $260 = $259&255;
-  HEAP8[$33>>0] = $260;
-  $261 = $228&255;
-  HEAP8[$35>>0] = $261;
-  $262 = ((($$01017)) + 16|0);
-  $263 = (($$01116) + -1)|0;
-  $264 = ($263|0)==(0);
-  if ($264) {
-   $$0$lcssa22 = 76;$266 = 20;
-   break;
-  } else {
-   $$01017 = $262;$$01116 = $263;
-  }
- }
- $265 = (($266) + ($$0$lcssa22))|0;
- STACKTOP = sp;return ($265|0);
-}
-function __gcry_cipher_ocb_get_l($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$i12 = 0, $$011 = 0, $$013 = 0, $$phi$trans$insert = 0, 
$$phi$trans$insert60 = 0, $$phi$trans$insert62 = 0, $$phi$trans$insert64 = 0, 
$$phi$trans$insert66 = 0, $$phi$trans$insert68 = 0, $$phi$trans$insert70 = 0, 
$$phi$trans$insert72 = 0, $$phi$trans$insert74 = 0, $$phi$trans$insert76 = 0, 
$$phi$trans$insert78 = 0, $$phi$trans$insert80 = 0, $$phi$trans$insert82 = 0, 
$$phi$trans$insert84 = 0, $$phi$trans$insert86 = 0, $$pre = 0, $$pre$phi100Z2D 
= 0;
- var $$pre$phi102Z2D = 0, $$pre$phi104Z2D = 0, $$pre$phi106Z2D = 0, 
$$pre$phi107Z2D = 0, $$pre$phi109Z2D = 0, $$pre$phi111Z2D = 0, $$pre$phi113Z2D 
= 0, $$pre$phi90Z2D = 0, $$pre$phi92Z2D = 0, $$pre$phi93Z2D = 0, $$pre$phi95Z2D 
= 0, $$pre$phi97Z2D = 0, $$pre$phi99Z2D = 0, $$pre$phiZ2D = 0, $$pre101 = 0, 
$$pre103 = 0, $$pre105 = 0, $$pre108 = 0, $$pre110 = 0, $$pre112 = 0;
- var $$pre59 = 0, $$pre61 = 0, $$pre63 = 0, $$pre65 = 0, $$pre67 = 0, $$pre69 
= 0, $$pre71 = 0, $$pre73 = 0, $$pre75 = 0, $$pre77 = 0, $$pre79 = 0, $$pre81 = 
0, $$pre83 = 0, $$pre85 = 0, $$pre87 = 0, $$pre88 = 0, $$pre89 = 0, $$pre91 = 
0, $$pre94 = 0, $$pre96 = 0;
- var $$pre98 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, 
$105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, 
$112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 
= 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0;
- var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 
= 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0;
- var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, 
$178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, 
$185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0;
- var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 
= 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 
= 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0;
- var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 
= 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 
= 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0;
- var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 
= 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 
= 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0;
- var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 
= 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 
= 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0;
- var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, 
$269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, 
$276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0;
- var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, 
$287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, 
$294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0;
- var $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 
= 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 
= 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0;
- var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0;
- var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 
= 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0;
- var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 
= 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0;
- var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, 
$378 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 
0, $45 = 0, $46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0;
- var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $4 = ($2|0)==(0);
- $5 = (0)==(0);
- $6 = $4 & $5;
- if ($6) {
-  $7 = (_llvm_cttz_i32(($3|0))|0);
-  $8 = (($7) + 32)|0;
-  $$0$i12 = $8;
- } else {
-  $9 = (_llvm_cttz_i32(($2|0))|0);
-  $10 = ($9>>>0)<(16);
-  if ($10) {
-   $11 = ((($0)) + 160|0);
-   $12 = (($11) + ($9<<4)|0);
-   $$011 = $12;
-   return ($$011|0);
-  } else {
-   $$0$i12 = $9;
-  }
- }
- $13 = ((($0)) + 160|0);
- $14 = ((($13)) + 240|0);
- $15 = ($14|0)==($1|0);
- do {
-  if ($15) {
-   $$pre = HEAP8[$1>>0]|0;
-   $$phi$trans$insert = ((($1)) + 1|0);
-   $$pre59 = HEAP8[$$phi$trans$insert>>0]|0;
-   $$phi$trans$insert60 = ((($1)) + 2|0);
-   $$pre61 = HEAP8[$$phi$trans$insert60>>0]|0;
-   $$phi$trans$insert62 = ((($1)) + 3|0);
-   $$pre63 = HEAP8[$$phi$trans$insert62>>0]|0;
-   $$phi$trans$insert64 = ((($1)) + 4|0);
-   $$pre65 = HEAP8[$$phi$trans$insert64>>0]|0;
-   $$phi$trans$insert66 = ((($1)) + 5|0);
-   $$pre67 = HEAP8[$$phi$trans$insert66>>0]|0;
-   $$phi$trans$insert68 = ((($1)) + 6|0);
-   $$pre69 = HEAP8[$$phi$trans$insert68>>0]|0;
-   $$phi$trans$insert70 = ((($1)) + 7|0);
-   $$pre71 = HEAP8[$$phi$trans$insert70>>0]|0;
-   $$phi$trans$insert72 = ((($1)) + 8|0);
-   $$pre73 = HEAP8[$$phi$trans$insert72>>0]|0;
-   $$phi$trans$insert74 = ((($1)) + 9|0);
-   $$pre75 = HEAP8[$$phi$trans$insert74>>0]|0;
-   $$phi$trans$insert76 = ((($1)) + 10|0);
-   $$pre77 = HEAP8[$$phi$trans$insert76>>0]|0;
-   $$phi$trans$insert78 = ((($1)) + 11|0);
-   $$pre79 = HEAP8[$$phi$trans$insert78>>0]|0;
-   $$phi$trans$insert80 = ((($1)) + 12|0);
-   $$pre81 = HEAP8[$$phi$trans$insert80>>0]|0;
-   $$phi$trans$insert82 = ((($1)) + 13|0);
-   $$pre83 = HEAP8[$$phi$trans$insert82>>0]|0;
-   $$phi$trans$insert84 = ((($1)) + 14|0);
-   $$pre85 = HEAP8[$$phi$trans$insert84>>0]|0;
-   $$phi$trans$insert86 = ((($1)) + 15|0);
-   $$pre87 = HEAP8[$$phi$trans$insert86>>0]|0;
-   $$pre$phi100Z2D = $$phi$trans$insert72;$$pre$phi102Z2D = 
$$phi$trans$insert74;$$pre$phi104Z2D = $$phi$trans$insert76;$$pre$phi106Z2D = 
$$phi$trans$insert78;$$pre$phi107Z2D = $$phi$trans$insert80;$$pre$phi109Z2D = 
$$phi$trans$insert82;$$pre$phi111Z2D = $$phi$trans$insert84;$$pre$phi113Z2D = 
$$phi$trans$insert86;$$pre$phi90Z2D = $$phi$trans$insert60;$$pre$phi92Z2D = 
$$phi$trans$insert62;$$pre$phi93Z2D = $$phi$trans$insert64;$$pre$phi95Z2D = 
$$phi$trans$insert66;$$pre$phi97Z2D = $$phi$tr [...]
-  } else {
-   $16 = $1;
-   $17 = $14;
-   $18 = $17 | $16;
-   $19 = $18 & 3;
-   $20 = ($19|0)==(0);
-   if ($20) {
-    $21 = ((($13)) + 244|0);
-    $22 = HEAP32[$14>>2]|0;
-    $23 = ((($1)) + 4|0);
-    HEAP32[$1>>2] = $22;
-    $24 = ((($13)) + 248|0);
-    $25 = HEAP32[$21>>2]|0;
-    $26 = ((($1)) + 8|0);
-    HEAP32[$23>>2] = $25;
-    $27 = ((($13)) + 252|0);
-    $28 = HEAP32[$24>>2]|0;
-    $29 = ((($1)) + 12|0);
-    HEAP32[$26>>2] = $28;
-    $30 = HEAP32[$27>>2]|0;
-    HEAP32[$29>>2] = $30;
-    $31 = $22&255;
-    $32 = $22 >>> 8;
-    $33 = $32&255;
-    $34 = $22 >>> 16;
-    $35 = $34&255;
-    $36 = $22 >>> 24;
-    $37 = $36&255;
-    $38 = $25&255;
-    $39 = $25 >>> 8;
-    $40 = $39&255;
-    $41 = $25 >>> 16;
-    $42 = $41&255;
-    $43 = $25 >>> 24;
-    $44 = $43&255;
-    $45 = $28&255;
-    $46 = $28 >>> 8;
-    $47 = $46&255;
-    $48 = $28 >>> 16;
-    $49 = $48&255;
-    $50 = $28 >>> 24;
-    $51 = $50&255;
-    $52 = $30&255;
-    $53 = $30 >>> 8;
-    $54 = $53&255;
-    $55 = $30 >>> 16;
-    $56 = $55&255;
-    $57 = $30 >>> 24;
-    $58 = $57&255;
-    $$pre88 = ((($1)) + 1|0);
-    $$pre89 = ((($1)) + 2|0);
-    $$pre91 = ((($1)) + 3|0);
-    $$pre94 = ((($1)) + 5|0);
-    $$pre96 = ((($1)) + 6|0);
-    $$pre98 = ((($1)) + 7|0);
-    $$pre101 = ((($1)) + 9|0);
-    $$pre103 = ((($1)) + 10|0);
-    $$pre105 = ((($1)) + 11|0);
-    $$pre108 = ((($1)) + 13|0);
-    $$pre110 = ((($1)) + 14|0);
-    $$pre112 = ((($1)) + 15|0);
-    $$pre$phi100Z2D = $26;$$pre$phi102Z2D = $$pre101;$$pre$phi104Z2D = 
$$pre103;$$pre$phi106Z2D = $$pre105;$$pre$phi107Z2D = $29;$$pre$phi109Z2D = 
$$pre108;$$pre$phi111Z2D = $$pre110;$$pre$phi113Z2D = $$pre112;$$pre$phi90Z2D = 
$$pre89;$$pre$phi92Z2D = $$pre91;$$pre$phi93Z2D = $23;$$pre$phi95Z2D = 
$$pre94;$$pre$phi97Z2D = $$pre96;$$pre$phi99Z2D = $$pre98;$$pre$phiZ2D = 
$$pre88;$106 = $31;$110 = $33;$116 = $35;$122 = $37;$125 = $38;$131 = $40;$137 
= $42;$143 = $44;$146 = $45;$150 = $47;$15 [...]
-    break;
-   } else {
-    $59 = ((($14)) + 1|0);
-    $60 = HEAP8[$14>>0]|0;
-    $61 = ((($1)) + 1|0);
-    HEAP8[$1>>0] = $60;
-    $62 = ((($14)) + 2|0);
-    $63 = HEAP8[$59>>0]|0;
-    $64 = ((($1)) + 2|0);
-    HEAP8[$61>>0] = $63;
-    $65 = ((($14)) + 3|0);
-    $66 = HEAP8[$62>>0]|0;
-    $67 = ((($1)) + 3|0);
-    HEAP8[$64>>0] = $66;
-    $68 = ((($13)) + 244|0);
-    $69 = HEAP8[$65>>0]|0;
-    $70 = ((($1)) + 4|0);
-    HEAP8[$67>>0] = $69;
-    $71 = ((($14)) + 5|0);
-    $72 = HEAP8[$68>>0]|0;
-    $73 = ((($1)) + 5|0);
-    HEAP8[$70>>0] = $72;
-    $74 = ((($14)) + 6|0);
-    $75 = HEAP8[$71>>0]|0;
-    $76 = ((($1)) + 6|0);
-    HEAP8[$73>>0] = $75;
-    $77 = ((($14)) + 7|0);
-    $78 = HEAP8[$74>>0]|0;
-    $79 = ((($1)) + 7|0);
-    HEAP8[$76>>0] = $78;
-    $80 = ((($13)) + 248|0);
-    $81 = HEAP8[$77>>0]|0;
-    $82 = ((($1)) + 8|0);
-    HEAP8[$79>>0] = $81;
-    $83 = ((($14)) + 9|0);
-    $84 = HEAP8[$80>>0]|0;
-    $85 = ((($1)) + 9|0);
-    HEAP8[$82>>0] = $84;
-    $86 = ((($14)) + 10|0);
-    $87 = HEAP8[$83>>0]|0;
-    $88 = ((($1)) + 10|0);
-    HEAP8[$85>>0] = $87;
-    $89 = ((($14)) + 11|0);
-    $90 = HEAP8[$86>>0]|0;
-    $91 = ((($1)) + 11|0);
-    HEAP8[$88>>0] = $90;
-    $92 = ((($13)) + 252|0);
-    $93 = HEAP8[$89>>0]|0;
-    $94 = ((($1)) + 12|0);
-    HEAP8[$91>>0] = $93;
-    $95 = ((($14)) + 13|0);
-    $96 = HEAP8[$92>>0]|0;
-    $97 = ((($1)) + 13|0);
-    HEAP8[$94>>0] = $96;
-    $98 = ((($14)) + 14|0);
-    $99 = HEAP8[$95>>0]|0;
-    $100 = ((($1)) + 14|0);
-    HEAP8[$97>>0] = $99;
-    $101 = ((($14)) + 15|0);
-    $102 = HEAP8[$98>>0]|0;
-    $103 = ((($1)) + 15|0);
-    HEAP8[$100>>0] = $102;
-    $104 = HEAP8[$101>>0]|0;
-    HEAP8[$103>>0] = $104;
-    $$pre$phi100Z2D = $82;$$pre$phi102Z2D = $85;$$pre$phi104Z2D = 
$88;$$pre$phi106Z2D = $91;$$pre$phi107Z2D = $94;$$pre$phi109Z2D = 
$97;$$pre$phi111Z2D = $100;$$pre$phi113Z2D = $103;$$pre$phi90Z2D = 
$64;$$pre$phi92Z2D = $67;$$pre$phi93Z2D = $70;$$pre$phi95Z2D = 
$73;$$pre$phi97Z2D = $76;$$pre$phi99Z2D = $79;$$pre$phiZ2D = $61;$106 = 
$60;$110 = $63;$116 = $66;$122 = $69;$125 = $72;$131 = $75;$137 = $78;$143 = 
$81;$146 = $84;$150 = $87;$156 = $90;$162 = $93;$165 = $96;$171 = $99;$177 = 
$102 [...]
-    break;
-   }
-  }
- } while(0);
- $105 = $106&255;
- $107 = (_bitshift64Shl(($105|0),0,56)|0);
- $108 = tempRet0;
- $109 = $110&255;
- $111 = (_bitshift64Shl(($109|0),0,48)|0);
- $112 = tempRet0;
- $113 = $111 | $107;
- $114 = $112 | $108;
- $115 = $116&255;
- $117 = (_bitshift64Shl(($115|0),0,40)|0);
- $118 = tempRet0;
- $119 = $113 | $117;
- $120 = $114 | $118;
- $121 = $122&255;
- $123 = $120 | $121;
- $124 = $125&255;
- $126 = (_bitshift64Shl(($124|0),0,24)|0);
- $127 = tempRet0;
- $128 = $119 | $126;
- $129 = $123 | $127;
- $130 = $131&255;
- $132 = (_bitshift64Shl(($130|0),0,16)|0);
- $133 = tempRet0;
- $134 = $128 | $132;
- $135 = $129 | $133;
- $136 = $137&255;
- $138 = (_bitshift64Shl(($136|0),0,8)|0);
- $139 = tempRet0;
- $140 = $134 | $138;
- $141 = $135 | $139;
- $142 = $143&255;
- $144 = $140 | $142;
- $145 = $146&255;
- $147 = (_bitshift64Shl(($145|0),0,56)|0);
- $148 = tempRet0;
- $149 = $150&255;
- $151 = (_bitshift64Shl(($149|0),0,48)|0);
- $152 = tempRet0;
- $153 = $151 | $147;
- $154 = $152 | $148;
- $155 = $156&255;
- $157 = (_bitshift64Shl(($155|0),0,40)|0);
- $158 = tempRet0;
- $159 = $153 | $157;
- $160 = $154 | $158;
- $161 = $162&255;
- $163 = $160 | $161;
- $164 = $165&255;
- $166 = (_bitshift64Shl(($164|0),0,24)|0);
- $167 = tempRet0;
- $168 = $159 | $166;
- $169 = $163 | $167;
- $170 = $171&255;
- $172 = (_bitshift64Shl(($170|0),0,16)|0);
- $173 = tempRet0;
- $174 = $168 | $172;
- $175 = $169 | $173;
- $176 = $177&255;
- $178 = (_bitshift64Shl(($176|0),0,8)|0);
- $179 = tempRet0;
- $180 = $174 | $178;
- $181 = $175 | $179;
- $182 = $183&255;
- $184 = $180 | $182;
- $185 = (_bitshift64Ashr(($107|0),($108|0),63)|0);
- $186 = tempRet0;
- $187 = (_bitshift64Shl(($144|0),($141|0),1)|0);
- $188 = tempRet0;
- $189 = (_bitshift64Lshr(($145|0),0,7)|0);
- $190 = tempRet0;
- $191 = $187 | $189;
- $188 | $190;
- $192 = (_bitshift64Shl(($184|0),($181|0),1)|0);
- $193 = tempRet0;
- $194 = $185 & 135;
- $195 = $192 ^ $194;
- $196 = (_bitshift64Lshr(($113|0),($114|0),55)|0);
- $197 = tempRet0;
- $198 = $196&255;
- HEAP8[$1>>0] = $198;
- $199 = (_bitshift64Lshr(($119|0),($120|0),47)|0);
- $200 = tempRet0;
- $201 = $199&255;
- HEAP8[$$pre$phiZ2D>>0] = $201;
- $202 = (_bitshift64Lshr(($119|0),($123|0),39)|0);
- $203 = tempRet0;
- $204 = $202&255;
- HEAP8[$$pre$phi90Z2D>>0] = $204;
- $205 = (_bitshift64Lshr(($128|0),($129|0),31)|0);
- $206 = tempRet0;
- $207 = $205&255;
- HEAP8[$$pre$phi92Z2D>>0] = $207;
- $208 = (_bitshift64Lshr(($134|0),($135|0),23)|0);
- $209 = tempRet0;
- $210 = $208&255;
- HEAP8[$$pre$phi93Z2D>>0] = $210;
- $211 = (_bitshift64Lshr(($140|0),($141|0),15)|0);
- $212 = tempRet0;
- $213 = $211&255;
- HEAP8[$$pre$phi95Z2D>>0] = $213;
- $214 = (_bitshift64Lshr(($144|0),($141|0),7)|0);
- $215 = tempRet0;
- $216 = $214&255;
- HEAP8[$$pre$phi97Z2D>>0] = $216;
- $217 = $191&255;
- HEAP8[$$pre$phi99Z2D>>0] = $217;
- $218 = (_bitshift64Lshr(($153|0),($154|0),55)|0);
- $219 = tempRet0;
- $220 = $218&255;
- HEAP8[$$pre$phi100Z2D>>0] = $220;
- $221 = (_bitshift64Lshr(($159|0),($160|0),47)|0);
- $222 = tempRet0;
- $223 = $221&255;
- HEAP8[$$pre$phi102Z2D>>0] = $223;
- $224 = (_bitshift64Lshr(($159|0),($163|0),39)|0);
- $225 = tempRet0;
- $226 = $224&255;
- HEAP8[$$pre$phi104Z2D>>0] = $226;
- $227 = (_bitshift64Lshr(($168|0),($169|0),31)|0);
- $228 = tempRet0;
- $229 = $227&255;
- HEAP8[$$pre$phi106Z2D>>0] = $229;
- $230 = (_bitshift64Lshr(($174|0),($175|0),23)|0);
- $231 = tempRet0;
- $232 = $230&255;
- HEAP8[$$pre$phi107Z2D>>0] = $232;
- $233 = (_bitshift64Lshr(($180|0),($181|0),15)|0);
- $234 = tempRet0;
- $235 = $233&255;
- HEAP8[$$pre$phi109Z2D>>0] = $235;
- $236 = (_bitshift64Lshr(($184|0),($181|0),7)|0);
- $237 = tempRet0;
- $238 = $236&255;
- HEAP8[$$pre$phi111Z2D>>0] = $238;
- $239 = $195&255;
- HEAP8[$$pre$phi113Z2D>>0] = $239;
- $240 = (($$0$i12) + -16)|0;
- $241 = ($240|0)==(0);
- if ($241) {
-  $$011 = $1;
-  return ($$011|0);
- }
- $$013 = $240;$243 = $198;$247 = $201;$253 = $204;$259 = $207;$262 = $210;$268 
= $213;$274 = $216;$280 = $217;$283 = $220;$287 = $223;$293 = $226;$299 = 
$229;$302 = $232;$308 = $235;$314 = $238;$320 = $239;
- while(1) {
-  $242 = $243&255;
-  $244 = (_bitshift64Shl(($242|0),0,56)|0);
-  $245 = tempRet0;
-  $246 = $247&255;
-  $248 = (_bitshift64Shl(($246|0),0,48)|0);
-  $249 = tempRet0;
-  $250 = $248 | $244;
-  $251 = $249 | $245;
-  $252 = $253&255;
-  $254 = (_bitshift64Shl(($252|0),0,40)|0);
-  $255 = tempRet0;
-  $256 = $250 | $254;
-  $257 = $251 | $255;
-  $258 = $259&255;
-  $260 = $257 | $258;
-  $261 = $262&255;
-  $263 = (_bitshift64Shl(($261|0),0,24)|0);
-  $264 = tempRet0;
-  $265 = $256 | $263;
-  $266 = $260 | $264;
-  $267 = $268&255;
-  $269 = (_bitshift64Shl(($267|0),0,16)|0);
-  $270 = tempRet0;
-  $271 = $265 | $269;
-  $272 = $266 | $270;
-  $273 = $274&255;
-  $275 = (_bitshift64Shl(($273|0),0,8)|0);
-  $276 = tempRet0;
-  $277 = $271 | $275;
-  $278 = $272 | $276;
-  $279 = $280&255;
-  $281 = $277 | $279;
-  $282 = $283&255;
-  $284 = (_bitshift64Shl(($282|0),0,56)|0);
-  $285 = tempRet0;
-  $286 = $287&255;
-  $288 = (_bitshift64Shl(($286|0),0,48)|0);
-  $289 = tempRet0;
-  $290 = $288 | $284;
-  $291 = $289 | $285;
-  $292 = $293&255;
-  $294 = (_bitshift64Shl(($292|0),0,40)|0);
-  $295 = tempRet0;
-  $296 = $290 | $294;
-  $297 = $291 | $295;
-  $298 = $299&255;
-  $300 = $297 | $298;
-  $301 = $302&255;
-  $303 = (_bitshift64Shl(($301|0),0,24)|0);
-  $304 = tempRet0;
-  $305 = $296 | $303;
-  $306 = $300 | $304;
-  $307 = $308&255;
-  $309 = (_bitshift64Shl(($307|0),0,16)|0);
-  $310 = tempRet0;
-  $311 = $305 | $309;
-  $312 = $306 | $310;
-  $313 = $314&255;
-  $315 = (_bitshift64Shl(($313|0),0,8)|0);
-  $316 = tempRet0;
-  $317 = $311 | $315;
-  $318 = $312 | $316;
-  $319 = $320&255;
-  $321 = $317 | $319;
-  $322 = (_bitshift64Ashr(($244|0),($245|0),63)|0);
-  $323 = tempRet0;
-  $324 = (_bitshift64Shl(($281|0),($278|0),1)|0);
-  $325 = tempRet0;
-  $326 = (_bitshift64Lshr(($282|0),0,7)|0);
-  $327 = tempRet0;
-  $328 = $324 | $326;
-  $325 | $327;
-  $329 = (_bitshift64Shl(($321|0),($318|0),1)|0);
-  $330 = tempRet0;
-  $331 = $322 & 135;
-  $332 = $329 ^ $331;
-  $333 = (_bitshift64Lshr(($250|0),($251|0),55)|0);
-  $334 = tempRet0;
-  $335 = $333&255;
-  $336 = (_bitshift64Lshr(($256|0),($257|0),47)|0);
-  $337 = tempRet0;
-  $338 = $336&255;
-  $339 = (_bitshift64Lshr(($256|0),($260|0),39)|0);
-  $340 = tempRet0;
-  $341 = $339&255;
-  $342 = (_bitshift64Lshr(($265|0),($266|0),31)|0);
-  $343 = tempRet0;
-  $344 = $342&255;
-  $345 = (_bitshift64Lshr(($271|0),($272|0),23)|0);
-  $346 = tempRet0;
-  $347 = $345&255;
-  $348 = (_bitshift64Lshr(($277|0),($278|0),15)|0);
-  $349 = tempRet0;
-  $350 = $348&255;
-  $351 = (_bitshift64Lshr(($281|0),($278|0),7)|0);
-  $352 = tempRet0;
-  $353 = $351&255;
-  $354 = $328&255;
-  $355 = (_bitshift64Lshr(($290|0),($291|0),55)|0);
-  $356 = tempRet0;
-  $357 = $355&255;
-  $358 = (_bitshift64Lshr(($296|0),($297|0),47)|0);
-  $359 = tempRet0;
-  $360 = $358&255;
-  $361 = (_bitshift64Lshr(($296|0),($300|0),39)|0);
-  $362 = tempRet0;
-  $363 = $361&255;
-  $364 = (_bitshift64Lshr(($305|0),($306|0),31)|0);
-  $365 = tempRet0;
-  $366 = $364&255;
-  $367 = (_bitshift64Lshr(($311|0),($312|0),23)|0);
-  $368 = tempRet0;
-  $369 = $367&255;
-  $370 = (_bitshift64Lshr(($317|0),($318|0),15)|0);
-  $371 = tempRet0;
-  $372 = $370&255;
-  $373 = (_bitshift64Lshr(($321|0),($318|0),7)|0);
-  $374 = tempRet0;
-  $375 = $373&255;
-  $376 = $332&255;
-  $377 = (($$013) + -1)|0;
-  $378 = ($377|0)==(0);
-  if ($378) {
-   break;
-  } else {
-   $$013 = $377;$243 = $335;$247 = $338;$253 = $341;$259 = $344;$262 = 
$347;$268 = $350;$274 = $353;$280 = $354;$283 = $357;$287 = $360;$293 = 
$363;$299 = $366;$302 = $369;$308 = $372;$314 = $375;$320 = $376;
-  }
- }
- HEAP8[$1>>0] = $335;
- HEAP8[$$pre$phiZ2D>>0] = $338;
- HEAP8[$$pre$phi90Z2D>>0] = $341;
- HEAP8[$$pre$phi92Z2D>>0] = $344;
- HEAP8[$$pre$phi93Z2D>>0] = $347;
- HEAP8[$$pre$phi95Z2D>>0] = $350;
- HEAP8[$$pre$phi97Z2D>>0] = $353;
- HEAP8[$$pre$phi99Z2D>>0] = $354;
- HEAP8[$$pre$phi100Z2D>>0] = $357;
- HEAP8[$$pre$phi102Z2D>>0] = $360;
- HEAP8[$$pre$phi104Z2D>>0] = $363;
- HEAP8[$$pre$phi106Z2D>>0] = $366;
- HEAP8[$$pre$phi107Z2D>>0] = $369;
- HEAP8[$$pre$phi109Z2D>>0] = $372;
- HEAP8[$$pre$phi111Z2D>>0] = $375;
- HEAP8[$$pre$phi113Z2D>>0] = $376;
- $$011 = $1;
- return ($$011|0);
-}
-function __gcry_cipher_ocb_set_nonce($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0121179 = 0, $$02434$i146 = 0, $$02533$i147 = 0, $$026$i = 0, 
$$028$i = 0, $$035$i145 = 0, $$1$i149 = 0, $$12731$i = 0, $$12930$i = 0, 
$$232$i = 0, $$phi$trans$insert = 0, $$phi$trans$insert193 = 0, 
$$phi$trans$insert195 = 0, $$phi$trans$insert197 = 0, $$phi$trans$insert199 = 
0, $$phi$trans$insert201 = 0, $$phi$trans$insert203 = 0, $$phi$trans$insert205 
= 0, $$phi$trans$insert207 = 0;
- var $$phi$trans$insert209 = 0, $$phi$trans$insert211 = 0, 
$$phi$trans$insert213 = 0, $$pre = 0, $$pre$phi217Z2D = 0, $$pre$phi219Z2D = 0, 
$$pre$phi220Z2D = 0, $$pre$phi222Z2D = 0, $$pre$phi224Z2D = 0, $$pre$phi226Z2D 
= 0, $$pre$phi227Z2D = 0, $$pre$phi229Z2D = 0, $$pre$phi231Z2D = 0, 
$$pre$phi233Z2D = 0, $$pre$phi234Z2D = 0, $$pre$phi236Z2D = 0, $$pre$phi238Z2D 
= 0, $$pre$phi240Z2D = 0, $$pre$phi242Z2D = 0, $$pre$phi244Z2D = 0;
- var $$pre$phi246Z2D = 0, $$pre$phi249Z2D = 0, $$pre$phi251Z2D = 0, 
$$pre$phi253Z2D = 0, $$pre$phi255Z2D = 0, $$pre$phi258Z2D = 0, $$pre$phi260Z2D 
= 0, $$pre$phi262Z2D = 0, $$pre$phi264Z2D = 0, $$pre$phi267Z2D = 0, 
$$pre$phi269Z2D = 0, $$pre$phi271Z2D = 0, $$pre$phi273Z2D = 0, $$pre$phi274Z2D 
= 0, $$pre$phi275Z2D = 0, $$pre$phi276Z2D = 0, $$pre$phi277Z2D = 0, 
$$pre$phi278Z2D = 0, $$pre$phi279Z2D = 0, $$pre$phi280Z2D = 0;
- var $$pre$phi281Z2D = 0, $$pre$phi282Z2D = 0, $$pre$phi283Z2D = 0, 
$$pre$phi284Z2D = 0, $$pre$phi285Z2D = 0, $$pre$phi286Z2D = 0, $$pre$phi287Z2D 
= 0, $$pre$phi288Z2D = 0, $$pre$phiZ2D = 0, $$pre194 = 0, $$pre196 = 0, 
$$pre198 = 0, $$pre200 = 0, $$pre202 = 0, $$pre204 = 0, $$pre206 = 0, $$pre208 
= 0, $$pre210 = 0, $$pre212 = 0, $$pre214 = 0;
- var $$pre215 = 0, $$pre216 = 0, $$pre218 = 0, $$pre221 = 0, $$pre223 = 0, 
$$pre225 = 0, $$pre228 = 0, $$pre230 = 0, $$pre232 = 0, $$pre235 = 0, $$pre237 
= 0, $$pre239 = 0, $$pre241 = 0, $$pre243 = 0, $$pre245 = 0, $$pre250 = 0, 
$$pre252 = 0, $$pre254 = 0, $$pre259 = 0, $$pre261 = 0;
- var $$pre263 = 0, $$pre268 = 0, $$pre270 = 0, $$pre272 = 0, $$sink = 0, 
$$sink191 = 0, $$sink192 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0;
- var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 
= 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0;
- var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0;
- var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 
= 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 
= 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 
= 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0;
- var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 
= 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 
= 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0;
- var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 
= 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 
= 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0;
- var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 
= 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 
= 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0;
- var $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, 
$317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, 
$324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0;
- var $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 
= 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 
= 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0;
- var $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 
= 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 
= 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0;
- var $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 
= 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 
= 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0;
- var $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 
= 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 
= 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0;
- var $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, 
$407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, 
$414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0;
- var $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 
= 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 
= 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0;
- var $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 
= 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 
= 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0;
- var $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 
= 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 
= 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0;
- var $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 
= 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 
= 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0;
- var $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, 
$498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, 
$504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0;
- var $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 
= 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 
= 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0;
- var $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 
= 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 
= 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0;
- var $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 
= 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 
= 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0;
- var $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 
= 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 
= 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0;
- var $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, 
$588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, 
$595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0;
- var $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 
0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 
0, $613 = 0, $614 = 0, $615 = 0, $616 = 0;
- var $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 
= 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 
= 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0;
- var $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 
= 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 
= 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0;
- var $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 
= 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 
= 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0;
- var $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, 
$678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, 
$685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0;
- var $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 
= 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 
0, $703 = 0, $704 = 0, $705 = 0, $706 = 0;
- var $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 
= 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 
= 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0;
- var $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 
= 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 
= 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0;
- var $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 
= 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 
= 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0;
- var $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, 
$768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, 
$775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0;
- var $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 
= 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 
= 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0;
- var $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 
0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 
0, $811 = 0, $812 = 0, $813 = 0, $814 = 0;
- var $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 
= 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 
= 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0;
- var $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 
= 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 
= 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0;
- var $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, 
$858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, 
$865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0;
- var $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 
= 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 
= 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0;
- var $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 
= 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 
0, $901 = 0, $902 = 0, $903 = 0, $904 = 0;
- var $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 
= 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 
= 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0;
- var $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 
= 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 
= 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0;
- var $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, 
$948 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, 
$or$cond$i = 0, $scevgep$i143 = 0, $scevgep44$i144 = 0, dest = 0, label = 0, sp 
= 0;
- var stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $3 = sp + 32|0;
- $4 = sp;
- $5 = ((($0)) + 56|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6 & 1;
- $8 = ($7<<24>>24)==(0);
- if ($8) {
-  $$0 = 156;
-  STACKTOP = sp;return ($$0|0);
- }
- $9 = ((($0)) + 128|0);
- $10 = ((($0)) + 480|0);
- $11 = HEAP8[$10>>0]|0;
- switch ($11<<24>>24) {
- case 16: case 12: case 8:  {
-  break;
- }
- default: {
-  $$0 = 59;
-  STACKTOP = sp;return ($$0|0);
- }
- }
- $12 = ((($0)) + 12|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ((($13)) + 20|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = ($15|0)==(16);
- if (!($16)) {
-  $$0 = 12;
-  STACKTOP = sp;return ($$0|0);
- }
- $17 = ($1|0)==(0|0);
- if ($17) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = $2 & -8;
- $19 = ($18|0)==(8);
- if (!($19)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- 
;HEAP32[$3>>2]=0|0;HEAP32[$3+4>>2]=0|0;HEAP32[$3+8>>2]=0|0;HEAP32[$3+12>>2]=0|0;
- $20 = ((($13)) + 36|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = ((($0)) + 496|0);
- $23 = (FUNCTION_TABLE_iiii[$21 & 127]($22,$9,$3)|0);
- $24 = ((($0)) + 144|0);
- $25 = $24;
- $26 = $9;
- $27 = $26 | $25;
- $28 = $27 & 3;
- $29 = ($28|0)==(0);
- if ($29) {
-  $30 = ((($9)) + 4|0);
-  $31 = HEAP32[$9>>2]|0;
-  $32 = ((($0)) + 148|0);
-  HEAP32[$24>>2] = $31;
-  $33 = ((($0)) + 136|0);
-  $34 = HEAP32[$30>>2]|0;
-  $35 = ((($0)) + 152|0);
-  HEAP32[$32>>2] = $34;
-  $36 = ((($0)) + 140|0);
-  $37 = HEAP32[$33>>2]|0;
-  $38 = ((($0)) + 156|0);
-  HEAP32[$35>>2] = $37;
-  $39 = HEAP32[$36>>2]|0;
-  HEAP32[$38>>2] = $39;
-  $40 = $31&255;
-  $41 = $31 >>> 8;
-  $42 = $41&255;
-  $43 = $31 >>> 16;
-  $44 = $43&255;
-  $45 = $31 >>> 24;
-  $46 = $45&255;
-  $47 = $34&255;
-  $48 = $34 >>> 8;
-  $49 = $48&255;
-  $50 = $34 >>> 16;
-  $51 = $50&255;
-  $52 = $34 >>> 24;
-  $53 = $52&255;
-  $54 = $37&255;
-  $55 = $37 >>> 8;
-  $56 = $55&255;
-  $57 = $37 >>> 16;
-  $58 = $57&255;
-  $59 = $37 >>> 24;
-  $60 = $59&255;
-  $61 = $39&255;
-  $62 = $39 >>> 8;
-  $63 = $62&255;
-  $64 = $39 >>> 16;
-  $65 = $64&255;
-  $66 = $39 >>> 24;
-  $67 = $66&255;
-  $$pre215 = ((($0)) + 145|0);
-  $$pre216 = ((($0)) + 146|0);
-  $$pre218 = ((($0)) + 147|0);
-  $$pre221 = ((($0)) + 149|0);
-  $$pre223 = ((($0)) + 150|0);
-  $$pre225 = ((($0)) + 151|0);
-  $$pre228 = ((($0)) + 153|0);
-  $$pre230 = ((($0)) + 154|0);
-  $$pre232 = ((($0)) + 155|0);
-  $$pre235 = ((($0)) + 157|0);
-  $$pre237 = ((($0)) + 158|0);
-  $$pre239 = ((($0)) + 159|0);
-  $$pre$phi217Z2D = $$pre216;$$pre$phi219Z2D = $$pre218;$$pre$phi220Z2D = 
$32;$$pre$phi222Z2D = $$pre221;$$pre$phi224Z2D = $$pre223;$$pre$phi226Z2D = 
$$pre225;$$pre$phi227Z2D = $35;$$pre$phi229Z2D = $$pre228;$$pre$phi231Z2D = 
$$pre230;$$pre$phi233Z2D = $$pre232;$$pre$phi234Z2D = $38;$$pre$phi236Z2D = 
$$pre235;$$pre$phi238Z2D = $$pre237;$$pre$phi240Z2D = $$pre239;$$pre$phiZ2D = 
$$pre215;$115 = $40;$119 = $42;$125 = $44;$131 = $46;$134 = $47;$140 = $49;$146 
= $51;$152 = $53;$155 = $54;$159 [...]
- } else {
-  $68 = ((($9)) + 1|0);
-  $69 = HEAP8[$9>>0]|0;
-  $70 = ((($0)) + 145|0);
-  HEAP8[$24>>0] = $69;
-  $71 = ((($9)) + 2|0);
-  $72 = HEAP8[$68>>0]|0;
-  $73 = ((($0)) + 146|0);
-  HEAP8[$70>>0] = $72;
-  $74 = ((($9)) + 3|0);
-  $75 = HEAP8[$71>>0]|0;
-  $76 = ((($0)) + 147|0);
-  HEAP8[$73>>0] = $75;
-  $77 = ((($9)) + 4|0);
-  $78 = HEAP8[$74>>0]|0;
-  $79 = ((($0)) + 148|0);
-  HEAP8[$76>>0] = $78;
-  $80 = ((($9)) + 5|0);
-  $81 = HEAP8[$77>>0]|0;
-  $82 = ((($0)) + 149|0);
-  HEAP8[$79>>0] = $81;
-  $83 = ((($9)) + 6|0);
-  $84 = HEAP8[$80>>0]|0;
-  $85 = ((($0)) + 150|0);
-  HEAP8[$82>>0] = $84;
-  $86 = ((($9)) + 7|0);
-  $87 = HEAP8[$83>>0]|0;
-  $88 = ((($0)) + 151|0);
-  HEAP8[$85>>0] = $87;
-  $89 = ((($0)) + 136|0);
-  $90 = HEAP8[$86>>0]|0;
-  $91 = ((($0)) + 152|0);
-  HEAP8[$88>>0] = $90;
-  $92 = ((($0)) + 137|0);
-  $93 = HEAP8[$89>>0]|0;
-  $94 = ((($0)) + 153|0);
-  HEAP8[$91>>0] = $93;
-  $95 = ((($0)) + 138|0);
-  $96 = HEAP8[$92>>0]|0;
-  $97 = ((($0)) + 154|0);
-  HEAP8[$94>>0] = $96;
-  $98 = ((($0)) + 139|0);
-  $99 = HEAP8[$95>>0]|0;
-  $100 = ((($0)) + 155|0);
-  HEAP8[$97>>0] = $99;
-  $101 = ((($0)) + 140|0);
-  $102 = HEAP8[$98>>0]|0;
-  $103 = ((($0)) + 156|0);
-  HEAP8[$100>>0] = $102;
-  $104 = ((($0)) + 141|0);
-  $105 = HEAP8[$101>>0]|0;
-  $106 = ((($0)) + 157|0);
-  HEAP8[$103>>0] = $105;
-  $107 = ((($0)) + 142|0);
-  $108 = HEAP8[$104>>0]|0;
-  $109 = ((($0)) + 158|0);
-  HEAP8[$106>>0] = $108;
-  $110 = ((($0)) + 143|0);
-  $111 = HEAP8[$107>>0]|0;
-  $112 = ((($0)) + 159|0);
-  HEAP8[$109>>0] = $111;
-  $113 = HEAP8[$110>>0]|0;
-  HEAP8[$112>>0] = $113;
-  $$pre$phi217Z2D = $73;$$pre$phi219Z2D = $76;$$pre$phi220Z2D = 
$79;$$pre$phi222Z2D = $82;$$pre$phi224Z2D = $85;$$pre$phi226Z2D = 
$88;$$pre$phi227Z2D = $91;$$pre$phi229Z2D = $94;$$pre$phi231Z2D = 
$97;$$pre$phi233Z2D = $100;$$pre$phi234Z2D = $103;$$pre$phi236Z2D = 
$106;$$pre$phi238Z2D = $109;$$pre$phi240Z2D = $112;$$pre$phiZ2D = $70;$115 = 
$69;$119 = $72;$125 = $75;$131 = $78;$134 = $81;$140 = $84;$146 = $87;$152 = 
$90;$155 = $93;$159 = $96;$165 = $99;$171 = $102;$174 = $105;$180 = $108;$ [...]
- }
- $114 = $115&255;
- $116 = (_bitshift64Shl(($114|0),0,56)|0);
- $117 = tempRet0;
- $118 = $119&255;
- $120 = (_bitshift64Shl(($118|0),0,48)|0);
- $121 = tempRet0;
- $122 = $120 | $116;
- $123 = $121 | $117;
- $124 = $125&255;
- $126 = (_bitshift64Shl(($124|0),0,40)|0);
- $127 = tempRet0;
- $128 = $122 | $126;
- $129 = $123 | $127;
- $130 = $131&255;
- $132 = $129 | $130;
- $133 = $134&255;
- $135 = (_bitshift64Shl(($133|0),0,24)|0);
- $136 = tempRet0;
- $137 = $128 | $135;
- $138 = $132 | $136;
- $139 = $140&255;
- $141 = (_bitshift64Shl(($139|0),0,16)|0);
- $142 = tempRet0;
- $143 = $137 | $141;
- $144 = $138 | $142;
- $145 = $146&255;
- $147 = (_bitshift64Shl(($145|0),0,8)|0);
- $148 = tempRet0;
- $149 = $143 | $147;
- $150 = $144 | $148;
- $151 = $152&255;
- $153 = $149 | $151;
- $154 = $155&255;
- $156 = (_bitshift64Shl(($154|0),0,56)|0);
- $157 = tempRet0;
- $158 = $159&255;
- $160 = (_bitshift64Shl(($158|0),0,48)|0);
- $161 = tempRet0;
- $162 = $160 | $156;
- $163 = $161 | $157;
- $164 = $165&255;
- $166 = (_bitshift64Shl(($164|0),0,40)|0);
- $167 = tempRet0;
- $168 = $162 | $166;
- $169 = $163 | $167;
- $170 = $171&255;
- $172 = $169 | $170;
- $173 = $174&255;
- $175 = (_bitshift64Shl(($173|0),0,24)|0);
- $176 = tempRet0;
- $177 = $168 | $175;
- $178 = $172 | $176;
- $179 = $180&255;
- $181 = (_bitshift64Shl(($179|0),0,16)|0);
- $182 = tempRet0;
- $183 = $177 | $181;
- $184 = $178 | $182;
- $185 = $186&255;
- $187 = (_bitshift64Shl(($185|0),0,8)|0);
- $188 = tempRet0;
- $189 = $183 | $187;
- $190 = $184 | $188;
- $191 = $192&255;
- $193 = $189 | $191;
- $194 = (_bitshift64Ashr(($116|0),($117|0),63)|0);
- $195 = tempRet0;
- $196 = (_bitshift64Shl(($153|0),($150|0),1)|0);
- $197 = tempRet0;
- $198 = (_bitshift64Lshr(($154|0),0,7)|0);
- $199 = tempRet0;
- $200 = $196 | $198;
- $197 | $199;
- $201 = (_bitshift64Shl(($193|0),($190|0),1)|0);
- $202 = tempRet0;
- $203 = $194 & 135;
- $204 = $201 ^ $203;
- $205 = (_bitshift64Lshr(($122|0),($123|0),55)|0);
- $206 = tempRet0;
- $207 = $205&255;
- HEAP8[$24>>0] = $207;
- $208 = (_bitshift64Lshr(($128|0),($129|0),47)|0);
- $209 = tempRet0;
- $210 = $208&255;
- HEAP8[$$pre$phiZ2D>>0] = $210;
- $211 = (_bitshift64Lshr(($128|0),($132|0),39)|0);
- $212 = tempRet0;
- $213 = $211&255;
- HEAP8[$$pre$phi217Z2D>>0] = $213;
- $214 = (_bitshift64Lshr(($137|0),($138|0),31)|0);
- $215 = tempRet0;
- $216 = $214&255;
- HEAP8[$$pre$phi219Z2D>>0] = $216;
- $217 = (_bitshift64Lshr(($143|0),($144|0),23)|0);
- $218 = tempRet0;
- $219 = $217&255;
- HEAP8[$$pre$phi220Z2D>>0] = $219;
- $220 = (_bitshift64Lshr(($149|0),($150|0),15)|0);
- $221 = tempRet0;
- $222 = $220&255;
- HEAP8[$$pre$phi222Z2D>>0] = $222;
- $223 = (_bitshift64Lshr(($153|0),($150|0),7)|0);
- $224 = tempRet0;
- $225 = $223&255;
- HEAP8[$$pre$phi224Z2D>>0] = $225;
- $226 = $200&255;
- HEAP8[$$pre$phi226Z2D>>0] = $226;
- $227 = (_bitshift64Lshr(($162|0),($163|0),55)|0);
- $228 = tempRet0;
- $229 = $227&255;
- HEAP8[$$pre$phi227Z2D>>0] = $229;
- $230 = (_bitshift64Lshr(($168|0),($169|0),47)|0);
- $231 = tempRet0;
- $232 = $230&255;
- HEAP8[$$pre$phi229Z2D>>0] = $232;
- $233 = (_bitshift64Lshr(($168|0),($172|0),39)|0);
- $234 = tempRet0;
- $235 = $233&255;
- HEAP8[$$pre$phi231Z2D>>0] = $235;
- $236 = (_bitshift64Lshr(($177|0),($178|0),31)|0);
- $237 = tempRet0;
- $238 = $236&255;
- HEAP8[$$pre$phi233Z2D>>0] = $238;
- $239 = (_bitshift64Lshr(($183|0),($184|0),23)|0);
- $240 = tempRet0;
- $241 = $239&255;
- HEAP8[$$pre$phi234Z2D>>0] = $241;
- $242 = (_bitshift64Lshr(($189|0),($190|0),15)|0);
- $243 = tempRet0;
- $244 = $242&255;
- HEAP8[$$pre$phi236Z2D>>0] = $244;
- $245 = (_bitshift64Lshr(($193|0),($190|0),7)|0);
- $246 = tempRet0;
- $247 = $245&255;
- HEAP8[$$pre$phi238Z2D>>0] = $247;
- $248 = $204&255;
- HEAP8[$$pre$phi240Z2D>>0] = $248;
- $249 = ((($0)) + 160|0);
- $250 = $249;
- $251 = $25 | $250;
- $252 = $251 & 3;
- $253 = ($252|0)==(0);
- if ($253) {
-  $254 = HEAP32[$24>>2]|0;
-  $255 = ((($249)) + 4|0);
-  HEAP32[$249>>2] = $254;
-  $256 = HEAP32[$$pre$phi220Z2D>>2]|0;
-  $257 = ((($249)) + 8|0);
-  HEAP32[$255>>2] = $256;
-  $258 = HEAP32[$$pre$phi227Z2D>>2]|0;
-  $259 = ((($249)) + 12|0);
-  HEAP32[$257>>2] = $258;
-  $260 = HEAP32[$$pre$phi234Z2D>>2]|0;
-  HEAP32[$259>>2] = $260;
-  $261 = $254&255;
-  $262 = $254 >>> 8;
-  $263 = $262&255;
-  $264 = $254 >>> 16;
-  $265 = $264&255;
-  $266 = $254 >>> 24;
-  $267 = $266&255;
-  $268 = $256&255;
-  $269 = $256 >>> 8;
-  $270 = $269&255;
-  $271 = $256 >>> 16;
-  $272 = $271&255;
-  $273 = $256 >>> 24;
-  $274 = $273&255;
-  $275 = $258&255;
-  $276 = $258 >>> 8;
-  $277 = $276&255;
-  $278 = $258 >>> 16;
-  $279 = $278&255;
-  $280 = $258 >>> 24;
-  $281 = $280&255;
-  $282 = $260&255;
-  $283 = $260 >>> 8;
-  $284 = $283&255;
-  $285 = $260 >>> 16;
-  $286 = $285&255;
-  $287 = $260 >>> 24;
-  $288 = $287&255;
-  $$pre241 = ((($249)) + 1|0);
-  $$pre243 = ((($249)) + 2|0);
-  $$pre245 = ((($249)) + 3|0);
-  $$pre250 = ((($249)) + 5|0);
-  $$pre252 = ((($249)) + 6|0);
-  $$pre254 = ((($249)) + 7|0);
-  $$pre259 = ((($249)) + 9|0);
-  $$pre261 = ((($249)) + 10|0);
-  $$pre263 = ((($249)) + 11|0);
-  $$pre268 = ((($249)) + 13|0);
-  $$pre270 = ((($249)) + 14|0);
-  $$pre272 = ((($249)) + 15|0);
-  $$pre$phi242Z2D = $$pre241;$$pre$phi244Z2D = $$pre243;$$pre$phi246Z2D = 
$$pre245;$$pre$phi249Z2D = $255;$$pre$phi251Z2D = $$pre250;$$pre$phi253Z2D = 
$$pre252;$$pre$phi255Z2D = $$pre254;$$pre$phi258Z2D = $257;$$pre$phi260Z2D = 
$$pre259;$$pre$phi262Z2D = $$pre261;$$pre$phi264Z2D = $$pre263;$$pre$phi267Z2D 
= $259;$$pre$phi269Z2D = $$pre268;$$pre$phi271Z2D = $$pre270;$$pre$phi273Z2D = 
$$pre272;$305 = $261;$309 = $263;$315 = $265;$321 = $267;$324 = $268;$330 = 
$270;$336 = $272;$342 = $274;$ [...]
- } else {
-  $289 = ((($249)) + 1|0);
-  HEAP8[$249>>0] = $207;
-  $290 = ((($249)) + 2|0);
-  HEAP8[$289>>0] = $210;
-  $291 = ((($249)) + 3|0);
-  HEAP8[$290>>0] = $213;
-  $292 = ((($249)) + 4|0);
-  HEAP8[$291>>0] = $216;
-  $293 = ((($249)) + 5|0);
-  HEAP8[$292>>0] = $219;
-  $294 = ((($249)) + 6|0);
-  HEAP8[$293>>0] = $222;
-  $295 = ((($249)) + 7|0);
-  HEAP8[$294>>0] = $225;
-  $296 = ((($249)) + 8|0);
-  HEAP8[$295>>0] = $226;
-  $297 = ((($249)) + 9|0);
-  HEAP8[$296>>0] = $229;
-  $298 = ((($249)) + 10|0);
-  HEAP8[$297>>0] = $232;
-  $299 = ((($249)) + 11|0);
-  HEAP8[$298>>0] = $235;
-  $300 = ((($249)) + 12|0);
-  HEAP8[$299>>0] = $238;
-  $301 = ((($249)) + 13|0);
-  HEAP8[$300>>0] = $241;
-  $302 = ((($249)) + 14|0);
-  HEAP8[$301>>0] = $244;
-  $303 = ((($249)) + 15|0);
-  HEAP8[$302>>0] = $247;
-  HEAP8[$303>>0] = $248;
-  $$pre$phi242Z2D = $289;$$pre$phi244Z2D = $290;$$pre$phi246Z2D = 
$291;$$pre$phi249Z2D = $292;$$pre$phi251Z2D = $293;$$pre$phi253Z2D = 
$294;$$pre$phi255Z2D = $295;$$pre$phi258Z2D = $296;$$pre$phi260Z2D = 
$297;$$pre$phi262Z2D = $298;$$pre$phi264Z2D = $299;$$pre$phi267Z2D = 
$300;$$pre$phi269Z2D = $301;$$pre$phi271Z2D = $302;$$pre$phi273Z2D = $303;$305 
= $207;$309 = $210;$315 = $213;$321 = $216;$324 = $219;$330 = $222;$336 = 
$225;$342 = $226;$345 = $229;$349 = $232;$355 = $235;$361 = $238;$ [...]
- }
- $304 = $305&255;
- $306 = (_bitshift64Shl(($304|0),0,56)|0);
- $307 = tempRet0;
- $308 = $309&255;
- $310 = (_bitshift64Shl(($308|0),0,48)|0);
- $311 = tempRet0;
- $312 = $310 | $306;
- $313 = $311 | $307;
- $314 = $315&255;
- $316 = (_bitshift64Shl(($314|0),0,40)|0);
- $317 = tempRet0;
- $318 = $312 | $316;
- $319 = $313 | $317;
- $320 = $321&255;
- $322 = $319 | $320;
- $323 = $324&255;
- $325 = (_bitshift64Shl(($323|0),0,24)|0);
- $326 = tempRet0;
- $327 = $318 | $325;
- $328 = $322 | $326;
- $329 = $330&255;
- $331 = (_bitshift64Shl(($329|0),0,16)|0);
- $332 = tempRet0;
- $333 = $327 | $331;
- $334 = $328 | $332;
- $335 = $336&255;
- $337 = (_bitshift64Shl(($335|0),0,8)|0);
- $338 = tempRet0;
- $339 = $333 | $337;
- $340 = $334 | $338;
- $341 = $342&255;
- $343 = $339 | $341;
- $344 = $345&255;
- $346 = (_bitshift64Shl(($344|0),0,56)|0);
- $347 = tempRet0;
- $348 = $349&255;
- $350 = (_bitshift64Shl(($348|0),0,48)|0);
- $351 = tempRet0;
- $352 = $350 | $346;
- $353 = $351 | $347;
- $354 = $355&255;
- $356 = (_bitshift64Shl(($354|0),0,40)|0);
- $357 = tempRet0;
- $358 = $352 | $356;
- $359 = $353 | $357;
- $360 = $361&255;
- $362 = $359 | $360;
- $363 = $364&255;
- $365 = (_bitshift64Shl(($363|0),0,24)|0);
- $366 = tempRet0;
- $367 = $358 | $365;
- $368 = $362 | $366;
- $369 = $370&255;
- $371 = (_bitshift64Shl(($369|0),0,16)|0);
- $372 = tempRet0;
- $373 = $367 | $371;
- $374 = $368 | $372;
- $375 = $376&255;
- $377 = (_bitshift64Shl(($375|0),0,8)|0);
- $378 = tempRet0;
- $379 = $373 | $377;
- $380 = $374 | $378;
- $381 = $382&255;
- $383 = $379 | $381;
- $384 = (_bitshift64Ashr(($306|0),($307|0),63)|0);
- $385 = tempRet0;
- $386 = (_bitshift64Shl(($343|0),($340|0),1)|0);
- $387 = tempRet0;
- $388 = (_bitshift64Lshr(($344|0),0,7)|0);
- $389 = tempRet0;
- $390 = $386 | $388;
- $387 | $389;
- $391 = (_bitshift64Shl(($383|0),($380|0),1)|0);
- $392 = tempRet0;
- $393 = $384 & 135;
- $394 = $391 ^ $393;
- $395 = (_bitshift64Lshr(($312|0),($313|0),55)|0);
- $396 = tempRet0;
- $397 = $395&255;
- HEAP8[$249>>0] = $397;
- $398 = (_bitshift64Lshr(($318|0),($319|0),47)|0);
- $399 = tempRet0;
- $400 = $398&255;
- HEAP8[$$pre$phi242Z2D>>0] = $400;
- $401 = (_bitshift64Lshr(($318|0),($322|0),39)|0);
- $402 = tempRet0;
- $403 = $401&255;
- HEAP8[$$pre$phi244Z2D>>0] = $403;
- $404 = (_bitshift64Lshr(($327|0),($328|0),31)|0);
- $405 = tempRet0;
- $406 = $404&255;
- HEAP8[$$pre$phi246Z2D>>0] = $406;
- $407 = (_bitshift64Lshr(($333|0),($334|0),23)|0);
- $408 = tempRet0;
- $409 = $407&255;
- HEAP8[$$pre$phi249Z2D>>0] = $409;
- $410 = (_bitshift64Lshr(($339|0),($340|0),15)|0);
- $411 = tempRet0;
- $412 = $410&255;
- HEAP8[$$pre$phi251Z2D>>0] = $412;
- $413 = (_bitshift64Lshr(($343|0),($340|0),7)|0);
- $414 = tempRet0;
- $415 = $413&255;
- HEAP8[$$pre$phi253Z2D>>0] = $415;
- $416 = $390&255;
- HEAP8[$$pre$phi255Z2D>>0] = $416;
- $417 = (_bitshift64Lshr(($352|0),($353|0),55)|0);
- $418 = tempRet0;
- $419 = $417&255;
- HEAP8[$$pre$phi258Z2D>>0] = $419;
- $420 = (_bitshift64Lshr(($358|0),($359|0),47)|0);
- $421 = tempRet0;
- $422 = $420&255;
- HEAP8[$$pre$phi260Z2D>>0] = $422;
- $423 = (_bitshift64Lshr(($358|0),($362|0),39)|0);
- $424 = tempRet0;
- $425 = $423&255;
- HEAP8[$$pre$phi262Z2D>>0] = $425;
- $426 = (_bitshift64Lshr(($367|0),($368|0),31)|0);
- $427 = tempRet0;
- $428 = $426&255;
- HEAP8[$$pre$phi264Z2D>>0] = $428;
- $429 = (_bitshift64Lshr(($373|0),($374|0),23)|0);
- $430 = tempRet0;
- $431 = $429&255;
- HEAP8[$$pre$phi267Z2D>>0] = $431;
- $432 = (_bitshift64Lshr(($379|0),($380|0),15)|0);
- $433 = tempRet0;
- $434 = $432&255;
- HEAP8[$$pre$phi269Z2D>>0] = $434;
- $435 = (_bitshift64Lshr(($383|0),($380|0),7)|0);
- $436 = tempRet0;
- $437 = $435&255;
- HEAP8[$$pre$phi271Z2D>>0] = $437;
- $438 = $394&255;
- HEAP8[$$pre$phi273Z2D>>0] = $438;
- $$0121179 = 1;
- while(1) {
-  $439 = (($249) + ($$0121179<<4)|0);
-  $440 = (($$0121179) + -1)|0;
-  $441 = (($249) + ($440<<4)|0);
-  $442 = $439;
-  $443 = $441;
-  $444 = $443 | $442;
-  $445 = $444 & 3;
-  $446 = ($445|0)==(0);
-  if ($446) {
-   $447 = (((($249) + ($440<<4)|0)) + 4|0);
-   $448 = HEAP32[$441>>2]|0;
-   $449 = (((($249) + ($$0121179<<4)|0)) + 4|0);
-   HEAP32[$439>>2] = $448;
-   $450 = (((($249) + ($440<<4)|0)) + 8|0);
-   $451 = HEAP32[$447>>2]|0;
-   $452 = (((($249) + ($$0121179<<4)|0)) + 8|0);
-   HEAP32[$449>>2] = $451;
-   $453 = (((($249) + ($440<<4)|0)) + 12|0);
-   $454 = HEAP32[$450>>2]|0;
-   $455 = (((($249) + ($$0121179<<4)|0)) + 12|0);
-   HEAP32[$452>>2] = $454;
-   $456 = HEAP32[$453>>2]|0;
-   HEAP32[$455>>2] = $456;
-   $457 = $448&255;
-   $$phi$trans$insert = (((($249) + ($$0121179<<4)|0)) + 1|0);
-   $$pre = HEAP8[$$phi$trans$insert>>0]|0;
-   $$phi$trans$insert193 = (((($249) + ($$0121179<<4)|0)) + 2|0);
-   $$pre194 = HEAP8[$$phi$trans$insert193>>0]|0;
-   $$phi$trans$insert195 = (((($249) + ($$0121179<<4)|0)) + 3|0);
-   $$pre196 = HEAP8[$$phi$trans$insert195>>0]|0;
-   $458 = $451&255;
-   $$phi$trans$insert197 = (((($249) + ($$0121179<<4)|0)) + 5|0);
-   $$pre198 = HEAP8[$$phi$trans$insert197>>0]|0;
-   $$phi$trans$insert199 = (((($249) + ($$0121179<<4)|0)) + 6|0);
-   $$pre200 = HEAP8[$$phi$trans$insert199>>0]|0;
-   $$phi$trans$insert201 = (((($249) + ($$0121179<<4)|0)) + 7|0);
-   $$pre202 = HEAP8[$$phi$trans$insert201>>0]|0;
-   $459 = $454&255;
-   $$phi$trans$insert203 = (((($249) + ($$0121179<<4)|0)) + 9|0);
-   $$pre204 = HEAP8[$$phi$trans$insert203>>0]|0;
-   $$phi$trans$insert205 = (((($249) + ($$0121179<<4)|0)) + 10|0);
-   $$pre206 = HEAP8[$$phi$trans$insert205>>0]|0;
-   $$phi$trans$insert207 = (((($249) + ($$0121179<<4)|0)) + 11|0);
-   $$pre208 = HEAP8[$$phi$trans$insert207>>0]|0;
-   $460 = $456&255;
-   $$phi$trans$insert209 = (((($249) + ($$0121179<<4)|0)) + 13|0);
-   $$pre210 = HEAP8[$$phi$trans$insert209>>0]|0;
-   $$phi$trans$insert211 = (((($249) + ($$0121179<<4)|0)) + 14|0);
-   $$pre212 = HEAP8[$$phi$trans$insert211>>0]|0;
-   $$phi$trans$insert213 = (((($249) + ($$0121179<<4)|0)) + 15|0);
-   $$pre214 = HEAP8[$$phi$trans$insert213>>0]|0;
-   $$pre$phi274Z2D = $$phi$trans$insert;$$pre$phi275Z2D = 
$$phi$trans$insert193;$$pre$phi276Z2D = $$phi$trans$insert195;$$pre$phi277Z2D = 
$449;$$pre$phi278Z2D = $$phi$trans$insert197;$$pre$phi279Z2D = 
$$phi$trans$insert199;$$pre$phi280Z2D = $$phi$trans$insert201;$$pre$phi281Z2D = 
$452;$$pre$phi282Z2D = $$phi$trans$insert203;$$pre$phi283Z2D = 
$$phi$trans$insert205;$$pre$phi284Z2D = $$phi$trans$insert207;$$pre$phi285Z2D = 
$455;$$pre$phi286Z2D = $$phi$trans$insert209;$$pre$phi287Z2D = $$phi [...]
-  } else {
-   $461 = (((($249) + ($440<<4)|0)) + 1|0);
-   $462 = HEAP8[$441>>0]|0;
-   $463 = (((($249) + ($$0121179<<4)|0)) + 1|0);
-   HEAP8[$439>>0] = $462;
-   $464 = (((($249) + ($440<<4)|0)) + 2|0);
-   $465 = HEAP8[$461>>0]|0;
-   $466 = (((($249) + ($$0121179<<4)|0)) + 2|0);
-   HEAP8[$463>>0] = $465;
-   $467 = (((($249) + ($440<<4)|0)) + 3|0);
-   $468 = HEAP8[$464>>0]|0;
-   $469 = (((($249) + ($$0121179<<4)|0)) + 3|0);
-   HEAP8[$466>>0] = $468;
-   $470 = (((($249) + ($440<<4)|0)) + 4|0);
-   $471 = HEAP8[$467>>0]|0;
-   $472 = (((($249) + ($$0121179<<4)|0)) + 4|0);
-   HEAP8[$469>>0] = $471;
-   $473 = (((($249) + ($440<<4)|0)) + 5|0);
-   $474 = HEAP8[$470>>0]|0;
-   $475 = (((($249) + ($$0121179<<4)|0)) + 5|0);
-   HEAP8[$472>>0] = $474;
-   $476 = (((($249) + ($440<<4)|0)) + 6|0);
-   $477 = HEAP8[$473>>0]|0;
-   $478 = (((($249) + ($$0121179<<4)|0)) + 6|0);
-   HEAP8[$475>>0] = $477;
-   $479 = (((($249) + ($440<<4)|0)) + 7|0);
-   $480 = HEAP8[$476>>0]|0;
-   $481 = (((($249) + ($$0121179<<4)|0)) + 7|0);
-   HEAP8[$478>>0] = $480;
-   $482 = (((($249) + ($440<<4)|0)) + 8|0);
-   $483 = HEAP8[$479>>0]|0;
-   $484 = (((($249) + ($$0121179<<4)|0)) + 8|0);
-   HEAP8[$481>>0] = $483;
-   $485 = (((($249) + ($440<<4)|0)) + 9|0);
-   $486 = HEAP8[$482>>0]|0;
-   $487 = (((($249) + ($$0121179<<4)|0)) + 9|0);
-   HEAP8[$484>>0] = $486;
-   $488 = (((($249) + ($440<<4)|0)) + 10|0);
-   $489 = HEAP8[$485>>0]|0;
-   $490 = (((($249) + ($$0121179<<4)|0)) + 10|0);
-   HEAP8[$487>>0] = $489;
-   $491 = (((($249) + ($440<<4)|0)) + 11|0);
-   $492 = HEAP8[$488>>0]|0;
-   $493 = (((($249) + ($$0121179<<4)|0)) + 11|0);
-   HEAP8[$490>>0] = $492;
-   $494 = (((($249) + ($440<<4)|0)) + 12|0);
-   $495 = HEAP8[$491>>0]|0;
-   $496 = (((($249) + ($$0121179<<4)|0)) + 12|0);
-   HEAP8[$493>>0] = $495;
-   $497 = (((($249) + ($440<<4)|0)) + 13|0);
-   $498 = HEAP8[$494>>0]|0;
-   $499 = (((($249) + ($$0121179<<4)|0)) + 13|0);
-   HEAP8[$496>>0] = $498;
-   $500 = (((($249) + ($440<<4)|0)) + 14|0);
-   $501 = HEAP8[$497>>0]|0;
-   $502 = (((($249) + ($$0121179<<4)|0)) + 14|0);
-   HEAP8[$499>>0] = $501;
-   $503 = (((($249) + ($440<<4)|0)) + 15|0);
-   $504 = HEAP8[$500>>0]|0;
-   $505 = (((($249) + ($$0121179<<4)|0)) + 15|0);
-   HEAP8[$502>>0] = $504;
-   $506 = HEAP8[$503>>0]|0;
-   HEAP8[$505>>0] = $506;
-   $$pre$phi274Z2D = $463;$$pre$phi275Z2D = $466;$$pre$phi276Z2D = 
$469;$$pre$phi277Z2D = $472;$$pre$phi278Z2D = $475;$$pre$phi279Z2D = 
$478;$$pre$phi280Z2D = $481;$$pre$phi281Z2D = $484;$$pre$phi282Z2D = 
$487;$$pre$phi283Z2D = $490;$$pre$phi284Z2D = $493;$$pre$phi285Z2D = 
$496;$$pre$phi286Z2D = $499;$$pre$phi287Z2D = $502;$$pre$phi288Z2D = $505;$508 
= $462;$512 = $465;$518 = $468;$524 = $471;$527 = $474;$533 = $477;$539 = 
$480;$545 = $483;$548 = $486;$552 = $489;$558 = $492;$564 = $495; [...]
-  }
-  $507 = $508&255;
-  $509 = (_bitshift64Shl(($507|0),0,56)|0);
-  $510 = tempRet0;
-  $511 = $512&255;
-  $513 = (_bitshift64Shl(($511|0),0,48)|0);
-  $514 = tempRet0;
-  $515 = $513 | $509;
-  $516 = $514 | $510;
-  $517 = $518&255;
-  $519 = (_bitshift64Shl(($517|0),0,40)|0);
-  $520 = tempRet0;
-  $521 = $515 | $519;
-  $522 = $516 | $520;
-  $523 = $524&255;
-  $525 = $522 | $523;
-  $526 = $527&255;
-  $528 = (_bitshift64Shl(($526|0),0,24)|0);
-  $529 = tempRet0;
-  $530 = $521 | $528;
-  $531 = $525 | $529;
-  $532 = $533&255;
-  $534 = (_bitshift64Shl(($532|0),0,16)|0);
-  $535 = tempRet0;
-  $536 = $530 | $534;
-  $537 = $531 | $535;
-  $538 = $539&255;
-  $540 = (_bitshift64Shl(($538|0),0,8)|0);
-  $541 = tempRet0;
-  $542 = $536 | $540;
-  $543 = $537 | $541;
-  $544 = $545&255;
-  $546 = $542 | $544;
-  $547 = $548&255;
-  $549 = (_bitshift64Shl(($547|0),0,56)|0);
-  $550 = tempRet0;
-  $551 = $552&255;
-  $553 = (_bitshift64Shl(($551|0),0,48)|0);
-  $554 = tempRet0;
-  $555 = $553 | $549;
-  $556 = $554 | $550;
-  $557 = $558&255;
-  $559 = (_bitshift64Shl(($557|0),0,40)|0);
-  $560 = tempRet0;
-  $561 = $555 | $559;
-  $562 = $556 | $560;
-  $563 = $564&255;
-  $565 = $562 | $563;
-  $566 = $567&255;
-  $568 = (_bitshift64Shl(($566|0),0,24)|0);
-  $569 = tempRet0;
-  $570 = $561 | $568;
-  $571 = $565 | $569;
-  $572 = $573&255;
-  $574 = (_bitshift64Shl(($572|0),0,16)|0);
-  $575 = tempRet0;
-  $576 = $570 | $574;
-  $577 = $571 | $575;
-  $578 = $579&255;
-  $580 = (_bitshift64Shl(($578|0),0,8)|0);
-  $581 = tempRet0;
-  $582 = $576 | $580;
-  $583 = $577 | $581;
-  $584 = $585&255;
-  $586 = $582 | $584;
-  $587 = (_bitshift64Ashr(($509|0),($510|0),63)|0);
-  $588 = tempRet0;
-  $589 = (_bitshift64Shl(($546|0),($543|0),1)|0);
-  $590 = tempRet0;
-  $591 = (_bitshift64Lshr(($547|0),0,7)|0);
-  $592 = tempRet0;
-  $593 = $589 | $591;
-  $590 | $592;
-  $594 = (_bitshift64Shl(($586|0),($583|0),1)|0);
-  $595 = tempRet0;
-  $596 = $587 & 135;
-  $597 = $594 ^ $596;
-  $598 = (_bitshift64Lshr(($515|0),($516|0),55)|0);
-  $599 = tempRet0;
-  $600 = $598&255;
-  HEAP8[$439>>0] = $600;
-  $601 = (_bitshift64Lshr(($521|0),($522|0),47)|0);
-  $602 = tempRet0;
-  $603 = $601&255;
-  HEAP8[$$pre$phi274Z2D>>0] = $603;
-  $604 = (_bitshift64Lshr(($521|0),($525|0),39)|0);
-  $605 = tempRet0;
-  $606 = $604&255;
-  HEAP8[$$pre$phi275Z2D>>0] = $606;
-  $607 = (_bitshift64Lshr(($530|0),($531|0),31)|0);
-  $608 = tempRet0;
-  $609 = $607&255;
-  HEAP8[$$pre$phi276Z2D>>0] = $609;
-  $610 = (_bitshift64Lshr(($536|0),($537|0),23)|0);
-  $611 = tempRet0;
-  $612 = $610&255;
-  HEAP8[$$pre$phi277Z2D>>0] = $612;
-  $613 = (_bitshift64Lshr(($542|0),($543|0),15)|0);
-  $614 = tempRet0;
-  $615 = $613&255;
-  HEAP8[$$pre$phi278Z2D>>0] = $615;
-  $616 = (_bitshift64Lshr(($546|0),($543|0),7)|0);
-  $617 = tempRet0;
-  $618 = $616&255;
-  HEAP8[$$pre$phi279Z2D>>0] = $618;
-  $619 = $593&255;
-  HEAP8[$$pre$phi280Z2D>>0] = $619;
-  $620 = (_bitshift64Lshr(($555|0),($556|0),55)|0);
-  $621 = tempRet0;
-  $622 = $620&255;
-  HEAP8[$$pre$phi281Z2D>>0] = $622;
-  $623 = (_bitshift64Lshr(($561|0),($562|0),47)|0);
-  $624 = tempRet0;
-  $625 = $623&255;
-  HEAP8[$$pre$phi282Z2D>>0] = $625;
-  $626 = (_bitshift64Lshr(($561|0),($565|0),39)|0);
-  $627 = tempRet0;
-  $628 = $626&255;
-  HEAP8[$$pre$phi283Z2D>>0] = $628;
-  $629 = (_bitshift64Lshr(($570|0),($571|0),31)|0);
-  $630 = tempRet0;
-  $631 = $629&255;
-  HEAP8[$$pre$phi284Z2D>>0] = $631;
-  $632 = (_bitshift64Lshr(($576|0),($577|0),23)|0);
-  $633 = tempRet0;
-  $634 = $632&255;
-  HEAP8[$$pre$phi285Z2D>>0] = $634;
-  $635 = (_bitshift64Lshr(($582|0),($583|0),15)|0);
-  $636 = tempRet0;
-  $637 = $635&255;
-  HEAP8[$$pre$phi286Z2D>>0] = $637;
-  $638 = (_bitshift64Lshr(($586|0),($583|0),7)|0);
-  $639 = tempRet0;
-  $640 = $638&255;
-  HEAP8[$$pre$phi287Z2D>>0] = $640;
-  $641 = $597&255;
-  HEAP8[$$pre$phi288Z2D>>0] = $641;
-  $642 = (($$0121179) + 1)|0;
-  $exitcond = ($642|0)==(16);
-  if ($exitcond) {
-   break;
-  } else {
-   $$0121179 = $642;
-  }
- }
- $643 = (16 - ($2))|0;
- _memset(($3|0),0,($643|0))|0;
- $644 = (($3) + ($643)|0);
- $645 = $644;
- $646 = $1;
- $647 = $645 | $646;
- $648 = $647 & 3;
- $649 = ($648|0)==(0);
- $650 = ($2>>>0)>(3);
- $or$cond$i = $650 & $649;
- if ($or$cond$i) {
-  $651 = (($2) + -4)|0;
-  $652 = $651 & -4;
-  $653 = (($652) + 4)|0;
-  $scevgep$i143 = (($1) + ($653)|0);
-  $$02434$i146 = $1;$$02533$i147 = $644;$$035$i145 = $2;
-  while(1) {
-   $654 = ((($$02434$i146)) + 4|0);
-   $655 = HEAP32[$$02434$i146>>2]|0;
-   $656 = ((($$02533$i147)) + 4|0);
-   HEAP32[$$02533$i147>>2] = $655;
-   $657 = (($$035$i145) + -4)|0;
-   $658 = ($657>>>0)>(3);
-   if ($658) {
-    $$02434$i146 = $654;$$02533$i147 = $656;$$035$i145 = $657;
-   } else {
-    break;
-   }
-  }
-  $scevgep44$i144 = (($644) + ($653)|0);
-  $659 = (($651) - ($652))|0;
-  $$026$i = $scevgep$i143;$$028$i = $scevgep44$i144;$$1$i149 = $659;
- } else {
-  $$026$i = $1;$$028$i = $644;$$1$i149 = $2;
- }
- $660 = ($$1$i149|0)==(0);
- if (!($660)) {
-  $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i149;
-  while(1) {
-   $661 = ((($$12731$i)) + 1|0);
-   $662 = HEAP8[$$12731$i>>0]|0;
-   $663 = ((($$12930$i)) + 1|0);
-   HEAP8[$$12930$i>>0] = $662;
-   $664 = (($$232$i) + -1)|0;
-   $665 = ($664|0)==(0);
-   if ($665) {
-    break;
-   } else {
-    $$12731$i = $661;$$12930$i = $663;$$232$i = $664;
-   }
-  }
- }
- $666 = HEAP8[$10>>0]|0;
- $667 = $666&255;
- $668 = $667 << 4;
- $669 = $668&255;
- HEAP8[$3>>0] = $669;
- $670 = (($643) + -1)|0;
- $671 = (($3) + ($670)|0);
- $672 = HEAP8[$671>>0]|0;
- $673 = $672 | 1;
- HEAP8[$671>>0] = $673;
- $674 = ((($3)) + 15|0);
- $675 = HEAP8[$674>>0]|0;
- $676 = $675&255;
- $677 = $676 & 192;
- $678 = $677&255;
- HEAP8[$674>>0] = $678;
- $679 = HEAP32[$12>>2]|0;
- $680 = ((($679)) + 36|0);
- $681 = HEAP32[$680>>2]|0;
- $682 = (FUNCTION_TABLE_iiii[$681 & 127]($22,$3,$3)|0);
- $683 = ($682>>>0)>($23>>>0);
- $684 = ((($3)) + 4|0);
- $685 = HEAP32[$3>>2]|0;
- $686 = ((($4)) + 4|0);
- HEAP32[$4>>2] = $685;
- $687 = ((($3)) + 8|0);
- $688 = HEAP32[$684>>2]|0;
- $689 = ((($4)) + 8|0);
- HEAP32[$686>>2] = $688;
- $690 = ((($3)) + 12|0);
- $691 = HEAP32[$687>>2]|0;
- $692 = ((($4)) + 12|0);
- HEAP32[$689>>2] = $691;
- $693 = HEAP32[$690>>2]|0;
- HEAP32[$692>>2] = $693;
- $694 = $683 ? $682 : $23;
- $695 = ((($4)) + 16|0);
- $696 = ((($3)) + 1|0);
- $697 = $696;
- $698 = $697 & 3;
- $699 = ($698|0)==(0);
- $700 = $688&255;
- if ($699) {
-  $701 = ((($3)) + 5|0);
-  $702 = HEAP32[$696>>2]|0;
-  $703 = $702 ^ $685;
-  $704 = ((($4)) + 20|0);
-  HEAP32[$695>>2] = $703;
-  $705 = HEAP32[$701>>2]|0;
-  $706 = $705 ^ $688;
-  HEAP32[$704>>2] = $706;
- } else {
-  $707 = $685&255;
-  $708 = ((($3)) + 2|0);
-  $709 = HEAP8[$696>>0]|0;
-  $710 = $709 ^ $707;
-  $711 = ((($4)) + 17|0);
-  HEAP8[$695>>0] = $710;
-  $712 = ((($3)) + 3|0);
-  $713 = HEAP8[$708>>0]|0;
-  $714 = $713 ^ $709;
-  $715 = ((($4)) + 18|0);
-  HEAP8[$711>>0] = $714;
-  $716 = HEAP8[$712>>0]|0;
-  $717 = $716 ^ $713;
-  $718 = ((($4)) + 19|0);
-  HEAP8[$715>>0] = $717;
-  $719 = ((($3)) + 5|0);
-  $720 = $716 ^ $700;
-  $721 = ((($4)) + 20|0);
-  HEAP8[$718>>0] = $720;
-  $722 = ((($3)) + 6|0);
-  $723 = HEAP8[$719>>0]|0;
-  $724 = $723 ^ $700;
-  $725 = ((($4)) + 21|0);
-  HEAP8[$721>>0] = $724;
-  $726 = ((($3)) + 7|0);
-  $727 = HEAP8[$722>>0]|0;
-  $728 = $727 ^ $723;
-  $729 = ((($4)) + 22|0);
-  HEAP8[$725>>0] = $728;
-  $730 = ((($3)) + 8|0);
-  $731 = HEAP8[$726>>0]|0;
-  $732 = $731 ^ $727;
-  $733 = ((($4)) + 23|0);
-  HEAP8[$729>>0] = $732;
-  $734 = HEAP8[$730>>0]|0;
-  $735 = $734 ^ $731;
-  HEAP8[$733>>0] = $735;
- }
- $736 = ((($0)) + 64|0);
- $737 = $676 >>> 3;
- $738 = $737 & 7;
- $739 = (($4) + ($738)|0);
- $740 = $676 & 7;
- $741 = ($740|0)==(0);
- if ($741) {
-  $869 = HEAP8[$739>>0]|0;
-  HEAP8[$736>>0] = $869;
-  $870 = ((($736)) + 1|0);
-  $871 = ((($739)) + 1|0);
-  $872 = HEAP8[$871>>0]|0;
-  HEAP8[$870>>0] = $872;
-  $873 = ((($736)) + 2|0);
-  $874 = ((($739)) + 2|0);
-  $875 = HEAP8[$874>>0]|0;
-  HEAP8[$873>>0] = $875;
-  $876 = ((($736)) + 3|0);
-  $877 = ((($739)) + 3|0);
-  $878 = HEAP8[$877>>0]|0;
-  HEAP8[$876>>0] = $878;
-  $879 = ((($736)) + 4|0);
-  $880 = ((($739)) + 4|0);
-  $881 = HEAP8[$880>>0]|0;
-  HEAP8[$879>>0] = $881;
-  $882 = ((($736)) + 5|0);
-  $883 = ((($739)) + 5|0);
-  $884 = HEAP8[$883>>0]|0;
-  HEAP8[$882>>0] = $884;
-  $885 = ((($736)) + 6|0);
-  $886 = ((($739)) + 6|0);
-  $887 = HEAP8[$886>>0]|0;
-  HEAP8[$885>>0] = $887;
-  $888 = ((($736)) + 7|0);
-  $889 = ((($739)) + 7|0);
-  $890 = HEAP8[$889>>0]|0;
-  HEAP8[$888>>0] = $890;
-  $891 = ((($0)) + 72|0);
-  $892 = ((($739)) + 8|0);
-  $893 = HEAP8[$892>>0]|0;
-  HEAP8[$891>>0] = $893;
-  $894 = ((($0)) + 73|0);
-  $895 = ((($739)) + 9|0);
-  $896 = HEAP8[$895>>0]|0;
-  HEAP8[$894>>0] = $896;
-  $897 = ((($0)) + 74|0);
-  $898 = ((($739)) + 10|0);
-  $899 = HEAP8[$898>>0]|0;
-  HEAP8[$897>>0] = $899;
-  $900 = ((($0)) + 75|0);
-  $901 = ((($739)) + 11|0);
-  $902 = HEAP8[$901>>0]|0;
-  HEAP8[$900>>0] = $902;
-  $903 = ((($0)) + 76|0);
-  $904 = ((($739)) + 12|0);
-  $905 = HEAP8[$904>>0]|0;
-  HEAP8[$903>>0] = $905;
-  $906 = ((($739)) + 13|0);
-  $907 = HEAP8[$906>>0]|0;
-  $908 = ((($739)) + 14|0);
-  $909 = HEAP8[$908>>0]|0;
-  $910 = ((($739)) + 15|0);
-  $911 = HEAP8[$910>>0]|0;
-  $$sink = $911;$$sink191 = $909;$$sink192 = $907;
- } else {
-  $742 = (8 - ($740))|0;
-  $743 = HEAP8[$739>>0]|0;
-  $744 = $743&255;
-  $745 = $744 << $740;
-  $746 = ((($739)) + 1|0);
-  $747 = HEAP8[$746>>0]|0;
-  $748 = $747&255;
-  $749 = $748 >>> $742;
-  $750 = $749 | $745;
-  $751 = $750&255;
-  HEAP8[$736>>0] = $751;
-  $752 = ((($736)) + 1|0);
-  $753 = $748 << $740;
-  $754 = ((($739)) + 2|0);
-  $755 = HEAP8[$754>>0]|0;
-  $756 = $755&255;
-  $757 = $756 >>> $742;
-  $758 = $757 | $753;
-  $759 = $758&255;
-  HEAP8[$752>>0] = $759;
-  $760 = ((($736)) + 2|0);
-  $761 = $756 << $740;
-  $762 = ((($739)) + 3|0);
-  $763 = HEAP8[$762>>0]|0;
-  $764 = $763&255;
-  $765 = $764 >>> $742;
-  $766 = $765 | $761;
-  $767 = $766&255;
-  HEAP8[$760>>0] = $767;
-  $768 = ((($736)) + 3|0);
-  $769 = $764 << $740;
-  $770 = ((($739)) + 4|0);
-  $771 = HEAP8[$770>>0]|0;
-  $772 = $771&255;
-  $773 = $772 >>> $742;
-  $774 = $773 | $769;
-  $775 = $774&255;
-  HEAP8[$768>>0] = $775;
-  $776 = ((($736)) + 4|0);
-  $777 = $772 << $740;
-  $778 = ((($739)) + 5|0);
-  $779 = HEAP8[$778>>0]|0;
-  $780 = $779&255;
-  $781 = $780 >>> $742;
-  $782 = $781 | $777;
-  $783 = $782&255;
-  HEAP8[$776>>0] = $783;
-  $784 = ((($736)) + 5|0);
-  $785 = $780 << $740;
-  $786 = ((($739)) + 6|0);
-  $787 = HEAP8[$786>>0]|0;
-  $788 = $787&255;
-  $789 = $788 >>> $742;
-  $790 = $789 | $785;
-  $791 = $790&255;
-  HEAP8[$784>>0] = $791;
-  $792 = ((($736)) + 6|0);
-  $793 = $788 << $740;
-  $794 = ((($739)) + 7|0);
-  $795 = HEAP8[$794>>0]|0;
-  $796 = $795&255;
-  $797 = $796 >>> $742;
-  $798 = $797 | $793;
-  $799 = $798&255;
-  HEAP8[$792>>0] = $799;
-  $800 = ((($736)) + 7|0);
-  $801 = $796 << $740;
-  $802 = ((($739)) + 8|0);
-  $803 = HEAP8[$802>>0]|0;
-  $804 = $803&255;
-  $805 = $804 >>> $742;
-  $806 = $805 | $801;
-  $807 = $806&255;
-  HEAP8[$800>>0] = $807;
-  $808 = ((($0)) + 72|0);
-  $809 = $804 << $740;
-  $810 = ((($739)) + 9|0);
-  $811 = HEAP8[$810>>0]|0;
-  $812 = $811&255;
-  $813 = $812 >>> $742;
-  $814 = $813 | $809;
-  $815 = $814&255;
-  HEAP8[$808>>0] = $815;
-  $816 = ((($0)) + 73|0);
-  $817 = $812 << $740;
-  $818 = ((($739)) + 10|0);
-  $819 = HEAP8[$818>>0]|0;
-  $820 = $819&255;
-  $821 = $820 >>> $742;
-  $822 = $821 | $817;
-  $823 = $822&255;
-  HEAP8[$816>>0] = $823;
-  $824 = ((($0)) + 74|0);
-  $825 = $820 << $740;
-  $826 = ((($739)) + 11|0);
-  $827 = HEAP8[$826>>0]|0;
-  $828 = $827&255;
-  $829 = $828 >>> $742;
-  $830 = $829 | $825;
-  $831 = $830&255;
-  HEAP8[$824>>0] = $831;
-  $832 = ((($0)) + 75|0);
-  $833 = $828 << $740;
-  $834 = ((($739)) + 12|0);
-  $835 = HEAP8[$834>>0]|0;
-  $836 = $835&255;
-  $837 = $836 >>> $742;
-  $838 = $837 | $833;
-  $839 = $838&255;
-  HEAP8[$832>>0] = $839;
-  $840 = ((($0)) + 76|0);
-  $841 = $836 << $740;
-  $842 = ((($739)) + 13|0);
-  $843 = HEAP8[$842>>0]|0;
-  $844 = $843&255;
-  $845 = $844 >>> $742;
-  $846 = $845 | $841;
-  $847 = $846&255;
-  HEAP8[$840>>0] = $847;
-  $848 = $844 << $740;
-  $849 = ((($739)) + 14|0);
-  $850 = HEAP8[$849>>0]|0;
-  $851 = $850&255;
-  $852 = $851 >>> $742;
-  $853 = $852 | $848;
-  $854 = $853&255;
-  $855 = $851 << $740;
-  $856 = ((($739)) + 15|0);
-  $857 = HEAP8[$856>>0]|0;
-  $858 = $857&255;
-  $859 = $858 >>> $742;
-  $860 = $859 | $855;
-  $861 = $860&255;
-  $862 = $858 << $740;
-  $863 = ((($739)) + 16|0);
-  $864 = HEAP8[$863>>0]|0;
-  $865 = $864&255;
-  $866 = $865 >>> $742;
-  $867 = $866 | $862;
-  $868 = $867&255;
-  $$sink = $868;$$sink191 = $861;$$sink192 = $854;
- }
- $912 = ((($0)) + 77|0);
- HEAP8[$912>>0] = $$sink192;
- $913 = ((($0)) + 78|0);
- HEAP8[$913>>0] = $$sink191;
- $914 = ((($0)) + 79|0);
- HEAP8[$914>>0] = $$sink;
- $915 = HEAP8[$5>>0]|0;
- $916 = ((($0)) + 80|0);
- $917 = ((($0)) + 432|0);
- $918 = $915 & -15;
- $919 = $918 | 2;
- dest=$916; stop=dest+36|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- 
;HEAP32[$917>>2]=0|0;HEAP32[$917+4>>2]=0|0;HEAP32[$917+8>>2]=0|0;HEAP32[$917+12>>2]=0|0;HEAP32[$917+16>>2]=0|0;HEAP32[$917+20>>2]=0|0;HEAP32[$917+24>>2]=0|0;HEAP32[$917+28>>2]=0|0;
- HEAP8[$5>>0] = $919;
- $920 = ((($0)) + 464|0);
- $921 = ((($9)) + 353|0);
- 
;HEAP32[$920>>2]=0|0;HEAP32[$920+4>>2]=0|0;HEAP32[$920+8>>2]=0|0;HEAP32[$920+12>>2]=0|0;
- $922 = HEAP8[$921>>0]|0;
- $923 = $922 & -4;
- HEAP8[$921>>0] = $923;
- $924 = $3;
- $925 = $924;
- HEAP32[$925>>2] = 0;
- $926 = (($924) + 4)|0;
- $927 = $926;
- HEAP32[$927>>2] = 0;
- $928 = ((($3)) + 8|0);
- $929 = $928;
- $930 = $929;
- HEAP32[$930>>2] = 0;
- $931 = (($929) + 4)|0;
- $932 = $931;
- HEAP32[$932>>2] = 0;
- $933 = $4;
- $934 = $933;
- HEAP32[$934>>2] = 0;
- $935 = (($933) + 4)|0;
- $936 = $935;
- HEAP32[$936>>2] = 0;
- $937 = ((($4)) + 8|0);
- $938 = $937;
- $939 = $938;
- HEAP32[$939>>2] = 0;
- $940 = (($938) + 4)|0;
- $941 = $940;
- HEAP32[$941>>2] = 0;
- $942 = ((($4)) + 16|0);
- $943 = $942;
- $944 = $943;
- HEAP32[$944>>2] = 0;
- $945 = (($943) + 4)|0;
- $946 = $945;
- HEAP32[$946>>2] = 0;
- $947 = ($694|0)==(0);
- if ($947) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $948 = (($694) + 16)|0;
- ___gcry_burn_stack($948);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_ocb_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (_ocb_crypt($0,1,$1,$2,$3,$4)|0);
- return ($5|0);
-}
-function _ocb_crypt($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$0108$lcssa = 0, $$0108251 = 0, $$02434$i = 0, $$02434$i161 = 
0, $$02434$i221 = 0, $$02533$i = 0, $$02533$i162 = 0, $$02533$i222 = 0, $$026$i 
= 0, $$028$i = 0, $$03449$i195 = 0, $$035$i = 0, $$035$i160 = 0, $$035$i220 = 
0, $$03548$i196 = 0, $$03647$i197 = 0, $$037$i201 = 0, $$039$i200 = 0, 
$$041$i199 = 0;
- var $$050$i194 = 0, $$1 = 0, $$1$i153 = 0, $$1$i202 = 0, $$1110$lcssa = 0, 
$$1110250 = 0, $$1113$lcssa = 0, $$1113249 = 0, $$1116$lcssa = 0, $$1116248 = 
0, $$12731$i = 0, $$12731$i170 = 0, $$12731$i170$ph = 0, $$12731$i230 = 0, 
$$12731$i230$ph = 0, $$12930$i = 0, $$12930$i171 = 0, $$12930$i171$ph = 0, 
$$12930$i231 = 0, $$12930$i231$ph = 0;
- var $$13845$i206 = 0, $$14044$i207 = 0, $$14243$i208 = 0, $$2 = 0, $$2111 = 
0, $$2114 = 0, $$2117 = 0, $$232$i = 0, $$232$i169 = 0, $$232$i169$ph = 0, 
$$232$i229 = 0, $$232$i229$ph = 0, $$246$i205 = 0, $$3 = 0, $$in = 0, 
$$phi$trans$insert273 = 0, $$pre = 0, $$pre275 = 0, $10 = 0, $100 = 0;
- var $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 
0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, 
$1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0;
- var $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 
0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, 
$1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0;
- var $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 
0, $1043 = 0, $1044 = 0, $1045 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0;
- var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 
= 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0;
- var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, 
$139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, 
$146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0;
- var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, 
$157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, 
$164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0;
- var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 
= 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0;
- var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 
= 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 
= 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0;
- var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 
= 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 
= 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0;
- var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 
= 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 
= 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0;
- var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, 
$248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, 
$255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0;
- var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 
= 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 
= 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0;
- var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 
= 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 
= 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0;
- var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 
= 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 
= 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0;
- var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 
= 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 
= 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0;
- var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, 
$339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, 
$346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0;
- var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, 
$357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, 
$364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0;
- var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 
= 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 
= 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0;
- var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 
= 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $40 = 0, $400 
= 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0;
- var $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 
= 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 
= 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0;
- var $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 
= 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 
= 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0;
- var $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, 
$448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, 
$455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0;
- var $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 
= 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 
= 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0;
- var $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 
= 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 
= 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0;
- var $496 = 0, $497 = 0, $498 = 0, $499 = 0, $50 = 0, $500 = 0, $501 = 0, $502 
= 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 
= 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0;
- var $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 
= 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 
= 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0;
- var $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, 
$539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, 
$546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0;
- var $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, 
$557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, 
$564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0;
- var $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 
= 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 
= 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0;
- var $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 
= 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 
0, $600 = 0, $601 = 0, $602 = 0, $603 = 0;
- var $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 
= 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 
= 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0;
- var $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, 
$629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, 
$636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0;
- var $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, 
$647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, 
$654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0;
- var $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 
= 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 
= 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0;
- var $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 
= 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 
= 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0;
- var $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 
0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 
0, $709 = 0, $71 = 0, $710 = 0, $711 = 0;
- var $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, 
$719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, 
$726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0;
- var $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, 
$737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, 
$744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0;
- var $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 
= 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 
= 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0;
- var $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 
= 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 
= 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0;
- var $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 
= 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 
= 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0;
- var $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, 
$809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, 
$816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0;
- var $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, 
$827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, 
$834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0;
- var $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 
= 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 
= 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0;
- var $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 
= 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 
= 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0;
- var $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 
= 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 
= 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0;
- var $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 
= 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 
= 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0;
- var $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, 
$917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, 
$924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0;
- var $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 
= 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 
= 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0;
- var $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 
= 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 
= 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0;
- var $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 
= 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 
= 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0;
- var $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 
= 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 
= 0, $998 = 0, $999 = 0, $or$cond = 0, $or$cond$i = 0;
- var $or$cond$i156 = 0, $or$cond$i189 = 0, $or$cond$i216 = 0, $scevgep = 0, 
$scevgep$i152 = 0, $scevgep$i157 = 0, $scevgep$i190 = 0, $scevgep$i217 = 0, 
$scevgep272 = 0, $scevgep44$i = 0, $scevgep44$i158 = 0, $scevgep44$i218 = 0, 
$scevgep61$i191 = 0, $scevgep63$i192 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $6 = sp + 16|0;
- $7 = sp;
- $8 = $5 >>> 4;
- $9 = ((($0)) + 56|0);
- $10 = HEAP8[$9>>0]|0;
- $11 = $10 & 2;
- $12 = ($11<<24>>24)==(0);
- if ($12) {
-  $$0 = 156;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = ((($0)) + 128|0);
- $14 = ((($13)) + 353|0);
- $15 = HEAP8[$14>>0]|0;
- $16 = $15 & 1;
- $17 = ($16<<24>>24)==(0);
- if (!($17)) {
-  $$0 = 156;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = ((($0)) + 12|0);
- $19 = HEAP32[$18>>2]|0;
- $20 = ((($19)) + 20|0);
- $21 = HEAP32[$20>>2]|0;
- $22 = ($21|0)==(16);
- if (!($22)) {
-  $$0 = 12;
-  STACKTOP = sp;return ($$0|0);
- }
- $23 = ($3>>>0)<($5>>>0);
- if ($23) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $24 = $10 & 8;
- $25 = ($24<<24>>24)!=(0);
- $26 = $5 & 15;
- $27 = ($26|0)==(0);
- $or$cond = $27 | $25;
- if (!($or$cond)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- $28 = ($8|0)==(0);
- do {
-  if ($28) {
-   $$1 = 0;$$2111 = $5;$$2114 = $4;$$2117 = $2;
-  } else {
-   $29 = ((($0)) + 40|0);
-   $30 = HEAP32[$29>>2]|0;
-   $31 = ($30|0)==(0|0);
-   $32 = $5 & -16;
-   if (!($31)) {
-    $33 = (($5) - ($32))|0;
-    $34 = (($2) + ($32)|0);
-    $35 = (($4) + ($32)|0);
-    FUNCTION_TABLE_viiiii[$30 & 127]($0,$2,$4,$8,$1);
-    $$1 = 0;$$2111 = $33;$$2114 = $35;$$2117 = $34;
-    break;
-   }
-   $36 = ($1|0)!=(0);
-   $37 = ((($19)) + 36|0);
-   $38 = ((($19)) + 40|0);
-   $$in = $36 ? $37 : $38;
-   $39 = HEAP32[$$in>>2]|0;
-   if ($36) {
-    $40 = ((($0)) + 80|0);
-    _ocb_checksum($40,$4,$8);
-   }
-   $41 = ($5>>>0)>(15);
-   if ($41) {
-    $42 = ((($0)) + 464|0);
-    $43 = ((($0)) + 64|0);
-    $44 = $43;
-    $45 = ((($43)) + 4|0);
-    $46 = ((($0)) + 72|0);
-    $47 = ((($0)) + 76|0);
-    $48 = ((($0)) + 496|0);
-    $49 = (($5) + -16)|0;
-    $50 = $49 & -16;
-    $51 = (($50) + 16)|0;
-    $52 = (($49) - ($50))|0;
-    $53 = ((($43)) + 1|0);
-    $54 = ((($43)) + 2|0);
-    $55 = ((($43)) + 3|0);
-    $56 = ((($43)) + 4|0);
-    $57 = ((($43)) + 5|0);
-    $58 = ((($43)) + 6|0);
-    $59 = ((($43)) + 7|0);
-    $60 = ((($0)) + 72|0);
-    $61 = ((($0)) + 73|0);
-    $62 = ((($0)) + 74|0);
-    $63 = ((($0)) + 75|0);
-    $64 = ((($0)) + 76|0);
-    $65 = ((($0)) + 77|0);
-    $66 = ((($0)) + 78|0);
-    $67 = ((($0)) + 79|0);
-    $68 = ((($0)) + 72|0);
-    $69 = ((($43)) + 4|0);
-    $70 = ((($0)) + 76|0);
-    $71 = ((($43)) + 1|0);
-    $72 = ((($43)) + 2|0);
-    $73 = ((($43)) + 3|0);
-    $74 = ((($43)) + 4|0);
-    $75 = ((($43)) + 5|0);
-    $76 = ((($43)) + 6|0);
-    $77 = ((($43)) + 7|0);
-    $78 = ((($0)) + 72|0);
-    $79 = ((($0)) + 73|0);
-    $80 = ((($0)) + 74|0);
-    $81 = ((($0)) + 75|0);
-    $82 = ((($0)) + 76|0);
-    $83 = ((($0)) + 77|0);
-    $84 = ((($0)) + 78|0);
-    $85 = ((($0)) + 79|0);
-    $86 = ((($43)) + 1|0);
-    $87 = ((($43)) + 2|0);
-    $88 = ((($43)) + 3|0);
-    $89 = ((($43)) + 4|0);
-    $90 = ((($43)) + 5|0);
-    $91 = ((($43)) + 6|0);
-    $92 = ((($43)) + 7|0);
-    $93 = ((($0)) + 72|0);
-    $94 = ((($0)) + 73|0);
-    $95 = ((($0)) + 74|0);
-    $96 = ((($0)) + 75|0);
-    $97 = ((($0)) + 76|0);
-    $98 = ((($0)) + 77|0);
-    $99 = ((($0)) + 78|0);
-    $100 = ((($0)) + 79|0);
-    $$0108251 = 0;$$1110250 = $5;$$1113249 = $4;$$1116248 = $2;
-    while(1) {
-     $101 = $42;
-     $102 = $101;
-     $103 = HEAP32[$102>>2]|0;
-     $104 = (($101) + 4)|0;
-     $105 = $104;
-     $106 = HEAP32[$105>>2]|0;
-     $107 = (_i64Add(($103|0),($106|0),1,0)|0);
-     $108 = tempRet0;
-     $109 = $42;
-     $110 = $109;
-     HEAP32[$110>>2] = $107;
-     $111 = (($109) + 4)|0;
-     $112 = $111;
-     HEAP32[$112>>2] = $108;
-     $113 = (__gcry_cipher_ocb_get_l($0,$6,$107,$108)|0);
-     $114 = $113;
-     $115 = $114 | $44;
-     $116 = $115 & 3;
-     $117 = ($116|0)==(0);
-     if ($117) {
-      $118 = ((($113)) + 4|0);
-      $119 = HEAP32[$113>>2]|0;
-      $120 = HEAP32[$43>>2]|0;
-      $121 = $120 ^ $119;
-      HEAP32[$43>>2] = $121;
-      $122 = ((($113)) + 8|0);
-      $123 = HEAP32[$118>>2]|0;
-      $124 = HEAP32[$45>>2]|0;
-      $125 = $124 ^ $123;
-      HEAP32[$45>>2] = $125;
-      $126 = ((($113)) + 12|0);
-      $127 = HEAP32[$122>>2]|0;
-      $128 = HEAP32[$46>>2]|0;
-      $129 = $128 ^ $127;
-      HEAP32[$46>>2] = $129;
-      $130 = HEAP32[$126>>2]|0;
-      $131 = HEAP32[$47>>2]|0;
-      $132 = $131 ^ $130;
-      HEAP32[$47>>2] = $132;
-     } else {
-      $133 = ((($113)) + 1|0);
-      $134 = HEAP8[$113>>0]|0;
-      $135 = HEAP8[$43>>0]|0;
-      $136 = $135 ^ $134;
-      HEAP8[$43>>0] = $136;
-      $137 = ((($113)) + 2|0);
-      $138 = HEAP8[$133>>0]|0;
-      $139 = HEAP8[$53>>0]|0;
-      $140 = $139 ^ $138;
-      HEAP8[$53>>0] = $140;
-      $141 = ((($113)) + 3|0);
-      $142 = HEAP8[$137>>0]|0;
-      $143 = HEAP8[$54>>0]|0;
-      $144 = $143 ^ $142;
-      HEAP8[$54>>0] = $144;
-      $145 = ((($113)) + 4|0);
-      $146 = HEAP8[$141>>0]|0;
-      $147 = HEAP8[$55>>0]|0;
-      $148 = $147 ^ $146;
-      HEAP8[$55>>0] = $148;
-      $149 = ((($113)) + 5|0);
-      $150 = HEAP8[$145>>0]|0;
-      $151 = HEAP8[$56>>0]|0;
-      $152 = $151 ^ $150;
-      HEAP8[$56>>0] = $152;
-      $153 = ((($113)) + 6|0);
-      $154 = HEAP8[$149>>0]|0;
-      $155 = HEAP8[$57>>0]|0;
-      $156 = $155 ^ $154;
-      HEAP8[$57>>0] = $156;
-      $157 = ((($113)) + 7|0);
-      $158 = HEAP8[$153>>0]|0;
-      $159 = HEAP8[$58>>0]|0;
-      $160 = $159 ^ $158;
-      HEAP8[$58>>0] = $160;
-      $161 = ((($113)) + 8|0);
-      $162 = HEAP8[$157>>0]|0;
-      $163 = HEAP8[$59>>0]|0;
-      $164 = $163 ^ $162;
-      HEAP8[$59>>0] = $164;
-      $165 = ((($113)) + 9|0);
-      $166 = HEAP8[$161>>0]|0;
-      $167 = HEAP8[$60>>0]|0;
-      $168 = $167 ^ $166;
-      HEAP8[$60>>0] = $168;
-      $169 = ((($113)) + 10|0);
-      $170 = HEAP8[$165>>0]|0;
-      $171 = HEAP8[$61>>0]|0;
-      $172 = $171 ^ $170;
-      HEAP8[$61>>0] = $172;
-      $173 = ((($113)) + 11|0);
-      $174 = HEAP8[$169>>0]|0;
-      $175 = HEAP8[$62>>0]|0;
-      $176 = $175 ^ $174;
-      HEAP8[$62>>0] = $176;
-      $177 = ((($113)) + 12|0);
-      $178 = HEAP8[$173>>0]|0;
-      $179 = HEAP8[$63>>0]|0;
-      $180 = $179 ^ $178;
-      HEAP8[$63>>0] = $180;
-      $181 = ((($113)) + 13|0);
-      $182 = HEAP8[$177>>0]|0;
-      $183 = HEAP8[$64>>0]|0;
-      $184 = $183 ^ $182;
-      HEAP8[$64>>0] = $184;
-      $185 = ((($113)) + 14|0);
-      $186 = HEAP8[$181>>0]|0;
-      $187 = HEAP8[$65>>0]|0;
-      $188 = $187 ^ $186;
-      HEAP8[$65>>0] = $188;
-      $189 = ((($113)) + 15|0);
-      $190 = HEAP8[$185>>0]|0;
-      $191 = HEAP8[$66>>0]|0;
-      $192 = $191 ^ $190;
-      HEAP8[$66>>0] = $192;
-      $193 = HEAP8[$189>>0]|0;
-      $194 = HEAP8[$67>>0]|0;
-      $195 = $194 ^ $193;
-      HEAP8[$67>>0] = $195;
-     }
-     $196 = $$1116248;
-     $197 = $196 | $44;
-     $198 = $$1113249;
-     $199 = $197 | $198;
-     $200 = $199 & 3;
-     $201 = ($200|0)==(0);
-     if ($201) {
-      $202 = HEAP32[$43>>2]|0;
-      $203 = ((($$1113249)) + 4|0);
-      $204 = HEAP32[$$1113249>>2]|0;
-      $205 = $204 ^ $202;
-      $206 = ((($$1116248)) + 4|0);
-      HEAP32[$$1116248>>2] = $205;
-      $207 = HEAP32[$69>>2]|0;
-      $208 = ((($$1113249)) + 8|0);
-      $209 = HEAP32[$203>>2]|0;
-      $210 = $209 ^ $207;
-      $211 = ((($$1116248)) + 8|0);
-      HEAP32[$206>>2] = $210;
-      $212 = HEAP32[$68>>2]|0;
-      $213 = ((($$1113249)) + 12|0);
-      $214 = HEAP32[$208>>2]|0;
-      $215 = $214 ^ $212;
-      $216 = ((($$1116248)) + 12|0);
-      HEAP32[$211>>2] = $215;
-      $217 = HEAP32[$70>>2]|0;
-      $218 = HEAP32[$213>>2]|0;
-      $219 = $218 ^ $217;
-      HEAP32[$216>>2] = $219;
-     } else {
-      $220 = HEAP8[$43>>0]|0;
-      $221 = ((($$1113249)) + 1|0);
-      $222 = HEAP8[$$1113249>>0]|0;
-      $223 = $222 ^ $220;
-      $224 = ((($$1116248)) + 1|0);
-      HEAP8[$$1116248>>0] = $223;
-      $225 = HEAP8[$71>>0]|0;
-      $226 = ((($$1113249)) + 2|0);
-      $227 = HEAP8[$221>>0]|0;
-      $228 = $227 ^ $225;
-      $229 = ((($$1116248)) + 2|0);
-      HEAP8[$224>>0] = $228;
-      $230 = HEAP8[$72>>0]|0;
-      $231 = ((($$1113249)) + 3|0);
-      $232 = HEAP8[$226>>0]|0;
-      $233 = $232 ^ $230;
-      $234 = ((($$1116248)) + 3|0);
-      HEAP8[$229>>0] = $233;
-      $235 = HEAP8[$73>>0]|0;
-      $236 = ((($$1113249)) + 4|0);
-      $237 = HEAP8[$231>>0]|0;
-      $238 = $237 ^ $235;
-      $239 = ((($$1116248)) + 4|0);
-      HEAP8[$234>>0] = $238;
-      $240 = HEAP8[$74>>0]|0;
-      $241 = ((($$1113249)) + 5|0);
-      $242 = HEAP8[$236>>0]|0;
-      $243 = $242 ^ $240;
-      $244 = ((($$1116248)) + 5|0);
-      HEAP8[$239>>0] = $243;
-      $245 = HEAP8[$75>>0]|0;
-      $246 = ((($$1113249)) + 6|0);
-      $247 = HEAP8[$241>>0]|0;
-      $248 = $247 ^ $245;
-      $249 = ((($$1116248)) + 6|0);
-      HEAP8[$244>>0] = $248;
-      $250 = HEAP8[$76>>0]|0;
-      $251 = ((($$1113249)) + 7|0);
-      $252 = HEAP8[$246>>0]|0;
-      $253 = $252 ^ $250;
-      $254 = ((($$1116248)) + 7|0);
-      HEAP8[$249>>0] = $253;
-      $255 = HEAP8[$77>>0]|0;
-      $256 = ((($$1113249)) + 8|0);
-      $257 = HEAP8[$251>>0]|0;
-      $258 = $257 ^ $255;
-      $259 = ((($$1116248)) + 8|0);
-      HEAP8[$254>>0] = $258;
-      $260 = HEAP8[$78>>0]|0;
-      $261 = ((($$1113249)) + 9|0);
-      $262 = HEAP8[$256>>0]|0;
-      $263 = $262 ^ $260;
-      $264 = ((($$1116248)) + 9|0);
-      HEAP8[$259>>0] = $263;
-      $265 = HEAP8[$79>>0]|0;
-      $266 = ((($$1113249)) + 10|0);
-      $267 = HEAP8[$261>>0]|0;
-      $268 = $267 ^ $265;
-      $269 = ((($$1116248)) + 10|0);
-      HEAP8[$264>>0] = $268;
-      $270 = HEAP8[$80>>0]|0;
-      $271 = ((($$1113249)) + 11|0);
-      $272 = HEAP8[$266>>0]|0;
-      $273 = $272 ^ $270;
-      $274 = ((($$1116248)) + 11|0);
-      HEAP8[$269>>0] = $273;
-      $275 = HEAP8[$81>>0]|0;
-      $276 = ((($$1113249)) + 12|0);
-      $277 = HEAP8[$271>>0]|0;
-      $278 = $277 ^ $275;
-      $279 = ((($$1116248)) + 12|0);
-      HEAP8[$274>>0] = $278;
-      $280 = HEAP8[$82>>0]|0;
-      $281 = ((($$1113249)) + 13|0);
-      $282 = HEAP8[$276>>0]|0;
-      $283 = $282 ^ $280;
-      $284 = ((($$1116248)) + 13|0);
-      HEAP8[$279>>0] = $283;
-      $285 = HEAP8[$83>>0]|0;
-      $286 = ((($$1113249)) + 14|0);
-      $287 = HEAP8[$281>>0]|0;
-      $288 = $287 ^ $285;
-      $289 = ((($$1116248)) + 14|0);
-      HEAP8[$284>>0] = $288;
-      $290 = HEAP8[$84>>0]|0;
-      $291 = ((($$1113249)) + 15|0);
-      $292 = HEAP8[$286>>0]|0;
-      $293 = $292 ^ $290;
-      $294 = ((($$1116248)) + 15|0);
-      HEAP8[$289>>0] = $293;
-      $295 = HEAP8[$85>>0]|0;
-      $296 = HEAP8[$291>>0]|0;
-      $297 = $296 ^ $295;
-      HEAP8[$294>>0] = $297;
-     }
-     $298 = (FUNCTION_TABLE_iiii[$39 & 127]($48,$$1116248,$$1116248)|0);
-     $299 = ($298>>>0)>($$0108251>>>0);
-     $300 = $299 ? $298 : $$0108251;
-     $301 = $197 & 3;
-     $302 = ($301|0)==(0);
-     if ($302) {
-      $303 = HEAP32[$43>>2]|0;
-      $304 = ((($$1116248)) + 4|0);
-      $305 = HEAP32[$$1116248>>2]|0;
-      $306 = $305 ^ $303;
-      HEAP32[$$1116248>>2] = $306;
-      $307 = HEAP32[$45>>2]|0;
-      $308 = ((($$1116248)) + 8|0);
-      $309 = HEAP32[$304>>2]|0;
-      $310 = $309 ^ $307;
-      HEAP32[$304>>2] = $310;
-      $311 = HEAP32[$46>>2]|0;
-      $312 = ((($$1116248)) + 12|0);
-      $313 = HEAP32[$308>>2]|0;
-      $314 = $313 ^ $311;
-      HEAP32[$308>>2] = $314;
-      $315 = HEAP32[$47>>2]|0;
-      $316 = HEAP32[$312>>2]|0;
-      $317 = $316 ^ $315;
-      HEAP32[$312>>2] = $317;
-     } else {
-      $318 = HEAP8[$43>>0]|0;
-      $319 = ((($$1116248)) + 1|0);
-      $320 = HEAP8[$$1116248>>0]|0;
-      $321 = $320 ^ $318;
-      HEAP8[$$1116248>>0] = $321;
-      $322 = HEAP8[$86>>0]|0;
-      $323 = ((($$1116248)) + 2|0);
-      $324 = HEAP8[$319>>0]|0;
-      $325 = $324 ^ $322;
-      HEAP8[$319>>0] = $325;
-      $326 = HEAP8[$87>>0]|0;
-      $327 = ((($$1116248)) + 3|0);
-      $328 = HEAP8[$323>>0]|0;
-      $329 = $328 ^ $326;
-      HEAP8[$323>>0] = $329;
-      $330 = HEAP8[$88>>0]|0;
-      $331 = ((($$1116248)) + 4|0);
-      $332 = HEAP8[$327>>0]|0;
-      $333 = $332 ^ $330;
-      HEAP8[$327>>0] = $333;
-      $334 = HEAP8[$89>>0]|0;
-      $335 = ((($$1116248)) + 5|0);
-      $336 = HEAP8[$331>>0]|0;
-      $337 = $336 ^ $334;
-      HEAP8[$331>>0] = $337;
-      $338 = HEAP8[$90>>0]|0;
-      $339 = ((($$1116248)) + 6|0);
-      $340 = HEAP8[$335>>0]|0;
-      $341 = $340 ^ $338;
-      HEAP8[$335>>0] = $341;
-      $342 = HEAP8[$91>>0]|0;
-      $343 = ((($$1116248)) + 7|0);
-      $344 = HEAP8[$339>>0]|0;
-      $345 = $344 ^ $342;
-      HEAP8[$339>>0] = $345;
-      $346 = HEAP8[$92>>0]|0;
-      $347 = ((($$1116248)) + 8|0);
-      $348 = HEAP8[$343>>0]|0;
-      $349 = $348 ^ $346;
-      HEAP8[$343>>0] = $349;
-      $350 = HEAP8[$93>>0]|0;
-      $351 = ((($$1116248)) + 9|0);
-      $352 = HEAP8[$347>>0]|0;
-      $353 = $352 ^ $350;
-      HEAP8[$347>>0] = $353;
-      $354 = HEAP8[$94>>0]|0;
-      $355 = ((($$1116248)) + 10|0);
-      $356 = HEAP8[$351>>0]|0;
-      $357 = $356 ^ $354;
-      HEAP8[$351>>0] = $357;
-      $358 = HEAP8[$95>>0]|0;
-      $359 = ((($$1116248)) + 11|0);
-      $360 = HEAP8[$355>>0]|0;
-      $361 = $360 ^ $358;
-      HEAP8[$355>>0] = $361;
-      $362 = HEAP8[$96>>0]|0;
-      $363 = ((($$1116248)) + 12|0);
-      $364 = HEAP8[$359>>0]|0;
-      $365 = $364 ^ $362;
-      HEAP8[$359>>0] = $365;
-      $366 = HEAP8[$97>>0]|0;
-      $367 = ((($$1116248)) + 13|0);
-      $368 = HEAP8[$363>>0]|0;
-      $369 = $368 ^ $366;
-      HEAP8[$363>>0] = $369;
-      $370 = HEAP8[$98>>0]|0;
-      $371 = ((($$1116248)) + 14|0);
-      $372 = HEAP8[$367>>0]|0;
-      $373 = $372 ^ $370;
-      HEAP8[$367>>0] = $373;
-      $374 = HEAP8[$99>>0]|0;
-      $375 = ((($$1116248)) + 15|0);
-      $376 = HEAP8[$371>>0]|0;
-      $377 = $376 ^ $374;
-      HEAP8[$371>>0] = $377;
-      $378 = HEAP8[$100>>0]|0;
-      $379 = HEAP8[$375>>0]|0;
-      $380 = $379 ^ $378;
-      HEAP8[$375>>0] = $380;
-     }
-     $381 = ((($$1113249)) + 16|0);
-     $382 = (($$1110250) + -16)|0;
-     $383 = ((($$1116248)) + 16|0);
-     $384 = ($382>>>0)>(15);
-     if ($384) {
-      $$0108251 = $300;$$1110250 = $382;$$1113249 = $381;$$1116248 = $383;
-     } else {
-      break;
-     }
-    }
-    $scevgep = (($4) + ($51)|0);
-    $scevgep272 = (($2) + ($51)|0);
-    $$0108$lcssa = $300;$$1110$lcssa = $52;$$1113$lcssa = 
$scevgep;$$1116$lcssa = $scevgep272;
-   } else {
-    $$0108$lcssa = 0;$$1110$lcssa = $5;$$1113$lcssa = $4;$$1116$lcssa = $2;
-   }
-   if ($36) {
-    $$1 = $$0108$lcssa;$$2111 = $$1110$lcssa;$$2114 = $$1113$lcssa;$$2117 = 
$$1116$lcssa;
-   } else {
-    $385 = (0 - ($32))|0;
-    $386 = (($$1116$lcssa) + ($385)|0);
-    $387 = ((($0)) + 80|0);
-    _ocb_checksum($387,$386,$8);
-    $$1 = $$0108$lcssa;$$2111 = $$1110$lcssa;$$2114 = $$1113$lcssa;$$2117 = 
$$1116$lcssa;
-   }
-  }
- } while(0);
- $388 = ($$2111|0)==(0);
- if ($388) {
-  $$2 = $$1;
- } else {
-  $389 = ((($0)) + 64|0);
-  $390 = $389;
-  $391 = $13;
-  $392 = $391 | $390;
-  $393 = $392 & 3;
-  $394 = ($393|0)==(0);
-  if ($394) {
-   $395 = ((($13)) + 4|0);
-   $396 = HEAP32[$13>>2]|0;
-   $397 = ((($389)) + 4|0);
-   $398 = HEAP32[$389>>2]|0;
-   $399 = $398 ^ $396;
-   HEAP32[$389>>2] = $399;
-   $400 = ((($0)) + 136|0);
-   $401 = HEAP32[$395>>2]|0;
-   $402 = ((($0)) + 72|0);
-   $403 = HEAP32[$397>>2]|0;
-   $404 = $403 ^ $401;
-   HEAP32[$397>>2] = $404;
-   $405 = ((($0)) + 140|0);
-   $406 = HEAP32[$400>>2]|0;
-   $407 = ((($0)) + 76|0);
-   $408 = HEAP32[$402>>2]|0;
-   $409 = $408 ^ $406;
-   HEAP32[$402>>2] = $409;
-   $410 = HEAP32[$405>>2]|0;
-   $411 = HEAP32[$407>>2]|0;
-   $412 = $411 ^ $410;
-   HEAP32[$407>>2] = $412;
-  } else {
-   $413 = ((($13)) + 1|0);
-   $414 = HEAP8[$13>>0]|0;
-   $415 = ((($389)) + 1|0);
-   $416 = HEAP8[$389>>0]|0;
-   $417 = $416 ^ $414;
-   HEAP8[$389>>0] = $417;
-   $418 = ((($13)) + 2|0);
-   $419 = HEAP8[$413>>0]|0;
-   $420 = ((($389)) + 2|0);
-   $421 = HEAP8[$415>>0]|0;
-   $422 = $421 ^ $419;
-   HEAP8[$415>>0] = $422;
-   $423 = ((($13)) + 3|0);
-   $424 = HEAP8[$418>>0]|0;
-   $425 = ((($389)) + 3|0);
-   $426 = HEAP8[$420>>0]|0;
-   $427 = $426 ^ $424;
-   HEAP8[$420>>0] = $427;
-   $428 = ((($13)) + 4|0);
-   $429 = HEAP8[$423>>0]|0;
-   $430 = ((($389)) + 4|0);
-   $431 = HEAP8[$425>>0]|0;
-   $432 = $431 ^ $429;
-   HEAP8[$425>>0] = $432;
-   $433 = ((($13)) + 5|0);
-   $434 = HEAP8[$428>>0]|0;
-   $435 = ((($389)) + 5|0);
-   $436 = HEAP8[$430>>0]|0;
-   $437 = $436 ^ $434;
-   HEAP8[$430>>0] = $437;
-   $438 = ((($13)) + 6|0);
-   $439 = HEAP8[$433>>0]|0;
-   $440 = ((($389)) + 6|0);
-   $441 = HEAP8[$435>>0]|0;
-   $442 = $441 ^ $439;
-   HEAP8[$435>>0] = $442;
-   $443 = ((($13)) + 7|0);
-   $444 = HEAP8[$438>>0]|0;
-   $445 = ((($389)) + 7|0);
-   $446 = HEAP8[$440>>0]|0;
-   $447 = $446 ^ $444;
-   HEAP8[$440>>0] = $447;
-   $448 = ((($0)) + 136|0);
-   $449 = HEAP8[$443>>0]|0;
-   $450 = ((($0)) + 72|0);
-   $451 = HEAP8[$445>>0]|0;
-   $452 = $451 ^ $449;
-   HEAP8[$445>>0] = $452;
-   $453 = ((($0)) + 137|0);
-   $454 = HEAP8[$448>>0]|0;
-   $455 = ((($0)) + 73|0);
-   $456 = HEAP8[$450>>0]|0;
-   $457 = $456 ^ $454;
-   HEAP8[$450>>0] = $457;
-   $458 = ((($0)) + 138|0);
-   $459 = HEAP8[$453>>0]|0;
-   $460 = ((($0)) + 74|0);
-   $461 = HEAP8[$455>>0]|0;
-   $462 = $461 ^ $459;
-   HEAP8[$455>>0] = $462;
-   $463 = ((($0)) + 139|0);
-   $464 = HEAP8[$458>>0]|0;
-   $465 = ((($0)) + 75|0);
-   $466 = HEAP8[$460>>0]|0;
-   $467 = $466 ^ $464;
-   HEAP8[$460>>0] = $467;
-   $468 = ((($0)) + 140|0);
-   $469 = HEAP8[$463>>0]|0;
-   $470 = ((($0)) + 76|0);
-   $471 = HEAP8[$465>>0]|0;
-   $472 = $471 ^ $469;
-   HEAP8[$465>>0] = $472;
-   $473 = ((($0)) + 141|0);
-   $474 = HEAP8[$468>>0]|0;
-   $475 = ((($0)) + 77|0);
-   $476 = HEAP8[$470>>0]|0;
-   $477 = $476 ^ $474;
-   HEAP8[$470>>0] = $477;
-   $478 = ((($0)) + 142|0);
-   $479 = HEAP8[$473>>0]|0;
-   $480 = ((($0)) + 78|0);
-   $481 = HEAP8[$475>>0]|0;
-   $482 = $481 ^ $479;
-   HEAP8[$475>>0] = $482;
-   $483 = ((($0)) + 143|0);
-   $484 = HEAP8[$478>>0]|0;
-   $485 = ((($0)) + 79|0);
-   $486 = HEAP8[$480>>0]|0;
-   $487 = $486 ^ $484;
-   HEAP8[$480>>0] = $487;
-   $488 = HEAP8[$483>>0]|0;
-   $489 = HEAP8[$485>>0]|0;
-   $490 = $489 ^ $488;
-   HEAP8[$485>>0] = $490;
-  }
-  $491 = HEAP32[$18>>2]|0;
-  $492 = ((($491)) + 36|0);
-  $493 = HEAP32[$492>>2]|0;
-  $494 = ((($0)) + 496|0);
-  $495 = (FUNCTION_TABLE_iiii[$493 & 127]($494,$7,$389)|0);
-  $496 = ($495>>>0)>($$1>>>0);
-  $497 = $496 ? $495 : $$1;
-  $498 = ($1|0)==(0);
-  do {
-   if ($498) {
-    $645 = ((($7)) + 4|0);
-    $646 = HEAP32[$7>>2]|0;
-    $647 = ((($6)) + 4|0);
-    HEAP32[$6>>2] = $646;
-    $648 = ((($7)) + 8|0);
-    $649 = HEAP32[$645>>2]|0;
-    $650 = ((($6)) + 8|0);
-    HEAP32[$647>>2] = $649;
-    $651 = ((($7)) + 12|0);
-    $652 = HEAP32[$648>>2]|0;
-    $653 = ((($6)) + 12|0);
-    HEAP32[$650>>2] = $652;
-    $654 = HEAP32[$651>>2]|0;
-    HEAP32[$653>>2] = $654;
-    $655 = $$2114;
-    $656 = $655 & 3;
-    $657 = ($656|0)==(0);
-    $658 = ($$2111>>>0)>(3);
-    $or$cond$i156 = $658 & $657;
-    if ($or$cond$i156) {
-     $659 = (($$2111) + -4)|0;
-     $660 = $659 & -4;
-     $661 = (($660) + 4)|0;
-     $scevgep$i157 = (($$2114) + ($661)|0);
-     $$02434$i161 = $$2114;$$02533$i162 = $6;$$035$i160 = $$2111;
-     while(1) {
-      $662 = ((($$02434$i161)) + 4|0);
-      $663 = HEAP32[$$02434$i161>>2]|0;
-      $664 = ((($$02533$i162)) + 4|0);
-      HEAP32[$$02533$i162>>2] = $663;
-      $665 = (($$035$i160) + -4)|0;
-      $666 = ($665>>>0)>(3);
-      if ($666) {
-       $$02434$i161 = $662;$$02533$i162 = $664;$$035$i160 = $665;
-      } else {
-       break;
-      }
-     }
-     $scevgep44$i158 = (($6) + ($661)|0);
-     $667 = (($659) - ($660))|0;
-     $668 = ($667|0)==(0);
-     if ($668) {
-      $677 = $646;$682 = $649;
-     } else {
-      $$12731$i170$ph = $scevgep$i157;$$12930$i171$ph = 
$scevgep44$i158;$$232$i169$ph = $667;
-      label = 51;
-     }
-    } else {
-     $$12731$i170$ph = $$2114;$$12930$i171$ph = $6;$$232$i169$ph = $$2111;
-     label = 51;
-    }
-    if ((label|0) == 51) {
-     $$12731$i170 = $$12731$i170$ph;$$12930$i171 = $$12930$i171$ph;$$232$i169 
= $$232$i169$ph;
-     while(1) {
-      $669 = ((($$12731$i170)) + 1|0);
-      $670 = HEAP8[$$12731$i170>>0]|0;
-      $671 = ((($$12930$i171)) + 1|0);
-      HEAP8[$$12930$i171>>0] = $670;
-      $672 = (($$232$i169) + -1)|0;
-      $673 = ($672|0)==(0);
-      if ($673) {
-       break;
-      } else {
-       $$12731$i170 = $669;$$12930$i171 = $671;$$232$i169 = $672;
-      }
-     }
-     $$pre = HEAP32[$7>>2]|0;
-     $$phi$trans$insert273 = ((($7)) + 4|0);
-     $$pre275 = HEAP32[$$phi$trans$insert273>>2]|0;
-     $677 = $$pre;$682 = $$pre275;
-    }
-    $674 = ((($6)) + 4|0);
-    $675 = HEAP32[$6>>2]|0;
-    $676 = $675 ^ $677;
-    HEAP32[$6>>2] = $676;
-    $678 = ((($7)) + 8|0);
-    $679 = ((($6)) + 8|0);
-    $680 = HEAP32[$674>>2]|0;
-    $681 = $680 ^ $682;
-    HEAP32[$674>>2] = $681;
-    $683 = ((($7)) + 12|0);
-    $684 = HEAP32[$678>>2]|0;
-    $685 = ((($6)) + 12|0);
-    $686 = HEAP32[$679>>2]|0;
-    $687 = $686 ^ $684;
-    HEAP32[$679>>2] = $687;
-    $688 = HEAP32[$683>>2]|0;
-    $689 = HEAP32[$685>>2]|0;
-    $690 = $689 ^ $688;
-    HEAP32[$685>>2] = $690;
-    $691 = (($6) + ($$2111)|0);
-    HEAP8[$691>>0] = -128;
-    $692 = $$2117;
-    $693 = $692 & 3;
-    $694 = ($693|0)==(0);
-    $or$cond$i = $694 & $658;
-    if ($or$cond$i) {
-     $695 = (($$2111) + -4)|0;
-     $696 = $695 & -4;
-     $697 = (($696) + 4)|0;
-     $scevgep$i152 = (($6) + ($697)|0);
-     $$02434$i = $6;$$02533$i = $$2117;$$035$i = $$2111;
-     while(1) {
-      $698 = ((($$02434$i)) + 4|0);
-      $699 = HEAP32[$$02434$i>>2]|0;
-      $700 = ((($$02533$i)) + 4|0);
-      HEAP32[$$02533$i>>2] = $699;
-      $701 = (($$035$i) + -4)|0;
-      $702 = ($701>>>0)>(3);
-      if ($702) {
-       $$02434$i = $698;$$02533$i = $700;$$035$i = $701;
-      } else {
-       break;
-      }
-     }
-     $scevgep44$i = (($$2117) + ($697)|0);
-     $703 = (($695) - ($696))|0;
-     $$026$i = $scevgep$i152;$$028$i = $scevgep44$i;$$1$i153 = $703;
-    } else {
-     $$026$i = $6;$$028$i = $$2117;$$1$i153 = $$2111;
-    }
-    $704 = ($$1$i153|0)==(0);
-    if (!($704)) {
-     $$12731$i = $$026$i;$$12930$i = $$028$i;$$232$i = $$1$i153;
-     while(1) {
-      $705 = ((($$12731$i)) + 1|0);
-      $706 = HEAP8[$$12731$i>>0]|0;
-      $707 = ((($$12930$i)) + 1|0);
-      HEAP8[$$12930$i>>0] = $706;
-      $708 = (($$232$i) + -1)|0;
-      $709 = ($708|0)==(0);
-      if ($709) {
-       break;
-      } else {
-       $$12731$i = $705;$$12930$i = $707;$$232$i = $708;
-      }
-     }
-    }
-    $710 = ((($0)) + 80|0);
-    $711 = $710;
-    $712 = $711 & 3;
-    $713 = ($712|0)==(0);
-    if ($713) {
-     $714 = HEAP32[$6>>2]|0;
-     $715 = ((($710)) + 4|0);
-     $716 = HEAP32[$710>>2]|0;
-     $717 = $716 ^ $714;
-     HEAP32[$710>>2] = $717;
-     $718 = HEAP32[$674>>2]|0;
-     $719 = ((($0)) + 88|0);
-     $720 = HEAP32[$715>>2]|0;
-     $721 = $720 ^ $718;
-     HEAP32[$715>>2] = $721;
-     $722 = HEAP32[$679>>2]|0;
-     $723 = ((($0)) + 92|0);
-     $724 = HEAP32[$719>>2]|0;
-     $725 = $724 ^ $722;
-     HEAP32[$719>>2] = $725;
-     $726 = HEAP32[$685>>2]|0;
-     $727 = HEAP32[$723>>2]|0;
-     $728 = $727 ^ $726;
-     HEAP32[$723>>2] = $728;
-     break;
-    } else {
-     $729 = ((($6)) + 1|0);
-     $730 = HEAP8[$6>>0]|0;
-     $731 = ((($710)) + 1|0);
-     $732 = HEAP8[$710>>0]|0;
-     $733 = $732 ^ $730;
-     HEAP8[$710>>0] = $733;
-     $734 = ((($6)) + 2|0);
-     $735 = HEAP8[$729>>0]|0;
-     $736 = ((($710)) + 2|0);
-     $737 = HEAP8[$731>>0]|0;
-     $738 = $737 ^ $735;
-     HEAP8[$731>>0] = $738;
-     $739 = ((($6)) + 3|0);
-     $740 = HEAP8[$734>>0]|0;
-     $741 = ((($710)) + 3|0);
-     $742 = HEAP8[$736>>0]|0;
-     $743 = $742 ^ $740;
-     HEAP8[$736>>0] = $743;
-     $744 = ((($6)) + 4|0);
-     $745 = HEAP8[$739>>0]|0;
-     $746 = ((($710)) + 4|0);
-     $747 = HEAP8[$741>>0]|0;
-     $748 = $747 ^ $745;
-     HEAP8[$741>>0] = $748;
-     $749 = ((($6)) + 5|0);
-     $750 = HEAP8[$744>>0]|0;
-     $751 = ((($710)) + 5|0);
-     $752 = HEAP8[$746>>0]|0;
-     $753 = $752 ^ $750;
-     HEAP8[$746>>0] = $753;
-     $754 = ((($6)) + 6|0);
-     $755 = HEAP8[$749>>0]|0;
-     $756 = ((($710)) + 6|0);
-     $757 = HEAP8[$751>>0]|0;
-     $758 = $757 ^ $755;
-     HEAP8[$751>>0] = $758;
-     $759 = ((($6)) + 7|0);
-     $760 = HEAP8[$754>>0]|0;
-     $761 = ((($710)) + 7|0);
-     $762 = HEAP8[$756>>0]|0;
-     $763 = $762 ^ $760;
-     HEAP8[$756>>0] = $763;
-     $764 = ((($6)) + 8|0);
-     $765 = HEAP8[$759>>0]|0;
-     $766 = ((($0)) + 88|0);
-     $767 = HEAP8[$761>>0]|0;
-     $768 = $767 ^ $765;
-     HEAP8[$761>>0] = $768;
-     $769 = ((($6)) + 9|0);
-     $770 = HEAP8[$764>>0]|0;
-     $771 = ((($0)) + 89|0);
-     $772 = HEAP8[$766>>0]|0;
-     $773 = $772 ^ $770;
-     HEAP8[$766>>0] = $773;
-     $774 = ((($6)) + 10|0);
-     $775 = HEAP8[$769>>0]|0;
-     $776 = ((($0)) + 90|0);
-     $777 = HEAP8[$771>>0]|0;
-     $778 = $777 ^ $775;
-     HEAP8[$771>>0] = $778;
-     $779 = ((($6)) + 11|0);
-     $780 = HEAP8[$774>>0]|0;
-     $781 = ((($0)) + 91|0);
-     $782 = HEAP8[$776>>0]|0;
-     $783 = $782 ^ $780;
-     HEAP8[$776>>0] = $783;
-     $784 = ((($6)) + 12|0);
-     $785 = HEAP8[$779>>0]|0;
-     $786 = ((($0)) + 92|0);
-     $787 = HEAP8[$781>>0]|0;
-     $788 = $787 ^ $785;
-     HEAP8[$781>>0] = $788;
-     $789 = ((($6)) + 13|0);
-     $790 = HEAP8[$784>>0]|0;
-     $791 = ((($0)) + 93|0);
-     $792 = HEAP8[$786>>0]|0;
-     $793 = $792 ^ $790;
-     HEAP8[$786>>0] = $793;
-     $794 = ((($6)) + 14|0);
-     $795 = HEAP8[$789>>0]|0;
-     $796 = ((($0)) + 94|0);
-     $797 = HEAP8[$791>>0]|0;
-     $798 = $797 ^ $795;
-     HEAP8[$791>>0] = $798;
-     $799 = ((($6)) + 15|0);
-     $800 = HEAP8[$794>>0]|0;
-     $801 = ((($0)) + 95|0);
-     $802 = HEAP8[$796>>0]|0;
-     $803 = $802 ^ $800;
-     HEAP8[$796>>0] = $803;
-     $804 = HEAP8[$799>>0]|0;
-     $805 = HEAP8[$801>>0]|0;
-     $806 = $805 ^ $804;
-     HEAP8[$801>>0] = $806;
-     break;
-    }
-   } else {
-    $499 = $$2114;
-    $500 = $499 & 3;
-    $501 = ($500|0)==(0);
-    $502 = ($$2111>>>0)>(3);
-    $or$cond$i216 = $502 & $501;
-    if ($or$cond$i216) {
-     $503 = (($$2111) + -4)|0;
-     $504 = $503 & -4;
-     $505 = (($504) + 4)|0;
-     $scevgep$i217 = (($$2114) + ($505)|0);
-     $$02434$i221 = $$2114;$$02533$i222 = $6;$$035$i220 = $$2111;
-     while(1) {
-      $506 = ((($$02434$i221)) + 4|0);
-      $507 = HEAP32[$$02434$i221>>2]|0;
-      $508 = ((($$02533$i222)) + 4|0);
-      HEAP32[$$02533$i222>>2] = $507;
-      $509 = (($$035$i220) + -4)|0;
-      $510 = ($509>>>0)>(3);
-      if ($510) {
-       $$02434$i221 = $506;$$02533$i222 = $508;$$035$i220 = $509;
-      } else {
-       break;
-      }
-     }
-     $scevgep44$i218 = (($6) + ($505)|0);
-     $511 = (($503) - ($504))|0;
-     $512 = ($511|0)==(0);
-     if (!($512)) {
-      $$12731$i230$ph = $scevgep$i217;$$12930$i231$ph = 
$scevgep44$i218;$$232$i229$ph = $511;
-      label = 35;
-     }
-    } else {
-     $$12731$i230$ph = $$2114;$$12930$i231$ph = $6;$$232$i229$ph = $$2111;
-     label = 35;
-    }
-    if ((label|0) == 35) {
-     $$12731$i230 = $$12731$i230$ph;$$12930$i231 = $$12930$i231$ph;$$232$i229 
= $$232$i229$ph;
-     while(1) {
-      $513 = ((($$12731$i230)) + 1|0);
-      $514 = HEAP8[$$12731$i230>>0]|0;
-      $515 = ((($$12930$i231)) + 1|0);
-      HEAP8[$$12930$i231>>0] = $514;
-      $516 = (($$232$i229) + -1)|0;
-      $517 = ($516|0)==(0);
-      if ($517) {
-       break;
-      } else {
-       $$12731$i230 = $513;$$12930$i231 = $515;$$232$i229 = $516;
-      }
-     }
-    }
-    $518 = (($6) + ($$2111)|0);
-    $519 = (16 - ($$2111))|0;
-    _memset(($518|0),0,($519|0))|0;
-    HEAP8[$518>>0] = -128;
-    $520 = ((($0)) + 80|0);
-    $521 = $520;
-    $522 = $521 & 3;
-    $523 = ($522|0)==(0);
-    if ($523) {
-     $524 = ((($6)) + 4|0);
-     $525 = HEAP32[$6>>2]|0;
-     $526 = ((($520)) + 4|0);
-     $527 = HEAP32[$520>>2]|0;
-     $528 = $527 ^ $525;
-     HEAP32[$520>>2] = $528;
-     $529 = ((($6)) + 8|0);
-     $530 = HEAP32[$524>>2]|0;
-     $531 = ((($0)) + 88|0);
-     $532 = HEAP32[$526>>2]|0;
-     $533 = $532 ^ $530;
-     HEAP32[$526>>2] = $533;
-     $534 = ((($6)) + 12|0);
-     $535 = HEAP32[$529>>2]|0;
-     $536 = ((($0)) + 92|0);
-     $537 = HEAP32[$531>>2]|0;
-     $538 = $537 ^ $535;
-     HEAP32[$531>>2] = $538;
-     $539 = HEAP32[$534>>2]|0;
-     $540 = HEAP32[$536>>2]|0;
-     $541 = $540 ^ $539;
-     HEAP32[$536>>2] = $541;
-    } else {
-     $542 = ((($6)) + 1|0);
-     $543 = HEAP8[$6>>0]|0;
-     $544 = ((($520)) + 1|0);
-     $545 = HEAP8[$520>>0]|0;
-     $546 = $545 ^ $543;
-     HEAP8[$520>>0] = $546;
-     $547 = ((($6)) + 2|0);
-     $548 = HEAP8[$542>>0]|0;
-     $549 = ((($520)) + 2|0);
-     $550 = HEAP8[$544>>0]|0;
-     $551 = $550 ^ $548;
-     HEAP8[$544>>0] = $551;
-     $552 = ((($6)) + 3|0);
-     $553 = HEAP8[$547>>0]|0;
-     $554 = ((($520)) + 3|0);
-     $555 = HEAP8[$549>>0]|0;
-     $556 = $555 ^ $553;
-     HEAP8[$549>>0] = $556;
-     $557 = ((($6)) + 4|0);
-     $558 = HEAP8[$552>>0]|0;
-     $559 = ((($520)) + 4|0);
-     $560 = HEAP8[$554>>0]|0;
-     $561 = $560 ^ $558;
-     HEAP8[$554>>0] = $561;
-     $562 = ((($6)) + 5|0);
-     $563 = HEAP8[$557>>0]|0;
-     $564 = ((($520)) + 5|0);
-     $565 = HEAP8[$559>>0]|0;
-     $566 = $565 ^ $563;
-     HEAP8[$559>>0] = $566;
-     $567 = ((($6)) + 6|0);
-     $568 = HEAP8[$562>>0]|0;
-     $569 = ((($520)) + 6|0);
-     $570 = HEAP8[$564>>0]|0;
-     $571 = $570 ^ $568;
-     HEAP8[$564>>0] = $571;
-     $572 = ((($6)) + 7|0);
-     $573 = HEAP8[$567>>0]|0;
-     $574 = ((($520)) + 7|0);
-     $575 = HEAP8[$569>>0]|0;
-     $576 = $575 ^ $573;
-     HEAP8[$569>>0] = $576;
-     $577 = ((($6)) + 8|0);
-     $578 = HEAP8[$572>>0]|0;
-     $579 = ((($0)) + 88|0);
-     $580 = HEAP8[$574>>0]|0;
-     $581 = $580 ^ $578;
-     HEAP8[$574>>0] = $581;
-     $582 = ((($6)) + 9|0);
-     $583 = HEAP8[$577>>0]|0;
-     $584 = ((($0)) + 89|0);
-     $585 = HEAP8[$579>>0]|0;
-     $586 = $585 ^ $583;
-     HEAP8[$579>>0] = $586;
-     $587 = ((($6)) + 10|0);
-     $588 = HEAP8[$582>>0]|0;
-     $589 = ((($0)) + 90|0);
-     $590 = HEAP8[$584>>0]|0;
-     $591 = $590 ^ $588;
-     HEAP8[$584>>0] = $591;
-     $592 = ((($6)) + 11|0);
-     $593 = HEAP8[$587>>0]|0;
-     $594 = ((($0)) + 91|0);
-     $595 = HEAP8[$589>>0]|0;
-     $596 = $595 ^ $593;
-     HEAP8[$589>>0] = $596;
-     $597 = ((($6)) + 12|0);
-     $598 = HEAP8[$592>>0]|0;
-     $599 = ((($0)) + 92|0);
-     $600 = HEAP8[$594>>0]|0;
-     $601 = $600 ^ $598;
-     HEAP8[$594>>0] = $601;
-     $602 = ((($6)) + 13|0);
-     $603 = HEAP8[$597>>0]|0;
-     $604 = ((($0)) + 93|0);
-     $605 = HEAP8[$599>>0]|0;
-     $606 = $605 ^ $603;
-     HEAP8[$599>>0] = $606;
-     $607 = ((($6)) + 14|0);
-     $608 = HEAP8[$602>>0]|0;
-     $609 = ((($0)) + 94|0);
-     $610 = HEAP8[$604>>0]|0;
-     $611 = $610 ^ $608;
-     HEAP8[$604>>0] = $611;
-     $612 = ((($6)) + 15|0);
-     $613 = HEAP8[$607>>0]|0;
-     $614 = ((($0)) + 95|0);
-     $615 = HEAP8[$609>>0]|0;
-     $616 = $615 ^ $613;
-     HEAP8[$609>>0] = $616;
-     $617 = HEAP8[$612>>0]|0;
-     $618 = HEAP8[$614>>0]|0;
-     $619 = $618 ^ $617;
-     HEAP8[$614>>0] = $619;
-    }
-    $620 = $$2117;
-    $621 = $499 | $620;
-    $622 = $621 & 3;
-    $623 = ($622|0)==(0);
-    $or$cond$i189 = $502 & $623;
-    if ($or$cond$i189) {
-     $624 = (($$2111) + -4)|0;
-     $625 = $624 & -4;
-     $626 = (($625) + 4)|0;
-     $scevgep61$i191 = (($7) + ($626)|0);
-     $$03449$i195 = $7;$$03548$i196 = $$2114;$$03647$i197 = $$2117;$$050$i194 
= $$2111;
-     while(1) {
-      $627 = ((($$03548$i196)) + 4|0);
-      $628 = HEAP32[$$03548$i196>>2]|0;
-      $629 = ((($$03449$i195)) + 4|0);
-      $630 = HEAP32[$$03449$i195>>2]|0;
-      $631 = $630 ^ $628;
-      $632 = ((($$03647$i197)) + 4|0);
-      HEAP32[$$03647$i197>>2] = $631;
-      $633 = (($$050$i194) + -4)|0;
-      $634 = ($633>>>0)>(3);
-      if ($634) {
-       $$03449$i195 = $629;$$03548$i196 = $627;$$03647$i197 = $632;$$050$i194 
= $633;
-      } else {
-       break;
-      }
-     }
-     $scevgep$i190 = (($$2114) + ($626)|0);
-     $scevgep63$i192 = (($$2117) + ($626)|0);
-     $635 = (($624) - ($625))|0;
-     $$037$i201 = $scevgep61$i191;$$039$i200 = $scevgep$i190;$$041$i199 = 
$scevgep63$i192;$$1$i202 = $635;
-    } else {
-     $$037$i201 = $7;$$039$i200 = $$2114;$$041$i199 = $$2117;$$1$i202 = $$2111;
-    }
-    $636 = ($$1$i202|0)==(0);
-    if (!($636)) {
-     $$13845$i206 = $$037$i201;$$14044$i207 = $$039$i200;$$14243$i208 = 
$$041$i199;$$246$i205 = $$1$i202;
-     while(1) {
-      $637 = ((($$14044$i207)) + 1|0);
-      $638 = HEAP8[$$14044$i207>>0]|0;
-      $639 = ((($$13845$i206)) + 1|0);
-      $640 = HEAP8[$$13845$i206>>0]|0;
-      $641 = $640 ^ $638;
-      $642 = ((($$14243$i208)) + 1|0);
-      HEAP8[$$14243$i208>>0] = $641;
-      $643 = (($$246$i205) + -1)|0;
-      $644 = ($643|0)==(0);
-      if ($644) {
-       break;
-      } else {
-       $$13845$i206 = $639;$$14044$i207 = $637;$$14243$i208 = $642;$$246$i205 
= $643;
-      }
-     }
-    }
-   }
-  } while(0);
-  $$2 = $497;
- }
- $807 = HEAP8[$9>>0]|0;
- $808 = $807 & 8;
- $809 = ($808<<24>>24)==(0);
- if ($809) {
-  $$3 = $$2;
- } else {
-  $810 = ((($0)) + 416|0);
-  $811 = ((($0)) + 80|0);
-  $812 = ((($0)) + 64|0);
-  $813 = $810;
-  $814 = $811;
-  $815 = $814 | $813;
-  $816 = $812;
-  $817 = $815 | $816;
-  $818 = $817 & 3;
-  $819 = ($818|0)==(0);
-  if ($819) {
-   $820 = HEAP32[$811>>2]|0;
-   $821 = HEAP32[$812>>2]|0;
-   $822 = $821 ^ $820;
-   $823 = ((($0)) + 420|0);
-   HEAP32[$810>>2] = $822;
-   $824 = ((($0)) + 88|0);
-   $825 = ((($811)) + 4|0);
-   $826 = HEAP32[$825>>2]|0;
-   $827 = ((($0)) + 72|0);
-   $828 = ((($812)) + 4|0);
-   $829 = HEAP32[$828>>2]|0;
-   $830 = $829 ^ $826;
-   $831 = ((($0)) + 424|0);
-   HEAP32[$823>>2] = $830;
-   $832 = ((($0)) + 92|0);
-   $833 = HEAP32[$824>>2]|0;
-   $834 = ((($0)) + 76|0);
-   $835 = HEAP32[$827>>2]|0;
-   $836 = $835 ^ $833;
-   $837 = ((($0)) + 428|0);
-   HEAP32[$831>>2] = $836;
-   $838 = HEAP32[$832>>2]|0;
-   $839 = HEAP32[$834>>2]|0;
-   $840 = $839 ^ $838;
-   HEAP32[$837>>2] = $840;
-  } else {
-   $841 = ((($811)) + 1|0);
-   $842 = HEAP8[$811>>0]|0;
-   $843 = ((($812)) + 1|0);
-   $844 = HEAP8[$812>>0]|0;
-   $845 = $844 ^ $842;
-   $846 = ((($810)) + 1|0);
-   HEAP8[$810>>0] = $845;
-   $847 = ((($811)) + 2|0);
-   $848 = HEAP8[$841>>0]|0;
-   $849 = ((($812)) + 2|0);
-   $850 = HEAP8[$843>>0]|0;
-   $851 = $850 ^ $848;
-   $852 = ((($810)) + 2|0);
-   HEAP8[$846>>0] = $851;
-   $853 = ((($811)) + 3|0);
-   $854 = HEAP8[$847>>0]|0;
-   $855 = ((($812)) + 3|0);
-   $856 = HEAP8[$849>>0]|0;
-   $857 = $856 ^ $854;
-   $858 = ((($810)) + 3|0);
-   HEAP8[$852>>0] = $857;
-   $859 = ((($811)) + 4|0);
-   $860 = HEAP8[$853>>0]|0;
-   $861 = ((($812)) + 4|0);
-   $862 = HEAP8[$855>>0]|0;
-   $863 = $862 ^ $860;
-   $864 = ((($0)) + 420|0);
-   HEAP8[$858>>0] = $863;
-   $865 = ((($811)) + 5|0);
-   $866 = HEAP8[$859>>0]|0;
-   $867 = ((($812)) + 5|0);
-   $868 = HEAP8[$861>>0]|0;
-   $869 = $868 ^ $866;
-   $870 = ((($864)) + 1|0);
-   HEAP8[$864>>0] = $869;
-   $871 = ((($811)) + 6|0);
-   $872 = HEAP8[$865>>0]|0;
-   $873 = ((($812)) + 6|0);
-   $874 = HEAP8[$867>>0]|0;
-   $875 = $874 ^ $872;
-   $876 = ((($864)) + 2|0);
-   HEAP8[$870>>0] = $875;
-   $877 = ((($811)) + 7|0);
-   $878 = HEAP8[$871>>0]|0;
-   $879 = ((($812)) + 7|0);
-   $880 = HEAP8[$873>>0]|0;
-   $881 = $880 ^ $878;
-   $882 = ((($864)) + 3|0);
-   HEAP8[$876>>0] = $881;
-   $883 = ((($0)) + 88|0);
-   $884 = HEAP8[$877>>0]|0;
-   $885 = ((($0)) + 72|0);
-   $886 = HEAP8[$879>>0]|0;
-   $887 = $886 ^ $884;
-   $888 = ((($0)) + 424|0);
-   HEAP8[$882>>0] = $887;
-   $889 = ((($0)) + 89|0);
-   $890 = HEAP8[$883>>0]|0;
-   $891 = ((($0)) + 73|0);
-   $892 = HEAP8[$885>>0]|0;
-   $893 = $892 ^ $890;
-   $894 = ((($888)) + 1|0);
-   HEAP8[$888>>0] = $893;
-   $895 = ((($0)) + 90|0);
-   $896 = HEAP8[$889>>0]|0;
-   $897 = ((($0)) + 74|0);
-   $898 = HEAP8[$891>>0]|0;
-   $899 = $898 ^ $896;
-   $900 = ((($888)) + 2|0);
-   HEAP8[$894>>0] = $899;
-   $901 = ((($0)) + 91|0);
-   $902 = HEAP8[$895>>0]|0;
-   $903 = ((($0)) + 75|0);
-   $904 = HEAP8[$897>>0]|0;
-   $905 = $904 ^ $902;
-   $906 = ((($888)) + 3|0);
-   HEAP8[$900>>0] = $905;
-   $907 = ((($0)) + 92|0);
-   $908 = HEAP8[$901>>0]|0;
-   $909 = ((($0)) + 76|0);
-   $910 = HEAP8[$903>>0]|0;
-   $911 = $910 ^ $908;
-   $912 = ((($0)) + 428|0);
-   HEAP8[$906>>0] = $911;
-   $913 = ((($0)) + 93|0);
-   $914 = HEAP8[$907>>0]|0;
-   $915 = ((($0)) + 77|0);
-   $916 = HEAP8[$909>>0]|0;
-   $917 = $916 ^ $914;
-   $918 = ((($912)) + 1|0);
-   HEAP8[$912>>0] = $917;
-   $919 = ((($0)) + 94|0);
-   $920 = HEAP8[$913>>0]|0;
-   $921 = ((($0)) + 78|0);
-   $922 = HEAP8[$915>>0]|0;
-   $923 = $922 ^ $920;
-   $924 = ((($912)) + 2|0);
-   HEAP8[$918>>0] = $923;
-   $925 = ((($0)) + 95|0);
-   $926 = HEAP8[$919>>0]|0;
-   $927 = ((($0)) + 79|0);
-   $928 = HEAP8[$921>>0]|0;
-   $929 = $928 ^ $926;
-   $930 = ((($912)) + 3|0);
-   HEAP8[$924>>0] = $929;
-   $931 = HEAP8[$925>>0]|0;
-   $932 = HEAP8[$927>>0]|0;
-   $933 = $932 ^ $931;
-   HEAP8[$930>>0] = $933;
-  }
-  $934 = ((($0)) + 144|0);
-  $935 = $934;
-  $936 = $935 | $813;
-  $937 = $936 & 3;
-  $938 = ($937|0)==(0);
-  if ($938) {
-   $939 = ((($0)) + 148|0);
-   $940 = HEAP32[$934>>2]|0;
-   $941 = ((($0)) + 420|0);
-   $942 = HEAP32[$810>>2]|0;
-   $943 = $942 ^ $940;
-   HEAP32[$810>>2] = $943;
-   $944 = ((($0)) + 152|0);
-   $945 = HEAP32[$939>>2]|0;
-   $946 = ((($0)) + 424|0);
-   $947 = HEAP32[$941>>2]|0;
-   $948 = $947 ^ $945;
-   HEAP32[$941>>2] = $948;
-   $949 = ((($0)) + 156|0);
-   $950 = HEAP32[$944>>2]|0;
-   $951 = ((($0)) + 428|0);
-   $952 = HEAP32[$946>>2]|0;
-   $953 = $952 ^ $950;
-   HEAP32[$946>>2] = $953;
-   $954 = HEAP32[$949>>2]|0;
-   $955 = HEAP32[$951>>2]|0;
-   $956 = $955 ^ $954;
-   HEAP32[$951>>2] = $956;
-  } else {
-   $957 = ((($0)) + 145|0);
-   $958 = HEAP8[$934>>0]|0;
-   $959 = ((($810)) + 1|0);
-   $960 = HEAP8[$810>>0]|0;
-   $961 = $960 ^ $958;
-   HEAP8[$810>>0] = $961;
-   $962 = ((($0)) + 146|0);
-   $963 = HEAP8[$957>>0]|0;
-   $964 = ((($810)) + 2|0);
-   $965 = HEAP8[$959>>0]|0;
-   $966 = $965 ^ $963;
-   HEAP8[$959>>0] = $966;
-   $967 = ((($0)) + 147|0);
-   $968 = HEAP8[$962>>0]|0;
-   $969 = ((($810)) + 3|0);
-   $970 = HEAP8[$964>>0]|0;
-   $971 = $970 ^ $968;
-   HEAP8[$964>>0] = $971;
-   $972 = ((($0)) + 148|0);
-   $973 = HEAP8[$967>>0]|0;
-   $974 = ((($0)) + 420|0);
-   $975 = HEAP8[$969>>0]|0;
-   $976 = $975 ^ $973;
-   HEAP8[$969>>0] = $976;
-   $977 = ((($0)) + 149|0);
-   $978 = HEAP8[$972>>0]|0;
-   $979 = ((($974)) + 1|0);
-   $980 = HEAP8[$974>>0]|0;
-   $981 = $980 ^ $978;
-   HEAP8[$974>>0] = $981;
-   $982 = ((($0)) + 150|0);
-   $983 = HEAP8[$977>>0]|0;
-   $984 = ((($974)) + 2|0);
-   $985 = HEAP8[$979>>0]|0;
-   $986 = $985 ^ $983;
-   HEAP8[$979>>0] = $986;
-   $987 = ((($0)) + 151|0);
-   $988 = HEAP8[$982>>0]|0;
-   $989 = ((($974)) + 3|0);
-   $990 = HEAP8[$984>>0]|0;
-   $991 = $990 ^ $988;
-   HEAP8[$984>>0] = $991;
-   $992 = ((($0)) + 152|0);
-   $993 = HEAP8[$987>>0]|0;
-   $994 = ((($0)) + 424|0);
-   $995 = HEAP8[$989>>0]|0;
-   $996 = $995 ^ $993;
-   HEAP8[$989>>0] = $996;
-   $997 = ((($0)) + 153|0);
-   $998 = HEAP8[$992>>0]|0;
-   $999 = ((($994)) + 1|0);
-   $1000 = HEAP8[$994>>0]|0;
-   $1001 = $1000 ^ $998;
-   HEAP8[$994>>0] = $1001;
-   $1002 = ((($0)) + 154|0);
-   $1003 = HEAP8[$997>>0]|0;
-   $1004 = ((($994)) + 2|0);
-   $1005 = HEAP8[$999>>0]|0;
-   $1006 = $1005 ^ $1003;
-   HEAP8[$999>>0] = $1006;
-   $1007 = ((($0)) + 155|0);
-   $1008 = HEAP8[$1002>>0]|0;
-   $1009 = ((($994)) + 3|0);
-   $1010 = HEAP8[$1004>>0]|0;
-   $1011 = $1010 ^ $1008;
-   HEAP8[$1004>>0] = $1011;
-   $1012 = ((($0)) + 156|0);
-   $1013 = HEAP8[$1007>>0]|0;
-   $1014 = ((($0)) + 428|0);
-   $1015 = HEAP8[$1009>>0]|0;
-   $1016 = $1015 ^ $1013;
-   HEAP8[$1009>>0] = $1016;
-   $1017 = ((($0)) + 157|0);
-   $1018 = HEAP8[$1012>>0]|0;
-   $1019 = ((($1014)) + 1|0);
-   $1020 = HEAP8[$1014>>0]|0;
-   $1021 = $1020 ^ $1018;
-   HEAP8[$1014>>0] = $1021;
-   $1022 = ((($0)) + 158|0);
-   $1023 = HEAP8[$1017>>0]|0;
-   $1024 = ((($1014)) + 2|0);
-   $1025 = HEAP8[$1019>>0]|0;
-   $1026 = $1025 ^ $1023;
-   HEAP8[$1019>>0] = $1026;
-   $1027 = ((($0)) + 159|0);
-   $1028 = HEAP8[$1022>>0]|0;
-   $1029 = ((($1014)) + 3|0);
-   $1030 = HEAP8[$1024>>0]|0;
-   $1031 = $1030 ^ $1028;
-   HEAP8[$1024>>0] = $1031;
-   $1032 = HEAP8[$1027>>0]|0;
-   $1033 = HEAP8[$1029>>0]|0;
-   $1034 = $1033 ^ $1032;
-   HEAP8[$1029>>0] = $1034;
-  }
-  $1035 = HEAP32[$18>>2]|0;
-  $1036 = ((($1035)) + 36|0);
-  $1037 = HEAP32[$1036>>2]|0;
-  $1038 = ((($0)) + 496|0);
-  $1039 = (FUNCTION_TABLE_iiii[$1037 & 127]($1038,$810,$810)|0);
-  $1040 = ($1039>>>0)>($$2>>>0);
-  $1041 = $1040 ? $1039 : $$2;
-  $1042 = HEAP8[$14>>0]|0;
-  $1043 = $1042 | 1;
-  HEAP8[$14>>0] = $1043;
-  $$3 = $1041;
- }
- $1044 = ($$3|0)==(0);
- if ($1044) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $1045 = (($$3) + 16)|0;
- ___gcry_burn_stack($1045);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _ocb_checksum($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$045 = 0, $$06 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $3 = ($2|0)==(0);
- if ($3) {
-  return;
- }
- $4 = $0;
- $5 = ((($0)) + 4|0);
- $6 = ((($0)) + 8|0);
- $7 = ((($0)) + 12|0);
- $8 = ((($0)) + 1|0);
- $9 = ((($0)) + 2|0);
- $10 = ((($0)) + 3|0);
- $11 = ((($0)) + 4|0);
- $12 = ((($0)) + 5|0);
- $13 = ((($0)) + 6|0);
- $14 = ((($0)) + 7|0);
- $15 = ((($0)) + 8|0);
- $16 = ((($0)) + 9|0);
- $17 = ((($0)) + 10|0);
- $18 = ((($0)) + 11|0);
- $19 = ((($0)) + 12|0);
- $20 = ((($0)) + 13|0);
- $21 = ((($0)) + 14|0);
- $22 = ((($0)) + 15|0);
- $$045 = $1;$$06 = $2;
- while(1) {
-  $23 = $$045;
-  $24 = $23 | $4;
-  $25 = $24 & 3;
-  $26 = ($25|0)==(0);
-  if ($26) {
-   $27 = ((($$045)) + 4|0);
-   $28 = HEAP32[$$045>>2]|0;
-   $29 = HEAP32[$0>>2]|0;
-   $30 = $29 ^ $28;
-   HEAP32[$0>>2] = $30;
-   $31 = ((($$045)) + 8|0);
-   $32 = HEAP32[$27>>2]|0;
-   $33 = HEAP32[$5>>2]|0;
-   $34 = $33 ^ $32;
-   HEAP32[$5>>2] = $34;
-   $35 = ((($$045)) + 12|0);
-   $36 = HEAP32[$31>>2]|0;
-   $37 = HEAP32[$6>>2]|0;
-   $38 = $37 ^ $36;
-   HEAP32[$6>>2] = $38;
-   $39 = HEAP32[$35>>2]|0;
-   $40 = HEAP32[$7>>2]|0;
-   $41 = $40 ^ $39;
-   HEAP32[$7>>2] = $41;
-  } else {
-   $42 = ((($$045)) + 1|0);
-   $43 = HEAP8[$$045>>0]|0;
-   $44 = HEAP8[$0>>0]|0;
-   $45 = $44 ^ $43;
-   HEAP8[$0>>0] = $45;
-   $46 = ((($$045)) + 2|0);
-   $47 = HEAP8[$42>>0]|0;
-   $48 = HEAP8[$8>>0]|0;
-   $49 = $48 ^ $47;
-   HEAP8[$8>>0] = $49;
-   $50 = ((($$045)) + 3|0);
-   $51 = HEAP8[$46>>0]|0;
-   $52 = HEAP8[$9>>0]|0;
-   $53 = $52 ^ $51;
-   HEAP8[$9>>0] = $53;
-   $54 = ((($$045)) + 4|0);
-   $55 = HEAP8[$50>>0]|0;
-   $56 = HEAP8[$10>>0]|0;
-   $57 = $56 ^ $55;
-   HEAP8[$10>>0] = $57;
-   $58 = ((($$045)) + 5|0);
-   $59 = HEAP8[$54>>0]|0;
-   $60 = HEAP8[$11>>0]|0;
-   $61 = $60 ^ $59;
-   HEAP8[$11>>0] = $61;
-   $62 = ((($$045)) + 6|0);
-   $63 = HEAP8[$58>>0]|0;
-   $64 = HEAP8[$12>>0]|0;
-   $65 = $64 ^ $63;
-   HEAP8[$12>>0] = $65;
-   $66 = ((($$045)) + 7|0);
-   $67 = HEAP8[$62>>0]|0;
-   $68 = HEAP8[$13>>0]|0;
-   $69 = $68 ^ $67;
-   HEAP8[$13>>0] = $69;
-   $70 = ((($$045)) + 8|0);
-   $71 = HEAP8[$66>>0]|0;
-   $72 = HEAP8[$14>>0]|0;
-   $73 = $72 ^ $71;
-   HEAP8[$14>>0] = $73;
-   $74 = ((($$045)) + 9|0);
-   $75 = HEAP8[$70>>0]|0;
-   $76 = HEAP8[$15>>0]|0;
-   $77 = $76 ^ $75;
-   HEAP8[$15>>0] = $77;
-   $78 = ((($$045)) + 10|0);
-   $79 = HEAP8[$74>>0]|0;
-   $80 = HEAP8[$16>>0]|0;
-   $81 = $80 ^ $79;
-   HEAP8[$16>>0] = $81;
-   $82 = ((($$045)) + 11|0);
-   $83 = HEAP8[$78>>0]|0;
-   $84 = HEAP8[$17>>0]|0;
-   $85 = $84 ^ $83;
-   HEAP8[$17>>0] = $85;
-   $86 = ((($$045)) + 12|0);
-   $87 = HEAP8[$82>>0]|0;
-   $88 = HEAP8[$18>>0]|0;
-   $89 = $88 ^ $87;
-   HEAP8[$18>>0] = $89;
-   $90 = ((($$045)) + 13|0);
-   $91 = HEAP8[$86>>0]|0;
-   $92 = HEAP8[$19>>0]|0;
-   $93 = $92 ^ $91;
-   HEAP8[$19>>0] = $93;
-   $94 = ((($$045)) + 14|0);
-   $95 = HEAP8[$90>>0]|0;
-   $96 = HEAP8[$20>>0]|0;
-   $97 = $96 ^ $95;
-   HEAP8[$20>>0] = $97;
-   $98 = ((($$045)) + 15|0);
-   $99 = HEAP8[$94>>0]|0;
-   $100 = HEAP8[$21>>0]|0;
-   $101 = $100 ^ $99;
-   HEAP8[$21>>0] = $101;
-   $102 = HEAP8[$98>>0]|0;
-   $103 = HEAP8[$22>>0]|0;
-   $104 = $103 ^ $102;
-   HEAP8[$22>>0] = $104;
-  }
-  $105 = ((($$045)) + 16|0);
-  $106 = (($$06) + -1)|0;
-  $107 = ($106|0)==(0);
-  if ($107) {
-   break;
-  } else {
-   $$045 = $105;$$06 = $106;
-  }
- }
- return;
-}
-function __gcry_cipher_ocb_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = (_ocb_crypt($0,0,$1,$2,$3,$4)|0);
- return ($5|0);
-}
-function __gcry_cipher_ofb_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0$lcssa = 0, $$0163 = 0, $$0163$us = 0, $$03449$i = 0, $$03449$i116 = 
0, $$03449$i137$us = 0, $$03449$i95 = 0, $$03548$i = 0, $$03548$i117 = 0, 
$$03548$i138$us = 0, $$03548$i96 = 0, $$03647$i = 0, $$03647$i118 = 0, 
$$03647$i139$us = 0, $$03647$i97 = 0, $$037$i = 0, $$037$i143$us = 0, $$039$i = 
0, $$039$i142$us = 0, $$041$i = 0;
- var $$041$i141$us = 0, $$050$i = 0, $$050$i115 = 0, $$050$i136$us = 0, 
$$050$i94 = 0, $$082 = 0, $$083 = 0, $$085 = 0, $$087 = 0, $$1 = 0, $$1$i = 0, 
$$1$i144$us = 0, $$13845$i = 0, $$13845$i106 = 0, $$13845$i106$ph = 0, 
$$13845$i127 = 0, $$13845$i127$ph = 0, $$13845$i148 = 0, $$13845$i148$us = 0, 
$$14044$i = 0;
- var $$14044$i107 = 0, $$14044$i107$ph = 0, $$14044$i128 = 0, $$14044$i128$ph 
= 0, $$14044$i149 = 0, $$14044$i149$us = 0, $$14243$i = 0, $$14243$i108 = 0, 
$$14243$i108$ph = 0, $$14243$i129 = 0, $$14243$i129$ph = 0, $$14243$i150 = 0, 
$$14243$i150$us = 0, $$184$lcssa = 0, $$184162 = 0, $$184162$us = 0, 
$$186$lcssa = 0, $$186161 = 0, $$186161$us = 0, $$188$lcssa = 0;
- var $$188160 = 0, $$188160$us = 0, $$246$i = 0, $$246$i105 = 0, $$246$i105$ph 
= 0, $$246$i126 = 0, $$246$i126$ph = 0, $$246$i147 = 0, $$246$i147$us = 0, 
$$pre = 0, $$pre175 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 
= 0, $105 = 0, $106 = 0, $107 = 0;
- var $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 
= 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0;
- var $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 
= 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0;
- var $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 
= 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0;
- var $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, 
$169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, 
$176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0;
- var $180 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond$i 
= 0, $or$cond$i110 = 0, $or$cond$i89 = 0, $scevgep$i = 0, $scevgep$i111 = 0, 
$scevgep$i132 = 0, $scevgep$i90 = 0, $scevgep61$i = 0, $scevgep61$i112 = 0, 
$scevgep61$i133$us = 0, $scevgep61$i91 = 0, $scevgep63$i = 0, $scevgep63$i113 = 
0;
- var $scevgep63$i134$us = 0, $scevgep63$i92 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 12|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ((($6)) + 36|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($6)) + 20|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($2>>>0)<($4>>>0);
- if ($11) {
-  $$082 = 200;
-  return ($$082|0);
- }
- $12 = ((($0)) + 112|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ($13>>>0)<($4>>>0);
- if (!($14)) {
-  $15 = ((($0)) + 64|0);
-  $16 = (($15) + ($10)|0);
-  $17 = (0 - ($13))|0;
-  $18 = (($16) + ($17)|0);
-  $19 = $1;
-  $20 = $18;
-  $21 = $3;
-  $22 = $21 | $19;
-  $23 = $22 | $20;
-  $24 = $23 & 3;
-  $25 = ($24|0)==(0);
-  $26 = ($4>>>0)>(3);
-  $or$cond$i = $26 & $25;
-  if ($or$cond$i) {
-   $27 = (($4) + -4)|0;
-   $28 = $27 & -4;
-   $29 = (($28) + 4)|0;
-   $scevgep61$i = (($3) + ($29)|0);
-   $$03449$i = $3;$$03548$i = $18;$$03647$i = $1;$$050$i = $4;
-   while(1) {
-    $30 = ((($$03548$i)) + 4|0);
-    $31 = HEAP32[$$03548$i>>2]|0;
-    $32 = ((($$03449$i)) + 4|0);
-    $33 = HEAP32[$$03449$i>>2]|0;
-    $34 = $33 ^ $31;
-    $35 = ((($$03647$i)) + 4|0);
-    HEAP32[$$03647$i>>2] = $34;
-    $36 = (($$050$i) + -4)|0;
-    $37 = ($36>>>0)>(3);
-    if ($37) {
-     $$03449$i = $32;$$03548$i = $30;$$03647$i = $35;$$050$i = $36;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i = (($18) + ($29)|0);
-   $scevgep63$i = (($1) + ($29)|0);
-   $38 = (($27) - ($28))|0;
-   $$037$i = $scevgep61$i;$$039$i = $scevgep$i;$$041$i = $scevgep63$i;$$1$i = 
$38;
-  } else {
-   $$037$i = $3;$$039$i = $18;$$041$i = $1;$$1$i = $4;
-  }
-  $39 = ($$1$i|0)==(0);
-  if ($39) {
-   $49 = $13;
-  } else {
-   $$13845$i = $$037$i;$$14044$i = $$039$i;$$14243$i = $$041$i;$$246$i = $$1$i;
-   while(1) {
-    $40 = ((($$14044$i)) + 1|0);
-    $41 = HEAP8[$$14044$i>>0]|0;
-    $42 = ((($$13845$i)) + 1|0);
-    $43 = HEAP8[$$13845$i>>0]|0;
-    $44 = $43 ^ $41;
-    $45 = ((($$14243$i)) + 1|0);
-    HEAP8[$$14243$i>>0] = $44;
-    $46 = (($$246$i) + -1)|0;
-    $47 = ($46|0)==(0);
-    if ($47) {
-     break;
-    } else {
-     $$13845$i = $42;$$14044$i = $40;$$14243$i = $45;$$246$i = $46;
-    }
-   }
-   $$pre = HEAP32[$12>>2]|0;
-   $49 = $$pre;
-  }
-  $48 = (($49) - ($4))|0;
-  HEAP32[$12>>2] = $48;
-  $$082 = 0;
-  return ($$082|0);
- }
- $50 = ($13|0)==(0);
- if ($50) {
-  $$083 = $1;$$085 = $4;$$087 = $3;
- } else {
-  $51 = (($4) - ($13))|0;
-  $52 = ((($0)) + 64|0);
-  $53 = (($52) + ($10)|0);
-  $54 = (0 - ($13))|0;
-  $55 = (($53) + ($54)|0);
-  $56 = $1;
-  $57 = $55;
-  $58 = $3;
-  $59 = $58 | $56;
-  $60 = $59 | $57;
-  $61 = $60 & 3;
-  $62 = ($61|0)==(0);
-  $63 = ($13>>>0)>(3);
-  $or$cond$i110 = $63 & $62;
-  if ($or$cond$i110) {
-   $64 = (($13) + -4)|0;
-   $65 = $64 & -4;
-   $66 = (($65) + 4)|0;
-   $scevgep61$i112 = (($3) + ($66)|0);
-   $$03449$i116 = $3;$$03548$i117 = $55;$$03647$i118 = $1;$$050$i115 = $13;
-   while(1) {
-    $67 = ((($$03548$i117)) + 4|0);
-    $68 = HEAP32[$$03548$i117>>2]|0;
-    $69 = ((($$03449$i116)) + 4|0);
-    $70 = HEAP32[$$03449$i116>>2]|0;
-    $71 = $70 ^ $68;
-    $72 = ((($$03647$i118)) + 4|0);
-    HEAP32[$$03647$i118>>2] = $71;
-    $73 = (($$050$i115) + -4)|0;
-    $74 = ($73>>>0)>(3);
-    if ($74) {
-     $$03449$i116 = $69;$$03548$i117 = $67;$$03647$i118 = $72;$$050$i115 = $73;
-    } else {
-     break;
-    }
-   }
-   $scevgep$i111 = (($55) + ($66)|0);
-   $scevgep63$i113 = (($1) + ($66)|0);
-   $75 = (($64) - ($65))|0;
-   $76 = ($75|0)==(0);
-   if ($76) {
-    $86 = $13;
-   } else {
-    $$13845$i127$ph = $scevgep61$i112;$$14044$i128$ph = 
$scevgep$i111;$$14243$i129$ph = $scevgep63$i113;$$246$i126$ph = $75;
-    label = 17;
-   }
-  } else {
-   $$13845$i127$ph = $3;$$14044$i128$ph = $55;$$14243$i129$ph = 
$1;$$246$i126$ph = $13;
-   label = 17;
-  }
-  if ((label|0) == 17) {
-   $$13845$i127 = $$13845$i127$ph;$$14044$i128 = $$14044$i128$ph;$$14243$i129 
= $$14243$i129$ph;$$246$i126 = $$246$i126$ph;
-   while(1) {
-    $77 = ((($$14044$i128)) + 1|0);
-    $78 = HEAP8[$$14044$i128>>0]|0;
-    $79 = ((($$13845$i127)) + 1|0);
-    $80 = HEAP8[$$13845$i127>>0]|0;
-    $81 = $80 ^ $78;
-    $82 = ((($$14243$i129)) + 1|0);
-    HEAP8[$$14243$i129>>0] = $81;
-    $83 = (($$246$i126) + -1)|0;
-    $84 = ($83|0)==(0);
-    if ($84) {
-     break;
-    } else {
-     $$13845$i127 = $79;$$14044$i128 = $77;$$14243$i129 = $82;$$246$i126 = $83;
-    }
-   }
-   $$pre175 = HEAP32[$12>>2]|0;
-   $86 = $$pre175;
-  }
-  $85 = (($1) + ($86)|0);
-  $87 = (($3) + ($86)|0);
-  HEAP32[$12>>2] = 0;
-  $$083 = $85;$$085 = $51;$$087 = $87;
- }
- $88 = ($$085>>>0)<($10>>>0);
- L34: do {
-  if ($88) {
-   $$0$lcssa = 0;$$184$lcssa = $$083;$$186$lcssa = $$085;$$188$lcssa = $$087;
-  } else {
-   $89 = ((($0)) + 496|0);
-   $90 = ((($0)) + 64|0);
-   $91 = $90;
-   $92 = ($10>>>0)>(3);
-   $93 = (($10) + -4)|0;
-   $94 = $93 & -4;
-   $95 = (($94) + 4)|0;
-   $scevgep$i132 = (($90) + ($95)|0);
-   $96 = (($93) - ($94))|0;
-   if (!($92)) {
-    $127 = ($10|0)==(0);
-    $$0163 = 0;$$184162 = $$083;$$186161 = $$085;$$188160 = $$087;
-    while(1) {
-     $128 = (FUNCTION_TABLE_iiii[$8 & 127]($89,$90,$90)|0);
-     $129 = ($128>>>0)>($$0163>>>0);
-     $130 = $129 ? $128 : $$0163;
-     if (!($127)) {
-      $$13845$i148 = $$188160;$$14044$i149 = $90;$$14243$i150 = 
$$184162;$$246$i147 = $10;
-      while(1) {
-       $131 = ((($$14044$i149)) + 1|0);
-       $132 = HEAP8[$$14044$i149>>0]|0;
-       $133 = ((($$13845$i148)) + 1|0);
-       $134 = HEAP8[$$13845$i148>>0]|0;
-       $135 = $134 ^ $132;
-       $136 = ((($$14243$i150)) + 1|0);
-       HEAP8[$$14243$i150>>0] = $135;
-       $137 = (($$246$i147) + -1)|0;
-       $138 = ($137|0)==(0);
-       if ($138) {
-        break;
-       } else {
-        $$13845$i148 = $133;$$14044$i149 = $131;$$14243$i150 = $136;$$246$i147 
= $137;
-       }
-      }
-     }
-     $139 = (($$184162) + ($10)|0);
-     $140 = (($$188160) + ($10)|0);
-     $141 = (($$186161) - ($10))|0;
-     $142 = ($141>>>0)<($10>>>0);
-     if ($142) {
-      $$0$lcssa = $130;$$184$lcssa = $139;$$186$lcssa = $141;$$188$lcssa = 
$140;
-      break L34;
-     } else {
-      $$0163 = $130;$$184162 = $139;$$186161 = $141;$$188160 = $140;
-     }
-    }
-   }
-   $$0163$us = 0;$$184162$us = $$083;$$186161$us = $$085;$$188160$us = $$087;
-   while(1) {
-    $97 = (FUNCTION_TABLE_iiii[$8 & 127]($89,$90,$90)|0);
-    $98 = ($97>>>0)>($$0163$us>>>0);
-    $99 = $98 ? $97 : $$0163$us;
-    $100 = $$184162$us;
-    $101 = $$188160$us;
-    $102 = $101 | $91;
-    $103 = $102 | $100;
-    $104 = $103 & 3;
-    $105 = ($104|0)==(0);
-    if ($105) {
-     $scevgep61$i133$us = (($$188160$us) + ($95)|0);
-     $$03449$i137$us = $$188160$us;$$03548$i138$us = $90;$$03647$i139$us = 
$$184162$us;$$050$i136$us = $10;
-     while(1) {
-      $106 = ((($$03548$i138$us)) + 4|0);
-      $107 = HEAP32[$$03548$i138$us>>2]|0;
-      $108 = ((($$03449$i137$us)) + 4|0);
-      $109 = HEAP32[$$03449$i137$us>>2]|0;
-      $110 = $109 ^ $107;
-      $111 = ((($$03647$i139$us)) + 4|0);
-      HEAP32[$$03647$i139$us>>2] = $110;
-      $112 = (($$050$i136$us) + -4)|0;
-      $113 = ($112>>>0)>(3);
-      if ($113) {
-       $$03449$i137$us = $108;$$03548$i138$us = $106;$$03647$i139$us = 
$111;$$050$i136$us = $112;
-      } else {
-       break;
-      }
-     }
-     $scevgep63$i134$us = (($$184162$us) + ($95)|0);
-     $$037$i143$us = $scevgep61$i133$us;$$039$i142$us = 
$scevgep$i132;$$041$i141$us = $scevgep63$i134$us;$$1$i144$us = $96;
-    } else {
-     $$037$i143$us = $$188160$us;$$039$i142$us = $90;$$041$i141$us = 
$$184162$us;$$1$i144$us = $10;
-    }
-    $114 = ($$1$i144$us|0)==(0);
-    if (!($114)) {
-     $$13845$i148$us = $$037$i143$us;$$14044$i149$us = 
$$039$i142$us;$$14243$i150$us = $$041$i141$us;$$246$i147$us = $$1$i144$us;
-     while(1) {
-      $115 = ((($$14044$i149$us)) + 1|0);
-      $116 = HEAP8[$$14044$i149$us>>0]|0;
-      $117 = ((($$13845$i148$us)) + 1|0);
-      $118 = HEAP8[$$13845$i148$us>>0]|0;
-      $119 = $118 ^ $116;
-      $120 = ((($$14243$i150$us)) + 1|0);
-      HEAP8[$$14243$i150$us>>0] = $119;
-      $121 = (($$246$i147$us) + -1)|0;
-      $122 = ($121|0)==(0);
-      if ($122) {
-       break;
-      } else {
-       $$13845$i148$us = $117;$$14044$i149$us = $115;$$14243$i150$us = 
$120;$$246$i147$us = $121;
-      }
-     }
-    }
-    $123 = (($$184162$us) + ($10)|0);
-    $124 = (($$188160$us) + ($10)|0);
-    $125 = (($$186161$us) - ($10))|0;
-    $126 = ($125>>>0)<($10>>>0);
-    if ($126) {
-     $$0$lcssa = $99;$$184$lcssa = $123;$$186$lcssa = $125;$$188$lcssa = $124;
-     break;
-    } else {
-     $$0163$us = $99;$$184162$us = $123;$$186161$us = $125;$$188160$us = $124;
-    }
-   }
-  }
- } while(0);
- $143 = ($$186$lcssa|0)==(0);
- do {
-  if ($143) {
-   $$1 = $$0$lcssa;
-  } else {
-   $144 = ((($0)) + 496|0);
-   $145 = ((($0)) + 64|0);
-   $146 = (FUNCTION_TABLE_iiii[$8 & 127]($144,$145,$145)|0);
-   $147 = ($146>>>0)>($$0$lcssa>>>0);
-   $148 = $147 ? $146 : $$0$lcssa;
-   $149 = (($10) - ($$186$lcssa))|0;
-   HEAP32[$12>>2] = $149;
-   $150 = $$184$lcssa;
-   $151 = $145;
-   $152 = $$188$lcssa;
-   $153 = $152 | $151;
-   $154 = $153 | $150;
-   $155 = $154 & 3;
-   $156 = ($155|0)==(0);
-   $157 = ($$186$lcssa>>>0)>(3);
-   $or$cond$i89 = $157 & $156;
-   if ($or$cond$i89) {
-    $158 = (($$186$lcssa) + -4)|0;
-    $159 = $158 & -4;
-    $160 = (($159) + 4)|0;
-    $scevgep61$i91 = (($$188$lcssa) + ($160)|0);
-    $$03449$i95 = $$188$lcssa;$$03548$i96 = $145;$$03647$i97 = 
$$184$lcssa;$$050$i94 = $$186$lcssa;
-    while(1) {
-     $161 = ((($$03548$i96)) + 4|0);
-     $162 = HEAP32[$$03548$i96>>2]|0;
-     $163 = ((($$03449$i95)) + 4|0);
-     $164 = HEAP32[$$03449$i95>>2]|0;
-     $165 = $164 ^ $162;
-     $166 = ((($$03647$i97)) + 4|0);
-     HEAP32[$$03647$i97>>2] = $165;
-     $167 = (($$050$i94) + -4)|0;
-     $168 = ($167>>>0)>(3);
-     if ($168) {
-      $$03449$i95 = $163;$$03548$i96 = $161;$$03647$i97 = $166;$$050$i94 = 
$167;
-     } else {
-      break;
-     }
-    }
-    $scevgep$i90 = (($145) + ($160)|0);
-    $scevgep63$i92 = (($$184$lcssa) + ($160)|0);
-    $169 = (($158) - ($159))|0;
-    $170 = ($169|0)==(0);
-    if ($170) {
-     $$1 = $148;
-     break;
-    } else {
-     $$13845$i106$ph = $scevgep61$i91;$$14044$i107$ph = 
$scevgep$i90;$$14243$i108$ph = $scevgep63$i92;$$246$i105$ph = $169;
-    }
-   } else {
-    $$13845$i106$ph = $$188$lcssa;$$14044$i107$ph = $145;$$14243$i108$ph = 
$$184$lcssa;$$246$i105$ph = $$186$lcssa;
-   }
-   $$13845$i106 = $$13845$i106$ph;$$14044$i107 = $$14044$i107$ph;$$14243$i108 
= $$14243$i108$ph;$$246$i105 = $$246$i105$ph;
-   while(1) {
-    $171 = ((($$14044$i107)) + 1|0);
-    $172 = HEAP8[$$14044$i107>>0]|0;
-    $173 = ((($$13845$i106)) + 1|0);
-    $174 = HEAP8[$$13845$i106>>0]|0;
-    $175 = $174 ^ $172;
-    $176 = ((($$14243$i108)) + 1|0);
-    HEAP8[$$14243$i108>>0] = $175;
-    $177 = (($$246$i105) + -1)|0;
-    $178 = ($177|0)==(0);
-    if ($178) {
-     $$1 = $148;
-     break;
-    } else {
-     $$13845$i106 = $173;$$14044$i107 = $171;$$14243$i108 = $176;$$246$i105 = 
$177;
-    }
-   }
-  }
- } while(0);
- $179 = ($$1|0)==(0);
- if ($179) {
-  $$082 = 0;
-  return ($$082|0);
- }
- $180 = (($$1) + 16)|0;
- ___gcry_burn_stack($180);
- $$082 = 0;
- return ($$082|0);
-}
-function __gcry_cipher_poly1305_encrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$phi24Z2D = 0, $$pre21 = 
0, $$pre23 = 0, $$val$i = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $5 = sp;
- $6 = sp + 64|0;
- $7 = ($2>>>0)<($4>>>0);
- if ($7) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = ((($0)) + 56|0);
- $9 = HEAP8[$8>>0]|0;
- $10 = $9 & 4;
- $11 = ($10<<24>>24)==(0);
- if (!($11)) {
-  $$0 = 156;
-  STACKTOP = sp;return ($$0|0);
- }
- $12 = ((($0)) + 144|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13 & 2;
- $15 = ($14<<24>>24)==(0);
- if (!($15)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = $9 & 2;
- $17 = ($16<<24>>24)==(0);
- do {
-  if ($17) {
-   $18 = $6;
-   $19 = $18;
-   HEAP32[$19>>2] = 0;
-   $20 = (($18) + 4)|0;
-   $21 = $20;
-   HEAP32[$21>>2] = 0;
-   $22 = ((($0)) + 128|0);
-   $23 = ((($0)) + 148|0);
-   dest=$23; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-   HEAP32[$22>>2] = 0;
-   $24 = ((($22)) + 4|0);
-   HEAP32[$24>>2] = 0;
-   $25 = ((($0)) + 136|0);
-   HEAP32[$25>>2] = 0;
-   $26 = ((($0)) + 140|0);
-   HEAP32[$26>>2] = 0;
-   $27 = $13 & -4;
-   HEAP8[$12>>0] = $27;
-   $28 = $9 & -7;
-   HEAP8[$8>>0] = $28;
-   $29 = ((($0)) + 12|0);
-   $30 = HEAP32[$29>>2]|0;
-   $31 = ((($30)) + 60|0);
-   $32 = HEAP32[$31>>2]|0;
-   $33 = ((($0)) + 496|0);
-   FUNCTION_TABLE_viii[$32 & 127]($33,$6,8);
-   dest=$5; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-   $34 = HEAP32[$29>>2]|0;
-   $35 = ((($34)) + 44|0);
-   $36 = HEAP32[$35>>2]|0;
-   FUNCTION_TABLE_viiii[$36 & 63]($33,$5,$5,64);
-   $37 = (__gcry_poly1305_init($23,$5,32)|0);
-   $38 = $5;
-   $39 = $38;
-   HEAP32[$39>>2] = 0;
-   $40 = (($38) + 4)|0;
-   $41 = $40;
-   HEAP32[$41>>2] = 0;
-   $42 = ((($5)) + 8|0);
-   $43 = $42;
-   $44 = $43;
-   HEAP32[$44>>2] = 0;
-   $45 = (($43) + 4)|0;
-   $46 = $45;
-   HEAP32[$46>>2] = 0;
-   $47 = ((($5)) + 16|0);
-   $48 = $47;
-   $49 = $48;
-   HEAP32[$49>>2] = 0;
-   $50 = (($48) + 4)|0;
-   $51 = $50;
-   HEAP32[$51>>2] = 0;
-   $52 = ((($5)) + 24|0);
-   $53 = $52;
-   $54 = $53;
-   HEAP32[$54>>2] = 0;
-   $55 = (($53) + 4)|0;
-   $56 = $55;
-   HEAP32[$56>>2] = 0;
-   $57 = ((($5)) + 32|0);
-   $58 = $57;
-   $59 = $58;
-   HEAP32[$59>>2] = 0;
-   $60 = (($58) + 4)|0;
-   $61 = $60;
-   HEAP32[$61>>2] = 0;
-   $62 = ((($5)) + 40|0);
-   $63 = $62;
-   $64 = $63;
-   HEAP32[$64>>2] = 0;
-   $65 = (($63) + 4)|0;
-   $66 = $65;
-   HEAP32[$66>>2] = 0;
-   $67 = ((($5)) + 48|0);
-   $68 = $67;
-   $69 = $68;
-   HEAP32[$69>>2] = 0;
-   $70 = (($68) + 4)|0;
-   $71 = $70;
-   HEAP32[$71>>2] = 0;
-   $72 = ((($5)) + 56|0);
-   $73 = $72;
-   $74 = $73;
-   HEAP32[$74>>2] = 0;
-   $75 = (($73) + 4)|0;
-   $76 = $75;
-   HEAP32[$76>>2] = 0;
-   $77 = ($37|0)==(0);
-   if ($77) {
-    $78 = HEAP8[$8>>0]|0;
-    $79 = $78 | 2;
-    HEAP8[$8>>0] = $79;
-    $$pre = HEAP8[$12>>0]|0;
-    $81 = $$pre;
-    break;
-   }
-   $$0 = $37;
-   STACKTOP = sp;return ($$0|0);
-  } else {
-   $81 = $13;
-  }
- } while(0);
- $80 = $81 & 1;
- $82 = ($80<<24>>24)==(0);
- if ($82) {
-  $83 = ((($0)) + 128|0);
-  $$val$i = HEAP32[$83>>2]|0;
-  $84 = $$val$i & 15;
-  $85 = ($84|0)==(0);
-  if ($85) {
-   $89 = $81;
-  } else {
-   $86 = ((($0)) + 148|0);
-   $87 = (16 - ($84))|0;
-   __gcry_poly1305_update($86,73322,$87);
-   $$pre21 = HEAP8[$12>>0]|0;
-   $89 = $$pre21;
-  }
-  $88 = $89 | 1;
-  HEAP8[$12>>0] = $88;
-  $90 = ((($0)) + 136|0);
-  HEAP32[$90>>2] = 0;
-  $91 = ((($0)) + 140|0);
-  HEAP32[$91>>2] = 0;
-  $$pre$phi24Z2D = $90;$100 = $88;$93 = 0;
- } else {
-  $$phi$trans$insert = ((($0)) + 136|0);
-  $$pre23 = HEAP32[$$phi$trans$insert>>2]|0;
-  $$pre$phi24Z2D = $$phi$trans$insert;$100 = $81;$93 = $$pre23;
- }
- $92 = (($93) + ($4))|0;
- HEAP32[$$pre$phi24Z2D>>2] = $92;
- $94 = ($92>>>0)<($4>>>0);
- if ($94) {
-  $95 = ((($0)) + 140|0);
-  $96 = HEAP32[$95>>2]|0;
-  $97 = (($96) + 1)|0;
-  HEAP32[$95>>2] = $97;
-  $98 = ($97|0)==(0);
-  if ($98) {
-   $99 = $100 | 2;
-   HEAP8[$12>>0] = $99;
-   $$0 = 139;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $101 = ((($0)) + 12|0);
- $102 = HEAP32[$101>>2]|0;
- $103 = ((($102)) + 44|0);
- $104 = HEAP32[$103>>2]|0;
- $105 = ((($0)) + 496|0);
- FUNCTION_TABLE_viiii[$104 & 63]($105,$1,$3,$4);
- $106 = ((($0)) + 148|0);
- __gcry_poly1305_update($106,$1,$4);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_poly1305_decrypt($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$phi24Z2D = 0, $$pre21 = 
0, $$pre23 = 0, $$val$i = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 
0, $33 = 0, $34 = 0, $35 = 0;
- var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0;
- var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0;
- var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 
0, $89 = 0, $9 = 0, $90 = 0;
- var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, 
$99 = 0, dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $5 = sp;
- $6 = sp + 64|0;
- $7 = ($2>>>0)<($4>>>0);
- if ($7) {
-  $$0 = 200;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = ((($0)) + 56|0);
- $9 = HEAP8[$8>>0]|0;
- $10 = $9 & 4;
- $11 = ($10<<24>>24)==(0);
- if (!($11)) {
-  $$0 = 156;
-  STACKTOP = sp;return ($$0|0);
- }
- $12 = ((($0)) + 144|0);
- $13 = HEAP8[$12>>0]|0;
- $14 = $13 & 2;
- $15 = ($14<<24>>24)==(0);
- if (!($15)) {
-  $$0 = 139;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = $9 & 2;
- $17 = ($16<<24>>24)==(0);
- do {
-  if ($17) {
-   $18 = $6;
-   $19 = $18;
-   HEAP32[$19>>2] = 0;
-   $20 = (($18) + 4)|0;
-   $21 = $20;
-   HEAP32[$21>>2] = 0;
-   $22 = ((($0)) + 128|0);
-   $23 = ((($0)) + 148|0);
-   dest=$23; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-   HEAP32[$22>>2] = 0;
-   $24 = ((($22)) + 4|0);
-   HEAP32[$24>>2] = 0;
-   $25 = ((($0)) + 136|0);
-   HEAP32[$25>>2] = 0;
-   $26 = ((($0)) + 140|0);
-   HEAP32[$26>>2] = 0;
-   $27 = $13 & -4;
-   HEAP8[$12>>0] = $27;
-   $28 = $9 & -7;
-   HEAP8[$8>>0] = $28;
-   $29 = ((($0)) + 12|0);
-   $30 = HEAP32[$29>>2]|0;
-   $31 = ((($30)) + 60|0);
-   $32 = HEAP32[$31>>2]|0;
-   $33 = ((($0)) + 496|0);
-   FUNCTION_TABLE_viii[$32 & 127]($33,$6,8);
-   dest=$5; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-   $34 = HEAP32[$29>>2]|0;
-   $35 = ((($34)) + 44|0);
-   $36 = HEAP32[$35>>2]|0;
-   FUNCTION_TABLE_viiii[$36 & 63]($33,$5,$5,64);
-   $37 = (__gcry_poly1305_init($23,$5,32)|0);
-   $38 = $5;
-   $39 = $38;
-   HEAP32[$39>>2] = 0;
-   $40 = (($38) + 4)|0;
-   $41 = $40;
-   HEAP32[$41>>2] = 0;
-   $42 = ((($5)) + 8|0);
-   $43 = $42;
-   $44 = $43;
-   HEAP32[$44>>2] = 0;
-   $45 = (($43) + 4)|0;
-   $46 = $45;
-   HEAP32[$46>>2] = 0;
-   $47 = ((($5)) + 16|0);
-   $48 = $47;
-   $49 = $48;
-   HEAP32[$49>>2] = 0;
-   $50 = (($48) + 4)|0;
-   $51 = $50;
-   HEAP32[$51>>2] = 0;
-   $52 = ((($5)) + 24|0);
-   $53 = $52;
-   $54 = $53;
-   HEAP32[$54>>2] = 0;
-   $55 = (($53) + 4)|0;
-   $56 = $55;
-   HEAP32[$56>>2] = 0;
-   $57 = ((($5)) + 32|0);
-   $58 = $57;
-   $59 = $58;
-   HEAP32[$59>>2] = 0;
-   $60 = (($58) + 4)|0;
-   $61 = $60;
-   HEAP32[$61>>2] = 0;
-   $62 = ((($5)) + 40|0);
-   $63 = $62;
-   $64 = $63;
-   HEAP32[$64>>2] = 0;
-   $65 = (($63) + 4)|0;
-   $66 = $65;
-   HEAP32[$66>>2] = 0;
-   $67 = ((($5)) + 48|0);
-   $68 = $67;
-   $69 = $68;
-   HEAP32[$69>>2] = 0;
-   $70 = (($68) + 4)|0;
-   $71 = $70;
-   HEAP32[$71>>2] = 0;
-   $72 = ((($5)) + 56|0);
-   $73 = $72;
-   $74 = $73;
-   HEAP32[$74>>2] = 0;
-   $75 = (($73) + 4)|0;
-   $76 = $75;
-   HEAP32[$76>>2] = 0;
-   $77 = ($37|0)==(0);
-   if ($77) {
-    $78 = HEAP8[$8>>0]|0;
-    $79 = $78 | 2;
-    HEAP8[$8>>0] = $79;
-    $$pre = HEAP8[$12>>0]|0;
-    $81 = $$pre;
-    break;
-   }
-   $$0 = $37;
-   STACKTOP = sp;return ($$0|0);
-  } else {
-   $81 = $13;
-  }
- } while(0);
- $80 = $81 & 1;
- $82 = ($80<<24>>24)==(0);
- if ($82) {
-  $83 = ((($0)) + 128|0);
-  $$val$i = HEAP32[$83>>2]|0;
-  $84 = $$val$i & 15;
-  $85 = ($84|0)==(0);
-  if ($85) {
-   $89 = $81;
-  } else {
-   $86 = ((($0)) + 148|0);
-   $87 = (16 - ($84))|0;
-   __gcry_poly1305_update($86,73322,$87);
-   $$pre21 = HEAP8[$12>>0]|0;
-   $89 = $$pre21;
-  }
-  $88 = $89 | 1;
-  HEAP8[$12>>0] = $88;
-  $90 = ((($0)) + 136|0);
-  HEAP32[$90>>2] = 0;
-  $91 = ((($0)) + 140|0);
-  HEAP32[$91>>2] = 0;
-  $$pre$phi24Z2D = $90;$100 = $88;$93 = 0;
- } else {
-  $$phi$trans$insert = ((($0)) + 136|0);
-  $$pre23 = HEAP32[$$phi$trans$insert>>2]|0;
-  $$pre$phi24Z2D = $$phi$trans$insert;$100 = $81;$93 = $$pre23;
- }
- $92 = (($93) + ($4))|0;
- HEAP32[$$pre$phi24Z2D>>2] = $92;
- $94 = ($92>>>0)<($4>>>0);
- if ($94) {
-  $95 = ((($0)) + 140|0);
-  $96 = HEAP32[$95>>2]|0;
-  $97 = (($96) + 1)|0;
-  HEAP32[$95>>2] = $97;
-  $98 = ($97|0)==(0);
-  if ($98) {
-   $99 = $100 | 2;
-   HEAP8[$12>>0] = $99;
-   $$0 = 139;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $101 = ((($0)) + 148|0);
- __gcry_poly1305_update($101,$3,$4);
- $102 = ((($0)) + 12|0);
- $103 = HEAP32[$102>>2]|0;
- $104 = ((($103)) + 48|0);
- $105 = HEAP32[$104>>2]|0;
- $106 = ((($0)) + 496|0);
- FUNCTION_TABLE_viiii[$105 & 63]($106,$1,$3,$4);
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_cipher_poly1305_setkey($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 128|0);
- HEAP32[$1>>2] = 0;
- $2 = ((($1)) + 4|0);
- HEAP32[$2>>2] = 0;
- $3 = ((($0)) + 136|0);
- HEAP32[$3>>2] = 0;
- $4 = ((($0)) + 140|0);
- HEAP32[$4>>2] = 0;
- $5 = ((($0)) + 144|0);
- $6 = HEAP8[$5>>0]|0;
- $7 = $6 & -4;
- HEAP8[$5>>0] = $7;
- $8 = ((($0)) + 56|0);
- $9 = HEAP8[$8>>0]|0;
- $10 = $9 & -7;
- HEAP8[$8>>0] = $10;
- return;
-}
-function __gcry_cipher_poly1305_setiv($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, dest = 
0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $3 = sp;
- $4 = ($1|0)==(0|0);
- $5 = ($2|0)!=(12);
- $or$cond = $4 & $5;
- if ($or$cond) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $6 = ((($0)) + 128|0);
- $7 = ((($0)) + 148|0);
- dest=$7; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- HEAP32[$6>>2] = 0;
- $8 = ((($6)) + 4|0);
- HEAP32[$8>>2] = 0;
- $9 = ((($0)) + 136|0);
- HEAP32[$9>>2] = 0;
- $10 = ((($0)) + 140|0);
- HEAP32[$10>>2] = 0;
- $11 = ((($0)) + 144|0);
- $12 = HEAP8[$11>>0]|0;
- $13 = $12 & -4;
- HEAP8[$11>>0] = $13;
- $14 = ((($0)) + 56|0);
- $15 = HEAP8[$14>>0]|0;
- $16 = $15 & -7;
- HEAP8[$14>>0] = $16;
- $17 = ((($0)) + 12|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = ((($18)) + 60|0);
- $20 = HEAP32[$19>>2]|0;
- $21 = ((($0)) + 496|0);
- FUNCTION_TABLE_viii[$20 & 127]($21,$1,$2);
- dest=$3; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $22 = HEAP32[$17>>2]|0;
- $23 = ((($22)) + 44|0);
- $24 = HEAP32[$23>>2]|0;
- FUNCTION_TABLE_viiii[$24 & 63]($21,$3,$3,64);
- $25 = (__gcry_poly1305_init($7,$3,32)|0);
- $26 = $3;
- $27 = $26;
- HEAP32[$27>>2] = 0;
- $28 = (($26) + 4)|0;
- $29 = $28;
- HEAP32[$29>>2] = 0;
- $30 = ((($3)) + 8|0);
- $31 = $30;
- $32 = $31;
- HEAP32[$32>>2] = 0;
- $33 = (($31) + 4)|0;
- $34 = $33;
- HEAP32[$34>>2] = 0;
- $35 = ((($3)) + 16|0);
- $36 = $35;
- $37 = $36;
- HEAP32[$37>>2] = 0;
- $38 = (($36) + 4)|0;
- $39 = $38;
- HEAP32[$39>>2] = 0;
- $40 = ((($3)) + 24|0);
- $41 = $40;
- $42 = $41;
- HEAP32[$42>>2] = 0;
- $43 = (($41) + 4)|0;
- $44 = $43;
- HEAP32[$44>>2] = 0;
- $45 = ((($3)) + 32|0);
- $46 = $45;
- $47 = $46;
- HEAP32[$47>>2] = 0;
- $48 = (($46) + 4)|0;
- $49 = $48;
- HEAP32[$49>>2] = 0;
- $50 = ((($3)) + 40|0);
- $51 = $50;
- $52 = $51;
- HEAP32[$52>>2] = 0;
- $53 = (($51) + 4)|0;
- $54 = $53;
- HEAP32[$54>>2] = 0;
- $55 = ((($3)) + 48|0);
- $56 = $55;
- $57 = $56;
- HEAP32[$57>>2] = 0;
- $58 = (($56) + 4)|0;
- $59 = $58;
- HEAP32[$59>>2] = 0;
- $60 = ((($3)) + 56|0);
- $61 = $60;
- $62 = $61;
- HEAP32[$62>>2] = 0;
- $63 = (($61) + 4)|0;
- $64 = $63;
- HEAP32[$64>>2] = 0;
- $65 = ($25|0)==(0);
- if (!($65)) {
-  $$0 = $25;
-  STACKTOP = sp;return ($$0|0);
- }
- $66 = HEAP8[$14>>0]|0;
- $67 = $66 | 2;
- HEAP8[$14>>0] = $67;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_selftest_helper_cbc($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$ = 0, $$0 = 0, $$0129156 = 0, $$03449$i = 0, $$03449$i136$us = 0, 
$$03548$i = 0, $$03548$i137$us = 0, $$03647$i = 0, $$03647$i138$us = 0, $$037$i 
= 0, $$037$i142$us = 0, $$039$i = 0, $$039$i141$us = 0, $$041$i = 0, 
$$041$i140$us = 0, $$050$i = 0, $$050$i135$us = 0, $$1$i = 0, $$1$i143$us = 0, 
$$1152 = 0;
- var $$13845$i = 0, $$13845$i147 = 0, $$13845$i147$us = 0, $$14044$i = 0, 
$$14044$i148 = 0, $$14044$i148$us = 0, $$14243$i = 0, $$14243$i149 = 0, 
$$14243$i149$us = 0, $$2151 = 0, $$2151$us = 0, $$246$i = 0, $$246$i146 = 0, 
$$246$i146$us = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0;
- var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 
0, $56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $exitcond161 = 0, 
$or$cond$i = 0, $scevgep$i = 0, $scevgep$i131 = 0, $scevgep61$i = 0, 
$scevgep61$i132$us = 0, $scevgep63$i = 0, $scevgep63$i133$us = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $7 = (($6) + 15)|0;
- $8 = $7 & -16;
- $9 = $5 << 1;
- $10 = Math_imul($5, $4)|0;
- $11 = ($10*3)|0;
- $12 = (($9) + 16)|0;
- $13 = (($12) + ($11))|0;
- $14 = (($13) + ($8))|0;
- $15 = (__gcry_calloc(1,$14)|0);
- $16 = ($15|0)==(0|0);
- if ($16) {
-  $$0 = 64554;
-  return ($$0|0);
- }
- $17 = $15;
- $18 = (0 - ($17))|0;
- $19 = $18 & 15;
- $20 = (($15) + ($19)|0);
- $21 = (($20) + ($8)|0);
- $22 = (($21) + ($5)|0);
- $23 = (($22) + ($5)|0);
- $24 = (($23) + ($10)|0);
- $25 = (($24) + ($10)|0);
- $26 = (FUNCTION_TABLE_iiii[$1 & 127]($20,16208,16)|0);
- $27 = ($26|0)==(0);
- if (!($27)) {
-  __gcry_free($15);
-  $$0 = 64540;
-  return ($$0|0);
- }
- _memset(($21|0),78,($5|0))|0;
- _memset(($22|0),78,($5|0))|0;
- $28 = ($5|0)>(0);
- if ($28) {
-  $$0129156 = 0;
-  while(1) {
-   $29 = $$0129156&255;
-   $30 = (($23) + ($$0129156)|0);
-   HEAP8[$30>>0] = $29;
-   $31 = (($$0129156) + 1)|0;
-   $exitcond161 = ($31|0)==($5|0);
-   if ($exitcond161) {
-    break;
-   } else {
-    $$0129156 = $31;
-   }
-  }
- }
- $32 = $25;
- $33 = $21;
- $34 = $23;
- $35 = $34 | $33;
- $36 = $35 | $32;
- $37 = $36 & 3;
- $38 = ($37|0)==(0);
- $39 = ($5>>>0)>(3);
- $or$cond$i = $39 & $38;
- if ($or$cond$i) {
-  $40 = (($5) + -4)|0;
-  $41 = $40 & -4;
-  $42 = (($41) + 4)|0;
-  $scevgep61$i = (($23) + ($42)|0);
-  $$03449$i = $23;$$03548$i = $21;$$03647$i = $25;$$050$i = $5;
-  while(1) {
-   $43 = ((($$03548$i)) + 4|0);
-   $44 = HEAP32[$$03548$i>>2]|0;
-   $45 = ((($$03449$i)) + 4|0);
-   $46 = HEAP32[$$03449$i>>2]|0;
-   $47 = $46 ^ $44;
-   $48 = ((($$03647$i)) + 4|0);
-   HEAP32[$$03647$i>>2] = $47;
-   $49 = (($$050$i) + -4)|0;
-   $50 = ($49>>>0)>(3);
-   if ($50) {
-    $$03449$i = $45;$$03548$i = $43;$$03647$i = $48;$$050$i = $49;
-   } else {
-    break;
-   }
-  }
-  $scevgep$i = (($21) + ($42)|0);
-  $scevgep63$i = (($25) + ($42)|0);
-  $51 = (($40) - ($41))|0;
-  $$037$i = $scevgep61$i;$$039$i = $scevgep$i;$$041$i = $scevgep63$i;$$1$i = 
$51;
- } else {
-  $$037$i = $23;$$039$i = $21;$$041$i = $25;$$1$i = $5;
- }
- $52 = ($$1$i|0)==(0);
- if (!($52)) {
-  $$13845$i = $$037$i;$$14044$i = $$039$i;$$14243$i = $$041$i;$$246$i = $$1$i;
-  while(1) {
-   $53 = ((($$14044$i)) + 1|0);
-   $54 = HEAP8[$$14044$i>>0]|0;
-   $55 = ((($$13845$i)) + 1|0);
-   $56 = HEAP8[$$13845$i>>0]|0;
-   $57 = $56 ^ $54;
-   $58 = ((($$14243$i)) + 1|0);
-   HEAP8[$$14243$i>>0] = $57;
-   $59 = (($$246$i) + -1)|0;
-   $60 = ($59|0)==(0);
-   if ($60) {
-    break;
-   } else {
-    $$13845$i = $55;$$14044$i = $53;$$14243$i = $58;$$246$i = $59;
-   }
-  }
- }
- (FUNCTION_TABLE_iiii[$2 & 127]($20,$25,$25)|0);
- _memcpy(($21|0),($25|0),($5|0))|0;
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,1);
- $61 = (_memcmp($24,$23,$5)|0);
- $62 = ($61|0)==(0);
- if (!($62)) {
-  __gcry_free($15);
-  $$0 = 64491;
-  return ($$0|0);
- }
- $63 = (_memcmp($22,$21,$5)|0);
- $64 = ($63|0)==(0);
- if (!($64)) {
-  __gcry_free($15);
-  $$0 = 64491;
-  return ($$0|0);
- }
- _memset(($21|0),95,($5|0))|0;
- _memset(($22|0),95,($5|0))|0;
- $65 = ($10|0)>(0);
- L32: do {
-  if ($65) {
-   $$1152 = 0;
-   while(1) {
-    $66 = $$1152&255;
-    $67 = (($23) + ($$1152)|0);
-    HEAP8[$67>>0] = $66;
-    $68 = (($$1152) + 1)|0;
-    $exitcond = ($68|0)==($10|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$1152 = $68;
-    }
-   }
-   if ($65) {
-    $69 = (($5) + -4)|0;
-    $70 = $69 & -4;
-    $71 = (($70) + 4)|0;
-    $scevgep$i131 = (($21) + ($71)|0);
-    $72 = (($69) - ($70))|0;
-    if (!($39)) {
-     $100 = ($5|0)==(0);
-     $$2151 = 0;
-     while(1) {
-      $101 = (($25) + ($$2151)|0);
-      if (!($100)) {
-       $102 = (($23) + ($$2151)|0);
-       $$13845$i147 = $102;$$14044$i148 = $21;$$14243$i149 = $101;$$246$i146 = 
$5;
-       while(1) {
-        $103 = ((($$14044$i148)) + 1|0);
-        $104 = HEAP8[$$14044$i148>>0]|0;
-        $105 = ((($$13845$i147)) + 1|0);
-        $106 = HEAP8[$$13845$i147>>0]|0;
-        $107 = $106 ^ $104;
-        $108 = ((($$14243$i149)) + 1|0);
-        HEAP8[$$14243$i149>>0] = $107;
-        $109 = (($$246$i146) + -1)|0;
-        $110 = ($109|0)==(0);
-        if ($110) {
-         break;
-        } else {
-         $$13845$i147 = $105;$$14044$i148 = $103;$$14243$i149 = 
$108;$$246$i146 = $109;
-        }
-       }
-      }
-      (FUNCTION_TABLE_iiii[$2 & 127]($20,$101,$101)|0);
-      _memcpy(($21|0),($101|0),($5|0))|0;
-      $111 = (($$2151) + ($5))|0;
-      $112 = ($111|0)<($10|0);
-      if ($112) {
-       $$2151 = $111;
-      } else {
-       break L32;
-      }
-     }
-    }
-    $$2151$us = 0;
-    while(1) {
-     $73 = (($25) + ($$2151$us)|0);
-     $74 = (($23) + ($$2151$us)|0);
-     $75 = $73;
-     $76 = $75 | $33;
-     $77 = $74;
-     $78 = $76 | $77;
-     $79 = $78 & 3;
-     $80 = ($79|0)==(0);
-     if ($80) {
-      $scevgep61$i132$us = (($74) + ($71)|0);
-      $$03449$i136$us = $74;$$03548$i137$us = $21;$$03647$i138$us = 
$73;$$050$i135$us = $5;
-      while(1) {
-       $81 = ((($$03548$i137$us)) + 4|0);
-       $82 = HEAP32[$$03548$i137$us>>2]|0;
-       $83 = ((($$03449$i136$us)) + 4|0);
-       $84 = HEAP32[$$03449$i136$us>>2]|0;
-       $85 = $84 ^ $82;
-       $86 = ((($$03647$i138$us)) + 4|0);
-       HEAP32[$$03647$i138$us>>2] = $85;
-       $87 = (($$050$i135$us) + -4)|0;
-       $88 = ($87>>>0)>(3);
-       if ($88) {
-        $$03449$i136$us = $83;$$03548$i137$us = $81;$$03647$i138$us = 
$86;$$050$i135$us = $87;
-       } else {
-        break;
-       }
-      }
-      $scevgep63$i133$us = (($73) + ($71)|0);
-      $$037$i142$us = $scevgep61$i132$us;$$039$i141$us = 
$scevgep$i131;$$041$i140$us = $scevgep63$i133$us;$$1$i143$us = $72;
-     } else {
-      $$037$i142$us = $74;$$039$i141$us = $21;$$041$i140$us = $73;$$1$i143$us 
= $5;
-     }
-     $89 = ($$1$i143$us|0)==(0);
-     if (!($89)) {
-      $$13845$i147$us = $$037$i142$us;$$14044$i148$us = 
$$039$i141$us;$$14243$i149$us = $$041$i140$us;$$246$i146$us = $$1$i143$us;
-      while(1) {
-       $90 = ((($$14044$i148$us)) + 1|0);
-       $91 = HEAP8[$$14044$i148$us>>0]|0;
-       $92 = ((($$13845$i147$us)) + 1|0);
-       $93 = HEAP8[$$13845$i147$us>>0]|0;
-       $94 = $93 ^ $91;
-       $95 = ((($$14243$i149$us)) + 1|0);
-       HEAP8[$$14243$i149$us>>0] = $94;
-       $96 = (($$246$i146$us) + -1)|0;
-       $97 = ($96|0)==(0);
-       if ($97) {
-        break;
-       } else {
-        $$13845$i147$us = $92;$$14044$i148$us = $90;$$14243$i149$us = 
$95;$$246$i146$us = $96;
-       }
-      }
-     }
-     (FUNCTION_TABLE_iiii[$2 & 127]($20,$73,$73)|0);
-     _memcpy(($21|0),($73|0),($5|0))|0;
-     $98 = (($$2151$us) + ($5))|0;
-     $99 = ($98|0)<($10|0);
-     if ($99) {
-      $$2151$us = $98;
-     } else {
-      break;
-     }
-    }
-   }
-  }
- } while(0);
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,$4);
- $113 = (_memcmp($24,$23,$10)|0);
- $114 = ($113|0)==(0);
- if ($114) {
-  $115 = (_memcmp($22,$21,$5)|0);
-  $116 = ($115|0)==(0);
-  __gcry_free($15);
-  $$ = $116 ? 0 : 64491;
-  $$0 = $$;
-  return ($$0|0);
- } else {
-  __gcry_free($15);
-  $$0 = 64491;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_selftest_helper_cfb($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$ = 0, $$0 = 0, $$0121148 = 0, $$03449$i = 0, $$03449$i128$us = 0, 
$$03548$i = 0, $$03548$i129$us = 0, $$03647$i = 0, $$03647$i130$us = 0, $$037$i 
= 0, $$037$i134$us = 0, $$039$i = 0, $$039$i133$us = 0, $$041$i = 0, 
$$041$i132$us = 0, $$050$i = 0, $$050$i127$us = 0, $$1$i = 0, $$1$i135$us = 0, 
$$1144 = 0;
- var $$13845$i = 0, $$13845$i139 = 0, $$13845$i139$us = 0, $$14044$i = 0, 
$$14044$i140 = 0, $$14044$i140$us = 0, $$14243$i = 0, $$14243$i141 = 0, 
$$14243$i141$us = 0, $$2143 = 0, $$2143$us = 0, $$246$i = 0, $$246$i138 = 0, 
$$246$i138$us = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0;
- var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 
0, $36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 
0, $56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond = 0, $exitcond153 = 0, 
$or$cond$i = 0, $scevgep$i = 0, $scevgep$i123$us = 0, $scevgep61$i = 0, 
$scevgep61$i124$us = 0, $scevgep63$i = 0, $scevgep63$i125 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $7 = (($6) + 15)|0;
- $8 = $7 & -16;
- $9 = $5 << 1;
- $10 = Math_imul($5, $4)|0;
- $11 = ($10*3)|0;
- $12 = (($9) + 16)|0;
- $13 = (($12) + ($11))|0;
- $14 = (($13) + ($8))|0;
- $15 = (__gcry_calloc(1,$14)|0);
- $16 = ($15|0)==(0|0);
- if ($16) {
-  $$0 = 64554;
-  return ($$0|0);
- }
- $17 = $15;
- $18 = (0 - ($17))|0;
- $19 = $18 & 15;
- $20 = (($15) + ($19)|0);
- $21 = (($20) + ($8)|0);
- $22 = (($21) + ($5)|0);
- $23 = (($22) + ($5)|0);
- $24 = (($23) + ($10)|0);
- $25 = (($24) + ($10)|0);
- $26 = (FUNCTION_TABLE_iiii[$1 & 127]($20,16224,16)|0);
- $27 = ($26|0)==(0);
- if (!($27)) {
-  __gcry_free($15);
-  $$0 = 64540;
-  return ($$0|0);
- }
- _memset(($21|0),-45,($5|0))|0;
- _memset(($22|0),-45,($5|0))|0;
- $28 = ($5|0)>(0);
- if ($28) {
-  $$0121148 = 0;
-  while(1) {
-   $29 = $$0121148&255;
-   $30 = (($23) + ($$0121148)|0);
-   HEAP8[$30>>0] = $29;
-   $31 = (($$0121148) + 1)|0;
-   $exitcond153 = ($31|0)==($5|0);
-   if ($exitcond153) {
-    break;
-   } else {
-    $$0121148 = $31;
-   }
-  }
- }
- (FUNCTION_TABLE_iiii[$2 & 127]($20,$25,$21)|0);
- $32 = $23;
- $33 = $21;
- $34 = $25;
- $35 = $32 | $33;
- $36 = $35 | $34;
- $37 = $36 & 3;
- $38 = ($37|0)==(0);
- $39 = ($5>>>0)>(3);
- $or$cond$i = $39 & $38;
- if ($or$cond$i) {
-  $40 = (($5) + -4)|0;
-  $41 = $40 & -4;
-  $42 = (($41) + 4)|0;
-  $scevgep61$i = (($25) + ($42)|0);
-  $$03449$i = $23;$$03548$i = $25;$$03647$i = $21;$$050$i = $5;
-  while(1) {
-   $43 = ((($$03449$i)) + 4|0);
-   $44 = HEAP32[$$03449$i>>2]|0;
-   $45 = ((($$03548$i)) + 4|0);
-   $46 = HEAP32[$$03548$i>>2]|0;
-   $47 = $46 ^ $44;
-   HEAP32[$$03548$i>>2] = $47;
-   $48 = ((($$03647$i)) + 4|0);
-   HEAP32[$$03647$i>>2] = $47;
-   $49 = (($$050$i) + -4)|0;
-   $50 = ($49>>>0)>(3);
-   if ($50) {
-    $$03449$i = $43;$$03548$i = $45;$$03647$i = $48;$$050$i = $49;
-   } else {
-    break;
-   }
-  }
-  $scevgep$i = (($23) + ($42)|0);
-  $scevgep63$i = (($21) + ($42)|0);
-  $51 = (($40) - ($41))|0;
-  $$037$i = $scevgep$i;$$039$i = $scevgep61$i;$$041$i = $scevgep63$i;$$1$i = 
$51;
- } else {
-  $$037$i = $23;$$039$i = $25;$$041$i = $21;$$1$i = $5;
- }
- $52 = ($$1$i|0)==(0);
- if (!($52)) {
-  $$13845$i = $$037$i;$$14044$i = $$039$i;$$14243$i = $$041$i;$$246$i = $$1$i;
-  while(1) {
-   $53 = ((($$13845$i)) + 1|0);
-   $54 = HEAP8[$$13845$i>>0]|0;
-   $55 = ((($$14044$i)) + 1|0);
-   $56 = HEAP8[$$14044$i>>0]|0;
-   $57 = $56 ^ $54;
-   HEAP8[$$14044$i>>0] = $57;
-   $58 = ((($$14243$i)) + 1|0);
-   HEAP8[$$14243$i>>0] = $57;
-   $59 = (($$246$i) + -1)|0;
-   $60 = ($59|0)==(0);
-   if ($60) {
-    break;
-   } else {
-    $$13845$i = $53;$$14044$i = $55;$$14243$i = $58;$$246$i = $59;
-   }
-  }
- }
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,1);
- $61 = (_memcmp($24,$23,$5)|0);
- $62 = ($61|0)==(0);
- if (!($62)) {
-  __gcry_free($15);
-  $$0 = 64580;
-  return ($$0|0);
- }
- $63 = (_memcmp($22,$21,$5)|0);
- $64 = ($63|0)==(0);
- if (!($64)) {
-  __gcry_free($15);
-  $$0 = 64580;
-  return ($$0|0);
- }
- _memset(($21|0),-26,($5|0))|0;
- _memset(($22|0),-26,($5|0))|0;
- $65 = ($10|0)>(0);
- L32: do {
-  if ($65) {
-   $$1144 = 0;
-   while(1) {
-    $66 = $$1144&255;
-    $67 = (($23) + ($$1144)|0);
-    HEAP8[$67>>0] = $66;
-    $68 = (($$1144) + 1)|0;
-    $exitcond = ($68|0)==($10|0);
-    if ($exitcond) {
-     break;
-    } else {
-     $$1144 = $68;
-    }
-   }
-   if ($65) {
-    $69 = (($5) + -4)|0;
-    $70 = $69 & -4;
-    $71 = (($70) + 4)|0;
-    $scevgep63$i125 = (($21) + ($71)|0);
-    $72 = (($69) - ($70))|0;
-    if (!($39)) {
-     $100 = ($5|0)==(0);
-     $$2143 = 0;
-     while(1) {
-      $101 = (($25) + ($$2143)|0);
-      (FUNCTION_TABLE_iiii[$2 & 127]($20,$101,$21)|0);
-      if (!($100)) {
-       $102 = (($23) + ($$2143)|0);
-       $$13845$i139 = $102;$$14044$i140 = $101;$$14243$i141 = $21;$$246$i138 = 
$5;
-       while(1) {
-        $103 = ((($$13845$i139)) + 1|0);
-        $104 = HEAP8[$$13845$i139>>0]|0;
-        $105 = ((($$14044$i140)) + 1|0);
-        $106 = HEAP8[$$14044$i140>>0]|0;
-        $107 = $106 ^ $104;
-        HEAP8[$$14044$i140>>0] = $107;
-        $108 = ((($$14243$i141)) + 1|0);
-        HEAP8[$$14243$i141>>0] = $107;
-        $109 = (($$246$i138) + -1)|0;
-        $110 = ($109|0)==(0);
-        if ($110) {
-         break;
-        } else {
-         $$13845$i139 = $103;$$14044$i140 = $105;$$14243$i141 = 
$108;$$246$i138 = $109;
-        }
-       }
-      }
-      $111 = (($$2143) + ($5))|0;
-      $112 = ($111|0)<($10|0);
-      if ($112) {
-       $$2143 = $111;
-      } else {
-       break L32;
-      }
-     }
-    }
-    $$2143$us = 0;
-    while(1) {
-     $73 = (($25) + ($$2143$us)|0);
-     (FUNCTION_TABLE_iiii[$2 & 127]($20,$73,$21)|0);
-     $74 = (($23) + ($$2143$us)|0);
-     $75 = $74;
-     $76 = $73;
-     $77 = $76 | $33;
-     $78 = $77 | $75;
-     $79 = $78 & 3;
-     $80 = ($79|0)==(0);
-     if ($80) {
-      $scevgep$i123$us = (($74) + ($71)|0);
-      $$03449$i128$us = $74;$$03548$i129$us = $73;$$03647$i130$us = 
$21;$$050$i127$us = $5;
-      while(1) {
-       $81 = ((($$03449$i128$us)) + 4|0);
-       $82 = HEAP32[$$03449$i128$us>>2]|0;
-       $83 = ((($$03548$i129$us)) + 4|0);
-       $84 = HEAP32[$$03548$i129$us>>2]|0;
-       $85 = $84 ^ $82;
-       HEAP32[$$03548$i129$us>>2] = $85;
-       $86 = ((($$03647$i130$us)) + 4|0);
-       HEAP32[$$03647$i130$us>>2] = $85;
-       $87 = (($$050$i127$us) + -4)|0;
-       $88 = ($87>>>0)>(3);
-       if ($88) {
-        $$03449$i128$us = $81;$$03548$i129$us = $83;$$03647$i130$us = 
$86;$$050$i127$us = $87;
-       } else {
-        break;
-       }
-      }
-      $scevgep61$i124$us = (($73) + ($71)|0);
-      $$037$i134$us = $scevgep$i123$us;$$039$i133$us = 
$scevgep61$i124$us;$$041$i132$us = $scevgep63$i125;$$1$i135$us = $72;
-     } else {
-      $$037$i134$us = $74;$$039$i133$us = $73;$$041$i132$us = $21;$$1$i135$us 
= $5;
-     }
-     $89 = ($$1$i135$us|0)==(0);
-     if (!($89)) {
-      $$13845$i139$us = $$037$i134$us;$$14044$i140$us = 
$$039$i133$us;$$14243$i141$us = $$041$i132$us;$$246$i138$us = $$1$i135$us;
-      while(1) {
-       $90 = ((($$13845$i139$us)) + 1|0);
-       $91 = HEAP8[$$13845$i139$us>>0]|0;
-       $92 = ((($$14044$i140$us)) + 1|0);
-       $93 = HEAP8[$$14044$i140$us>>0]|0;
-       $94 = $93 ^ $91;
-       HEAP8[$$14044$i140$us>>0] = $94;
-       $95 = ((($$14243$i141$us)) + 1|0);
-       HEAP8[$$14243$i141$us>>0] = $94;
-       $96 = (($$246$i138$us) + -1)|0;
-       $97 = ($96|0)==(0);
-       if ($97) {
-        break;
-       } else {
-        $$13845$i139$us = $90;$$14044$i140$us = $92;$$14243$i141$us = 
$95;$$246$i138$us = $96;
-       }
-      }
-     }
-     $98 = (($$2143$us) + ($5))|0;
-     $99 = ($98|0)<($10|0);
-     if ($99) {
-      $$2143$us = $98;
-     } else {
-      break;
-     }
-    }
-   }
-  }
- } while(0);
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,$4);
- $113 = (_memcmp($24,$23,$10)|0);
- $114 = ($113|0)==(0);
- if ($114) {
-  $115 = (_memcmp($22,$21,$5)|0);
-  $116 = ($115|0)==(0);
-  __gcry_free($15);
-  $$ = $116 ? 0 : 64580;
-  $$0 = $$;
-  return ($$0|0);
- } else {
-  __gcry_free($15);
-  $$0 = 64580;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_selftest_helper_ctr($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0 = 0, $$0236308 = 0, $$0237271$us = 0, $$0241267 = 0, $$1238275$us = 
0, $$1304 = 0, $$2239243$us = 0, $$2299 = 0, $$3240247$us = 0, $$3295 = 0, 
$$4280 = 0, $$4280$us = 0, $$5242 = 0, $$6252 = 0, $$6252$us = 0, $10 = 0, $100 
= 0, $101 = 0, $102 = 0, $103 = 0;
- var $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 
= 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 
= 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0;
- var $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, 
$129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 
0, $62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, $exitcond = 0, $exitcond316 = 0;
- var $exitcond317 = 0, $exitcond318 = 0, $exitcond319 = 0, $exitcond320 = 0, 
$or$cond = 0, $or$cond313 = 0, $or$cond315 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $7 = (($6) + 15)|0;
- $8 = $7 & -16;
- $9 = $5 << 1;
- $10 = Math_imul($5, $4)|0;
- $11 = $10 << 2;
- $12 = (($9) + 16)|0;
- $13 = (($12) + ($11))|0;
- $14 = (($13) + ($8))|0;
- $15 = (__gcry_calloc(1,$14)|0);
- $16 = ($15|0)==(0|0);
- if ($16) {
-  $$0 = 64554;
-  return ($$0|0);
- }
- $17 = $15;
- $18 = (0 - ($17))|0;
- $19 = $18 & 15;
- $20 = (($15) + ($19)|0);
- $21 = (($20) + ($8)|0);
- $22 = (($21) + ($5)|0);
- $23 = (($22) + ($5)|0);
- $24 = (($23) + ($10)|0);
- $25 = (($24) + ($10)|0);
- $26 = (($25) + ($10)|0);
- $27 = (FUNCTION_TABLE_iiii[$1 & 127]($20,16240,16)|0);
- $28 = ($27|0)==(0);
- if (!($28)) {
-  __gcry_free($15);
-  $$0 = 64540;
-  return ($$0|0);
- }
- _memset(($21|0),-1,($5|0))|0;
- $29 = ($5|0)>(0);
- if ($29) {
-  $$0236308 = 0;
-  while(1) {
-   $30 = $$0236308&255;
-   $31 = (($23) + ($$0236308)|0);
-   HEAP8[$31>>0] = $30;
-   $32 = (($$0236308) + 1)|0;
-   $exitcond320 = ($32|0)==($5|0);
-   if ($exitcond320) {
-    break;
-   } else {
-    $$0236308 = $32;
-   }
-  }
-  (FUNCTION_TABLE_iiii[$2 & 127]($20,$25,$21)|0);
-  if ($29) {
-   $$1304 = 0;
-   while(1) {
-    $33 = (($23) + ($$1304)|0);
-    $34 = HEAP8[$33>>0]|0;
-    $35 = (($25) + ($$1304)|0);
-    $36 = HEAP8[$35>>0]|0;
-    $37 = $36 ^ $34;
-    HEAP8[$35>>0] = $37;
-    $38 = (($$1304) + 1)|0;
-    $exitcond319 = ($38|0)==($5|0);
-    if ($exitcond319) {
-     break;
-    } else {
-     $$1304 = $38;
-    }
-   }
-   if ($29) {
-    $$2299 = $5;
-    while(1) {
-     $39 = (($$2299) + -1)|0;
-     $40 = (($21) + ($39)|0);
-     $41 = HEAP8[$40>>0]|0;
-     $42 = (($41) + 1)<<24>>24;
-     HEAP8[$40>>0] = $42;
-     $43 = ($42<<24>>24)==(0);
-     $44 = ($$2299|0)>(1);
-     $or$cond315 = $43 & $44;
-     if ($or$cond315) {
-      $$2299 = $39;
-     } else {
-      break;
-     }
-    }
-   }
-  }
- } else {
-  (FUNCTION_TABLE_iiii[$2 & 127]($20,$25,$21)|0);
- }
- _memset(($22|0),-1,($5|0))|0;
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,1);
- $45 = (_memcmp($24,$23,$5)|0);
- $46 = ($45|0)==(0);
- if (!($46)) {
-  __gcry_free($15);
-  $$0 = 64629;
-  return ($$0|0);
- }
- $47 = (_memcmp($22,$21,$5)|0);
- $48 = ($47|0)==(0);
- if (!($48)) {
-  __gcry_free($15);
-  $$0 = 64629;
-  return ($$0|0);
- }
- $49 = (($5) + -4)|0;
- _memset(($21|0),87,($49|0))|0;
- $50 = (($5) + -1)|0;
- $51 = (($21) + ($50)|0);
- HEAP8[$51>>0] = 1;
- $52 = (($5) + -2)|0;
- $53 = (($21) + ($52)|0);
- HEAP8[$53>>0] = 0;
- $54 = (($5) + -3)|0;
- $55 = (($21) + ($54)|0);
- HEAP8[$55>>0] = 0;
- $56 = (($21) + ($49)|0);
- HEAP8[$56>>0] = 0;
- _memset(($22|0),87,($49|0))|0;
- $57 = (($22) + ($50)|0);
- HEAP8[$57>>0] = 1;
- $58 = (($22) + ($52)|0);
- HEAP8[$58>>0] = 0;
- $59 = (($22) + ($54)|0);
- HEAP8[$59>>0] = 0;
- $60 = (($22) + ($49)|0);
- HEAP8[$60>>0] = 0;
- $61 = ($10|0)>(0);
- L30: do {
-  if ($61) {
-   $$3295 = 0;
-   while(1) {
-    $62 = $$3295&255;
-    $63 = (($23) + ($$3295)|0);
-    HEAP8[$63>>0] = $62;
-    $64 = (($24) + ($$3295)|0);
-    HEAP8[$64>>0] = $62;
-    $65 = (($$3295) + 1)|0;
-    $exitcond318 = ($65|0)==($10|0);
-    if ($exitcond318) {
-     break;
-    } else {
-     $$3295 = $65;
-    }
-   }
-   if ($61) {
-    if (!($29)) {
-     $$4280 = 0;
-     while(1) {
-      $82 = (($25) + ($$4280)|0);
-      (FUNCTION_TABLE_iiii[$2 & 127]($20,$82,$21)|0);
-      $83 = (($$4280) + ($5))|0;
-      $84 = ($83|0)<($10|0);
-      if ($84) {
-       $$4280 = $83;
-      } else {
-       break L30;
-      }
-     }
-    }
-    $$4280$us = 0;
-    while(1) {
-     $66 = (($25) + ($$4280$us)|0);
-     (FUNCTION_TABLE_iiii[$2 & 127]($20,$66,$21)|0);
-     $$0237271$us = 0;
-     while(1) {
-      $75 = (($$0237271$us) + ($$4280$us))|0;
-      $76 = (($23) + ($75)|0);
-      $77 = HEAP8[$76>>0]|0;
-      $78 = (($25) + ($75)|0);
-      $79 = HEAP8[$78>>0]|0;
-      $80 = $79 ^ $77;
-      HEAP8[$78>>0] = $80;
-      $81 = (($$0237271$us) + 1)|0;
-      $exitcond317 = ($81|0)==($5|0);
-      if ($exitcond317) {
-       break;
-      } else {
-       $$0237271$us = $81;
-      }
-     }
-     $$1238275$us = $5;
-     while(1) {
-      $67 = (($$1238275$us) + -1)|0;
-      $68 = (($21) + ($67)|0);
-      $69 = HEAP8[$68>>0]|0;
-      $70 = (($69) + 1)<<24>>24;
-      HEAP8[$68>>0] = $70;
-      $71 = ($70<<24>>24)==(0);
-      $72 = ($$1238275$us|0)>(1);
-      $or$cond313 = $71 & $72;
-      if ($or$cond313) {
-       $$1238275$us = $67;
-      } else {
-       break;
-      }
-     }
-     $73 = (($$4280$us) + ($5))|0;
-     $74 = ($73|0)<($10|0);
-     if ($74) {
-      $$4280$us = $73;
-     } else {
-      break;
-     }
-    }
-   }
-  }
- } while(0);
- FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$26,$24,$4);
- $85 = (_memcmp($26,$25,$10)|0);
- $86 = ($85|0)==(0);
- if (!($86)) {
-  __gcry_free($15);
-  $$0 = 64629;
-  return ($$0|0);
- }
- $87 = (_memcmp($22,$21,$5)|0);
- $88 = ($87|0)==(0);
- if (!($88)) {
-  __gcry_free($15);
-  $$0 = 64629;
-  return ($$0|0);
- }
- $89 = ($4|0)>(0);
- L58: do {
-  if ($89) {
-   $90 = ((($21)) + 1|0);
-   $91 = ((($21)) + 2|0);
-   $92 = ((($22)) + 1|0);
-   $93 = ((($22)) + 2|0);
-   $$0241267 = 0;
-   while(1) {
-    _memset(($21|0),-1,($5|0))|0;
-    $96 = HEAP8[$51>>0]|0;
-    $97 = $96&255;
-    $98 = (($97) - ($$0241267))|0;
-    $99 = $98&255;
-    HEAP8[$51>>0] = $99;
-    HEAP8[$90>>0] = 0;
-    HEAP8[$21>>0] = 0;
-    HEAP8[$91>>0] = 7;
-    L62: do {
-     if ($61) {
-      $$5242 = 0;
-      while(1) {
-       $100 = $$5242&255;
-       $101 = (($23) + ($$5242)|0);
-       HEAP8[$101>>0] = $100;
-       $102 = (($$5242) + 1)|0;
-       $exitcond = ($102|0)==($10|0);
-       if ($exitcond) {
-        break;
-       } else {
-        $$5242 = $102;
-       }
-      }
-      if ($61) {
-       if (!($29)) {
-        $$6252 = 0;
-        while(1) {
-         $119 = (($25) + ($$6252)|0);
-         (FUNCTION_TABLE_iiii[$2 & 127]($20,$119,$21)|0);
-         $120 = (($$6252) + ($5))|0;
-         $121 = ($120|0)<($10|0);
-         if ($121) {
-          $$6252 = $120;
-         } else {
-          break L62;
-         }
-        }
-       }
-       $$6252$us = 0;
-       while(1) {
-        $103 = (($25) + ($$6252$us)|0);
-        (FUNCTION_TABLE_iiii[$2 & 127]($20,$103,$21)|0);
-        $$2239243$us = 0;
-        while(1) {
-         $112 = (($$2239243$us) + ($$6252$us))|0;
-         $113 = (($23) + ($112)|0);
-         $114 = HEAP8[$113>>0]|0;
-         $115 = (($25) + ($112)|0);
-         $116 = HEAP8[$115>>0]|0;
-         $117 = $116 ^ $114;
-         HEAP8[$115>>0] = $117;
-         $118 = (($$2239243$us) + 1)|0;
-         $exitcond316 = ($118|0)==($5|0);
-         if ($exitcond316) {
-          break;
-         } else {
-          $$2239243$us = $118;
-         }
-        }
-        $$3240247$us = $5;
-        while(1) {
-         $104 = (($$3240247$us) + -1)|0;
-         $105 = (($21) + ($104)|0);
-         $106 = HEAP8[$105>>0]|0;
-         $107 = (($106) + 1)<<24>>24;
-         HEAP8[$105>>0] = $107;
-         $108 = ($107<<24>>24)==(0);
-         $109 = ($$3240247$us|0)>(1);
-         $or$cond = $108 & $109;
-         if ($or$cond) {
-          $$3240247$us = $104;
-         } else {
-          break;
-         }
-        }
-        $110 = (($$6252$us) + ($5))|0;
-        $111 = ($110|0)<($10|0);
-        if ($111) {
-         $$6252$us = $110;
-        } else {
-         break;
-        }
-       }
-      }
-     }
-    } while(0);
-    _memset(($22|0),-1,($5|0))|0;
-    $122 = HEAP8[$57>>0]|0;
-    $123 = $122&255;
-    $124 = (($123) - ($$0241267))|0;
-    $125 = $124&255;
-    HEAP8[$57>>0] = $125;
-    HEAP8[$92>>0] = 0;
-    HEAP8[$22>>0] = 0;
-    HEAP8[$93>>0] = 7;
-    FUNCTION_TABLE_viiiii[$3 & 127]($20,$22,$24,$25,$4);
-    $126 = (_memcmp($24,$23,$10)|0);
-    $127 = ($126|0)==(0);
-    if (!($127)) {
-     label = 52;
-     break;
-    }
-    $128 = (_memcmp($22,$21,$5)|0);
-    $129 = ($128|0)==(0);
-    $95 = (($$0241267) + 1)|0;
-    if (!($129)) {
-     label = 54;
-     break;
-    }
-    $94 = ($95|0)<($4|0);
-    if ($94) {
-     $$0241267 = $95;
-    } else {
-     break L58;
-    }
-   }
-   if ((label|0) == 52) {
-    __gcry_free($15);
-    $$0 = 64629;
-    return ($$0|0);
-   }
-   else if ((label|0) == 54) {
-    __gcry_free($15);
-    $$0 = 64629;
-    return ($$0|0);
-   }
-  }
- } while(0);
- __gcry_free($15);
- $$0 = 0;
- return ($$0|0);
-}
-function _ecc_generate($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$i$i = 0, $$0102110 = 0, $$0105109 = 0, $$076 = 0, $$078 = 0, $$079 = 
0, $$080 = 0, $$081 = 0, $$081$i = 0, $$082 = 0, $$082$i = 0, $$1 = 0, $$1103 = 
0, $$1106 = 0, $$184 = 0, $$187 = 0, $$2 = 0, $$2$i = 0, $$2104 = 0, $$2107 = 0;
- var $$284$i = 0, $$285 = 0, $$3 = 0, $$3108 = 0, $$byval_copy = 0, 
$$byval_copy71 = 0, $$lobit = 0, $$pre = 0, $$pre$i = 0, $$pre$phi$iZ2D = 0, 
$$pre$phi116Z2D = 0, $$pre$phi118Z2D = 0, $$pre$phi120Z2D = 0, $$pre$phi122Z2D 
= 0, $$pre$phi124Z2D = 0, $$pre$phi2$iZ2D = 0, $$pre1$i = 0, $$pre115 = 0, 
$$pre117 = 0, $$pre119 = 0;
- var $$pre121 = 0, $$pre123 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 
0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 
0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0;
- var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 
= 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0;
- var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, 
$159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, 
$166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0;
- var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, 
$177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, 
$184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0;
- var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 
= 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 
0, $202 = 0, $203 = 0, $204 = 0, $205 = 0;
- var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 
= 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 
= 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0;
- var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 
= 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 
= 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0;
- var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, 
$249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, 
$256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0;
- var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, 
$267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, 
$274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0;
- var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 
= 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 
= 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0;
- var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 
0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 
0, $310 = 0, $311 = 0, $312 = 0, $313 = 0;
- var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 
= 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 
= 0, $329 = 0, $33 = 0, $330 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 
0, $69 = 0, $7 = 0, $70 = 0;
- var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, 
$79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0;
- var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond93 = 0, $spec$select = 0, 
$vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer12 = 0, 
$vararg_buffer14 = 0, $vararg_buffer16 = 0, $vararg_buffer18 = 0;
- var $vararg_buffer2 = 0, $vararg_buffer20 = 0, $vararg_buffer22 = 0, 
$vararg_buffer24 = 0, $vararg_buffer26 = 0, $vararg_buffer28 = 0, 
$vararg_buffer31 = 0, $vararg_buffer34 = 0, $vararg_buffer37 = 0, 
$vararg_buffer39 = 0, $vararg_buffer5 = 0, $vararg_buffer60 = 0, 
$vararg_buffer69 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr42 = 0, 
$vararg_ptr43 = 0, $vararg_ptr44 = 0, $vararg_ptr45 = 0, $vararg_ptr46 = 0;
- var $vararg_ptr47 = 0, $vararg_ptr48 = 0, $vararg_ptr49 = 0, $vararg_ptr50 = 
0, $vararg_ptr51 = 0, $vararg_ptr52 = 0, $vararg_ptr53 = 0, $vararg_ptr54 = 0, 
$vararg_ptr55 = 0, $vararg_ptr56 = 0, $vararg_ptr57 = 0, $vararg_ptr58 = 0, 
$vararg_ptr59 = 0, $vararg_ptr63 = 0, $vararg_ptr64 = 0, $vararg_ptr65 = 0, 
$vararg_ptr66 = 0, $vararg_ptr67 = 0, $vararg_ptr68 = 0, dest = 0;
- var label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 704|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(704|0);
- $$byval_copy71 = sp + 660|0;
- $$byval_copy = sp + 616|0;
- $vararg_buffer69 = sp + 248|0;
- $vararg_buffer60 = sp + 216|0;
- $vararg_buffer39 = sp + 136|0;
- $vararg_buffer37 = sp + 128|0;
- $vararg_buffer34 = sp + 120|0;
- $vararg_buffer31 = sp + 112|0;
- $vararg_buffer28 = sp + 104|0;
- $vararg_buffer26 = sp + 96|0;
- $vararg_buffer24 = sp + 88|0;
- $vararg_buffer22 = sp + 80|0;
- $vararg_buffer20 = sp + 72|0;
- $vararg_buffer18 = sp + 64|0;
- $vararg_buffer16 = sp + 56|0;
- $vararg_buffer14 = sp + 48|0;
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer5 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 560|0;
- $3 = sp + 548|0;
- $4 = sp + 504|0;
- $5 = sp + 448|0;
- $6 = sp + 436|0;
- $7 = sp + 392|0;
- $8 = sp + 380|0;
- $9 = sp + 376|0;
- $10 = sp + 332|0;
- $11 = sp + 272|0;
- $12 = sp + 268|0;
- $13 = sp + 264|0;
- $14 = sp + 260|0;
- $15 = sp + 256|0;
- $16 = sp + 252|0;
- HEAP32[$12>>2] = 0;
- HEAP32[$13>>2] = 0;
- HEAP32[$14>>2] = 0;
- dest=$10; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- dest=$11; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $17 = (__gcry_pk_util_get_nbits($0,$9)|0);
- $18 = ($17|0)==(0);
- if (!($18)) {
-  $$187 = $17;
-  STACKTOP = sp;return ($$187|0);
- }
- $19 = (__gcry_sexp_find_token($0,64745,0)|0);
- $20 = ($19|0)==(0|0);
- if ($20) {
-  $$080 = 0;
- } else {
-  $21 = (__gcry_sexp_nth_string($19,1)|0);
-  __gcry_sexp_release($19);
-  $22 = ($21|0)==(0|0);
-  if ($22) {
-   $$187 = 65;
-   STACKTOP = sp;return ($$187|0);
-  } else {
-   $$080 = $21;
-  }
- }
- $23 = (__gcry_sexp_find_token($0,64705,0)|0);
- $24 = ($23|0)==(0|0);
- if ($24) {
-  label = 6;
- } else {
-  $25 = (__gcry_pk_util_parse_flaglist($23,$14,0)|0);
-  __gcry_sexp_release($23);
-  $26 = ($25|0)==(0);
-  if ($26) {
-   label = 6;
-  } else {
-   $$076 = 0;$$078 = 0;$$079 = 0;$$081 = 0;$$082 = 0;$$2 = 0;$$285 = $25;$$3 = 
0;$$3108 = 0;
-  }
- }
- do {
-  if ((label|0) == 6) {
-   $27 = (__gcry_sexp_find_token($0,66452,0)|0);
-   $28 = ($27|0)==(0|0);
-   if (!($28)) {
-    $29 = HEAP32[$14>>2]|0;
-    $30 = $29 | 32;
-    HEAP32[$14>>2] = $30;
-    __gcry_sexp_release($27);
-   }
-   $31 = HEAP32[$9>>2]|0;
-   $32 = ($31|0)!=(0);
-   $33 = ($$080|0)!=(0|0);
-   $or$cond = $33 | $32;
-   if (!($or$cond)) {
-    $$187 = 68;
-    STACKTOP = sp;return ($$187|0);
-   }
-   $34 = (__gcry_ecc_fill_in_curve($31,$$080,$10,$9)|0);
-   __gcry_free($$080);
-   $35 = ($34|0)==(0);
-   if ($35) {
-    $36 = (__gcry_get_debug_flag(1)|0);
-    $37 = ($36|0)==(0);
-    if ($37) {
-     $$pre115 = ((($10)) + 4|0);
-     $$pre117 = ((($10)) + 8|0);
-     $$pre119 = ((($10)) + 12|0);
-     $$pre121 = ((($10)) + 16|0);
-     $$pre$phi116Z2D = $$pre115;$$pre$phi118Z2D = $$pre117;$$pre$phi120Z2D = 
$$pre119;$$pre$phi122Z2D = $$pre121;
-    } else {
-     $38 = HEAP32[$10>>2]|0;
-     $39 = (__gcry_ecc_model2str($38)|0);
-     $40 = ((($10)) + 4|0);
-     $41 = HEAP32[$40>>2]|0;
-     $42 = (__gcry_ecc_dialect2str($41)|0);
-     HEAP32[$vararg_buffer>>2] = $39;
-     $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-     HEAP32[$vararg_ptr1>>2] = $42;
-     __gcry_log_debug(66466,$vararg_buffer);
-     $43 = ((($10)) + 40|0);
-     $44 = HEAP32[$43>>2]|0;
-     $45 = ($44|0)==(0|0);
-     if (!($45)) {
-      HEAP32[$vararg_buffer2>>2] = $44;
-      __gcry_log_debug(66491,$vararg_buffer2);
-     }
-     $46 = ((($10)) + 8|0);
-     $47 = HEAP32[$46>>2]|0;
-     __gcry_log_printmpi(66513,$47);
-     $48 = ((($10)) + 12|0);
-     $49 = HEAP32[$48>>2]|0;
-     __gcry_log_printmpi(66529,$49);
-     $50 = ((($10)) + 16|0);
-     $51 = HEAP32[$50>>2]|0;
-     __gcry_log_printmpi(66545,$51);
-     $52 = ((($10)) + 32|0);
-     $53 = HEAP32[$52>>2]|0;
-     __gcry_log_printmpi(66561,$53);
-     $54 = ((($10)) + 36|0);
-     $55 = HEAP32[$54>>2]|0;
-     __gcry_log_printmpi(66577,$55);
-     $56 = ((($10)) + 20|0);
-     __gcry_mpi_point_log(66593,$56,0);
-     $$pre$phi116Z2D = $40;$$pre$phi118Z2D = $46;$$pre$phi120Z2D = 
$48;$$pre$phi122Z2D = $50;
-    }
-    $57 = HEAP32[$10>>2]|0;
-    $58 = HEAP32[$$pre$phi116Z2D>>2]|0;
-    $59 = HEAP32[$$pre$phi118Z2D>>2]|0;
-    $60 = HEAP32[$$pre$phi120Z2D>>2]|0;
-    $61 = HEAP32[$$pre$phi122Z2D>>2]|0;
-    $62 = (__gcry_mpi_ec_p_internal_new($57,$58,0,$59,$60,$61)|0);
-    $63 = HEAP32[$14>>2]|0;
-    $64 = $63 & 4096;
-    $65 = ($64|0)==(0);
-    if ($65) {
-     $66 = HEAP32[$9>>2]|0;
-     $67 = HEAP32[$$pre$phi118Z2D>>2]|0;
-     $68 = (__gcry_mpi_get_nbits($67)|0);
-     __gcry_mpi_point_init($8);
-     $69 = $63 >>> 5;
-     $70 = $69 & 1;
-     $71 = (2 - ($70))|0;
-     $72 = ((($62)) + 4|0);
-     $73 = HEAP32[$72>>2]|0;
-     $74 = ($73|0)==(1);
-     if ($74) {
-      $75 = (__gcry_mpi_snew(256)|0);
-      $76 = ((($11)) + 56|0);
-      HEAP32[$76>>2] = $75;
-      $77 = (__gcry_random_bytes_secure(32,$71)|0);
-      $78 = HEAP8[$77>>0]|0;
-      $79 = $78 & 63;
-      $80 = $79 | 64;
-      HEAP8[$77>>0] = $80;
-      $81 = ((($77)) + 31|0);
-      $82 = HEAP8[$81>>0]|0;
-      $83 = $82 & -8;
-      HEAP8[$81>>0] = $83;
-      $84 = HEAP32[$76>>2]|0;
-      __gcry_mpi_set_buffer($84,$77,32,0);
-      __gcry_free($77);
-      $$pre$i = HEAP32[$76>>2]|0;
-      $$pre1$i = ((($10)) + 32|0);
-      $$pre$phi$iZ2D = $76;$$pre$phi2$iZ2D = $$pre1$i;$90 = $$pre$i;
-     } else {
-      $85 = ((($10)) + 32|0);
-      $86 = HEAP32[$85>>2]|0;
-      $87 = (__gcry_dsa_gen_k($86,$71)|0);
-      $88 = ((($11)) + 56|0);
-      HEAP32[$88>>2] = $87;
-      $$pre$phi$iZ2D = $88;$$pre$phi2$iZ2D = $85;$90 = $87;
-     }
-     $89 = ((($10)) + 20|0);
-     __gcry_mpi_ec_mul_point($8,$90,$89,$62);
-     $91 = HEAP32[$10>>2]|0;
-     HEAP32[$11>>2] = $91;
-     $92 = HEAP32[$$pre$phi116Z2D>>2]|0;
-     $93 = ((($11)) + 4|0);
-     HEAP32[$93>>2] = $92;
-     $94 = HEAP32[$$pre$phi118Z2D>>2]|0;
-     $95 = (__gcry_mpi_copy($94)|0);
-     $96 = ((($11)) + 8|0);
-     HEAP32[$96>>2] = $95;
-     $97 = HEAP32[$$pre$phi120Z2D>>2]|0;
-     $98 = (__gcry_mpi_copy($97)|0);
-     $99 = ((($11)) + 12|0);
-     HEAP32[$99>>2] = $98;
-     $100 = HEAP32[$$pre$phi122Z2D>>2]|0;
-     $101 = (__gcry_mpi_copy($100)|0);
-     $102 = ((($11)) + 16|0);
-     HEAP32[$102>>2] = $101;
-     $103 = ((($11)) + 20|0);
-     __gcry_mpi_point_init($103);
-     $104 = HEAP32[$103>>2]|0;
-     $105 = HEAP32[$89>>2]|0;
-     (__gcry_mpi_set($104,$105)|0);
-     $106 = ((($11)) + 24|0);
-     $107 = HEAP32[$106>>2]|0;
-     $108 = ((($10)) + 24|0);
-     $109 = HEAP32[$108>>2]|0;
-     (__gcry_mpi_set($107,$109)|0);
-     $110 = ((($11)) + 28|0);
-     $111 = HEAP32[$110>>2]|0;
-     $112 = ((($10)) + 28|0);
-     $113 = HEAP32[$112>>2]|0;
-     (__gcry_mpi_set($111,$113)|0);
-     $114 = HEAP32[$$pre$phi2$iZ2D>>2]|0;
-     $115 = (__gcry_mpi_copy($114)|0);
-     $116 = ((($11)) + 32|0);
-     HEAP32[$116>>2] = $115;
-     $117 = ((($10)) + 36|0);
-     $118 = HEAP32[$117>>2]|0;
-     $119 = (__gcry_mpi_copy($118)|0);
-     $120 = ((($11)) + 36|0);
-     HEAP32[$120>>2] = $119;
-     $121 = ((($11)) + 44|0);
-     __gcry_mpi_point_init($121);
-     $122 = (__gcry_mpi_new($68)|0);
-     $123 = (__gcry_mpi_new($68)|0);
-     $124 = (__gcry_mpi_ec_get_affine($122,$123,$8,$62)|0);
-     $125 = ($124|0)==(0);
-     if (!($125)) {
-      HEAP32[$vararg_buffer5>>2] = 66655;
-      __gcry_log_fatal(66607,$vararg_buffer5);
-      // unreachable;
-     }
-     $126 = HEAP32[$$pre$phi116Z2D>>2]|0;
-     $127 = ($126|0)==(1);
-     do {
-      if ($127) {
-       $128 = HEAP32[$121>>2]|0;
-       $129 = HEAP32[$8>>2]|0;
-       (__gcry_mpi_set($128,$129)|0);
-       $130 = ((($11)) + 48|0);
-       $131 = HEAP32[$130>>2]|0;
-       $132 = ((($8)) + 4|0);
-       $133 = HEAP32[$132>>2]|0;
-       (__gcry_mpi_set($131,$133)|0);
-       $134 = ((($11)) + 52|0);
-       $135 = HEAP32[$134>>2]|0;
-       $136 = ((($8)) + 8|0);
-       $137 = HEAP32[$136>>2]|0;
-       (__gcry_mpi_set($135,$137)|0);
-       $$2$i = $122;$$284$i = $123;
-      } else {
-       $138 = (__gcry_mpi_new($68)|0);
-       $139 = HEAP32[$10>>2]|0;
-       $140 = ($139|0)==(0);
-       $141 = HEAP32[$$pre$phi118Z2D>>2]|0;
-       if ($140) {
-        __gcry_mpi_sub($138,$141,$123);
-       } else {
-        __gcry_mpi_sub($138,$141,$122);
-       }
-       $142 = (__gcry_mpi_cmp($138,$123)|0);
-       $143 = ($142|0)<(0);
-       if (!($143)) {
-        __gcry_mpi_free($138);
-        $151 = HEAP32[$121>>2]|0;
-        $152 = HEAP32[$8>>2]|0;
-        (__gcry_mpi_set($151,$152)|0);
-        $153 = ((($11)) + 48|0);
-        $154 = HEAP32[$153>>2]|0;
-        $155 = ((($8)) + 4|0);
-        $156 = HEAP32[$155>>2]|0;
-        (__gcry_mpi_set($154,$156)|0);
-        $157 = ((($11)) + 52|0);
-        $158 = HEAP32[$157>>2]|0;
-        $159 = ((($8)) + 8|0);
-        $160 = HEAP32[$159>>2]|0;
-        (__gcry_mpi_set($158,$160)|0);
-        $161 = (__gcry_get_debug_flag(1)|0);
-        $162 = ($161|0)==(0);
-        if ($162) {
-         $$2$i = $122;$$284$i = $123;
-         break;
-        }
-        __gcry_log_debug(66697,$vararg_buffer10);
-        $$2$i = $122;$$284$i = $123;
-        break;
-       }
-       $144 = HEAP32[$10>>2]|0;
-       $145 = ($144|0)==(0);
-       if ($145) {
-        __gcry_mpi_free($123);
-        $$081$i = $122;$$082$i = $138;
-       } else {
-        __gcry_mpi_free($122);
-        $$081$i = $138;$$082$i = $123;
-       }
-       $146 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-       $147 = HEAP32[$$pre$phi2$iZ2D>>2]|0;
-       __gcry_mpi_sub($146,$147,$146);
-       $148 = (__gcry_mpi_const(1)|0);
-       (__gcry_mpi_point_set($121,$$081$i,$$082$i,$148)|0);
-       $149 = (__gcry_get_debug_flag(1)|0);
-       $150 = ($149|0)==(0);
-       if ($150) {
-        $$2$i = $$081$i;$$284$i = $$082$i;
-       } else {
-        __gcry_log_debug(66657,$vararg_buffer8);
-        $$2$i = $$081$i;$$284$i = $$082$i;
-       }
-      }
-     } while(0);
-     __gcry_mpi_point_free_parts($8);
-     $163 = $63 & 16384;
-     $164 = ($163|0)==(0);
-     do {
-      if ($164) {
-       $165 = HEAP32[$11>>2]|0;
-       $166 = ($165|0)==(1);
-       $167 = (($66) + -64)|0;
-       if (!($166)) {
-        $168 = (__gcry_mpi_new($167)|0);
-        $169 = (__gcry_mpi_new($167)|0);
-        $170 = (__gcry_mpi_new($167)|0);
-        $171 = (__gcry_mpi_new($167)|0);
-        $172 = (__gcry_mpi_new($167)|0);
-        $173 = (__gcry_get_debug_flag(1)|0);
-        $174 = ($173|0)==(0);
-        if (!($174)) {
-         __gcry_log_debug(66750,$vararg_buffer12);
-        }
-        __gcry_mpi_point_init($6);
-        dest=$$byval_copy; src=$11; stop=dest+44|0; do { 
HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) 
< (stop|0));
-        __gcry_ecc_curve_copy($7,$$byval_copy);
-        dest=$5; src=$7; stop=dest+44|0; do { 
HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) 
< (stop|0));
-        $175 = ((($5)) + 44|0);
-        __gcry_mpi_point_init($175);
-        $176 = HEAP32[$175>>2]|0;
-        $177 = ((($11)) + 44|0);
-        $178 = HEAP32[$177>>2]|0;
-        (__gcry_mpi_set($176,$178)|0);
-        $179 = ((($5)) + 48|0);
-        $180 = HEAP32[$179>>2]|0;
-        $181 = ((($11)) + 48|0);
-        $182 = HEAP32[$181>>2]|0;
-        (__gcry_mpi_set($180,$182)|0);
-        $183 = ((($5)) + 52|0);
-        $184 = HEAP32[$183>>2]|0;
-        $185 = ((($11)) + 52|0);
-        $186 = HEAP32[$185>>2]|0;
-        (__gcry_mpi_set($184,$186)|0);
-        __gcry_mpi_randomize($168,$167,0);
-        $187 = (__gcry_ecc_ecdsa_sign($168,$11,$171,$172,0,0)|0);
-        $188 = ($187|0)==(0);
-        if (!($188)) {
-         __gcry_log_fatal(66764,$vararg_buffer14);
-         // unreachable;
-        }
-        $189 = (__gcry_ecc_ecdsa_verify($168,$5,$171,$172)|0);
-        $190 = ($189|0)==(0);
-        if (!($190)) {
-         __gcry_log_fatal(66794,$vararg_buffer16);
-         // unreachable;
-        }
-        $191 = (__gcry_get_debug_flag(1)|0);
-        $192 = ($191|0)==(0);
-        if (!($192)) {
-         __gcry_log_debug(66832,$vararg_buffer18);
-        }
-        __gcry_mpi_point_free_parts($175);
-        __gcry_ecc_curve_free($5);
-        __gcry_mpi_point_free_parts($6);
-        __gcry_mpi_free($172);
-        __gcry_mpi_free($171);
-        __gcry_mpi_free($170);
-        __gcry_mpi_free($169);
-        __gcry_mpi_free($168);
-        break;
-       }
-       $193 = (__gcry_get_debug_flag(1)|0);
-       $194 = ($193|0)==(0);
-       if (!($194)) {
-        __gcry_log_debug(66750,$vararg_buffer20);
-       }
-       __gcry_mpi_point_init($3);
-       dest=$$byval_copy71; src=$11; stop=dest+44|0; do { 
HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) 
< (stop|0));
-       __gcry_ecc_curve_copy($4,$$byval_copy71);
-       dest=$2; src=$4; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; 
dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));
-       $195 = ((($2)) + 44|0);
-       __gcry_mpi_point_init($195);
-       $196 = HEAP32[$195>>2]|0;
-       $197 = ((($11)) + 44|0);
-       $198 = HEAP32[$197>>2]|0;
-       (__gcry_mpi_set($196,$198)|0);
-       $199 = ((($2)) + 48|0);
-       $200 = HEAP32[$199>>2]|0;
-       $201 = ((($11)) + 48|0);
-       $202 = HEAP32[$201>>2]|0;
-       (__gcry_mpi_set($200,$202)|0);
-       $203 = ((($2)) + 52|0);
-       $204 = HEAP32[$203>>2]|0;
-       $205 = ((($11)) + 52|0);
-       $206 = HEAP32[$205>>2]|0;
-       (__gcry_mpi_set($204,$206)|0);
-       $207 = HEAP32[$93>>2]|0;
-       $208 = ($207|0)==(1);
-       if ($208) {
-        $209 = (__gcry_mpi_new(256)|0);
-        $210 = (__gcry_random_bytes(32,0)|0);
-        $211 = HEAP8[$210>>0]|0;
-        $212 = $211 & 63;
-        $213 = $212 | 64;
-        HEAP8[$210>>0] = $213;
-        $214 = ((($210)) + 31|0);
-        $215 = HEAP8[$214>>0]|0;
-        $216 = $215 & -8;
-        HEAP8[$214>>0] = $216;
-        __gcry_mpi_set_buffer($209,$210,32,0);
-        __gcry_free($210);
-        $$0$i$i = $209;
-       } else {
-        $217 = (__gcry_mpi_new($167)|0);
-        __gcry_mpi_randomize($217,$167,0);
-        $$0$i$i = $217;
-       }
-       $218 = HEAP32[$2>>2]|0;
-       $219 = ((($2)) + 4|0);
-       $220 = HEAP32[$219>>2]|0;
-       $221 = ((($2)) + 8|0);
-       $222 = HEAP32[$221>>2]|0;
-       $223 = ((($2)) + 12|0);
-       $224 = HEAP32[$223>>2]|0;
-       $225 = ((($2)) + 16|0);
-       $226 = HEAP32[$225>>2]|0;
-       $227 = (__gcry_mpi_ec_p_internal_new($218,$220,0,$222,$224,$226)|0);
-       $228 = (__gcry_mpi_new(0)|0);
-       $229 = (__gcry_mpi_new(0)|0);
-       __gcry_mpi_ec_mul_point($3,$$0$i$i,$195,$227);
-       $230 = HEAP32[$93>>2]|0;
-       $231 = ($230|0)==(1);
-       if (!($231)) {
-        $232 = ((($227)) + 36|0);
-        $233 = HEAP32[$232>>2]|0;
-        __gcry_mpi_ec_mul_point($3,$233,$3,$227);
-       }
-       $234 = (__gcry_mpi_ec_get_affine($228,0,$3,$227)|0);
-       $235 = ($234|0)==(0);
-       if (!($235)) {
-        __gcry_log_fatal(66867,$vararg_buffer22);
-        // unreachable;
-       }
-       $236 = ((($2)) + 20|0);
-       __gcry_mpi_ec_mul_point($3,$$0$i$i,$236,$227);
-       $237 = HEAP32[$$pre$phi$iZ2D>>2]|0;
-       __gcry_mpi_ec_mul_point($3,$237,$3,$227);
-       $238 = HEAP32[$93>>2]|0;
-       $239 = ($238|0)==(1);
-       if (!($239)) {
-        $240 = ((($227)) + 36|0);
-        $241 = HEAP32[$240>>2]|0;
-        __gcry_mpi_ec_mul_point($3,$241,$3,$227);
-       }
-       $242 = (__gcry_mpi_ec_get_affine($229,0,$3,$227)|0);
-       $243 = ($242|0)==(0);
-       if (!($243)) {
-        __gcry_log_fatal(66915,$vararg_buffer24);
-        // unreachable;
-       }
-       $244 = (__gcry_mpi_cmp($228,$229)|0);
-       $245 = ($244|0)==(0);
-       if ($245) {
-        __gcry_mpi_free($228);
-        __gcry_mpi_free($229);
-        __gcry_mpi_ec_free($227);
-        __gcry_mpi_point_free_parts($195);
-        __gcry_ecc_curve_free($2);
-        __gcry_mpi_point_free_parts($3);
-        __gcry_mpi_free($$0$i$i);
-        break;
-       } else {
-        __gcry_log_fatal(66964,$vararg_buffer26);
-        // unreachable;
-       }
-      }
-     } while(0);
-     $$0102110 = $$284$i;$$0105109 = $$2$i;$$pre$phi124Z2D = $103;
-    } else {
-     $246 = (__gcry_ecc_eddsa_genkey($11,$10,$62,$63)|0);
-     $247 = ($246|0)==(0);
-     if (!($247)) {
-      $$076 = 0;$$078 = 0;$$079 = $62;$$081 = 0;$$082 = 0;$$2 = 0;$$285 = 
$246;$$3 = 0;$$3108 = 0;
-      break;
-     }
-     $$pre123 = ((($11)) + 20|0);
-     $$0102110 = 0;$$0105109 = 0;$$pre$phi124Z2D = $$pre123;
-    }
-    $248 = (__gcry_mpi_new(0)|0);
-    $249 = (__gcry_mpi_new(0)|0);
-    $250 = (__gcry_mpi_ec_get_affine($248,$249,$$pre$phi124Z2D,$62)|0);
-    $251 = ($250|0)==(0);
-    if (!($251)) {
-     HEAP32[$vararg_buffer28>>2] = 66983;
-     __gcry_log_fatal(66607,$vararg_buffer28);
-     // unreachable;
-    }
-    $252 = ((($11)) + 8|0);
-    $253 = HEAP32[$252>>2]|0;
-    $254 = (__gcry_ecc_ec2os($248,$249,$253)|0);
-    $255 = ((($11)) + 4|0);
-    $256 = HEAP32[$255>>2]|0;
-    $257 = ($256|0)==(1);
-    do {
-     if ($257) {
-      $258 = HEAP32[$14>>2]|0;
-      $259 = $258 & 2048;
-      $260 = ($259|0)==(0);
-      if ($260) {
-       $261 = ((($11)) + 44|0);
-       $262 = $258 >>> 10;
-       $$lobit = $262 & 1;
-       $263 = 
(__gcry_ecc_eddsa_encodepoint($261,$62,$248,$249,$$lobit,$15,$16)|0);
-       $264 = ($263|0)==(0);
-       if ($264) {
-        $265 = (__gcry_mpi_new(0)|0);
-        $266 = HEAP32[$15>>2]|0;
-        $267 = HEAP32[$16>>2]|0;
-        $268 = $267 << 3;
-        (__gcry_mpi_set_opaque($265,$266,$268)|0);
-        $$1 = $265;$$2104 = $$0102110;$$2107 = $$0105109;
-        break;
-       }
-       $$187 = $263;
-       STACKTOP = sp;return ($$187|0);
-      } else {
-       label = 71;
-      }
-     } else {
-      label = 71;
-     }
-    } while(0);
-    if ((label|0) == 71) {
-     $269 = ($$0105109|0)==(0|0);
-     if ($269) {
-      $270 = (__gcry_mpi_new(0)|0);
-      $271 = (__gcry_mpi_new(0)|0);
-      $272 = ((($11)) + 44|0);
-      $273 = (__gcry_mpi_ec_get_affine($270,$271,$272,$62)|0);
-      $274 = ($273|0)==(0);
-      if ($274) {
-       $$1103 = $271;$$1106 = $270;
-      } else {
-       HEAP32[$vararg_buffer31>>2] = 66655;
-       __gcry_log_fatal(66607,$vararg_buffer31);
-       // unreachable;
-      }
-     } else {
-      $$1103 = $$0102110;$$1106 = $$0105109;
-     }
-     $275 = HEAP32[$252>>2]|0;
-     $276 = (__gcry_ecc_ec2os($$1106,$$1103,$275)|0);
-     $$1 = $276;$$2104 = $$1103;$$2107 = $$1106;
-    }
-    $277 = ((($11)) + 56|0);
-    $278 = HEAP32[$277>>2]|0;
-    HEAP32[$277>>2] = 0;
-    $279 = ((($10)) + 40|0);
-    $280 = HEAP32[$279>>2]|0;
-    $281 = ($280|0)==(0|0);
-    if (!($281)) {
-     HEAP32[$vararg_buffer34>>2] = $280;
-     $282 = (__gcry_sexp_build($12,0,66985,$vararg_buffer34)|0);
-     $283 = ($282|0)==(0);
-     if (!($283)) {
-      $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = $282;$$3 = $$2104;$$3108 = $$2107;
-      break;
-     }
-    }
-    $284 = HEAP32[$14>>2]|0;
-    $285 = $284 & 4608;
-    $286 = ($285|0)==(0);
-    if ($286) {
-     $294 = $284;
-    } else {
-     $287 = $284 & 512;
-     $288 = ($287|0)==(0);
-     $289 = ($285|0)==(4608);
-     $290 = $288 ? 66996 : 67010;
-     $spec$select = $289 ? 67024 : $290;
-     $291 = (__gcry_sexp_build($13,0,$spec$select,$vararg_buffer37)|0);
-     $292 = ($291|0)==(0);
-     if (!($292)) {
-      $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = $291;$$3 = $$2104;$$3108 = $$2107;
-      break;
-     }
-     $$pre = HEAP32[$14>>2]|0;
-     $294 = $$pre;
-    }
-    $293 = $294 & 512;
-    $295 = ($293|0)==(0);
-    $296 = HEAP32[$279>>2]|0;
-    $297 = ($296|0)==(0|0);
-    $or$cond93 = $295 | $297;
-    $298 = HEAP32[$12>>2]|0;
-    $299 = HEAP32[$13>>2]|0;
-    if ($or$cond93) {
-     HEAP32[$vararg_buffer60>>2] = $298;
-     $vararg_ptr63 = ((($vararg_buffer60)) + 4|0);
-     HEAP32[$vararg_ptr63>>2] = $299;
-     $vararg_ptr64 = ((($vararg_buffer60)) + 8|0);
-     HEAP32[$vararg_ptr64>>2] = $$1;
-     $vararg_ptr65 = ((($vararg_buffer60)) + 12|0);
-     HEAP32[$vararg_ptr65>>2] = $298;
-     $vararg_ptr66 = ((($vararg_buffer60)) + 16|0);
-     HEAP32[$vararg_ptr66>>2] = $299;
-     $vararg_ptr67 = ((($vararg_buffer60)) + 20|0);
-     HEAP32[$vararg_ptr67>>2] = $$1;
-     $vararg_ptr68 = ((($vararg_buffer60)) + 24|0);
-     HEAP32[$vararg_ptr68>>2] = $278;
-     $310 = (__gcry_sexp_build($1,0,67180,$vararg_buffer60)|0);
-     $$184 = $310;
-    } else {
-     $300 = HEAP32[$252>>2]|0;
-     $301 = ((($11)) + 12|0);
-     $302 = HEAP32[$301>>2]|0;
-     $303 = ((($11)) + 16|0);
-     $304 = HEAP32[$303>>2]|0;
-     $305 = ((($11)) + 32|0);
-     $306 = HEAP32[$305>>2]|0;
-     $307 = ((($11)) + 36|0);
-     $308 = HEAP32[$307>>2]|0;
-     HEAP32[$vararg_buffer39>>2] = $298;
-     $vararg_ptr42 = ((($vararg_buffer39)) + 4|0);
-     HEAP32[$vararg_ptr42>>2] = $299;
-     $vararg_ptr43 = ((($vararg_buffer39)) + 8|0);
-     HEAP32[$vararg_ptr43>>2] = $300;
-     $vararg_ptr44 = ((($vararg_buffer39)) + 12|0);
-     HEAP32[$vararg_ptr44>>2] = $302;
-     $vararg_ptr45 = ((($vararg_buffer39)) + 16|0);
-     HEAP32[$vararg_ptr45>>2] = $304;
-     $vararg_ptr46 = ((($vararg_buffer39)) + 20|0);
-     HEAP32[$vararg_ptr46>>2] = $254;
-     $vararg_ptr47 = ((($vararg_buffer39)) + 24|0);
-     HEAP32[$vararg_ptr47>>2] = $306;
-     $vararg_ptr48 = ((($vararg_buffer39)) + 28|0);
-     HEAP32[$vararg_ptr48>>2] = $308;
-     $vararg_ptr49 = ((($vararg_buffer39)) + 32|0);
-     HEAP32[$vararg_ptr49>>2] = $$1;
-     $vararg_ptr50 = ((($vararg_buffer39)) + 36|0);
-     HEAP32[$vararg_ptr50>>2] = $298;
-     $vararg_ptr51 = ((($vararg_buffer39)) + 40|0);
-     HEAP32[$vararg_ptr51>>2] = $299;
-     $vararg_ptr52 = ((($vararg_buffer39)) + 44|0);
-     HEAP32[$vararg_ptr52>>2] = $300;
-     $vararg_ptr53 = ((($vararg_buffer39)) + 48|0);
-     HEAP32[$vararg_ptr53>>2] = $302;
-     $vararg_ptr54 = ((($vararg_buffer39)) + 52|0);
-     HEAP32[$vararg_ptr54>>2] = $304;
-     $vararg_ptr55 = ((($vararg_buffer39)) + 56|0);
-     HEAP32[$vararg_ptr55>>2] = $254;
-     $vararg_ptr56 = ((($vararg_buffer39)) + 60|0);
-     HEAP32[$vararg_ptr56>>2] = $306;
-     $vararg_ptr57 = ((($vararg_buffer39)) + 64|0);
-     HEAP32[$vararg_ptr57>>2] = $308;
-     $vararg_ptr58 = ((($vararg_buffer39)) + 68|0);
-     HEAP32[$vararg_ptr58>>2] = $$1;
-     $vararg_ptr59 = ((($vararg_buffer39)) + 72|0);
-     HEAP32[$vararg_ptr59>>2] = $278;
-     $309 = (__gcry_sexp_build($1,0,67044,$vararg_buffer39)|0);
-     $$184 = $309;
-    }
-    $311 = ($$184|0)==(0);
-    if ($311) {
-     $312 = (__gcry_get_debug_flag(1)|0);
-     $313 = ($312|0)==(0);
-     if ($313) {
-      $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = 0;$$3 = $$2104;$$3108 = $$2107;
-     } else {
-      $314 = HEAP32[$252>>2]|0;
-      __gcry_log_printmpi(67256,$314);
-      $315 = ((($11)) + 12|0);
-      $316 = HEAP32[$315>>2]|0;
-      __gcry_log_printmpi(67272,$316);
-      $317 = ((($11)) + 16|0);
-      $318 = HEAP32[$317>>2]|0;
-      __gcry_log_printmpi(67288,$318);
-      __gcry_log_printmpi(67304,$254);
-      $319 = ((($11)) + 32|0);
-      $320 = HEAP32[$319>>2]|0;
-      __gcry_log_printmpi(67320,$320);
-      $321 = ((($11)) + 36|0);
-      $322 = HEAP32[$321>>2]|0;
-      __gcry_log_printmpi(67336,$322);
-      __gcry_log_printmpi(67352,$$1);
-      __gcry_log_printmpi(67368,$278);
-      $323 = HEAP32[$14>>2]|0;
-      $324 = $323 & 4096;
-      $325 = ($324|0)==(0);
-      if ($325) {
-       $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = 0;$$3 = $$2104;$$3108 = $$2107;
-      } else {
-       __gcry_log_debug(67384,$vararg_buffer69);
-       $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = 0;$$3 = $$2104;$$3108 = $$2107;
-      }
-     }
-    } else {
-     $$076 = $278;$$078 = $254;$$079 = $62;$$081 = $249;$$082 = $248;$$2 = 
$$1;$$285 = $$184;$$3 = $$2104;$$3108 = $$2107;
-    }
-   } else {
-    $$076 = 0;$$078 = 0;$$079 = 0;$$081 = 0;$$082 = 0;$$2 = 0;$$285 = $34;$$3 
= 0;$$3108 = 0;
-   }
-  }
- } while(0);
- __gcry_mpi_free($$076);
- __gcry_mpi_free($$2);
- __gcry_mpi_free($$078);
- __gcry_ecc_curve_free($11);
- $326 = ((($11)) + 44|0);
- __gcry_mpi_point_free_parts($326);
- $327 = ((($11)) + 56|0);
- $328 = HEAP32[$327>>2]|0;
- __gcry_mpi_free($328);
- __gcry_ecc_curve_free($10);
- __gcry_mpi_free($$082);
- __gcry_mpi_free($$081);
- __gcry_mpi_free($$3108);
- __gcry_mpi_free($$3);
- __gcry_mpi_ec_free($$079);
- $329 = HEAP32[$13>>2]|0;
- __gcry_sexp_release($329);
- $330 = HEAP32[$12>>2]|0;
- __gcry_sexp_release($330);
- $$187 = $$285;
- STACKTOP = sp;return ($$187|0);
-}
-function _ecc_check_secret_key($0) {
- $0 = $0|0;
- var $$0 = 0, $$032 = 0, $$033 = 0, $$034 = 0, $$036 = 0, $$045$i = 0, $$046$i 
= 0, $$1 = 0, $$1$i = 0, $$135 = 0, $$144$i = 0, $$2 = 0, $$lobit = 0, $$pre = 
0, $$pre$phiZ2D = 0, $$pre38 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, 
$127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, 
$134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0;
- var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 
= 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0;
- var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0;
- var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 
= 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
$vararg_buffer = 0, $vararg_buffer14 = 0, $vararg_buffer18 = 0, 
$vararg_buffer21 = 0, $vararg_buffer23 = 0, $vararg_buffer25 = 0, 
$vararg_buffer27 = 0, $vararg_buffer29 = 0, $vararg_buffer31 = 0, 
$vararg_buffer33 = 0, $vararg_buffer35 = 0, $vararg_buffer37 = 0, 
$vararg_buffer39 = 0;
- var $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 
0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, dest = 
0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 240|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(240|0);
- $vararg_buffer39 = sp + 144|0;
- $vararg_buffer37 = sp + 136|0;
- $vararg_buffer35 = sp + 128|0;
- $vararg_buffer33 = sp + 120|0;
- $vararg_buffer31 = sp + 112|0;
- $vararg_buffer29 = sp + 104|0;
- $vararg_buffer27 = sp + 96|0;
- $vararg_buffer25 = sp + 88|0;
- $vararg_buffer23 = sp + 80|0;
- $vararg_buffer21 = sp + 72|0;
- $vararg_buffer18 = sp + 64|0;
- $vararg_buffer14 = sp + 56|0;
- $vararg_buffer9 = sp + 40|0;
- $vararg_buffer = sp;
- $1 = sp + 220|0;
- $2 = sp + 216|0;
- $3 = sp + 212|0;
- $4 = sp + 208|0;
- $5 = sp + 148|0;
- HEAP32[$2>>2] = 0;
- HEAP32[$3>>2] = 0;
- HEAP32[$4>>2] = 0;
- dest=$5; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $6 = (__gcry_sexp_find_token($0,64705,0)|0);
- $7 = ($6|0)==(0|0);
- if ($7) {
-  label = 5;
- } else {
-  $8 = (__gcry_pk_util_parse_flaglist($6,$2,0)|0);
-  $9 = ($8|0)==(0);
-  if ($9) {
-   $$pre = HEAP32[$2>>2]|0;
-   $10 = $$pre & 512;
-   $11 = ($10|0)==(0);
-   if ($11) {
-    label = 5;
-   } else {
-    $12 = ((($5)) + 8|0);
-    $13 = ((($5)) + 12|0);
-    $14 = ((($5)) + 16|0);
-    $15 = ((($5)) + 32|0);
-    $16 = ((($5)) + 36|0);
-    $17 = ((($5)) + 56|0);
-    HEAP32[$vararg_buffer>>2] = $12;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = $13;
-    $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-    HEAP32[$vararg_ptr2>>2] = $14;
-    $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-    HEAP32[$vararg_ptr3>>2] = $3;
-    $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-    HEAP32[$vararg_ptr4>>2] = $15;
-    $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-    HEAP32[$vararg_ptr5>>2] = $16;
-    $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
-    HEAP32[$vararg_ptr6>>2] = $4;
-    $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
-    HEAP32[$vararg_ptr7>>2] = $17;
-    $vararg_ptr8 = ((($vararg_buffer)) + 32|0);
-    HEAP32[$vararg_ptr8>>2] = 0;
-    $18 = (__gcry_sexp_extract_param($0,0,65045,$vararg_buffer)|0);
-    $$034 = $18;
-    label = 6;
-   }
-  } else {
-   $$0 = 0;$$033 = $6;$$1 = 0;$$2 = $8;
-  }
- }
- if ((label|0) == 5) {
-  $19 = ((($5)) + 56|0);
-  HEAP32[$vararg_buffer9>>2] = $4;
-  $vararg_ptr12 = ((($vararg_buffer9)) + 4|0);
-  HEAP32[$vararg_ptr12>>2] = $19;
-  $vararg_ptr13 = ((($vararg_buffer9)) + 8|0);
-  HEAP32[$vararg_ptr13>>2] = 0;
-  $20 = (__gcry_sexp_extract_param($0,0,65064,$vararg_buffer9)|0);
-  $$034 = $20;
-  label = 6;
- }
- do {
-  if ((label|0) == 6) {
-   $21 = ($$034|0)==(0);
-   if ($21) {
-    __gcry_sexp_release($6);
-    $22 = (__gcry_sexp_find_token($0,64745,5)|0);
-    $23 = ($22|0)==(0|0);
-    if ($23) {
-     $$032 = 0;
-    } else {
-     $24 = (__gcry_sexp_nth_string($22,1)|0);
-     $25 = ($24|0)==(0|0);
-     if ($25) {
-      $$032 = 0;
-     } else {
-      $26 = ((($5)) + 4|0);
-      $27 = ((($5)) + 8|0);
-      $28 = ((($5)) + 12|0);
-      $29 = ((($5)) + 16|0);
-      $30 = ((($5)) + 32|0);
-      $31 = ((($5)) + 36|0);
-      $32 = 
(__gcry_ecc_update_curve_param($24,$5,$26,$27,$28,$29,$3,$30,$31)|0);
-      $33 = ($32|0)==(0);
-      if ($33) {
-       $$032 = $24;
-      } else {
-       $$036 = $32;
-       STACKTOP = sp;return ($$036|0);
-      }
-     }
-    }
-    $34 = HEAP32[$3>>2]|0;
-    $35 = ($34|0)==(0|0);
-    if (!($35)) {
-     $36 = ((($5)) + 20|0);
-     __gcry_mpi_point_init($36);
-     $37 = HEAP32[$3>>2]|0;
-     $38 = (__gcry_ecc_os2ec($36,$37)|0);
-     $39 = ($38|0)==(0);
-     if (!($39)) {
-      $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = $38;
-      break;
-     }
-    }
-    $40 = ($$032|0)==(0|0);
-    if ($40) {
-     $41 = HEAP32[$2>>2]|0;
-     $42 = $41 >>> 11;
-     $43 = $42 & 2;
-     HEAP32[$5>>2] = $43;
-     $44 = $41 >>> 12;
-     $$lobit = $44 & 1;
-     $45 = ((($5)) + 4|0);
-     HEAP32[$45>>2] = $$lobit;
-    }
-    $46 = (__gcry_get_debug_flag(1)|0);
-    $47 = ($46|0)==(0);
-    if ($47) {
-     $$pre38 = ((($5)) + 8|0);
-     $$pre$phiZ2D = $$pre38;
-    } else {
-     $48 = HEAP32[$5>>2]|0;
-     $49 = (__gcry_ecc_model2str($48)|0);
-     $50 = ((($5)) + 4|0);
-     $51 = HEAP32[$50>>2]|0;
-     $52 = (__gcry_ecc_dialect2str($51)|0);
-     HEAP32[$vararg_buffer14>>2] = $49;
-     $vararg_ptr17 = ((($vararg_buffer14)) + 4|0);
-     HEAP32[$vararg_ptr17>>2] = $52;
-     __gcry_log_debug(65973,$vararg_buffer14);
-     $53 = ((($5)) + 40|0);
-     $54 = HEAP32[$53>>2]|0;
-     $55 = ($54|0)==(0|0);
-     if (!($55)) {
-      HEAP32[$vararg_buffer18>>2] = $54;
-      __gcry_log_debug(65997,$vararg_buffer18);
-     }
-     $56 = ((($5)) + 8|0);
-     $57 = HEAP32[$56>>2]|0;
-     __gcry_log_printmpi(66018,$57);
-     $58 = ((($5)) + 12|0);
-     $59 = HEAP32[$58>>2]|0;
-     __gcry_log_printmpi(66034,$59);
-     $60 = ((($5)) + 16|0);
-     $61 = HEAP32[$60>>2]|0;
-     __gcry_log_printmpi(66050,$61);
-     $62 = ((($5)) + 20|0);
-     __gcry_mpi_point_log(66066,$62,0);
-     $63 = ((($5)) + 32|0);
-     $64 = HEAP32[$63>>2]|0;
-     __gcry_log_printmpi(66080,$64);
-     $65 = ((($5)) + 36|0);
-     $66 = HEAP32[$65>>2]|0;
-     __gcry_log_printmpi(66096,$66);
-     $67 = HEAP32[$4>>2]|0;
-     __gcry_log_printmpi(66112,$67);
-     $68 = (__gcry_fips_mode()|0);
-     $69 = ($68|0)==(0);
-     if ($69) {
-      $70 = ((($5)) + 56|0);
-      $71 = HEAP32[$70>>2]|0;
-      __gcry_log_printmpi(66128,$71);
-      $$pre$phiZ2D = $56;
-     } else {
-      $$pre$phiZ2D = $56;
-     }
-    }
-    $72 = HEAP32[$$pre$phiZ2D>>2]|0;
-    $73 = ($72|0)==(0|0);
-    if ($73) {
-     $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-    } else {
-     $74 = ((($5)) + 12|0);
-     $75 = HEAP32[$74>>2]|0;
-     $76 = ($75|0)==(0|0);
-     if ($76) {
-      $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-     } else {
-      $77 = ((($5)) + 16|0);
-      $78 = HEAP32[$77>>2]|0;
-      $79 = ($78|0)==(0|0);
-      if ($79) {
-       $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-      } else {
-       $80 = ((($5)) + 20|0);
-       $81 = HEAP32[$80>>2]|0;
-       $82 = ($81|0)==(0|0);
-       if ($82) {
-        $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-       } else {
-        $83 = ((($5)) + 32|0);
-        $84 = HEAP32[$83>>2]|0;
-        $85 = ($84|0)==(0|0);
-        if ($85) {
-         $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-        } else {
-         $86 = ((($5)) + 36|0);
-         $87 = HEAP32[$86>>2]|0;
-         $88 = ($87|0)==(0|0);
-         if ($88) {
-          $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-         } else {
-          $89 = ((($5)) + 56|0);
-          $90 = HEAP32[$89>>2]|0;
-          $91 = ($90|0)==(0|0);
-          if ($91) {
-           $$0 = 0;$$033 = $22;$$1 = $$032;$$2 = 68;
-          } else {
-           $92 = HEAP32[$5>>2]|0;
-           $93 = ((($5)) + 4|0);
-           $94 = HEAP32[$93>>2]|0;
-           $95 = (__gcry_mpi_ec_p_internal_new($92,$94,0,$72,$75,$78)|0);
-           $96 = HEAP32[$4>>2]|0;
-           $97 = ($96|0)==(0|0);
-           if ($97) {
-            $$0 = $95;$$033 = $22;$$1 = $$032;$$2 = 68;
-           } else {
-            $98 = ((($5)) + 44|0);
-            __gcry_mpi_point_init($98);
-            $99 = ((($95)) + 4|0);
-            $100 = HEAP32[$99>>2]|0;
-            $101 = ($100|0)==(1);
-            $102 = HEAP32[$4>>2]|0;
-            if ($101) {
-             $103 = (__gcry_ecc_eddsa_decodepoint($102,$95,$98,0,0)|0);
-             $$135 = $103;
-            } else {
-             $104 = (__gcry_ecc_os2ec($98,$102)|0);
-             $$135 = $104;
-            }
-            $105 = ($$135|0)==(0);
-            if ($105) {
-             $106 = HEAP32[$2>>2]|0;
-             __gcry_mpi_point_init($1);
-             $107 = (__gcry_mpi_new(0)|0);
-             $108 = HEAP32[$95>>2]|0;
-             $109 = ($108|0)==(1);
-             if ($109) {
-              $$045$i = 0;
-             } else {
-              $110 = (__gcry_mpi_new(0)|0);
-              $$045$i = $110;
-             }
-             $111 = ((($5)) + 20|0);
-             $112 = (__gcry_mpi_ec_curve_point($111,$95)|0);
-             $113 = ($112|0)==(0);
-             L45: do {
-              if ($113) {
-               $114 = (__gcry_get_debug_flag(1)|0);
-               $115 = ($114|0)==(0);
-               if ($115) {
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               __gcry_log_debug(66144,$vararg_buffer21);
-               $$046$i = 7;$$1$i = 0;$$144$i = 0;
-              } else {
-               $116 = ((($5)) + 28|0);
-               $117 = HEAP32[$116>>2]|0;
-               $118 = (__gcry_mpi_cmp_ui($117,0)|0);
-               $119 = ($118|0)==(0);
-               if ($119) {
-                $120 = (__gcry_get_debug_flag(1)|0);
-                $121 = ($120|0)==(0);
-                if ($121) {
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break;
-                }
-                __gcry_log_debug(66196,$vararg_buffer23);
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $122 = HEAP32[$93>>2]|0;
-               $123 = ($122|0)==(1);
-               do {
-                if (!($123)) {
-                 $124 = HEAP32[$83>>2]|0;
-                 __gcry_mpi_ec_mul_point($1,$124,$111,$95);
-                 $125 = ((($1)) + 8|0);
-                 $126 = HEAP32[$125>>2]|0;
-                 $127 = (__gcry_mpi_cmp_ui($126,0)|0);
-                 $128 = ($127|0)==(0);
-                 if ($128) {
-                  break;
-                 }
-                 $129 = (__gcry_get_debug_flag(1)|0);
-                 $130 = ($129|0)==(0);
-                 if ($130) {
-                  $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                  break L45;
-                 }
-                 __gcry_log_debug(66241,$vararg_buffer25);
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break L45;
-                }
-               } while(0);
-               $131 = ((($5)) + 52|0);
-               $132 = HEAP32[$131>>2]|0;
-               $133 = (__gcry_mpi_cmp_ui($132,0)|0);
-               $134 = ($133|0)==(0);
-               if ($134) {
-                $135 = (__gcry_get_debug_flag(1)|0);
-                $136 = ($135|0)==(0);
-                if ($136) {
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break;
-                }
-                __gcry_log_debug(66288,$vararg_buffer27);
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $137 = HEAP32[$89>>2]|0;
-               $138 = (__gcry_ecc_compute_public($1,$95,$111,$137)|0);
-               $139 = ($138|0)==(0|0);
-               if ($139) {
-                $140 = (__gcry_get_debug_flag(1)|0);
-                $141 = ($140|0)==(0);
-                if ($141) {
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break;
-                }
-                __gcry_log_debug(66334,$vararg_buffer29);
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $142 = (__gcry_mpi_ec_get_affine($107,$$045$i,$1,$95)|0);
-               $143 = ($142|0)==(0);
-               if (!($143)) {
-                $144 = (__gcry_get_debug_flag(1)|0);
-                $145 = ($144|0)==(0);
-                if ($145) {
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break;
-                }
-                __gcry_log_debug(66288,$vararg_buffer31);
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $146 = $106 & 4096;
-               $147 = ($146|0)==(0);
-               if (!($147)) {
-                $$046$i = 0;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $148 = HEAP32[$131>>2]|0;
-               $149 = (__gcry_mpi_cmp_ui($148,1)|0);
-               $150 = ($149|0)==(0);
-               if ($150) {
-                $151 = HEAP32[$98>>2]|0;
-                $152 = (__gcry_mpi_cmp($107,$151)|0);
-                $153 = ($152|0)==(0);
-                if ($153) {
-                 $154 = ($$045$i|0)==(0|0);
-                 if (!($154)) {
-                  $$046$i = 0;$$1$i = 0;$$144$i = 0;
-                  break;
-                 }
-                 $155 = ((($5)) + 48|0);
-                 $156 = HEAP32[$155>>2]|0;
-                 $157 = (__gcry_mpi_cmp(0,$156)|0);
-                 $158 = ($157|0)==(0);
-                 if ($158) {
-                  $$046$i = 0;$$1$i = 0;$$144$i = 0;
-                  break;
-                 }
-                }
-                $159 = (__gcry_get_debug_flag(1)|0);
-                $160 = ($159|0)==(0);
-                if ($160) {
-                 $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                 break;
-                }
-                __gcry_log_debug(66371,$vararg_buffer33);
-                $$046$i = 7;$$1$i = 0;$$144$i = 0;
-                break;
-               }
-               $161 = (__gcry_mpi_new(0)|0);
-               $162 = (__gcry_mpi_new(0)|0);
-               $163 = (__gcry_mpi_ec_get_affine($161,$162,$98,$95)|0);
-               $164 = ($163|0)==(0);
-               if (!($164)) {
-                $165 = (__gcry_get_debug_flag(1)|0);
-                $166 = ($165|0)==(0);
-                if ($166) {
-                 $$046$i = 7;$$1$i = $162;$$144$i = $161;
-                 break;
-                }
-                __gcry_log_debug(66288,$vararg_buffer35);
-                $$046$i = 7;$$1$i = $162;$$144$i = $161;
-                break;
-               }
-               $167 = (__gcry_mpi_cmp($107,$161)|0);
-               $168 = ($167|0)==(0);
-               if ($168) {
-                $169 = (__gcry_mpi_cmp($$045$i,$162)|0);
-                $170 = ($169|0)==(0);
-                if ($170) {
-                 $$046$i = 0;$$1$i = $162;$$144$i = $161;
-                 break;
-                }
-               }
-               $171 = (__gcry_get_debug_flag(1)|0);
-               $172 = ($171|0)==(0);
-               if ($172) {
-                $$046$i = 7;$$1$i = $162;$$144$i = $161;
-                break;
-               }
-               __gcry_log_debug(66371,$vararg_buffer37);
-               $$046$i = 7;$$1$i = $162;$$144$i = $161;
-              }
-             } while(0);
-             __gcry_mpi_free($$144$i);
-             __gcry_mpi_free($107);
-             __gcry_mpi_free($$045$i);
-             __gcry_mpi_free($$1$i);
-             __gcry_mpi_point_free_parts($1);
-             $$0 = $95;$$033 = $22;$$1 = $$032;$$2 = $$046$i;
-            } else {
-             $$0 = $95;$$033 = $22;$$1 = $$032;$$2 = $$135;
-            }
-           }
-          }
-         }
-        }
-       }
-      }
-     }
-    }
-   } else {
-    $$0 = 0;$$033 = $6;$$1 = 0;$$2 = $$034;
-   }
-  }
- } while(0);
- __gcry_mpi_ec_free($$0);
- $173 = ((($5)) + 8|0);
- $174 = HEAP32[$173>>2]|0;
- __gcry_mpi_release($174);
- $175 = ((($5)) + 12|0);
- $176 = HEAP32[$175>>2]|0;
- __gcry_mpi_release($176);
- $177 = ((($5)) + 16|0);
- $178 = HEAP32[$177>>2]|0;
- __gcry_mpi_release($178);
- $179 = HEAP32[$3>>2]|0;
- __gcry_mpi_release($179);
- $180 = ((($5)) + 20|0);
- __gcry_mpi_point_free_parts($180);
- $181 = ((($5)) + 32|0);
- $182 = HEAP32[$181>>2]|0;
- __gcry_mpi_release($182);
- $183 = ((($5)) + 36|0);
- $184 = HEAP32[$183>>2]|0;
- __gcry_mpi_release($184);
- $185 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($185);
- $186 = ((($5)) + 44|0);
- __gcry_mpi_point_free_parts($186);
- $187 = ((($5)) + 56|0);
- $188 = HEAP32[$187>>2]|0;
- __gcry_mpi_release($188);
- __gcry_free($$1);
- __gcry_sexp_release($$033);
- $189 = (__gcry_get_debug_flag(1)|0);
- $190 = ($189|0)==(0);
- if ($190) {
-  $$036 = $$2;
-  STACKTOP = sp;return ($$036|0);
- }
- $191 = (_gpg_strerror($$2)|0);
- HEAP32[$vararg_buffer39>>2] = $191;
- __gcry_log_debug(66431,$vararg_buffer39);
- $$036 = $$2;
- STACKTOP = sp;return ($$036|0);
-}
-function _ecc_encrypt_raw($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$055 = 0, $$056 = 0, $$057 = 0, $$058 = 0, $$05966 = 0, $$1 = 
0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 
0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $or$cond = 0;
- var $or$cond61 = 0, $or$cond63 = 0, $or$cond65 = 0, $vararg_buffer = 0, 
$vararg_buffer12 = 0, $vararg_buffer15 = 0, $vararg_buffer17 = 0, 
$vararg_buffer19 = 0, $vararg_buffer23 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 
0, $vararg_ptr11 = 0, $vararg_ptr2 = 0, $vararg_ptr22 = 0, $vararg_ptr3 = 0, 
$vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, dest = 
0;
- var label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(208|0);
- $vararg_buffer23 = sp + 72|0;
- $vararg_buffer19 = sp + 64|0;
- $vararg_buffer17 = sp + 56|0;
- $vararg_buffer15 = sp + 48|0;
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer8 = sp + 32|0;
- $vararg_buffer = sp;
- $3 = sp + 160|0;
- $4 = sp + 152|0;
- $5 = sp + 148|0;
- $6 = sp + 144|0;
- $7 = sp + 88|0;
- $8 = sp + 76|0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$6>>2] = 0;
- dest=$7; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $9 = (_ecc_get_nbits($2)|0);
- __gcry_pk_util_init_encoding_ctx($3,0,$9);
- $10 = (__gcry_pk_util_data_to_mpi($1,$6,$3)|0);
- $11 = ($10|0)==(0);
- do {
-  if ($11) {
-   $12 = (__gcry_get_debug_flag(1)|0);
-   $13 = ($12|0)==(0);
-   if (!($13)) {
-    $14 = HEAP32[$6>>2]|0;
-    __gcry_log_printmpi(65633,$14);
-   }
-   $15 = HEAP32[$6>>2]|0;
-   $16 = ($15|0)==(0|0);
-   if (!($16)) {
-    $17 = ((($15)) + 12|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = $18 & 4;
-    $20 = ($19|0)==(0);
-    if (!($20)) {
-     $$055 = 79;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = 0;
-     break;
-    }
-   }
-   $21 = ((($7)) + 8|0);
-   $22 = ((($7)) + 12|0);
-   $23 = ((($7)) + 16|0);
-   $24 = ((($7)) + 32|0);
-   $25 = ((($7)) + 36|0);
-   HEAP32[$vararg_buffer>>2] = $21;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $22;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = $23;
-   $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-   HEAP32[$vararg_ptr3>>2] = $4;
-   $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-   HEAP32[$vararg_ptr4>>2] = $24;
-   $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-   HEAP32[$vararg_ptr5>>2] = $25;
-   $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
-   HEAP32[$vararg_ptr6>>2] = $5;
-   $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
-   HEAP32[$vararg_ptr7>>2] = 0;
-   $26 = (__gcry_sexp_extract_param($2,0,65650,$vararg_buffer)|0);
-   $27 = ($26|0)==(0);
-   if ($27) {
-    $28 = HEAP32[$4>>2]|0;
-    $29 = ($28|0)==(0|0);
-    if (!($29)) {
-     $30 = ((($7)) + 20|0);
-     __gcry_mpi_point_init($30);
-     $31 = HEAP32[$4>>2]|0;
-     $32 = (__gcry_ecc_os2ec($30,$31)|0);
-     $33 = ($32|0)==(0);
-     if (!($33)) {
-      $$055 = $32;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = 0;
-      break;
-     }
-    }
-    __gcry_sexp_release(0);
-    $34 = (__gcry_sexp_find_token($2,64745,5)|0);
-    $35 = ($34|0)==(0|0);
-    if ($35) {
-     label = 12;
-    } else {
-     $36 = (__gcry_sexp_nth_string($34,1)|0);
-     $37 = ($36|0)==(0|0);
-     if ($37) {
-      label = 12;
-     } else {
-      $38 = (__gcry_ecc_fill_in_curve(0,$36,$7,0)|0);
-      $39 = ($38|0)==(0);
-      if ($39) {
-       $$05966 = $36;
-      } else {
-       $$0 = $38;
-       STACKTOP = sp;return ($$0|0);
-      }
-     }
-    }
-    if ((label|0) == 12) {
-     HEAP32[$7>>2] = 0;
-     $40 = ((($7)) + 4|0);
-     HEAP32[$40>>2] = 0;
-     $$05966 = 0;
-    }
-    $41 = (__gcry_get_debug_flag(1)|0);
-    $42 = ($41|0)==(0);
-    if (!($42)) {
-     $43 = HEAP32[$7>>2]|0;
-     $44 = (__gcry_ecc_model2str($43)|0);
-     $45 = ((($7)) + 4|0);
-     $46 = HEAP32[$45>>2]|0;
-     $47 = (__gcry_ecc_dialect2str($46)|0);
-     HEAP32[$vararg_buffer8>>2] = $44;
-     $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-     HEAP32[$vararg_ptr11>>2] = $47;
-     __gcry_log_debug(65666,$vararg_buffer8);
-     $48 = ((($7)) + 40|0);
-     $49 = HEAP32[$48>>2]|0;
-     $50 = ($49|0)==(0|0);
-     if (!($50)) {
-      HEAP32[$vararg_buffer12>>2] = $49;
-      __gcry_log_debug(65691,$vararg_buffer12);
-     }
-     $51 = HEAP32[$21>>2]|0;
-     __gcry_log_printmpi(65713,$51);
-     $52 = HEAP32[$22>>2]|0;
-     __gcry_log_printmpi(65730,$52);
-     $53 = HEAP32[$23>>2]|0;
-     __gcry_log_printmpi(65747,$53);
-     $54 = ((($7)) + 20|0);
-     __gcry_mpi_point_log(65764,$54,0);
-     $55 = HEAP32[$24>>2]|0;
-     __gcry_log_printmpi(65779,$55);
-     $56 = HEAP32[$25>>2]|0;
-     __gcry_log_printmpi(65796,$56);
-     $57 = HEAP32[$5>>2]|0;
-     __gcry_log_printmpi(65813,$57);
-    }
-    $58 = HEAP32[$21>>2]|0;
-    $59 = ($58|0)==(0|0);
-    $60 = HEAP32[$22>>2]|0;
-    $61 = ($60|0)==(0|0);
-    $or$cond61 = $59 | $61;
-    $62 = HEAP32[$23>>2]|0;
-    $63 = ($62|0)==(0|0);
-    $or$cond63 = $or$cond61 | $63;
-    if ($or$cond63) {
-     $$055 = 68;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = $$05966;
-    } else {
-     $64 = ((($7)) + 20|0);
-     $65 = HEAP32[$64>>2]|0;
-     $66 = ($65|0)==(0|0);
-     $67 = HEAP32[$24>>2]|0;
-     $68 = ($67|0)==(0|0);
-     $or$cond65 = $66 | $68;
-     if ($or$cond65) {
-      $$055 = 68;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = $$05966;
-     } else {
-      $69 = HEAP32[$25>>2]|0;
-      $70 = ($69|0)!=(0|0);
-      $71 = HEAP32[$5>>2]|0;
-      $72 = ($71|0)!=(0|0);
-      $or$cond = $70 & $72;
-      if ($or$cond) {
-       $73 = ((($7)) + 44|0);
-       __gcry_mpi_point_init($73);
-       $74 = HEAP32[$5>>2]|0;
-       $75 = (__gcry_ecc_os2ec($73,$74)|0);
-       $76 = ($75|0)==(0);
-       if ($76) {
-        $77 = HEAP32[$7>>2]|0;
-        $78 = ((($7)) + 4|0);
-        $79 = HEAP32[$78>>2]|0;
-        $80 = HEAP32[$21>>2]|0;
-        $81 = HEAP32[$22>>2]|0;
-        $82 = HEAP32[$23>>2]|0;
-        $83 = (__gcry_mpi_ec_p_internal_new($77,$79,0,$80,$81,$82)|0);
-        $84 = (__gcry_mpi_new(0)|0);
-        $85 = (__gcry_mpi_new(0)|0);
-        __gcry_mpi_point_init($8);
-        $86 = HEAP32[$6>>2]|0;
-        __gcry_mpi_ec_mul_point($8,$86,$73,$83);
-        $87 = (__gcry_mpi_ec_get_affine($84,$85,$8,$83)|0);
-        $88 = ($87|0)==(0);
-        if (!($88)) {
-         __gcry_log_fatal(65830,$vararg_buffer15);
-         // unreachable;
-        }
-        $89 = HEAP32[$21>>2]|0;
-        $90 = (__gcry_ecc_ec2os($84,$85,$89)|0);
-        $91 = HEAP32[$6>>2]|0;
-        __gcry_mpi_ec_mul_point($8,$91,$64,$83);
-        $92 = (__gcry_mpi_ec_get_affine($84,$85,$8,$83)|0);
-        $93 = ($92|0)==(0);
-        if ($93) {
-         $94 = HEAP32[$21>>2]|0;
-         $95 = (__gcry_ecc_ec2os($84,$85,$94)|0);
-         __gcry_mpi_free($84);
-         __gcry_mpi_free($85);
-         __gcry_mpi_point_free_parts($8);
-         HEAP32[$vararg_buffer19>>2] = $90;
-         $vararg_ptr22 = ((($vararg_buffer19)) + 4|0);
-         HEAP32[$vararg_ptr22>>2] = $95;
-         $96 = (__gcry_sexp_build($0,0,65925,$vararg_buffer19)|0);
-         $$055 = $96;$$056 = $83;$$057 = $95;$$058 = $90;$$1 = $$05966;
-         break;
-        } else {
-         __gcry_log_fatal(65878,$vararg_buffer17);
-         // unreachable;
-        }
-       } else {
-        $$055 = $75;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = $$05966;
-       }
-      } else {
-       $$055 = 68;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = $$05966;
-      }
-     }
-    }
-   } else {
-    $$055 = $26;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = 0;
-   }
-  } else {
-   $$055 = $10;$$056 = 0;$$057 = 0;$$058 = 0;$$1 = 0;
-  }
- } while(0);
- $97 = ((($7)) + 8|0);
- $98 = HEAP32[$97>>2]|0;
- __gcry_mpi_release($98);
- $99 = ((($7)) + 12|0);
- $100 = HEAP32[$99>>2]|0;
- __gcry_mpi_release($100);
- $101 = ((($7)) + 16|0);
- $102 = HEAP32[$101>>2]|0;
- __gcry_mpi_release($102);
- $103 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($103);
- $104 = ((($7)) + 20|0);
- __gcry_mpi_point_free_parts($104);
- $105 = ((($7)) + 32|0);
- $106 = HEAP32[$105>>2]|0;
- __gcry_mpi_release($106);
- $107 = ((($7)) + 36|0);
- $108 = HEAP32[$107>>2]|0;
- __gcry_mpi_release($108);
- $109 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($109);
- $110 = ((($7)) + 44|0);
- __gcry_mpi_point_free_parts($110);
- $111 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($111);
- __gcry_mpi_release($$058);
- __gcry_mpi_release($$057);
- __gcry_free($$1);
- __gcry_mpi_ec_free($$056);
- __gcry_pk_util_free_encoding_ctx($3);
- $112 = (__gcry_get_debug_flag(1)|0);
- $113 = ($112|0)==(0);
- if ($113) {
-  $$0 = $$055;
-  STACKTOP = sp;return ($$0|0);
- }
- $114 = (_gpg_strerror($$055)|0);
- HEAP32[$vararg_buffer23>>2] = $114;
- __gcry_log_debug(65951,$vararg_buffer23);
- $$0 = $$055;
- STACKTOP = sp;return ($$0|0);
-}
-function _ecc_decrypt_raw($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$044 = 0, $$045 = 0, $$046 = 0, $$04758 = 0, $$1 = 0, $$148 = 
0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 
0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0;
- var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0;
- var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0;
- var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0;
- var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 
0, $or$cond51 = 0, $or$cond53 = 0, $or$cond55 = 0, $or$cond57 = 0, 
$vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer16 = 0, 
$vararg_buffer19 = 0, $vararg_buffer2 = 0, $vararg_buffer21 = 0, 
$vararg_buffer24 = 0, $vararg_ptr1 = 0;
- var $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr5 = 
0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, dest 
= 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(224|0);
- $vararg_buffer24 = sp + 72|0;
- $vararg_buffer21 = sp + 64|0;
- $vararg_buffer19 = sp + 56|0;
- $vararg_buffer16 = sp + 48|0;
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 176|0;
- $4 = sp + 168|0;
- $5 = sp + 164|0;
- $6 = sp + 104|0;
- $7 = sp + 100|0;
- $8 = sp + 88|0;
- $9 = sp + 76|0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$7>>2] = 0;
- dest=$6; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- __gcry_mpi_point_init($8);
- __gcry_mpi_point_init($9);
- $10 = (_ecc_get_nbits($2)|0);
- __gcry_pk_util_init_encoding_ctx($3,1,$10);
- $11 = (__gcry_pk_util_preparse_encval($1,16256,$4,$3)|0);
- $12 = ($11|0)==(0);
- do {
-  if ($12) {
-   $13 = HEAP32[$4>>2]|0;
-   HEAP32[$vararg_buffer>>2] = $5;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 0;
-   $14 = (__gcry_sexp_extract_param($13,0,65344,$vararg_buffer)|0);
-   $15 = ($14|0)==(0);
-   if ($15) {
-    $16 = (__gcry_get_debug_flag(1)|0);
-    $17 = ($16|0)==(0);
-    if (!($17)) {
-     $18 = HEAP32[$5>>2]|0;
-     __gcry_log_printmpi(65346,$18);
-    }
-    $19 = HEAP32[$5>>2]|0;
-    $20 = ($19|0)==(0|0);
-    if (!($20)) {
-     $21 = ((($19)) + 12|0);
-     $22 = HEAP32[$21>>2]|0;
-     $23 = $22 & 4;
-     $24 = ($23|0)==(0);
-     if (!($24)) {
-      $$045 = 0;$$046 = 0;$$1 = 79;$$148 = 0;
-      break;
-     }
-    }
-    $25 = ((($6)) + 8|0);
-    $26 = ((($6)) + 12|0);
-    $27 = ((($6)) + 16|0);
-    $28 = ((($6)) + 32|0);
-    $29 = ((($6)) + 36|0);
-    $30 = ((($6)) + 56|0);
-    HEAP32[$vararg_buffer2>>2] = $25;
-    $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-    HEAP32[$vararg_ptr5>>2] = $26;
-    $vararg_ptr6 = ((($vararg_buffer2)) + 8|0);
-    HEAP32[$vararg_ptr6>>2] = $27;
-    $vararg_ptr7 = ((($vararg_buffer2)) + 12|0);
-    HEAP32[$vararg_ptr7>>2] = $7;
-    $vararg_ptr8 = ((($vararg_buffer2)) + 16|0);
-    HEAP32[$vararg_ptr8>>2] = $28;
-    $vararg_ptr9 = ((($vararg_buffer2)) + 20|0);
-    HEAP32[$vararg_ptr9>>2] = $29;
-    $vararg_ptr10 = ((($vararg_buffer2)) + 24|0);
-    HEAP32[$vararg_ptr10>>2] = $30;
-    $vararg_ptr11 = ((($vararg_buffer2)) + 28|0);
-    HEAP32[$vararg_ptr11>>2] = 0;
-    $31 = (__gcry_sexp_extract_param($2,0,65363,$vararg_buffer2)|0);
-    $32 = ($31|0)==(0);
-    if ($32) {
-     $33 = HEAP32[$7>>2]|0;
-     $34 = ($33|0)==(0|0);
-     if (!($34)) {
-      $35 = ((($6)) + 20|0);
-      __gcry_mpi_point_init($35);
-      $36 = HEAP32[$7>>2]|0;
-      $37 = (__gcry_ecc_os2ec($35,$36)|0);
-      $38 = ($37|0)==(0);
-      if (!($38)) {
-       $$045 = 0;$$046 = 0;$$1 = $37;$$148 = 0;
-       break;
-      }
-     }
-     $39 = HEAP32[$4>>2]|0;
-     __gcry_sexp_release($39);
-     $40 = (__gcry_sexp_find_token($2,64745,5)|0);
-     HEAP32[$4>>2] = $40;
-     $41 = ($40|0)==(0|0);
-     if ($41) {
-      label = 13;
-     } else {
-      $42 = (__gcry_sexp_nth_string($40,1)|0);
-      $43 = ($42|0)==(0|0);
-      if ($43) {
-       label = 13;
-      } else {
-       $44 = (__gcry_ecc_fill_in_curve(0,$42,$6,0)|0);
-       $45 = ($44|0)==(0);
-       if ($45) {
-        $$04758 = $42;
-       } else {
-        $$0 = $44;
-        STACKTOP = sp;return ($$0|0);
-       }
-      }
-     }
-     if ((label|0) == 13) {
-      HEAP32[$6>>2] = 0;
-      $46 = ((($6)) + 4|0);
-      HEAP32[$46>>2] = 0;
-      $$04758 = 0;
-     }
-     $47 = (__gcry_get_debug_flag(1)|0);
-     $48 = ($47|0)==(0);
-     if (!($48)) {
-      $49 = HEAP32[$6>>2]|0;
-      $50 = (__gcry_ecc_model2str($49)|0);
-      $51 = ((($6)) + 4|0);
-      $52 = HEAP32[$51>>2]|0;
-      $53 = (__gcry_ecc_dialect2str($52)|0);
-      HEAP32[$vararg_buffer12>>2] = $50;
-      $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-      HEAP32[$vararg_ptr15>>2] = $53;
-      __gcry_log_debug(65379,$vararg_buffer12);
-      $54 = ((($6)) + 40|0);
-      $55 = HEAP32[$54>>2]|0;
-      $56 = ($55|0)==(0|0);
-      if (!($56)) {
-       HEAP32[$vararg_buffer16>>2] = $55;
-       __gcry_log_debug(65404,$vararg_buffer16);
-      }
-      $57 = HEAP32[$25>>2]|0;
-      __gcry_log_printmpi(65426,$57);
-      $58 = HEAP32[$26>>2]|0;
-      __gcry_log_printmpi(65443,$58);
-      $59 = HEAP32[$27>>2]|0;
-      __gcry_log_printmpi(65460,$59);
-      $60 = ((($6)) + 20|0);
-      __gcry_mpi_point_log(65477,$60,0);
-      $61 = HEAP32[$28>>2]|0;
-      __gcry_log_printmpi(65492,$61);
-      $62 = HEAP32[$29>>2]|0;
-      __gcry_log_printmpi(65509,$62);
-      $63 = (__gcry_fips_mode()|0);
-      $64 = ($63|0)==(0);
-      if ($64) {
-       $65 = HEAP32[$30>>2]|0;
-       __gcry_log_printmpi(65526,$65);
-      }
-     }
-     $66 = HEAP32[$25>>2]|0;
-     $67 = ($66|0)==(0|0);
-     $68 = HEAP32[$26>>2]|0;
-     $69 = ($68|0)==(0|0);
-     $or$cond = $67 | $69;
-     $70 = HEAP32[$27>>2]|0;
-     $71 = ($70|0)==(0|0);
-     $or$cond51 = $or$cond | $71;
-     if ($or$cond51) {
-      $$045 = 0;$$046 = 0;$$1 = 68;$$148 = $$04758;
-     } else {
-      $72 = ((($6)) + 20|0);
-      $73 = HEAP32[$72>>2]|0;
-      $74 = ($73|0)==(0|0);
-      $75 = HEAP32[$28>>2]|0;
-      $76 = ($75|0)==(0|0);
-      $or$cond53 = $74 | $76;
-      $77 = HEAP32[$29>>2]|0;
-      $78 = ($77|0)==(0|0);
-      $or$cond55 = $or$cond53 | $78;
-      $79 = HEAP32[$30>>2]|0;
-      $80 = ($79|0)==(0|0);
-      $or$cond57 = $or$cond55 | $80;
-      if ($or$cond57) {
-       $$045 = 0;$$046 = 0;$$1 = 68;$$148 = $$04758;
-      } else {
-       $81 = HEAP32[$5>>2]|0;
-       $82 = (__gcry_ecc_os2ec($8,$81)|0);
-       $83 = ($82|0)==(0);
-       if (!($83)) {
-        __gcry_mpi_point_free_parts($8);
-        $$0 = $82;
-        STACKTOP = sp;return ($$0|0);
-       }
-       $84 = HEAP32[$6>>2]|0;
-       $85 = ((($6)) + 4|0);
-       $86 = HEAP32[$85>>2]|0;
-       $87 = HEAP32[$25>>2]|0;
-       $88 = HEAP32[$26>>2]|0;
-       $89 = HEAP32[$27>>2]|0;
-       $90 = (__gcry_mpi_ec_p_internal_new($84,$86,0,$87,$88,$89)|0);
-       $91 = HEAP32[$30>>2]|0;
-       __gcry_mpi_ec_mul_point($9,$91,$8,$90);
-       $92 = (__gcry_mpi_new(0)|0);
-       $93 = (__gcry_mpi_new(0)|0);
-       $94 = (__gcry_mpi_ec_get_affine($92,$93,$9,$90)|0);
-       $95 = ($94|0)==(0);
-       if (!($95)) {
-        __gcry_log_fatal(65543,$vararg_buffer19);
-        // unreachable;
-       }
-       $96 = HEAP32[$25>>2]|0;
-       $97 = (__gcry_ecc_ec2os($92,$93,$96)|0);
-       $98 = ($97|0)==(0|0);
-       if ($98) {
-        $99 = (_gpg_err_code_from_syserror()|0);
-        $$044 = $99;
-       } else {
-        $$044 = 0;
-       }
-       __gcry_mpi_free($92);
-       __gcry_mpi_free($93);
-       $100 = (__gcry_get_debug_flag(1)|0);
-       $101 = ($100|0)==(0);
-       if (!($101)) {
-        __gcry_log_printmpi(65583,$97);
-       }
-       $102 = ($$044|0)==(0);
-       if ($102) {
-        HEAP32[$vararg_buffer21>>2] = $97;
-        $103 = (__gcry_sexp_build($0,0,65600,$vararg_buffer21)|0);
-        $$045 = $97;$$046 = $90;$$1 = $103;$$148 = $$04758;
-       } else {
-        $$045 = $97;$$046 = $90;$$1 = $$044;$$148 = $$04758;
-       }
-      }
-     }
-    } else {
-     $$045 = 0;$$046 = 0;$$1 = $31;$$148 = 0;
-    }
-   } else {
-    $$045 = 0;$$046 = 0;$$1 = $14;$$148 = 0;
-   }
-  } else {
-   $$045 = 0;$$046 = 0;$$1 = $11;$$148 = 0;
-  }
- } while(0);
- __gcry_mpi_point_free_parts($9);
- __gcry_mpi_point_free_parts($8);
- __gcry_mpi_release($$045);
- $104 = ((($6)) + 8|0);
- $105 = HEAP32[$104>>2]|0;
- __gcry_mpi_release($105);
- $106 = ((($6)) + 12|0);
- $107 = HEAP32[$106>>2]|0;
- __gcry_mpi_release($107);
- $108 = ((($6)) + 16|0);
- $109 = HEAP32[$108>>2]|0;
- __gcry_mpi_release($109);
- $110 = HEAP32[$7>>2]|0;
- __gcry_mpi_release($110);
- $111 = ((($6)) + 20|0);
- __gcry_mpi_point_free_parts($111);
- $112 = ((($6)) + 32|0);
- $113 = HEAP32[$112>>2]|0;
- __gcry_mpi_release($113);
- $114 = ((($6)) + 36|0);
- $115 = HEAP32[$114>>2]|0;
- __gcry_mpi_release($115);
- $116 = ((($6)) + 56|0);
- $117 = HEAP32[$116>>2]|0;
- __gcry_mpi_release($117);
- $118 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($118);
- __gcry_free($$148);
- $119 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($119);
- __gcry_mpi_ec_free($$046);
- __gcry_pk_util_free_encoding_ctx($3);
- $120 = (__gcry_get_debug_flag(1)|0);
- $121 = ($120|0)==(0);
- if ($121) {
-  $$0 = $$1;
-  STACKTOP = sp;return ($$0|0);
- }
- $122 = (_gpg_strerror($$1)|0);
- HEAP32[$vararg_buffer24>>2] = $122;
- __gcry_log_debug(65611,$vararg_buffer24);
- $$0 = $$1;
- STACKTOP = sp;return ($$0|0);
-}
-function _ecc_sign($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$045 = 0, $$04651 = 0, $$047 = 0, $$048 = 0, $$050 = 0, $$1 = 
0, $$149 = 0, $$lobit = 0, $$pre = 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 
= 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0;
- var $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 
= 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0;
- var $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 
0, $18 = 0, $19 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $vararg_buffer = 0, 
$vararg_buffer14 = 0, $vararg_buffer19 = 0, $vararg_buffer22 = 0, 
$vararg_buffer26 = 0, $vararg_buffer30 = 0, $vararg_buffer34 = 0, 
$vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, 
$vararg_ptr17 = 0, $vararg_ptr18 = 0, $vararg_ptr2 = 0, $vararg_ptr25 = 0;
- var $vararg_ptr29 = 0, $vararg_ptr3 = 0, $vararg_ptr33 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, dest = 
0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(224|0);
- $vararg_buffer34 = sp + 104|0;
- $vararg_buffer30 = sp + 96|0;
- $vararg_buffer26 = sp + 88|0;
- $vararg_buffer22 = sp + 80|0;
- $vararg_buffer19 = sp + 72|0;
- $vararg_buffer14 = sp + 56|0;
- $vararg_buffer9 = sp + 40|0;
- $vararg_buffer = sp;
- $3 = sp + 184|0;
- $4 = sp + 176|0;
- $5 = sp + 172|0;
- $6 = sp + 168|0;
- $7 = sp + 108|0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$6>>2] = 0;
- dest=$7; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- __gcry_pk_util_init_encoding_ctx($3,2,0);
- $8 = (__gcry_pk_util_data_to_mpi($1,$4,$3)|0);
- $9 = ($8|0)==(0);
- do {
-  if ($9) {
-   $10 = (__gcry_get_debug_flag(1)|0);
-   $11 = ($10|0)==(0);
-   if (!($11)) {
-    $12 = HEAP32[$4>>2]|0;
-    __gcry_log_printmpi(65029,$12);
-   }
-   $13 = ((($3)) + 12|0);
-   $14 = HEAP32[$13>>2]|0;
-   $15 = $14 & 512;
-   $16 = ($15|0)==(0);
-   if ($16) {
-    $24 = ((($7)) + 56|0);
-    HEAP32[$vararg_buffer9>>2] = $6;
-    $vararg_ptr12 = ((($vararg_buffer9)) + 4|0);
-    HEAP32[$vararg_ptr12>>2] = $24;
-    $vararg_ptr13 = ((($vararg_buffer9)) + 8|0);
-    HEAP32[$vararg_ptr13>>2] = 0;
-    $25 = (__gcry_sexp_extract_param($2,0,65064,$vararg_buffer9)|0);
-    $$048 = $25;
-   } else {
-    $17 = ((($7)) + 8|0);
-    $18 = ((($7)) + 12|0);
-    $19 = ((($7)) + 16|0);
-    $20 = ((($7)) + 32|0);
-    $21 = ((($7)) + 36|0);
-    $22 = ((($7)) + 56|0);
-    HEAP32[$vararg_buffer>>2] = $17;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = $18;
-    $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-    HEAP32[$vararg_ptr2>>2] = $19;
-    $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-    HEAP32[$vararg_ptr3>>2] = $5;
-    $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-    HEAP32[$vararg_ptr4>>2] = $20;
-    $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-    HEAP32[$vararg_ptr5>>2] = $21;
-    $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
-    HEAP32[$vararg_ptr6>>2] = $6;
-    $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
-    HEAP32[$vararg_ptr7>>2] = $22;
-    $vararg_ptr8 = ((($vararg_buffer)) + 32|0);
-    HEAP32[$vararg_ptr8>>2] = 0;
-    $23 = (__gcry_sexp_extract_param($2,0,65045,$vararg_buffer)|0);
-    $$048 = $23;
-   }
-   $26 = ($$048|0)==(0);
-   if ($26) {
-    $27 = HEAP32[$5>>2]|0;
-    $28 = ($27|0)==(0|0);
-    if (!($28)) {
-     $29 = ((($7)) + 20|0);
-     __gcry_mpi_point_init($29);
-     $30 = HEAP32[$5>>2]|0;
-     $31 = (__gcry_ecc_os2ec($29,$30)|0);
-     $32 = ($31|0)==(0);
-     if (!($32)) {
-      $$0 = 0;$$045 = 0;$$047 = 0;$$1 = 0;$$149 = $31;
-      break;
-     }
-    }
-    __gcry_sexp_release(0);
-    $33 = (__gcry_sexp_find_token($2,64745,5)|0);
-    $34 = ($33|0)==(0|0);
-    if ($34) {
-     label = 13;
-    } else {
-     $35 = (__gcry_sexp_nth_string($33,1)|0);
-     $36 = ($35|0)==(0|0);
-     if ($36) {
-      label = 13;
-     } else {
-      $37 = (__gcry_ecc_fill_in_curve(0,$35,$7,0)|0);
-      $38 = ($37|0)==(0);
-      if ($38) {
-       $$04651 = $35;
-      } else {
-       $$050 = $37;
-       STACKTOP = sp;return ($$050|0);
-      }
-     }
-    }
-    if ((label|0) == 13) {
-     $39 = HEAP32[$13>>2]|0;
-     $40 = $39 >>> 11;
-     $41 = $40 & 2;
-     HEAP32[$7>>2] = $41;
-     $42 = $39 >>> 12;
-     $$lobit = $42 & 1;
-     $43 = ((($7)) + 4|0);
-     HEAP32[$43>>2] = $$lobit;
-     $$04651 = 0;
-    }
-    $44 = (__gcry_get_debug_flag(1)|0);
-    $45 = ($44|0)==(0);
-    if ($45) {
-     $$pre = ((($7)) + 8|0);
-     $$pre$phiZ2D = $$pre;
-    } else {
-     $46 = HEAP32[$7>>2]|0;
-     $47 = (__gcry_ecc_model2str($46)|0);
-     $48 = ((($7)) + 4|0);
-     $49 = HEAP32[$48>>2]|0;
-     $50 = (__gcry_ecc_dialect2str($49)|0);
-     $51 = HEAP32[$13>>2]|0;
-     $52 = $51 & 4096;
-     $53 = ($52|0)==(0);
-     $54 = $53 ? 73338 : 64839;
-     HEAP32[$vararg_buffer14>>2] = $47;
-     $vararg_ptr17 = ((($vararg_buffer14)) + 4|0);
-     HEAP32[$vararg_ptr17>>2] = $50;
-     $vararg_ptr18 = ((($vararg_buffer14)) + 8|0);
-     HEAP32[$vararg_ptr18>>2] = $54;
-     __gcry_log_debug(65070,$vararg_buffer14);
-     $55 = ((($7)) + 40|0);
-     $56 = HEAP32[$55>>2]|0;
-     $57 = ($56|0)==(0|0);
-     if (!($57)) {
-      HEAP32[$vararg_buffer19>>2] = $56;
-      __gcry_log_debug(65096,$vararg_buffer19);
-     }
-     $58 = ((($7)) + 8|0);
-     $59 = HEAP32[$58>>2]|0;
-     __gcry_log_printmpi(65117,$59);
-     $60 = ((($7)) + 12|0);
-     $61 = HEAP32[$60>>2]|0;
-     __gcry_log_printmpi(65133,$61);
-     $62 = ((($7)) + 16|0);
-     $63 = HEAP32[$62>>2]|0;
-     __gcry_log_printmpi(65149,$63);
-     $64 = ((($7)) + 20|0);
-     __gcry_mpi_point_log(65165,$64,0);
-     $65 = ((($7)) + 32|0);
-     $66 = HEAP32[$65>>2]|0;
-     __gcry_log_printmpi(65179,$66);
-     $67 = ((($7)) + 36|0);
-     $68 = HEAP32[$67>>2]|0;
-     __gcry_log_printmpi(65195,$68);
-     $69 = HEAP32[$6>>2]|0;
-     __gcry_log_printmpi(65211,$69);
-     $70 = (__gcry_fips_mode()|0);
-     $71 = ($70|0)==(0);
-     if ($71) {
-      $72 = ((($7)) + 56|0);
-      $73 = HEAP32[$72>>2]|0;
-      __gcry_log_printmpi(65227,$73);
-      $$pre$phiZ2D = $58;
-     } else {
-      $$pre$phiZ2D = $58;
-     }
-    }
-    $74 = HEAP32[$$pre$phiZ2D>>2]|0;
-    $75 = ($74|0)==(0|0);
-    if ($75) {
-     $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-    } else {
-     $76 = ((($7)) + 12|0);
-     $77 = HEAP32[$76>>2]|0;
-     $78 = ($77|0)==(0|0);
-     if ($78) {
-      $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-     } else {
-      $79 = ((($7)) + 16|0);
-      $80 = HEAP32[$79>>2]|0;
-      $81 = ($80|0)==(0|0);
-      if ($81) {
-       $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-      } else {
-       $82 = ((($7)) + 20|0);
-       $83 = HEAP32[$82>>2]|0;
-       $84 = ($83|0)==(0|0);
-       if ($84) {
-        $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-       } else {
-        $85 = ((($7)) + 32|0);
-        $86 = HEAP32[$85>>2]|0;
-        $87 = ($86|0)==(0|0);
-        if ($87) {
-         $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-        } else {
-         $88 = ((($7)) + 36|0);
-         $89 = HEAP32[$88>>2]|0;
-         $90 = ($89|0)==(0|0);
-         if ($90) {
-          $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-         } else {
-          $91 = ((($7)) + 56|0);
-          $92 = HEAP32[$91>>2]|0;
-          $93 = ($92|0)==(0|0);
-          if ($93) {
-           $$0 = 0;$$045 = 0;$$047 = $33;$$1 = $$04651;$$149 = 68;
-          } else {
-           $94 = (__gcry_mpi_new(0)|0);
-           $95 = (__gcry_mpi_new(0)|0);
-           $96 = HEAP32[$13>>2]|0;
-           $97 = $96 & 4096;
-           $98 = ($97|0)==(0);
-           if (!($98)) {
-            $99 = HEAP32[$4>>2]|0;
-            $100 = ((($3)) + 16|0);
-            $101 = HEAP32[$100>>2]|0;
-            $102 = HEAP32[$6>>2]|0;
-            $103 = (__gcry_ecc_eddsa_sign($99,$7,$94,$95,$101,$102)|0);
-            $104 = ($103|0)==(0);
-            if (!($104)) {
-             $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $103;
-             break;
-            }
-            HEAP32[$vararg_buffer22>>2] = $94;
-            $vararg_ptr25 = ((($vararg_buffer22)) + 4|0);
-            HEAP32[$vararg_ptr25>>2] = $95;
-            $105 = (__gcry_sexp_build($0,0,65243,$vararg_buffer22)|0);
-            $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $105;
-            break;
-           }
-           $106 = $96 & 8192;
-           $107 = ($106|0)==(0);
-           $108 = HEAP32[$4>>2]|0;
-           if ($107) {
-            $112 = ((($3)) + 16|0);
-            $113 = HEAP32[$112>>2]|0;
-            $114 = (__gcry_ecc_ecdsa_sign($108,$7,$94,$95,$96,$113)|0);
-            $115 = ($114|0)==(0);
-            if (!($115)) {
-             $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $114;
-             break;
-            }
-            HEAP32[$vararg_buffer30>>2] = $94;
-            $vararg_ptr33 = ((($vararg_buffer30)) + 4|0);
-            HEAP32[$vararg_ptr33>>2] = $95;
-            $116 = (__gcry_sexp_build($0,0,65296,$vararg_buffer30)|0);
-            $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $116;
-            break;
-           } else {
-            $109 = (__gcry_ecc_gost_sign($108,$7,$94,$95)|0);
-            $110 = ($109|0)==(0);
-            if (!($110)) {
-             $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $109;
-             break;
-            }
-            HEAP32[$vararg_buffer26>>2] = $94;
-            $vararg_ptr29 = ((($vararg_buffer26)) + 4|0);
-            HEAP32[$vararg_ptr29>>2] = $95;
-            $111 = (__gcry_sexp_build($0,0,65270,$vararg_buffer26)|0);
-            $$0 = $95;$$045 = $94;$$047 = $33;$$1 = $$04651;$$149 = $111;
-            break;
-           }
-          }
-         }
-        }
-       }
-      }
-     }
-    }
-   } else {
-    $$0 = 0;$$045 = 0;$$047 = 0;$$1 = 0;$$149 = $$048;
-   }
-  } else {
-   $$0 = 0;$$045 = 0;$$047 = 0;$$1 = 0;$$149 = $8;
-  }
- } while(0);
- $117 = ((($7)) + 8|0);
- $118 = HEAP32[$117>>2]|0;
- __gcry_mpi_release($118);
- $119 = ((($7)) + 12|0);
- $120 = HEAP32[$119>>2]|0;
- __gcry_mpi_release($120);
- $121 = ((($7)) + 16|0);
- $122 = HEAP32[$121>>2]|0;
- __gcry_mpi_release($122);
- $123 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($123);
- $124 = ((($7)) + 20|0);
- __gcry_mpi_point_free_parts($124);
- $125 = ((($7)) + 32|0);
- $126 = HEAP32[$125>>2]|0;
- __gcry_mpi_release($126);
- $127 = ((($7)) + 36|0);
- $128 = HEAP32[$127>>2]|0;
- __gcry_mpi_release($128);
- $129 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($129);
- $130 = ((($7)) + 44|0);
- __gcry_mpi_point_free_parts($130);
- $131 = ((($7)) + 56|0);
- $132 = HEAP32[$131>>2]|0;
- __gcry_mpi_release($132);
- __gcry_mpi_release($$045);
- __gcry_mpi_release($$0);
- __gcry_free($$1);
- $133 = HEAP32[$4>>2]|0;
- __gcry_mpi_release($133);
- __gcry_sexp_release($$047);
- __gcry_pk_util_free_encoding_ctx($3);
- $134 = (__gcry_get_debug_flag(1)|0);
- $135 = ($134|0)==(0);
- if ($135) {
-  $$050 = $$149;
-  STACKTOP = sp;return ($$050|0);
- }
- $136 = (_gpg_strerror($$149)|0);
- HEAP32[$vararg_buffer34>>2] = $136;
- __gcry_log_debug(65323,$vararg_buffer34);
- $$050 = $$149;
- STACKTOP = sp;return ($$050|0);
-}
-function _ecc_verify($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$037 = 0, $$03840 = 0, $$1 = 0, $$139 = 0, $$2 = 0, $$3 = 0, 
$$lobit = 0, $$pre = 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0;
- var $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 
= 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0;
- var $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0;
- var $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 
= 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0;
- var $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 
= 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0;
- var $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, 
$188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $or$cond = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer17 
= 0, $vararg_buffer22 = 0, $vararg_buffer25 = 0, $vararg_buffer3 = 0, 
$vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, 
$vararg_ptr16 = 0, $vararg_ptr2 = 0, $vararg_ptr20 = 0, $vararg_ptr21 = 0, 
$vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, dest = 
0;
- var label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(224|0);
- $vararg_buffer25 = sp + 80|0;
- $vararg_buffer22 = sp + 72|0;
- $vararg_buffer17 = sp + 56|0;
- $vararg_buffer13 = sp + 48|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer = sp;
- $3 = sp + 176|0;
- $4 = sp + 172|0;
- $5 = sp + 168|0;
- $6 = sp + 164|0;
- $7 = sp + 160|0;
- $8 = sp + 156|0;
- $9 = sp + 152|0;
- $10 = sp + 96|0;
- $11 = sp + 92|0;
- $12 = sp + 88|0;
- $13 = sp + 84|0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- HEAP32[$6>>2] = 0;
- HEAP32[$7>>2] = 0;
- HEAP32[$8>>2] = 0;
- HEAP32[$9>>2] = 0;
- dest=$10; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $14 = (_ecc_get_nbits($2)|0);
- __gcry_pk_util_init_encoding_ctx($3,3,$14);
- $15 = (__gcry_pk_util_data_to_mpi($1,$9,$3)|0);
- $16 = ($15|0)==(0);
- L1: do {
-  if ($16) {
-   $17 = (__gcry_get_debug_flag(1)|0);
-   $18 = ($17|0)==(0);
-   if (!($18)) {
-    $19 = HEAP32[$9>>2]|0;
-    __gcry_log_printmpi(64771,$19);
-   }
-   $20 = (__gcry_pk_util_preparse_sigval($0,16256,$4,$11)|0);
-   $21 = ($20|0)==(0);
-   if ($21) {
-    $22 = HEAP32[$4>>2]|0;
-    $23 = HEAP32[$11>>2]|0;
-    $24 = $23 & 4096;
-    $25 = ($24|0)==(0);
-    $26 = $25 ? 64702 : 64787;
-    HEAP32[$vararg_buffer>>2] = $7;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = $8;
-    $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-    HEAP32[$vararg_ptr2>>2] = 0;
-    $27 = (__gcry_sexp_extract_param($22,0,$26,$vararg_buffer)|0);
-    $28 = ($27|0)==(0);
-    if ($28) {
-     $29 = (__gcry_get_debug_flag(1)|0);
-     $30 = ($29|0)==(0);
-     if (!($30)) {
-      $31 = HEAP32[$7>>2]|0;
-      __gcry_log_printmpi(64791,$31);
-      $32 = HEAP32[$8>>2]|0;
-      __gcry_log_printmpi(64807,$32);
-     }
-     $33 = ((($3)) + 12|0);
-     $34 = HEAP32[$33>>2]|0;
-     $35 = HEAP32[$11>>2]|0;
-     $36 = $35 ^ $34;
-     $37 = $36 & 4096;
-     $38 = ($37|0)==(0);
-     if ($38) {
-      $39 = $34 & 512;
-      $40 = ($39|0)==(0);
-      if ($40) {
-       HEAP32[$vararg_buffer13>>2] = $6;
-       $vararg_ptr16 = ((($vararg_buffer13)) + 4|0);
-       HEAP32[$vararg_ptr16>>2] = 0;
-       $46 = (__gcry_sexp_extract_param($2,0,64740,$vararg_buffer13)|0);
-       $$037 = $46;
-      } else {
-       $41 = ((($10)) + 8|0);
-       $42 = ((($10)) + 12|0);
-       $43 = ((($10)) + 16|0);
-       $44 = ((($10)) + 32|0);
-       HEAP32[$vararg_buffer3>>2] = $41;
-       $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-       HEAP32[$vararg_ptr6>>2] = $42;
-       $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
-       HEAP32[$vararg_ptr7>>2] = $43;
-       $vararg_ptr8 = ((($vararg_buffer3)) + 12|0);
-       HEAP32[$vararg_ptr8>>2] = $5;
-       $vararg_ptr9 = ((($vararg_buffer3)) + 16|0);
-       HEAP32[$vararg_ptr9>>2] = $44;
-       $vararg_ptr10 = ((($vararg_buffer3)) + 20|0);
-       HEAP32[$vararg_ptr10>>2] = $44;
-       $vararg_ptr11 = ((($vararg_buffer3)) + 24|0);
-       HEAP32[$vararg_ptr11>>2] = $6;
-       $vararg_ptr12 = ((($vararg_buffer3)) + 28|0);
-       HEAP32[$vararg_ptr12>>2] = 0;
-       $45 = (__gcry_sexp_extract_param($2,0,64823,$vararg_buffer3)|0);
-       $$037 = $45;
-      }
-      $47 = ($$037|0)==(0);
-      if ($47) {
-       $48 = HEAP32[$5>>2]|0;
-       $49 = ($48|0)==(0|0);
-       if (!($49)) {
-        $50 = ((($10)) + 20|0);
-        __gcry_mpi_point_init($50);
-        $51 = HEAP32[$5>>2]|0;
-        $52 = (__gcry_ecc_os2ec($50,$51)|0);
-        $53 = ($52|0)==(0);
-        if (!($53)) {
-         $$139 = 0;$$3 = $52;
-         break;
-        }
-       }
-       $54 = HEAP32[$4>>2]|0;
-       __gcry_sexp_release($54);
-       $55 = (__gcry_sexp_find_token($2,64745,5)|0);
-       HEAP32[$4>>2] = $55;
-       $56 = ($55|0)==(0|0);
-       if ($56) {
-        label = 18;
-       } else {
-        $57 = (__gcry_sexp_nth_string($55,1)|0);
-        $58 = ($57|0)==(0|0);
-        if ($58) {
-         label = 18;
-        } else {
-         $59 = (__gcry_ecc_fill_in_curve(0,$57,$10,0)|0);
-         $60 = ($59|0)==(0);
-         if ($60) {
-          $$03840 = $57;
-         } else {
-          $$0 = $59;
-          STACKTOP = sp;return ($$0|0);
-         }
-        }
-       }
-       if ((label|0) == 18) {
-        $61 = HEAP32[$11>>2]|0;
-        $62 = $61 >>> 11;
-        $63 = $62 & 2;
-        HEAP32[$10>>2] = $63;
-        $64 = $61 >>> 12;
-        $$lobit = $64 & 1;
-        $65 = ((($10)) + 4|0);
-        HEAP32[$65>>2] = $$lobit;
-        $$03840 = 0;
-       }
-       $66 = (__gcry_get_debug_flag(1)|0);
-       $67 = ($66|0)==(0);
-       if ($67) {
-        $$pre = ((($10)) + 8|0);
-        $$pre$phiZ2D = $$pre;
-       } else {
-        $68 = HEAP32[$10>>2]|0;
-        $69 = (__gcry_ecc_model2str($68)|0);
-        $70 = ((($10)) + 4|0);
-        $71 = HEAP32[$70>>2]|0;
-        $72 = (__gcry_ecc_dialect2str($71)|0);
-        $73 = HEAP32[$11>>2]|0;
-        $74 = $73 & 4096;
-        $75 = ($74|0)==(0);
-        $76 = $75 ? 73338 : 64839;
-        HEAP32[$vararg_buffer17>>2] = $69;
-        $vararg_ptr20 = ((($vararg_buffer17)) + 4|0);
-        HEAP32[$vararg_ptr20>>2] = $72;
-        $vararg_ptr21 = ((($vararg_buffer17)) + 8|0);
-        HEAP32[$vararg_ptr21>>2] = $76;
-        __gcry_log_debug(64846,$vararg_buffer17);
-        $77 = ((($10)) + 40|0);
-        $78 = HEAP32[$77>>2]|0;
-        $79 = ($78|0)==(0|0);
-        if (!($79)) {
-         HEAP32[$vararg_buffer22>>2] = $78;
-         __gcry_log_debug(64872,$vararg_buffer22);
-        }
-        $80 = ((($10)) + 8|0);
-        $81 = HEAP32[$80>>2]|0;
-        __gcry_log_printmpi(64893,$81);
-        $82 = ((($10)) + 12|0);
-        $83 = HEAP32[$82>>2]|0;
-        __gcry_log_printmpi(64909,$83);
-        $84 = ((($10)) + 16|0);
-        $85 = HEAP32[$84>>2]|0;
-        __gcry_log_printmpi(64925,$85);
-        $86 = ((($10)) + 20|0);
-        __gcry_mpi_point_log(64941,$86,0);
-        $87 = ((($10)) + 32|0);
-        $88 = HEAP32[$87>>2]|0;
-        __gcry_log_printmpi(64955,$88);
-        $89 = ((($10)) + 36|0);
-        $90 = HEAP32[$89>>2]|0;
-        __gcry_log_printmpi(64971,$90);
-        $91 = HEAP32[$6>>2]|0;
-        __gcry_log_printmpi(64987,$91);
-        $$pre$phiZ2D = $80;
-       }
-       $92 = HEAP32[$$pre$phiZ2D>>2]|0;
-       $93 = ($92|0)==(0|0);
-       if ($93) {
-        $$139 = $$03840;$$3 = 68;
-       } else {
-        $94 = ((($10)) + 12|0);
-        $95 = HEAP32[$94>>2]|0;
-        $96 = ($95|0)==(0|0);
-        if ($96) {
-         $$139 = $$03840;$$3 = 68;
-        } else {
-         $97 = ((($10)) + 16|0);
-         $98 = HEAP32[$97>>2]|0;
-         $99 = ($98|0)==(0|0);
-         if ($99) {
-          $$139 = $$03840;$$3 = 68;
-         } else {
-          $100 = ((($10)) + 20|0);
-          $101 = HEAP32[$100>>2]|0;
-          $102 = ($101|0)==(0|0);
-          if ($102) {
-           $$139 = $$03840;$$3 = 68;
-          } else {
-           $103 = ((($10)) + 32|0);
-           $104 = HEAP32[$103>>2]|0;
-           $105 = ($104|0)==(0|0);
-           if ($105) {
-            $$139 = $$03840;$$3 = 68;
-           } else {
-            $106 = ((($10)) + 36|0);
-            $107 = HEAP32[$106>>2]|0;
-            $108 = ($107|0)!=(0|0);
-            $109 = HEAP32[$6>>2]|0;
-            $110 = ($109|0)!=(0|0);
-            $or$cond = $108 & $110;
-            if ($or$cond) {
-             $111 = HEAP32[$11>>2]|0;
-             $112 = $111 & 4096;
-             $113 = ($112|0)==(0);
-             if (!($113)) {
-              $114 = HEAP32[$9>>2]|0;
-              $115 = HEAP32[$7>>2]|0;
-              $116 = HEAP32[$8>>2]|0;
-              $117 = ((($3)) + 16|0);
-              $118 = HEAP32[$117>>2]|0;
-              $119 = (__gcry_ecc_eddsa_verify($114,$10,$115,$116,$118,$109)|0);
-              $$139 = $$03840;$$3 = $119;
-              break;
-             }
-             $120 = $111 & 8192;
-             $121 = ($120|0)==(0);
-             $122 = ((($10)) + 44|0);
-             __gcry_mpi_point_init($122);
-             if (!($121)) {
-              $123 = HEAP32[$6>>2]|0;
-              $124 = (__gcry_ecc_os2ec($122,$123)|0);
-              $125 = ($124|0)==(0);
-              if (!($125)) {
-               $$139 = $$03840;$$3 = $124;
-               break;
-              }
-              $126 = HEAP32[$9>>2]|0;
-              $127 = HEAP32[$7>>2]|0;
-              $128 = HEAP32[$8>>2]|0;
-              $129 = (__gcry_ecc_gost_verify($126,$10,$127,$128)|0);
-              $$139 = $$03840;$$3 = $129;
-              break;
-             }
-             $130 = ((($10)) + 4|0);
-             $131 = HEAP32[$130>>2]|0;
-             $132 = ($131|0)==(1);
-             if ($132) {
-              $133 = HEAP32[$10>>2]|0;
-              $134 = HEAP32[$$pre$phiZ2D>>2]|0;
-              $135 = HEAP32[$94>>2]|0;
-              $136 = HEAP32[$97>>2]|0;
-              $137 = (__gcry_mpi_ec_p_internal_new($133,1,0,$134,$135,$136)|0);
-              $138 = HEAP32[$6>>2]|0;
-              $139 = (__gcry_ecc_eddsa_decodepoint($138,$137,$122,0,0)|0);
-              __gcry_mpi_ec_free($137);
-              $$1 = $139;
-             } else {
-              $140 = HEAP32[$6>>2]|0;
-              $141 = (__gcry_ecc_os2ec($122,$140)|0);
-              $$1 = $141;
-             }
-             $142 = ($$1|0)==(0);
-             if (!($142)) {
-              $$139 = $$03840;$$3 = $$1;
-              break;
-             }
-             $143 = HEAP32[$9>>2]|0;
-             $144 = ($143|0)==(0|0);
-             do {
-              if (!($144)) {
-               $145 = ((($143)) + 12|0);
-               $146 = HEAP32[$145>>2]|0;
-               $147 = $146 & 4;
-               $148 = ($147|0)==(0);
-               if ($148) {
-                break;
-               }
-               $149 = HEAP32[$103>>2]|0;
-               $150 = (__gcry_mpi_get_nbits($149)|0);
-               $151 = HEAP32[$9>>2]|0;
-               $152 = (__gcry_mpi_get_opaque($151,$12)|0);
-               $153 = HEAP32[$12>>2]|0;
-               $154 = (($153) + 7)|0;
-               $155 = $154 >>> 3;
-               $156 = (__gcry_mpi_scan($13,5,$152,$155,0)|0);
-               $157 = ($156|0)==(0);
-               if ($157) {
-                $158 = HEAP32[$12>>2]|0;
-                $159 = ($158>>>0)>($150>>>0);
-                if ($159) {
-                 $160 = (($158) - ($150))|0;
-                 $161 = HEAP32[$13>>2]|0;
-                 __gcry_mpi_rshift($161,$161,$160);
-                }
-                $162 = HEAP32[$13>>2]|0;
-                $163 = HEAP32[$7>>2]|0;
-                $164 = HEAP32[$8>>2]|0;
-                $165 = (__gcry_ecc_ecdsa_verify($162,$10,$163,$164)|0);
-                $166 = HEAP32[$13>>2]|0;
-                __gcry_mpi_release($166);
-                $$2 = $165;
-               } else {
-                $$2 = $156;
-               }
-               $$139 = $$03840;$$3 = $$2;
-               break L1;
-              }
-             } while(0);
-             $167 = HEAP32[$7>>2]|0;
-             $168 = HEAP32[$8>>2]|0;
-             $169 = (__gcry_ecc_ecdsa_verify($143,$10,$167,$168)|0);
-             $$139 = $$03840;$$3 = $169;
-            } else {
-             $$139 = $$03840;$$3 = 68;
-            }
-           }
-          }
-         }
-        }
-       }
-      } else {
-       $$139 = 0;$$3 = $$037;
-      }
-     } else {
-      $$139 = 0;$$3 = 70;
-     }
-    } else {
-     $$139 = 0;$$3 = $27;
-    }
-   } else {
-    $$139 = 0;$$3 = $20;
-   }
-  } else {
-   $$139 = 0;$$3 = $15;
-  }
- } while(0);
- $170 = ((($10)) + 8|0);
- $171 = HEAP32[$170>>2]|0;
- __gcry_mpi_release($171);
- $172 = ((($10)) + 12|0);
- $173 = HEAP32[$172>>2]|0;
- __gcry_mpi_release($173);
- $174 = ((($10)) + 16|0);
- $175 = HEAP32[$174>>2]|0;
- __gcry_mpi_release($175);
- $176 = HEAP32[$5>>2]|0;
- __gcry_mpi_release($176);
- $177 = ((($10)) + 20|0);
- __gcry_mpi_point_free_parts($177);
- $178 = ((($10)) + 32|0);
- $179 = HEAP32[$178>>2]|0;
- __gcry_mpi_release($179);
- $180 = ((($10)) + 36|0);
- $181 = HEAP32[$180>>2]|0;
- __gcry_mpi_release($181);
- $182 = HEAP32[$6>>2]|0;
- __gcry_mpi_release($182);
- $183 = ((($10)) + 44|0);
- __gcry_mpi_point_free_parts($183);
- $184 = HEAP32[$9>>2]|0;
- __gcry_mpi_release($184);
- $185 = HEAP32[$7>>2]|0;
- __gcry_mpi_release($185);
- $186 = HEAP32[$8>>2]|0;
- __gcry_mpi_release($186);
- __gcry_free($$139);
- $187 = HEAP32[$4>>2]|0;
- __gcry_sexp_release($187);
- __gcry_pk_util_free_encoding_ctx($3);
- $188 = (__gcry_get_debug_flag(1)|0);
- $189 = ($188|0)==(0);
- if ($189) {
-  $$0 = $$3;
-  STACKTOP = sp;return ($$0|0);
- }
- $190 = ($$3|0)==(0);
- if ($190) {
-  $192 = 65003;
- } else {
-  $191 = (_gpg_strerror($$3)|0);
-  $192 = $191;
- }
- HEAP32[$vararg_buffer25>>2] = $192;
- __gcry_log_debug(65008,$vararg_buffer25);
- $$0 = $$3;
- STACKTOP = sp;return ($$0|0);
-}
-function _ecc_get_nbits($0) {
- $0 = $0|0;
- var $$0 = 0, $$pre = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- HEAP32[$1>>2] = 0;
- $2 = (__gcry_sexp_find_token($0,64769,1)|0);
- $3 = ($2|0)==(0|0);
- if ($3) {
-  $4 = (__gcry_sexp_find_token($0,64745,5)|0);
-  $5 = ($4|0)==(0|0);
-  if ($5) {
-   $$0 = 0;
-  } else {
-   $6 = (__gcry_sexp_nth_string($4,1)|0);
-   __gcry_sexp_release($4);
-   $7 = ($6|0)==(0|0);
-   if ($7) {
-    $$0 = 0;
-   } else {
-    $8 = (__gcry_ecc_fill_in_curve(0,$6,0,$1)|0);
-    $9 = ($8|0)==(0);
-    if (!($9)) {
-     HEAP32[$1>>2] = 0;
-    }
-    __gcry_free($6);
-    $$pre = HEAP32[$1>>2]|0;
-    $$0 = $$pre;
-   }
-  }
- } else {
-  $10 = (__gcry_sexp_nth_mpi($2,1,5)|0);
-  __gcry_sexp_release($2);
-  $11 = ($10|0)==(0|0);
-  if ($11) {
-   $$0 = 0;
-  } else {
-   $12 = (__gcry_mpi_get_nbits($10)|0);
-   HEAP32[$1>>2] = $12;
-   __gcry_mpi_release($10);
-   $$0 = $12;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _run_selftests_1814($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($0|0)==(18);
- $spec$select = $3 ? 0 : 4;
- return ($spec$select|0);
-}
-function _compute_keygrip_1815($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$060 = 0, $$06370 = 0, $$069 = 0, $$164 = 0, $$26782 = 0, $$8 = 0, 
$$lobit = 0, $$pre = 0, $$pre$phiZ2D = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0;
- var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0, $13 = 
0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 
0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $vararg_buffer = 0, $vararg_buffer18 = 0, 
$vararg_buffer22 = 0, $vararg_buffer26 = 0, $vararg_buffer30 = 0, 
$vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, 
$vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, 
$vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr25 = 0, 
$vararg_ptr29 = 0;
- var $vararg_ptr3 = 0, $vararg_ptr33 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
$vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $vararg_buffer30 = sp + 152|0;
- $vararg_buffer26 = sp + 144|0;
- $vararg_buffer22 = sp + 136|0;
- $vararg_buffer18 = sp + 128|0;
- $vararg_buffer8 = sp + 96|0;
- $vararg_buffer = sp + 64|0;
- $2 = sp + 32|0;
- $3 = sp + 176|0;
- $4 = sp + 172|0;
- $5 = sp + 168|0;
- $6 = sp;
- $7 = sp + 164|0;
- $8 = sp + 160|0;
- HEAP32[$3>>2] = 0;
- HEAP32[$4>>2] = 0;
- HEAP32[$5>>2] = 0;
- 
;HEAP32[$2>>2]=0|0;HEAP32[$2+4>>2]=0|0;HEAP32[$2+8>>2]=0|0;HEAP32[$2+12>>2]=0|0;HEAP32[$2+16>>2]=0|0;HEAP32[$2+20>>2]=0|0;HEAP32[$2+24>>2]=0|0;
- $9 = (__gcry_sexp_find_token($1,64705,0)|0);
- $10 = ($9|0)==(0|0);
- do {
-  if ($10) {
-   $11 = ((($2)) + 24|0);
-   $28 = $11;
-   label = 10;
-  } else {
-   $12 = (__gcry_pk_util_parse_flaglist($9,$3,0)|0);
-   $13 = ($12|0)==(0);
-   if ($13) {
-    $$pre = HEAP32[$3>>2]|0;
-    $14 = $$pre & 512;
-    $15 = ($14|0)==(0);
-    $16 = $$pre & 4096;
-    $17 = ($16|0)!=(0);
-    if ($15) {
-     $26 = ((($2)) + 24|0);
-     if (!($17)) {
-      $28 = $26;
-      label = 10;
-      break;
-     }
-     HEAP32[$vararg_buffer18>>2] = $26;
-     $vararg_ptr21 = ((($vararg_buffer18)) + 4|0);
-     HEAP32[$vararg_ptr21>>2] = 0;
-     $27 = (__gcry_sexp_extract_param($1,0,64740,$vararg_buffer18)|0);
-     $$060 = $27;
-     label = 11;
-     break;
-    }
-    $18 = ((($2)) + 4|0);
-    $19 = ((($2)) + 8|0);
-    $20 = ((($2)) + 12|0);
-    $21 = ((($2)) + 16|0);
-    $22 = ((($2)) + 20|0);
-    $23 = ((($2)) + 24|0);
-    if ($17) {
-     HEAP32[$vararg_buffer>>2] = $2;
-     $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-     HEAP32[$vararg_ptr1>>2] = $18;
-     $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-     HEAP32[$vararg_ptr2>>2] = $19;
-     $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-     HEAP32[$vararg_ptr3>>2] = $20;
-     $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-     HEAP32[$vararg_ptr4>>2] = $21;
-     $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-     HEAP32[$vararg_ptr5>>2] = $22;
-     $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
-     HEAP32[$vararg_ptr6>>2] = $23;
-     $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
-     HEAP32[$vararg_ptr7>>2] = 0;
-     $24 = (__gcry_sexp_extract_param($1,0,64711,$vararg_buffer)|0);
-     $$060 = $24;
-     label = 11;
-     break;
-    } else {
-     HEAP32[$vararg_buffer8>>2] = $2;
-     $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-     HEAP32[$vararg_ptr11>>2] = $18;
-     $vararg_ptr12 = ((($vararg_buffer8)) + 8|0);
-     HEAP32[$vararg_ptr12>>2] = $19;
-     $vararg_ptr13 = ((($vararg_buffer8)) + 12|0);
-     HEAP32[$vararg_ptr13>>2] = $20;
-     $vararg_ptr14 = ((($vararg_buffer8)) + 16|0);
-     HEAP32[$vararg_ptr14>>2] = $21;
-     $vararg_ptr15 = ((($vararg_buffer8)) + 20|0);
-     HEAP32[$vararg_ptr15>>2] = $22;
-     $vararg_ptr16 = ((($vararg_buffer8)) + 24|0);
-     HEAP32[$vararg_ptr16>>2] = $23;
-     $vararg_ptr17 = ((($vararg_buffer8)) + 28|0);
-     HEAP32[$vararg_ptr17>>2] = 0;
-     $25 = (__gcry_sexp_extract_param($1,0,64726,$vararg_buffer8)|0);
-     $$060 = $25;
-     label = 11;
-     break;
-    }
-   } else {
-    $$069 = $9;$$164 = 0;$$8 = $12;
-   }
-  }
- } while(0);
- if ((label|0) == 10) {
-  HEAP32[$vararg_buffer22>>2] = $28;
-  $vararg_ptr25 = ((($vararg_buffer22)) + 4|0);
-  HEAP32[$vararg_ptr25>>2] = 0;
-  $29 = (__gcry_sexp_extract_param($1,0,64743,$vararg_buffer22)|0);
-  $$060 = $29;
-  label = 11;
- }
- L14: do {
-  if ((label|0) == 11) {
-   $30 = ($$060|0)==(0);
-   if ($30) {
-    __gcry_sexp_release($9);
-    $31 = (__gcry_sexp_find_token($1,64745,5)|0);
-    $32 = ($31|0)==(0|0);
-    if ($32) {
-     label = 15;
-    } else {
-     $33 = (__gcry_sexp_nth_string($31,1)|0);
-     $34 = ($33|0)==(0|0);
-     if ($34) {
-      label = 15;
-     } else {
-      $35 = ((($2)) + 4|0);
-      $36 = ((($2)) + 8|0);
-      $37 = ((($2)) + 12|0);
-      $38 = ((($2)) + 16|0);
-      $39 = ((($2)) + 20|0);
-      $40 = 
(__gcry_ecc_update_curve_param($33,$4,$5,$2,$35,$36,$37,$38,$39)|0);
-      $41 = ($40|0)==(0);
-      if ($41) {
-       $$06370 = $33;$$pre$phiZ2D = $2;
-      } else {
-       $$069 = $31;$$164 = $33;$$8 = $40;
-       break;
-      }
-     }
-    }
-    if ((label|0) == 15) {
-     $42 = HEAP32[$3>>2]|0;
-     $43 = $42 >>> 11;
-     $44 = $43 & 2;
-     HEAP32[$4>>2] = $44;
-     $45 = $42 >>> 12;
-     $$lobit = $45 & 1;
-     HEAP32[$5>>2] = $$lobit;
-     $$06370 = 0;$$pre$phiZ2D = $2;
-    }
-    $46 = HEAP32[$$pre$phiZ2D>>2]|0;
-    $47 = ($46|0)==(0|0);
-    if ($47) {
-     $$069 = $31;$$164 = $$06370;$$8 = 68;
-    } else {
-     __gcry_mpi_normalize($46);
-     $48 = ((($2)) + 4|0);
-     $49 = HEAP32[$48>>2]|0;
-     $50 = ($49|0)==(0|0);
-     if ($50) {
-      $$069 = $31;$$164 = $$06370;$$8 = 68;
-     } else {
-      __gcry_mpi_normalize($49);
-      $98 = ((($2)) + 8|0);
-      $99 = HEAP32[$98>>2]|0;
-      $100 = ($99|0)==(0|0);
-      if ($100) {
-       $$069 = $31;$$164 = $$06370;$$8 = 68;
-      } else {
-       __gcry_mpi_normalize($99);
-       $101 = ((($2)) + 12|0);
-       $102 = HEAP32[$101>>2]|0;
-       $103 = ($102|0)==(0|0);
-       if ($103) {
-        $$069 = $31;$$164 = $$06370;$$8 = 68;
-       } else {
-        __gcry_mpi_normalize($102);
-        $104 = ((($2)) + 16|0);
-        $105 = HEAP32[$104>>2]|0;
-        $106 = ($105|0)==(0|0);
-        if ($106) {
-         $$069 = $31;$$164 = $$06370;$$8 = 68;
-        } else {
-         __gcry_mpi_normalize($105);
-         $107 = ((($2)) + 20|0);
-         $108 = HEAP32[$107>>2]|0;
-         $109 = ($108|0)==(0|0);
-         if ($109) {
-          $$069 = $31;$$164 = $$06370;$$8 = 68;
-         } else {
-          __gcry_mpi_normalize($108);
-          $54 = ((($2)) + 24|0);
-          $110 = HEAP32[$54>>2]|0;
-          $111 = ($110|0)==(0|0);
-          if ($111) {
-           $$069 = $31;$$164 = $$06370;$$8 = 68;
-          } else {
-           __gcry_mpi_normalize($110);
-           $112 = HEAP32[$3>>2]|0;
-           $113 = $112 & 4096;
-           $114 = ($113|0)==(0);
-           if (!($114)) {
-            $51 = HEAP32[$5>>2]|0;
-            $52 = ($51|0)==(1);
-            if (!($52)) {
-             $$069 = $31;$$164 = $$06370;$$8 = 69;
-             break;
-            }
-            $53 = HEAP32[$54>>2]|0;
-            $55 = (__gcry_ecc_eddsa_ensure_compact($53,256)|0);
-            $56 = ($55|0)==(0);
-            if (!($56)) {
-             $$069 = $31;$$164 = $$06370;$$8 = $55;
-             break;
-            }
-           }
-           $$26782 = 0;
-           L34: while(1) {
-            $57 = ($$26782|0)==(5);
-            do {
-             if (!($57)) {
-              $58 = (($2) + ($$26782<<2)|0);
-              $59 = HEAP32[$58>>2]|0;
-              $60 = ($59|0)==(0|0);
-              if (!($60)) {
-               $61 = ((($59)) + 12|0);
-               $62 = HEAP32[$61>>2]|0;
-               $63 = $62 & 4;
-               $64 = ($63|0)==(0);
-               if (!($64)) {
-                $65 = (__gcry_mpi_get_opaque($59,$7)|0);
-                $66 = HEAP32[$7>>2]|0;
-                $67 = (($66) + 7)|0;
-                $68 = $67 >>> 3;
-                HEAP32[$7>>2] = $68;
-                $69 = (64751 + ($$26782)|0);
-                $70 = HEAP8[$69>>0]|0;
-                $71 = $70 << 24 >> 24;
-                HEAP32[$vararg_buffer26>>2] = $71;
-                $vararg_ptr29 = ((($vararg_buffer26)) + 4|0);
-                HEAP32[$vararg_ptr29>>2] = $68;
-                (_snprintf($6,30,64758,$vararg_buffer26)|0);
-                $72 = (_strlen($6)|0);
-                __gcry_md_write($0,$6,$72);
-                $73 = HEAP32[$7>>2]|0;
-                __gcry_md_write($0,$65,$73);
-                __gcry_md_write($0,64767,1);
-                break;
-               }
-              }
-              $74 = (__gcry_mpi_get_buffer($59,0,$8,0)|0);
-              $75 = ($74|0)==(0|0);
-              if ($75) {
-               break L34;
-              }
-              $76 = (64751 + ($$26782)|0);
-              $77 = HEAP8[$76>>0]|0;
-              $78 = $77 << 24 >> 24;
-              $79 = HEAP32[$8>>2]|0;
-              HEAP32[$vararg_buffer30>>2] = $78;
-              $vararg_ptr33 = ((($vararg_buffer30)) + 4|0);
-              HEAP32[$vararg_ptr33>>2] = $79;
-              (_snprintf($6,30,64758,$vararg_buffer30)|0);
-              $80 = (_strlen($6)|0);
-              __gcry_md_write($0,$6,$80);
-              $81 = HEAP32[$8>>2]|0;
-              __gcry_md_write($0,$74,$81);
-              __gcry_md_write($0,64767,1);
-              __gcry_free($74);
-             }
-            } while(0);
-            $83 = (($$26782) + 1)|0;
-            $84 = ($83>>>0)<(7);
-            if ($84) {
-             $$26782 = $83;
-            } else {
-             $$069 = $31;$$164 = $$06370;$$8 = 0;
-             break L14;
-            }
-           }
-           $82 = (_gpg_err_code_from_syserror()|0);
-           $$069 = $31;$$164 = $$06370;$$8 = $82;
-          }
-         }
-        }
-       }
-      }
-     }
-    }
-   } else {
-    $$069 = $9;$$164 = 0;$$8 = $$060;
-   }
-  }
- } while(0);
- __gcry_free($$164);
- __gcry_sexp_release($$069);
- $85 = HEAP32[$2>>2]|0;
- __gcry_mpi_release($85);
- $86 = ((($2)) + 4|0);
- $87 = HEAP32[$86>>2]|0;
- __gcry_mpi_release($87);
- $88 = ((($2)) + 8|0);
- $89 = HEAP32[$88>>2]|0;
- __gcry_mpi_release($89);
- $90 = ((($2)) + 12|0);
- $91 = HEAP32[$90>>2]|0;
- __gcry_mpi_release($91);
- $92 = ((($2)) + 16|0);
- $93 = HEAP32[$92>>2]|0;
- __gcry_mpi_release($93);
- $94 = ((($2)) + 20|0);
- $95 = HEAP32[$94>>2]|0;
- __gcry_mpi_release($95);
- $96 = ((($2)) + 24|0);
- $97 = HEAP32[$96>>2]|0;
- __gcry_mpi_release($97);
- STACKTOP = sp;return ($$8|0);
-}
-function __gcry_hash_selftest_check_one($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$022 = 0, $$025 = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$exitcond = 0, $spec$select = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 1008|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(1008|0);
- $6 = sp + 1000|0;
- $7 = sp;
- $8 = (__gcry_md_get_algo_dlen($0)|0);
- $9 = ($8|0)==($5|0);
- if (!($9)) {
-  $$022 = 67478;
-  STACKTOP = sp;return ($$022|0);
- }
- $10 = (__gcry_md_open($6,$0,0)|0);
- $11 = ($10|0)==(0);
- if (!($11)) {
-  $$022 = 67519;
-  STACKTOP = sp;return ($$022|0);
- }
- switch ($1|0) {
- case 0:  {
-  $12 = HEAP32[$6>>2]|0;
-  __gcry_md_write($12,$2,$3);
-  label = 8;
-  break;
- }
- case 1:  {
-  _memset(($7|0),97,1000)|0;
-  $$025 = 0;
-  while(1) {
-   $13 = HEAP32[$6>>2]|0;
-   __gcry_md_write($13,$7,1000);
-   $14 = (($$025) + 1)|0;
-   $exitcond = ($14|0)==(1000);
-   if ($exitcond) {
-    break;
-   } else {
-    $$025 = $14;
-   }
-  }
-  label = 8;
-  break;
- }
- default: {
-  $$1 = 67461;
- }
- }
- if ((label|0) == 8) {
-  $15 = HEAP32[$6>>2]|0;
-  $16 = (__gcry_md_read($15,$0)|0);
-  $17 = (_memcmp($16,$4,$5)|0);
-  $18 = ($17|0)==(0);
-  $spec$select = $18 ? 0 : 67445;
-  $$1 = $spec$select;
- }
- $19 = HEAP32[$6>>2]|0;
- __gcry_md_close($19);
- $$022 = $$1;
- STACKTOP = sp;return ($$022|0);
-}
-function __gcry_md_block_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$06376$lcssa = 0, $$0637689 = 0, $$077$lcssa = 0, $$07788 = 0, $$1 = 0, 
$$164 = 0, $$168 = 0, $$2 = 0, $$265 = 0, $$36673 = 0, $$374 = 0, $$lcssa = 0, 
$$pre = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0;
- var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 
= 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0;
- var $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 
= 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0;
- var $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, 
$149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, 
$156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0;
- var $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, 
$167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0;
- var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, 
$67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0;
- var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, 
$85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0;
- var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 148|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4>>>0)>(128);
- if ($5) {
-  __gcry_bug(67539,112,67553);
-  // unreachable;
- }
- $6 = ((($0)) + 152|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)==(0|0);
- if ($8) {
-  return;
- }
- $9 = ((($0)) + 144|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($10|0)==($4|0);
- if ($11) {
-  $12 = (FUNCTION_TABLE_iiii[$7 & 127]($0,$0,1)|0);
-  ___gcry_burn_stack($12);
-  HEAP32[$9>>2] = 0;
-  $13 = ((($0)) + 128|0);
-  $14 = $13;
-  $15 = $14;
-  $16 = HEAP32[$15>>2]|0;
-  $17 = (($14) + 4)|0;
-  $18 = $17;
-  $19 = HEAP32[$18>>2]|0;
-  $20 = (_i64Add(($16|0),($19|0),1,0)|0);
-  $21 = tempRet0;
-  $22 = $13;
-  $23 = $22;
-  HEAP32[$23>>2] = $20;
-  $24 = (($22) + 4)|0;
-  $25 = $24;
-  HEAP32[$25>>2] = $21;
-  $26 = ($20|0)==(0);
-  $27 = ($21|0)==(0);
-  $28 = $26 & $27;
-  if ($28) {
-   $29 = ((($0)) + 136|0);
-   $30 = $29;
-   $31 = $30;
-   $32 = HEAP32[$31>>2]|0;
-   $33 = (($30) + 4)|0;
-   $34 = $33;
-   $35 = HEAP32[$34>>2]|0;
-   $36 = (_i64Add(($32|0),($35|0),1,0)|0);
-   $37 = tempRet0;
-   $38 = $29;
-   $39 = $38;
-   HEAP32[$39>>2] = $36;
-   $40 = (($38) + 4)|0;
-   $41 = $40;
-   HEAP32[$41>>2] = $37;
-   $44 = 0;
-  } else {
-   $44 = 0;
-  }
- } else {
-  $44 = $10;
- }
- $42 = ($1|0)==(0|0);
- if ($42) {
-  return;
- }
- $43 = ($44|0)==(0);
- L14: do {
-  if ($43) {
-   $$1 = $2;$$164 = $1;
-  } else {
-   $45 = ($2|0)==(0);
-   L16: do {
-    if (!($45)) {
-     $46 = ($44>>>0)<($4>>>0);
-     if ($46) {
-      $$0637689 = $1;$$07788 = $2;$49 = $44;
-      while(1) {
-       $47 = HEAP8[$$0637689>>0]|0;
-       $48 = (($49) + 1)|0;
-       HEAP32[$9>>2] = $48;
-       $50 = (($0) + ($49)|0);
-       HEAP8[$50>>0] = $47;
-       $51 = (($$07788) + -1)|0;
-       $52 = ($51|0)==(0);
-       if ($52) {
-        break L16;
-       }
-       $53 = ((($$0637689)) + 1|0);
-       $$pre = HEAP32[$9>>2]|0;
-       $54 = ($$pre>>>0)<($4>>>0);
-       if ($54) {
-        $$0637689 = $53;$$07788 = $51;$49 = $$pre;
-       } else {
-        $$06376$lcssa = $53;$$077$lcssa = $51;$$lcssa = $$pre;
-        break;
-       }
-      }
-     } else {
-      $$06376$lcssa = $1;$$077$lcssa = $2;$$lcssa = $44;
-     }
-     $55 = HEAP32[$3>>2]|0;
-     $56 = ($55>>>0)>(128);
-     if ($56) {
-      __gcry_bug(67539,112,67553);
-      // unreachable;
-     }
-     $57 = HEAP32[$6>>2]|0;
-     $58 = ($57|0)!=(0|0);
-     $59 = ($$lcssa|0)==($55|0);
-     $or$cond = $59 & $58;
-     if (!($or$cond)) {
-      $$1 = $$077$lcssa;$$164 = $$06376$lcssa;
-      break L14;
-     }
-     $60 = (FUNCTION_TABLE_iiii[$57 & 127]($0,$0,1)|0);
-     ___gcry_burn_stack($60);
-     HEAP32[$9>>2] = 0;
-     $61 = ((($0)) + 128|0);
-     $62 = $61;
-     $63 = $62;
-     $64 = HEAP32[$63>>2]|0;
-     $65 = (($62) + 4)|0;
-     $66 = $65;
-     $67 = HEAP32[$66>>2]|0;
-     $68 = (_i64Add(($64|0),($67|0),1,0)|0);
-     $69 = tempRet0;
-     $70 = $61;
-     $71 = $70;
-     HEAP32[$71>>2] = $68;
-     $72 = (($70) + 4)|0;
-     $73 = $72;
-     HEAP32[$73>>2] = $69;
-     $74 = ($68|0)==(0);
-     $75 = ($69|0)==(0);
-     $76 = $74 & $75;
-     if (!($76)) {
-      $$1 = $$077$lcssa;$$164 = $$06376$lcssa;
-      break L14;
-     }
-     $77 = ((($0)) + 136|0);
-     $78 = $77;
-     $79 = $78;
-     $80 = HEAP32[$79>>2]|0;
-     $81 = (($78) + 4)|0;
-     $82 = $81;
-     $83 = HEAP32[$82>>2]|0;
-     $84 = (_i64Add(($80|0),($83|0),1,0)|0);
-     $85 = tempRet0;
-     $86 = $77;
-     $87 = $86;
-     HEAP32[$87>>2] = $84;
-     $88 = (($86) + 4)|0;
-     $89 = $88;
-     HEAP32[$89>>2] = $85;
-     $$1 = $$077$lcssa;$$164 = $$06376$lcssa;
-     break L14;
-    }
-   } while(0);
-   $90 = HEAP32[$3>>2]|0;
-   $91 = ($90>>>0)>(128);
-   if ($91) {
-    __gcry_bug(67539,112,67553);
-    // unreachable;
-   }
-   $92 = HEAP32[$6>>2]|0;
-   $93 = ($92|0)==(0|0);
-   if ($93) {
-    return;
-   }
-   $94 = HEAP32[$9>>2]|0;
-   $95 = ($94|0)==($90|0);
-   if (!($95)) {
-    return;
-   }
-   $96 = (FUNCTION_TABLE_iiii[$92 & 127]($0,$0,1)|0);
-   ___gcry_burn_stack($96);
-   HEAP32[$9>>2] = 0;
-   $97 = ((($0)) + 128|0);
-   $98 = $97;
-   $99 = $98;
-   $100 = HEAP32[$99>>2]|0;
-   $101 = (($98) + 4)|0;
-   $102 = $101;
-   $103 = HEAP32[$102>>2]|0;
-   $104 = (_i64Add(($100|0),($103|0),1,0)|0);
-   $105 = tempRet0;
-   $106 = $97;
-   $107 = $106;
-   HEAP32[$107>>2] = $104;
-   $108 = (($106) + 4)|0;
-   $109 = $108;
-   HEAP32[$109>>2] = $105;
-   $110 = ($104|0)==(0);
-   $111 = ($105|0)==(0);
-   $112 = $110 & $111;
-   if (!($112)) {
-    return;
-   }
-   $113 = ((($0)) + 136|0);
-   $114 = $113;
-   $115 = $114;
-   $116 = HEAP32[$115>>2]|0;
-   $117 = (($114) + 4)|0;
-   $118 = $117;
-   $119 = HEAP32[$118>>2]|0;
-   $120 = (_i64Add(($116|0),($119|0),1,0)|0);
-   $121 = tempRet0;
-   $122 = $113;
-   $123 = $122;
-   HEAP32[$123>>2] = $120;
-   $124 = (($122) + 4)|0;
-   $125 = $124;
-   HEAP32[$125>>2] = $121;
-   return;
-  }
- } while(0);
- $126 = ($$1>>>0)<($4>>>0);
- if ($126) {
-  $$168 = 0;$$2 = $$1;$$265 = $$164;
- } else {
-  $127 = (($$1>>>0) / ($4>>>0))&-1;
-  $128 = HEAP32[$6>>2]|0;
-  $129 = (FUNCTION_TABLE_iiii[$128 & 127]($0,$$164,$127)|0);
-  HEAP32[$9>>2] = 0;
-  $130 = ((($0)) + 128|0);
-  $131 = $130;
-  $132 = $131;
-  $133 = HEAP32[$132>>2]|0;
-  $134 = (($131) + 4)|0;
-  $135 = $134;
-  $136 = HEAP32[$135>>2]|0;
-  $137 = (_i64Add(($133|0),($136|0),($127|0),0)|0);
-  $138 = tempRet0;
-  $139 = ($138>>>0)<(0);
-  $140 = ($137>>>0)<($127>>>0);
-  $141 = ($138|0)==(0);
-  $142 = $141 & $140;
-  $143 = $139 | $142;
-  $144 = $143&1;
-  $145 = ((($0)) + 136|0);
-  $146 = $145;
-  $147 = $146;
-  $148 = HEAP32[$147>>2]|0;
-  $149 = (($146) + 4)|0;
-  $150 = $149;
-  $151 = HEAP32[$150>>2]|0;
-  $152 = (_i64Add(($148|0),($151|0),($144|0),0)|0);
-  $153 = tempRet0;
-  $154 = $145;
-  $155 = $154;
-  HEAP32[$155>>2] = $152;
-  $156 = (($154) + 4)|0;
-  $157 = $156;
-  HEAP32[$157>>2] = $153;
-  $158 = $130;
-  $159 = $158;
-  HEAP32[$159>>2] = $137;
-  $160 = (($158) + 4)|0;
-  $161 = $160;
-  HEAP32[$161>>2] = $138;
-  $162 = Math_imul($127, $4)|0;
-  $163 = (($$1) - ($162))|0;
-  $164 = (($$164) + ($162)|0);
-  $$168 = $129;$$2 = $163;$$265 = $164;
- }
- ___gcry_burn_stack($$168);
- $165 = ($$2|0)==(0);
- if ($165) {
-  return;
- }
- $$36673 = $$265;$$374 = $$2;
- while(1) {
-  $166 = HEAP32[$9>>2]|0;
-  $167 = ($166>>>0)<($4>>>0);
-  if (!($167)) {
-   label = 31;
-   break;
-  }
-  $168 = ((($$36673)) + 1|0);
-  $169 = HEAP8[$$36673>>0]|0;
-  $170 = (($166) + 1)|0;
-  HEAP32[$9>>2] = $170;
-  $171 = (($0) + ($166)|0);
-  HEAP8[$171>>0] = $169;
-  $172 = (($$374) + -1)|0;
-  $173 = ($172|0)==(0);
-  if ($173) {
-   label = 31;
-   break;
-  } else {
-   $$36673 = $168;$$374 = $172;
-  }
- }
- if ((label|0) == 31) {
-  return;
- }
-}
-function __gcry_poly1305_update($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$02434$i = 0, $$02434$i66 = 0, $$02533$i = 0, $$02533$i67 = 0, 
$$026$i70 = 0, $$028$i69 = 0, $$035$i = 0, $$035$i65 = 0, $$057 = 0, $$1 = 0, 
$$1$i71 = 0, $$12731$i = 0, $$12731$i$ph = 0, $$12731$i75 = 0, $$12930$i = 0, 
$$12930$i$ph = 0, $$12930$i76 = 0, $$158 = 0, $$160 = 0;
- var $$2 = 0, $$232$i = 0, $$232$i$ph = 0, $$232$i74 = 0, $$pre = 0, $$pre81 = 
0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 
= 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0;
- var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $9 = 0, $or$cond$i = 
0, $or$cond$i61 = 0, $scevgep$i = 0, $scevgep$i62 = 0, $scevgep44$i = 0, 
$scevgep44$i63 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 3|0);
- $4 = $3;
- $5 = $4 & 3;
- $6 = (0 - ($5))|0;
- $7 = (($3) + ($6)|0);
- $8 = ((($0)) + 84|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = HEAP32[$9>>2]|0;
- $11 = ((($0)) + 88|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ($12|0)==(0);
- do {
-  if ($13) {
-   $$0 = $1;$$057 = $2;$$160 = 0;
-  } else {
-   $14 = (($10) - ($12))|0;
-   $15 = ($14>>>0)>($2>>>0);
-   $spec$select = $15 ? $2 : $14;
-   $16 = (((($0)) + 68|0) + ($12)|0);
-   $17 = $16;
-   $18 = $1;
-   $19 = $17 | $18;
-   $20 = $19 & 3;
-   $21 = ($20|0)==(0);
-   $22 = ($spec$select>>>0)>(3);
-   $or$cond$i61 = $22 & $21;
-   if ($or$cond$i61) {
-    $23 = (($spec$select) + -4)|0;
-    $24 = $23 & -4;
-    $25 = (($24) + 4)|0;
-    $scevgep$i62 = (($1) + ($25)|0);
-    $$02434$i66 = $1;$$02533$i67 = $16;$$035$i65 = $spec$select;
-    while(1) {
-     $26 = ((($$02434$i66)) + 4|0);
-     $27 = HEAP32[$$02434$i66>>2]|0;
-     $28 = ((($$02533$i67)) + 4|0);
-     HEAP32[$$02533$i67>>2] = $27;
-     $29 = (($$035$i65) + -4)|0;
-     $30 = ($29>>>0)>(3);
-     if ($30) {
-      $$02434$i66 = $26;$$02533$i67 = $28;$$035$i65 = $29;
-     } else {
-      break;
-     }
-    }
-    $scevgep44$i63 = (($16) + ($25)|0);
-    $31 = (($23) - ($24))|0;
-    $$026$i70 = $scevgep$i62;$$028$i69 = $scevgep44$i63;$$1$i71 = $31;
-   } else {
-    $$026$i70 = $1;$$028$i69 = $16;$$1$i71 = $spec$select;
-   }
-   $32 = ($$1$i71|0)==(0);
-   if ($32) {
-    $39 = $12;
-   } else {
-    $$12731$i75 = $$026$i70;$$12930$i76 = $$028$i69;$$232$i74 = $$1$i71;
-    while(1) {
-     $33 = ((($$12731$i75)) + 1|0);
-     $34 = HEAP8[$$12731$i75>>0]|0;
-     $35 = ((($$12930$i76)) + 1|0);
-     HEAP8[$$12930$i76>>0] = $34;
-     $36 = (($$232$i74) + -1)|0;
-     $37 = ($36|0)==(0);
-     if ($37) {
-      break;
-     } else {
-      $$12731$i75 = $33;$$12930$i76 = $35;$$232$i74 = $36;
-     }
-    }
-    $$pre = HEAP32[$11>>2]|0;
-    $39 = $$pre;
-   }
-   $38 = (($39) + ($spec$select))|0;
-   HEAP32[$11>>2] = $38;
-   $40 = ($38>>>0)<($10>>>0);
-   if ($40) {
-    return;
-   } else {
-    $41 = (($1) + ($spec$select)|0);
-    $42 = (($2) - ($spec$select))|0;
-    $43 = ((($0)) + 68|0);
-    $44 = HEAP32[$8>>2]|0;
-    $45 = ((($44)) + 8|0);
-    $46 = HEAP32[$45>>2]|0;
-    $47 = (FUNCTION_TABLE_iiii[$46 & 127]($7,$43,$10)|0);
-    HEAP32[$11>>2] = 0;
-    $$0 = $41;$$057 = $42;$$160 = $47;
-    break;
-   }
-  }
- } while(0);
- $48 = ($$057>>>0)<($10>>>0);
- $49 = (0 - ($10))|0;
- $50 = $$057 & $49;
- if ($48) {
-  $$1 = $$0;$$158 = $$057;$$2 = $$160;
- } else {
-  $51 = (($$057) - ($50))|0;
-  $52 = (($$0) + ($50)|0);
-  $53 = HEAP32[$8>>2]|0;
-  $54 = ((($53)) + 8|0);
-  $55 = HEAP32[$54>>2]|0;
-  $56 = (FUNCTION_TABLE_iiii[$55 & 127]($7,$$0,$50)|0);
-  $$1 = $52;$$158 = $51;$$2 = $56;
- }
- $57 = ($$158|0)==(0);
- if (!($57)) {
-  $58 = HEAP32[$11>>2]|0;
-  $59 = (((($0)) + 68|0) + ($58)|0);
-  $60 = $59;
-  $61 = $$1;
-  $62 = $60 | $61;
-  $63 = $62 & 3;
-  $64 = ($63|0)==(0);
-  $65 = ($$158>>>0)>(3);
-  $or$cond$i = $65 & $64;
-  if ($or$cond$i) {
-   $66 = (($$158) + -4)|0;
-   $67 = $66 & -4;
-   $68 = (($67) + 4)|0;
-   $scevgep$i = (($$1) + ($68)|0);
-   $$02434$i = $$1;$$02533$i = $59;$$035$i = $$158;
-   while(1) {
-    $69 = ((($$02434$i)) + 4|0);
-    $70 = HEAP32[$$02434$i>>2]|0;
-    $71 = ((($$02533$i)) + 4|0);
-    HEAP32[$$02533$i>>2] = $70;
-    $72 = (($$035$i) + -4)|0;
-    $73 = ($72>>>0)>(3);
-    if ($73) {
-     $$02434$i = $69;$$02533$i = $71;$$035$i = $72;
-    } else {
-     break;
-    }
-   }
-   $scevgep44$i = (($59) + ($68)|0);
-   $74 = (($66) - ($67))|0;
-   $75 = ($74|0)==(0);
-   if ($75) {
-    $82 = $58;
-   } else {
-    $$12731$i$ph = $scevgep$i;$$12930$i$ph = $scevgep44$i;$$232$i$ph = $74;
-    label = 19;
-   }
-  } else {
-   $$12731$i$ph = $$1;$$12930$i$ph = $59;$$232$i$ph = $$158;
-   label = 19;
-  }
-  if ((label|0) == 19) {
-   $$12731$i = $$12731$i$ph;$$12930$i = $$12930$i$ph;$$232$i = $$232$i$ph;
-   while(1) {
-    $76 = ((($$12731$i)) + 1|0);
-    $77 = HEAP8[$$12731$i>>0]|0;
-    $78 = ((($$12930$i)) + 1|0);
-    HEAP8[$$12930$i>>0] = $77;
-    $79 = (($$232$i) + -1)|0;
-    $80 = ($79|0)==(0);
-    if ($80) {
-     break;
-    } else {
-     $$12731$i = $76;$$12930$i = $78;$$232$i = $79;
-    }
-   }
-   $$pre81 = HEAP32[$11>>2]|0;
-   $82 = $$pre81;
-  }
-  $81 = (($82) + ($$158))|0;
-  HEAP32[$11>>2] = $81;
- }
- $83 = ($$2|0)==(0);
- if ($83) {
-  return;
- }
- ___gcry_burn_stack($$2);
- return;
-}
-function __gcry_poly1305_init($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$015$i56 = 0, $$016$i = 0, $$036$lcssa64 = 0, $$03648 = 0, 
$$037$lcssa63 = 0, $$03747 = 0, $$1 = 0, $$138 = 0, $$2 = 0, $$239 = 0, $$34045 
= 0, $$346 = 0, $$pre = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0;
- var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 
= 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 
= 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0;
- var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 
= 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0;
- var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, 
$148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, 
$155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0;
- var $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 
= 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 
= 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0;
- var $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 
= 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 
= 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0;
- var $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 
= 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, 
$62 = 0, $63 = 0, $64 = 0;
- var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, 
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, 
$80 = 0, $81 = 0, $82 = 0;
- var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, 
$90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 
0, $99 = 0, $exitcond = 0, $scevgep = 0;
- var $spec$select = 0, $vararg_buffer = 0, dest = 0, label = 0, sp = 0, stop = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 528|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(528|0);
- $vararg_buffer = sp + 304|0;
- $3 = sp + 436|0;
- $4 = sp + 344|0;
- $5 = sp + 272|0;
- $6 = sp + 16|0;
- $7 = sp;
- $8 = sp + 312|0;
- $9 = HEAP32[18129]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  HEAP32[18129] = 1;
-  dest=$3; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-  dest=$4; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-  
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;
-  _poly1305_auth($7,16288,131,16432);
-  $11 = (_memcmp(16464,$7,16)|0);
-  $12 = ($11|0)==(0);
-  if ($12) {
-   
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;
-   (__gcry_poly1305_init($3,16432,32)|0);
-   __gcry_poly1305_update($3,16288,32);
-   __gcry_poly1305_update($3,(16320),64);
-   __gcry_poly1305_update($3,(16384),16);
-   __gcry_poly1305_update($3,(16400),8);
-   __gcry_poly1305_update($3,(16408),4);
-   __gcry_poly1305_update($3,(16412),2);
-   __gcry_poly1305_update($3,(16414),1);
-   __gcry_poly1305_update($3,(16415),1);
-   __gcry_poly1305_update($3,(16416),1);
-   __gcry_poly1305_update($3,(16417),1);
-   __gcry_poly1305_update($3,(16418),1);
-   $13 = ((($3)) + 3|0);
-   $14 = $13;
-   $15 = $14 & 3;
-   $16 = (0 - ($15))|0;
-   $17 = (($13) + ($16)|0);
-   $18 = ((($3)) + 84|0);
-   $19 = HEAP32[$18>>2]|0;
-   $20 = ((($19)) + 12|0);
-   $21 = HEAP32[$20>>2]|0;
-   $22 = ((($3)) + 68|0);
-   $23 = ((($3)) + 88|0);
-   $24 = HEAP32[$23>>2]|0;
-   $25 = (FUNCTION_TABLE_iiiii[$21 & 127]($17,$22,$24,$7)|0);
-   ___gcry_burn_stack($25);
-   $26 = (_memcmp(16464,$7,16)|0);
-   $27 = ($26|0)==(0);
-   if ($27) {
-    
;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;
-    _poly1305_auth($7,16480,16,16496);
-    $28 = (_memcmp(16528,$7,16)|0);
-    $29 = ($28|0)==(0);
-    if ($29) {
-     (__gcry_poly1305_init($4,16544,32)|0);
-     $$015$i56 = 0;
-     while(1) {
-      $30 = $$015$i56&255;
-      _memset(($5|0),($30|0),32)|0;
-      $31 = ($$015$i56|0)==(0);
-      if (!($31)) {
-       _memset(($6|0),($30|0),($$015$i56|0))|0;
-      }
-      _poly1305_auth($7,$6,$$015$i56,$5);
-      __gcry_poly1305_update($4,$7,16);
-      $32 = (($$015$i56) + 1)|0;
-      $exitcond = ($32|0)==(256);
-      if ($exitcond) {
-       break;
-      } else {
-       $$015$i56 = $32;
-      }
-     }
-     $33 = ((($4)) + 3|0);
-     $34 = $33;
-     $35 = $34 & 3;
-     $36 = (0 - ($35))|0;
-     $37 = (($33) + ($36)|0);
-     $38 = ((($4)) + 84|0);
-     $39 = HEAP32[$38>>2]|0;
-     $40 = ((($39)) + 12|0);
-     $41 = HEAP32[$40>>2]|0;
-     $42 = ((($4)) + 68|0);
-     $43 = ((($4)) + 88|0);
-     $44 = HEAP32[$43>>2]|0;
-     $45 = (FUNCTION_TABLE_iiiii[$41 & 127]($37,$42,$44,$7)|0);
-     ___gcry_burn_stack($45);
-     $46 = (_memcmp(16576,$7,16)|0);
-     $47 = ($46|0)==(0);
-     $spec$select = $47 ? 0 : 67574;
-     $$016$i = $spec$select;
-    } else {
-     $$016$i = 67646;
-    }
-   } else {
-    $$016$i = 67622;
-   }
-  } else {
-   $$016$i = 67598;
-  }
-  HEAP32[18130] = $$016$i;
-  $48 = ($$016$i|0)==(0|0);
-  if (!($48)) {
-   HEAP32[$vararg_buffer>>2] = $$016$i;
-   __gcry_log_error(67670,$vararg_buffer);
-  }
- }
- $49 = ($2|0)==(32);
- if (!($49)) {
-  $$0 = 44;
-  STACKTOP = sp;return ($$0|0);
- }
- $50 = HEAP32[18130]|0;
- $51 = ($50|0)==(0|0);
- if (!($51)) {
-  $$0 = 50;
-  STACKTOP = sp;return ($$0|0);
- }
- $52 = ((($0)) + 84|0);
- HEAP32[$52>>2] = 40192;
- $53 = $8;
- $54 = $1;
- $55 = $54 & 3;
- $56 = ($55|0)==(0);
- if ($56) {
-  $57 = ((($1)) + 4|0);
-  $58 = HEAP32[$1>>2]|0;
-  $59 = ((($8)) + 4|0);
-  HEAP32[$8>>2] = $58;
-  $60 = ((($1)) + 8|0);
-  $61 = HEAP32[$57>>2]|0;
-  $62 = ((($8)) + 8|0);
-  HEAP32[$59>>2] = $61;
-  $63 = ((($1)) + 12|0);
-  $64 = HEAP32[$60>>2]|0;
-  $65 = ((($8)) + 12|0);
-  HEAP32[$62>>2] = $64;
-  $66 = ((($1)) + 16|0);
-  $67 = HEAP32[$63>>2]|0;
-  $68 = ((($8)) + 16|0);
-  HEAP32[$65>>2] = $67;
-  $69 = ((($1)) + 20|0);
-  $70 = HEAP32[$66>>2]|0;
-  $71 = ((($8)) + 20|0);
-  HEAP32[$68>>2] = $70;
-  $72 = ((($1)) + 24|0);
-  $73 = HEAP32[$69>>2]|0;
-  $74 = ((($8)) + 24|0);
-  HEAP32[$71>>2] = $73;
-  $75 = ((($1)) + 28|0);
-  $76 = HEAP32[$72>>2]|0;
-  $77 = ((($8)) + 28|0);
-  HEAP32[$74>>2] = $76;
-  $78 = HEAP32[$75>>2]|0;
-  HEAP32[$77>>2] = $78;
-  $180 = 40192;
- } else {
-  $79 = ((($1)) + 1|0);
-  $80 = HEAP8[$1>>0]|0;
-  $81 = ((($8)) + 1|0);
-  HEAP8[$8>>0] = $80;
-  $82 = ((($1)) + 2|0);
-  $83 = HEAP8[$79>>0]|0;
-  $84 = ((($8)) + 2|0);
-  HEAP8[$81>>0] = $83;
-  $85 = ((($1)) + 3|0);
-  $86 = HEAP8[$82>>0]|0;
-  $87 = ((($8)) + 3|0);
-  HEAP8[$84>>0] = $86;
-  $88 = ((($1)) + 4|0);
-  $89 = HEAP8[$85>>0]|0;
-  $90 = ((($8)) + 4|0);
-  HEAP8[$87>>0] = $89;
-  $91 = ((($1)) + 5|0);
-  $92 = HEAP8[$88>>0]|0;
-  $93 = ((($8)) + 5|0);
-  HEAP8[$90>>0] = $92;
-  $94 = ((($1)) + 6|0);
-  $95 = HEAP8[$91>>0]|0;
-  $96 = ((($8)) + 6|0);
-  HEAP8[$93>>0] = $95;
-  $97 = ((($1)) + 7|0);
-  $98 = HEAP8[$94>>0]|0;
-  $99 = ((($8)) + 7|0);
-  HEAP8[$96>>0] = $98;
-  $100 = ((($1)) + 8|0);
-  $101 = HEAP8[$97>>0]|0;
-  $102 = ((($8)) + 8|0);
-  HEAP8[$99>>0] = $101;
-  $103 = ((($1)) + 9|0);
-  $104 = HEAP8[$100>>0]|0;
-  $105 = ((($8)) + 9|0);
-  HEAP8[$102>>0] = $104;
-  $106 = ((($1)) + 10|0);
-  $107 = HEAP8[$103>>0]|0;
-  $108 = ((($8)) + 10|0);
-  HEAP8[$105>>0] = $107;
-  $109 = ((($1)) + 11|0);
-  $110 = HEAP8[$106>>0]|0;
-  $111 = ((($8)) + 11|0);
-  HEAP8[$108>>0] = $110;
-  $112 = ((($1)) + 12|0);
-  $113 = HEAP8[$109>>0]|0;
-  $114 = ((($8)) + 12|0);
-  HEAP8[$111>>0] = $113;
-  $115 = ((($1)) + 13|0);
-  $116 = HEAP8[$112>>0]|0;
-  $117 = ((($8)) + 13|0);
-  HEAP8[$114>>0] = $116;
-  $118 = ((($1)) + 14|0);
-  $119 = HEAP8[$115>>0]|0;
-  $120 = ((($8)) + 14|0);
-  HEAP8[$117>>0] = $119;
-  $121 = ((($1)) + 15|0);
-  $122 = HEAP8[$118>>0]|0;
-  $123 = ((($8)) + 15|0);
-  HEAP8[$120>>0] = $122;
-  $124 = ((($1)) + 16|0);
-  $125 = HEAP8[$121>>0]|0;
-  $126 = ((($8)) + 16|0);
-  HEAP8[$123>>0] = $125;
-  $127 = ((($1)) + 17|0);
-  $128 = HEAP8[$124>>0]|0;
-  $129 = ((($8)) + 17|0);
-  HEAP8[$126>>0] = $128;
-  $130 = ((($1)) + 18|0);
-  $131 = HEAP8[$127>>0]|0;
-  $132 = ((($8)) + 18|0);
-  HEAP8[$129>>0] = $131;
-  $133 = ((($1)) + 19|0);
-  $134 = HEAP8[$130>>0]|0;
-  $135 = ((($8)) + 19|0);
-  HEAP8[$132>>0] = $134;
-  $136 = ((($1)) + 20|0);
-  $137 = HEAP8[$133>>0]|0;
-  $138 = ((($8)) + 20|0);
-  HEAP8[$135>>0] = $137;
-  $139 = ((($1)) + 21|0);
-  $140 = HEAP8[$136>>0]|0;
-  $141 = ((($8)) + 21|0);
-  HEAP8[$138>>0] = $140;
-  $142 = ((($1)) + 22|0);
-  $143 = HEAP8[$139>>0]|0;
-  $144 = ((($8)) + 22|0);
-  HEAP8[$141>>0] = $143;
-  $145 = ((($1)) + 23|0);
-  $146 = HEAP8[$142>>0]|0;
-  $147 = ((($8)) + 23|0);
-  HEAP8[$144>>0] = $146;
-  $148 = ((($1)) + 24|0);
-  $149 = HEAP8[$145>>0]|0;
-  $150 = ((($8)) + 24|0);
-  HEAP8[$147>>0] = $149;
-  $151 = ((($1)) + 25|0);
-  $152 = HEAP8[$148>>0]|0;
-  $153 = ((($8)) + 25|0);
-  HEAP8[$150>>0] = $152;
-  $154 = ((($1)) + 26|0);
-  $155 = HEAP8[$151>>0]|0;
-  $156 = ((($8)) + 26|0);
-  HEAP8[$153>>0] = $155;
-  $157 = ((($1)) + 27|0);
-  $158 = HEAP8[$154>>0]|0;
-  $159 = ((($8)) + 27|0);
-  HEAP8[$156>>0] = $158;
-  $160 = ((($1)) + 28|0);
-  $161 = HEAP8[$157>>0]|0;
-  $162 = ((($8)) + 28|0);
-  HEAP8[$159>>0] = $161;
-  $163 = ((($1)) + 29|0);
-  $164 = HEAP8[$160>>0]|0;
-  $165 = ((($8)) + 29|0);
-  HEAP8[$162>>0] = $164;
-  $166 = ((($1)) + 30|0);
-  $167 = HEAP8[$163>>0]|0;
-  $168 = ((($8)) + 30|0);
-  HEAP8[$165>>0] = $167;
-  $169 = ((($1)) + 31|0);
-  $170 = HEAP8[$166>>0]|0;
-  $171 = ((($8)) + 31|0);
-  HEAP8[$168>>0] = $170;
-  $172 = HEAP8[$169>>0]|0;
-  HEAP8[$171>>0] = $172;
-  $$pre = HEAP32[$52>>2]|0;
-  $180 = $$pre;
- }
- $173 = ((($0)) + 3|0);
- $174 = $173;
- $175 = $174 & 3;
- $176 = (0 - ($175))|0;
- $177 = (($173) + ($176)|0);
- $178 = ((($0)) + 88|0);
- HEAP32[$178>>2] = 0;
- $179 = ((($180)) + 4|0);
- $181 = HEAP32[$179>>2]|0;
- FUNCTION_TABLE_vii[$181 & 63]($177,$8);
- $182 = $53 & 4;
- $183 = ($182|0)==(0);
- if ($183) {
-  $$036$lcssa64 = 32;$$037$lcssa63 = $8;
-  label = 21;
- } else {
-  $$03648 = 32;$$03747 = $8;
-  while(1) {
-   HEAP8[$$03747>>0] = 0;
-   $184 = ((($$03747)) + 1|0);
-   $185 = (($$03648) + -1)|0;
-   $186 = $184;
-   $187 = $186 & 7;
-   $188 = ($187|0)!=(0);
-   $189 = ($185|0)!=(0);
-   $190 = $189 & $188;
-   if ($190) {
-    $$03648 = $185;$$03747 = $184;
-   } else {
-    break;
-   }
-  }
-  $191 = ($185>>>0)<(8);
-  if ($191) {
-   $$2 = $185;$$239 = $184;
-  } else {
-   $$036$lcssa64 = $185;$$037$lcssa63 = $184;
-   label = 21;
-  }
- }
- if ((label|0) == 21) {
-  $192 = (($$036$lcssa64) + -8)|0;
-  $193 = $192 & -8;
-  $194 = (($193) + 8)|0;
-  $$1 = $$036$lcssa64;$$138 = $$037$lcssa63;
-  while(1) {
-   $195 = $$138;
-   $196 = $195;
-   HEAP32[$196>>2] = 0;
-   $197 = (($195) + 4)|0;
-   $198 = $197;
-   HEAP32[$198>>2] = 0;
-   $199 = (($$1) + -8)|0;
-   $200 = ((($$138)) + 8|0);
-   $201 = ($199>>>0)>(7);
-   if ($201) {
-    $$1 = $199;$$138 = $200;
-   } else {
-    break;
-   }
-  }
-  $202 = (($192) - ($193))|0;
-  $scevgep = (($$037$lcssa63) + ($194)|0);
-  $$2 = $202;$$239 = $scevgep;
- }
- $203 = ($$2|0)==(0);
- if ($203) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $$34045 = $$239;$$346 = $$2;
- while(1) {
-  HEAP8[$$34045>>0] = 0;
-  $204 = ((($$34045)) + 1|0);
-  $205 = (($$346) + -1)|0;
-  $206 = ($205|0)==(0);
-  if ($206) {
-   $$0 = 0;
-   break;
-  } else {
-   $$34045 = $204;$$346 = $205;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _poly1305_auth($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0$lcssa49 = 0, $$032$lcssa48 = 0, $$03239 = 0, $$040 = 0, $$1 = 0, 
$$133 = 0, $$2 = 0, $$234 = 0, $$33537 = 0, $$338 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 
0, $37 = 0, $38 = 0, $39 = 0;
- var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $scevgep = 0, dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(96|0);
- $4 = sp;
- dest=$4; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- (__gcry_poly1305_init($4,$3,32)|0);
- __gcry_poly1305_update($4,$1,$2);
- $5 = ((($4)) + 3|0);
- $6 = $5;
- $7 = $6 & 3;
- $8 = (0 - ($7))|0;
- $9 = (($5) + ($8)|0);
- $10 = ((($4)) + 84|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($11)) + 12|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ((($4)) + 68|0);
- $15 = ((($4)) + 88|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = (FUNCTION_TABLE_iiiii[$13 & 127]($9,$14,$16,$0)|0);
- ___gcry_burn_stack($17);
- $18 = $4;
- $19 = $18 & 4;
- $20 = ($19|0)==(0);
- if ($20) {
-  $$0$lcssa49 = $4;$$032$lcssa48 = 92;
-  label = 5;
- } else {
-  $$03239 = 92;$$040 = $4;
-  while(1) {
-   HEAP8[$$040>>0] = 0;
-   $21 = ((($$040)) + 1|0);
-   $22 = (($$03239) + -1)|0;
-   $23 = $21;
-   $24 = $23 & 7;
-   $25 = ($24|0)!=(0);
-   $26 = ($22|0)!=(0);
-   $27 = $26 & $25;
-   if ($27) {
-    $$03239 = $22;$$040 = $21;
-   } else {
-    break;
-   }
-  }
-  $28 = ($22>>>0)<(8);
-  if ($28) {
-   $$2 = $21;$$234 = $22;
-  } else {
-   $$0$lcssa49 = $21;$$032$lcssa48 = $22;
-   label = 5;
-  }
- }
- if ((label|0) == 5) {
-  $29 = (($$032$lcssa48) + -8)|0;
-  $30 = $29 & -8;
-  $31 = (($30) + 8)|0;
-  $$1 = $$0$lcssa49;$$133 = $$032$lcssa48;
-  while(1) {
-   $32 = $$1;
-   $33 = $32;
-   HEAP32[$33>>2] = 0;
-   $34 = (($32) + 4)|0;
-   $35 = $34;
-   HEAP32[$35>>2] = 0;
-   $36 = (($$133) + -8)|0;
-   $37 = ((($$1)) + 8|0);
-   $38 = ($36>>>0)>(7);
-   if ($38) {
-    $$1 = $37;$$133 = $36;
-   } else {
-    break;
-   }
-  }
-  $39 = (($29) - ($30))|0;
-  $scevgep = (($$0$lcssa49) + ($31)|0);
-  $$2 = $scevgep;$$234 = $39;
- }
- $40 = ($$234|0)==(0);
- if ($40) {
-  STACKTOP = sp;return;
- }
- $$33537 = $$234;$$338 = $$2;
- while(1) {
-  HEAP8[$$338>>0] = 0;
-  $41 = ((($$338)) + 1|0);
-  $42 = (($$33537) + -1)|0;
-  $43 = ($42|0)==(0);
-  if ($43) {
-   break;
-  } else {
-   $$33537 = $42;$$338 = $41;
-  }
- }
- STACKTOP = sp;return;
-}
-function _poly1305_init_ext_ref32($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$masked = 0, $$masked26 = 0, $$masked27 = 0, $$masked28 = 0, $$masked29 
= 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 
= 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0;
- var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 
= 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0;
- var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, 
$138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, 
$145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0;
- var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 
= 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0;
- var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 
0, $69 = 0, $7 = 0, $70 = 0;
- var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, 
$79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0;
- var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($1)) + 3|0);
- $3 = HEAP8[$2>>0]|0;
- $4 = $3&255;
- $5 = $4 << 24;
- $6 = ((($1)) + 2|0);
- $7 = HEAP8[$6>>0]|0;
- $8 = $7&255;
- $9 = $8 << 16;
- $10 = ((($1)) + 1|0);
- $11 = HEAP8[$10>>0]|0;
- $12 = $11&255;
- $13 = $12 << 8;
- $14 = HEAP8[$1>>0]|0;
- $15 = $14&255;
- $$masked27 = $5 & 50331648;
- $$masked26 = $9 | $$masked27;
- $$masked = $$masked26 | $13;
- $16 = $$masked | $15;
- HEAP32[$0>>2] = $16;
- $17 = ((($1)) + 6|0);
- $18 = HEAP8[$17>>0]|0;
- $19 = $18&255;
- $20 = $19 << 24;
- $21 = ((($1)) + 5|0);
- $22 = HEAP8[$21>>0]|0;
- $23 = $22&255;
- $24 = $23 << 16;
- $25 = $24 | $20;
- $26 = ((($1)) + 4|0);
- $27 = HEAP8[$26>>0]|0;
- $28 = $27&255;
- $29 = $28 << 8;
- $30 = $25 | $29;
- $31 = HEAP8[$2>>0]|0;
- $32 = $31&255;
- $33 = $30 | $32;
- $34 = $33 >>> 2;
- $35 = $34 & 67108611;
- $36 = ((($0)) + 4|0);
- HEAP32[$36>>2] = $35;
- $37 = ((($1)) + 9|0);
- $38 = HEAP8[$37>>0]|0;
- $39 = $38&255;
- $40 = $39 << 24;
- $41 = ((($1)) + 8|0);
- $42 = HEAP8[$41>>0]|0;
- $43 = $42&255;
- $44 = $43 << 16;
- $45 = $44 | $40;
- $46 = ((($1)) + 7|0);
- $47 = HEAP8[$46>>0]|0;
- $48 = $47&255;
- $49 = $48 << 8;
- $50 = $45 | $49;
- $51 = HEAP8[$17>>0]|0;
- $52 = $51&255;
- $53 = $50 | $52;
- $54 = $53 >>> 4;
- $55 = $54 & 67092735;
- $56 = ((($0)) + 8|0);
- HEAP32[$56>>2] = $55;
- $57 = ((($1)) + 12|0);
- $58 = HEAP8[$57>>0]|0;
- $59 = $58&255;
- $60 = $59 << 24;
- $61 = ((($1)) + 11|0);
- $62 = HEAP8[$61>>0]|0;
- $63 = $62&255;
- $64 = $63 << 16;
- $65 = $64 | $60;
- $66 = ((($1)) + 10|0);
- $67 = HEAP8[$66>>0]|0;
- $68 = $67&255;
- $69 = $68 << 8;
- $70 = $65 | $69;
- $71 = HEAP8[$37>>0]|0;
- $72 = $71&255;
- $73 = $70 | $72;
- $74 = $73 >>> 6;
- $75 = $74 & 66076671;
- $76 = ((($0)) + 12|0);
- HEAP32[$76>>2] = $75;
- $77 = ((($1)) + 15|0);
- $78 = HEAP8[$77>>0]|0;
- $79 = $78&255;
- $80 = $79 << 16;
- $81 = ((($1)) + 14|0);
- $82 = HEAP8[$81>>0]|0;
- $83 = $82&255;
- $84 = $83 << 8;
- $85 = ((($1)) + 13|0);
- $86 = HEAP8[$85>>0]|0;
- $87 = $86&255;
- $$masked29 = $80 & 983040;
- $$masked28 = $84 | $$masked29;
- $88 = $$masked28 | $87;
- $89 = ((($0)) + 16|0);
- HEAP32[$89>>2] = $88;
- $90 = ((($0)) + 20|0);
- $91 = ((($1)) + 16|0);
- $92 = ((($1)) + 19|0);
- 
;HEAP32[$90>>2]=0|0;HEAP32[$90+4>>2]=0|0;HEAP32[$90+8>>2]=0|0;HEAP32[$90+12>>2]=0|0;HEAP32[$90+16>>2]=0|0;
- $93 = HEAP8[$92>>0]|0;
- $94 = $93&255;
- $95 = $94 << 24;
- $96 = ((($1)) + 18|0);
- $97 = HEAP8[$96>>0]|0;
- $98 = $97&255;
- $99 = $98 << 16;
- $100 = $99 | $95;
- $101 = ((($1)) + 17|0);
- $102 = HEAP8[$101>>0]|0;
- $103 = $102&255;
- $104 = $103 << 8;
- $105 = $100 | $104;
- $106 = HEAP8[$91>>0]|0;
- $107 = $106&255;
- $108 = $105 | $107;
- $109 = ((($0)) + 40|0);
- HEAP32[$109>>2] = $108;
- $110 = ((($1)) + 20|0);
- $111 = ((($1)) + 23|0);
- $112 = HEAP8[$111>>0]|0;
- $113 = $112&255;
- $114 = $113 << 24;
- $115 = ((($1)) + 22|0);
- $116 = HEAP8[$115>>0]|0;
- $117 = $116&255;
- $118 = $117 << 16;
- $119 = $118 | $114;
- $120 = ((($1)) + 21|0);
- $121 = HEAP8[$120>>0]|0;
- $122 = $121&255;
- $123 = $122 << 8;
- $124 = $119 | $123;
- $125 = HEAP8[$110>>0]|0;
- $126 = $125&255;
- $127 = $124 | $126;
- $128 = ((($0)) + 44|0);
- HEAP32[$128>>2] = $127;
- $129 = ((($1)) + 24|0);
- $130 = ((($1)) + 27|0);
- $131 = HEAP8[$130>>0]|0;
- $132 = $131&255;
- $133 = $132 << 24;
- $134 = ((($1)) + 26|0);
- $135 = HEAP8[$134>>0]|0;
- $136 = $135&255;
- $137 = $136 << 16;
- $138 = $137 | $133;
- $139 = ((($1)) + 25|0);
- $140 = HEAP8[$139>>0]|0;
- $141 = $140&255;
- $142 = $141 << 8;
- $143 = $138 | $142;
- $144 = HEAP8[$129>>0]|0;
- $145 = $144&255;
- $146 = $143 | $145;
- $147 = ((($0)) + 48|0);
- HEAP32[$147>>2] = $146;
- $148 = ((($1)) + 28|0);
- $149 = ((($1)) + 31|0);
- $150 = HEAP8[$149>>0]|0;
- $151 = $150&255;
- $152 = $151 << 24;
- $153 = ((($1)) + 30|0);
- $154 = HEAP8[$153>>0]|0;
- $155 = $154&255;
- $156 = $155 << 16;
- $157 = $156 | $152;
- $158 = ((($1)) + 29|0);
- $159 = HEAP8[$158>>0]|0;
- $160 = $159&255;
- $161 = $160 << 8;
- $162 = $157 | $161;
- $163 = HEAP8[$148>>0]|0;
- $164 = $163&255;
- $165 = $162 | $164;
- $166 = ((($0)) + 52|0);
- HEAP32[$166>>2] = $165;
- $167 = ((($0)) + 56|0);
- HEAP8[$167>>0] = 0;
- return;
-}
-function _poly1305_blocks_ref32($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0156169 = 0, $$0157$lcssa = 0, $$0157168 = 0, $$0158$lcssa = 0, 
$$0158167 = 0, $$0159$lcssa = 0, $$0159166 = 0, $$0160$lcssa = 0, $$0160165 = 
0, $$0161$lcssa = 0, $$0161164 = 0, $$0170 = 0, $$masked = 0, $$masked162 = 0, 
$$masked163 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0;
- var $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 
= 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 
= 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0;
- var $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, 
$129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, 
$136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0;
- var $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, 
$147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, 
$154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0;
- var $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 
= 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0;
- var $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 
= 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0;
- var $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 
= 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 
= 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0;
- var $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 
= 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 
= 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0;
- var $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0;
- var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 
0, $9 = 0, $90 = 0, $91 = 0;
- var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 56|0);
- $4 = HEAP8[$3>>0]|0;
- $5 = ($4<<24>>24)==(0);
- $6 = $5 ? 16777216 : 0;
- $7 = ((($0)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 8|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ((($0)) + 12|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = ((($0)) + 16|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = ((($0)) + 20|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = ((($0)) + 24|0);
- $18 = HEAP32[$17>>2]|0;
- $19 = ((($0)) + 28|0);
- $20 = HEAP32[$19>>2]|0;
- $21 = ((($0)) + 32|0);
- $22 = HEAP32[$21>>2]|0;
- $23 = ((($0)) + 36|0);
- $24 = HEAP32[$23>>2]|0;
- $25 = ($2>>>0)>(15);
- if (!($25)) {
-  $$0157$lcssa = $16;$$0158$lcssa = $18;$$0159$lcssa = $20;$$0160$lcssa = 
$22;$$0161$lcssa = $24;
-  HEAP32[$15>>2] = $$0157$lcssa;
-  HEAP32[$17>>2] = $$0158$lcssa;
-  HEAP32[$19>>2] = $$0159$lcssa;
-  HEAP32[$21>>2] = $$0160$lcssa;
-  HEAP32[$23>>2] = $$0161$lcssa;
-  return 124;
- }
- $26 = ($14*5)|0;
- $27 = ($12*5)|0;
- $28 = ($10*5)|0;
- $29 = ($8*5)|0;
- $30 = HEAP32[$0>>2]|0;
- $$0156169 = $2;$$0157168 = $16;$$0158167 = $18;$$0159166 = $20;$$0160165 = 
$22;$$0161164 = $24;$$0170 = $1;
- while(1) {
-  $31 = ((($$0170)) + 3|0);
-  $32 = HEAP8[$31>>0]|0;
-  $33 = $32&255;
-  $34 = $33 << 24;
-  $35 = ((($$0170)) + 2|0);
-  $36 = HEAP8[$35>>0]|0;
-  $37 = $36&255;
-  $38 = $37 << 16;
-  $39 = ((($$0170)) + 1|0);
-  $40 = HEAP8[$39>>0]|0;
-  $41 = $40&255;
-  $42 = $41 << 8;
-  $43 = HEAP8[$$0170>>0]|0;
-  $44 = $43&255;
-  $$masked163 = $34 & 50331648;
-  $$masked162 = $38 | $$masked163;
-  $$masked = $$masked162 | $42;
-  $45 = $$masked | $44;
-  $46 = (($45) + ($$0157168))|0;
-  $47 = ((($$0170)) + 6|0);
-  $48 = HEAP8[$47>>0]|0;
-  $49 = $48&255;
-  $50 = $49 << 24;
-  $51 = ((($$0170)) + 5|0);
-  $52 = HEAP8[$51>>0]|0;
-  $53 = $52&255;
-  $54 = $53 << 16;
-  $55 = ((($$0170)) + 4|0);
-  $56 = HEAP8[$55>>0]|0;
-  $57 = $56&255;
-  $58 = $57 << 8;
-  $59 = $50 | $33;
-  $60 = $59 | $54;
-  $61 = $60 | $58;
-  $62 = $61 >>> 2;
-  $63 = $62 & 67108863;
-  $64 = (($63) + ($$0158167))|0;
-  $65 = ((($$0170)) + 9|0);
-  $66 = HEAP8[$65>>0]|0;
-  $67 = $66&255;
-  $68 = $67 << 24;
-  $69 = ((($$0170)) + 8|0);
-  $70 = HEAP8[$69>>0]|0;
-  $71 = $70&255;
-  $72 = $71 << 16;
-  $73 = $72 | $68;
-  $74 = ((($$0170)) + 7|0);
-  $75 = HEAP8[$74>>0]|0;
-  $76 = $75&255;
-  $77 = $76 << 8;
-  $78 = $73 | $77;
-  $79 = $78 | $49;
-  $80 = $79 >>> 4;
-  $81 = $80 & 67108863;
-  $82 = (($81) + ($$0159166))|0;
-  $83 = ((($$0170)) + 12|0);
-  $84 = HEAP8[$83>>0]|0;
-  $85 = $84&255;
-  $86 = $85 << 24;
-  $87 = ((($$0170)) + 11|0);
-  $88 = HEAP8[$87>>0]|0;
-  $89 = $88&255;
-  $90 = $89 << 16;
-  $91 = $90 | $86;
-  $92 = ((($$0170)) + 10|0);
-  $93 = HEAP8[$92>>0]|0;
-  $94 = $93&255;
-  $95 = $94 << 8;
-  $96 = $91 | $95;
-  $97 = $96 | $67;
-  $98 = $97 >>> 6;
-  $99 = (($98) + ($$0160165))|0;
-  $100 = ((($$0170)) + 15|0);
-  $101 = HEAP8[$100>>0]|0;
-  $102 = $101&255;
-  $103 = $102 << 16;
-  $104 = ((($$0170)) + 14|0);
-  $105 = HEAP8[$104>>0]|0;
-  $106 = $105&255;
-  $107 = $106 << 8;
-  $108 = ((($$0170)) + 13|0);
-  $109 = HEAP8[$108>>0]|0;
-  $110 = $109&255;
-  $111 = $103 | $6;
-  $112 = $111 | $107;
-  $113 = $112 | $110;
-  $114 = (($113) + ($$0161164))|0;
-  $115 = (___muldi3(($46|0),0,($30|0),0)|0);
-  $116 = tempRet0;
-  $117 = (___muldi3(($64|0),0,($26|0),0)|0);
-  $118 = tempRet0;
-  $119 = (_i64Add(($117|0),($118|0),($115|0),($116|0))|0);
-  $120 = tempRet0;
-  $121 = (___muldi3(($82|0),0,($27|0),0)|0);
-  $122 = tempRet0;
-  $123 = (_i64Add(($119|0),($120|0),($121|0),($122|0))|0);
-  $124 = tempRet0;
-  $125 = (___muldi3(($99|0),0,($28|0),0)|0);
-  $126 = tempRet0;
-  $127 = (_i64Add(($123|0),($124|0),($125|0),($126|0))|0);
-  $128 = tempRet0;
-  $129 = (___muldi3(($114|0),0,($29|0),0)|0);
-  $130 = tempRet0;
-  $131 = (_i64Add(($127|0),($128|0),($129|0),($130|0))|0);
-  $132 = tempRet0;
-  $133 = (___muldi3(($46|0),0,($8|0),0)|0);
-  $134 = tempRet0;
-  $135 = (___muldi3(($64|0),0,($30|0),0)|0);
-  $136 = tempRet0;
-  $137 = (_i64Add(($135|0),($136|0),($133|0),($134|0))|0);
-  $138 = tempRet0;
-  $139 = (___muldi3(($82|0),0,($26|0),0)|0);
-  $140 = tempRet0;
-  $141 = (_i64Add(($137|0),($138|0),($139|0),($140|0))|0);
-  $142 = tempRet0;
-  $143 = (___muldi3(($99|0),0,($27|0),0)|0);
-  $144 = tempRet0;
-  $145 = (_i64Add(($141|0),($142|0),($143|0),($144|0))|0);
-  $146 = tempRet0;
-  $147 = (___muldi3(($114|0),0,($28|0),0)|0);
-  $148 = tempRet0;
-  $149 = (_i64Add(($145|0),($146|0),($147|0),($148|0))|0);
-  $150 = tempRet0;
-  $151 = (___muldi3(($46|0),0,($10|0),0)|0);
-  $152 = tempRet0;
-  $153 = (___muldi3(($64|0),0,($8|0),0)|0);
-  $154 = tempRet0;
-  $155 = (_i64Add(($153|0),($154|0),($151|0),($152|0))|0);
-  $156 = tempRet0;
-  $157 = (___muldi3(($82|0),0,($30|0),0)|0);
-  $158 = tempRet0;
-  $159 = (_i64Add(($155|0),($156|0),($157|0),($158|0))|0);
-  $160 = tempRet0;
-  $161 = (___muldi3(($99|0),0,($26|0),0)|0);
-  $162 = tempRet0;
-  $163 = (_i64Add(($159|0),($160|0),($161|0),($162|0))|0);
-  $164 = tempRet0;
-  $165 = (___muldi3(($114|0),0,($27|0),0)|0);
-  $166 = tempRet0;
-  $167 = (_i64Add(($163|0),($164|0),($165|0),($166|0))|0);
-  $168 = tempRet0;
-  $169 = (___muldi3(($46|0),0,($12|0),0)|0);
-  $170 = tempRet0;
-  $171 = (___muldi3(($64|0),0,($10|0),0)|0);
-  $172 = tempRet0;
-  $173 = (_i64Add(($171|0),($172|0),($169|0),($170|0))|0);
-  $174 = tempRet0;
-  $175 = (___muldi3(($82|0),0,($8|0),0)|0);
-  $176 = tempRet0;
-  $177 = (_i64Add(($173|0),($174|0),($175|0),($176|0))|0);
-  $178 = tempRet0;
-  $179 = (___muldi3(($99|0),0,($30|0),0)|0);
-  $180 = tempRet0;
-  $181 = (_i64Add(($177|0),($178|0),($179|0),($180|0))|0);
-  $182 = tempRet0;
-  $183 = (___muldi3(($114|0),0,($26|0),0)|0);
-  $184 = tempRet0;
-  $185 = (_i64Add(($181|0),($182|0),($183|0),($184|0))|0);
-  $186 = tempRet0;
-  $187 = (___muldi3(($46|0),0,($14|0),0)|0);
-  $188 = tempRet0;
-  $189 = (___muldi3(($64|0),0,($12|0),0)|0);
-  $190 = tempRet0;
-  $191 = (_i64Add(($189|0),($190|0),($187|0),($188|0))|0);
-  $192 = tempRet0;
-  $193 = (___muldi3(($82|0),0,($10|0),0)|0);
-  $194 = tempRet0;
-  $195 = (_i64Add(($191|0),($192|0),($193|0),($194|0))|0);
-  $196 = tempRet0;
-  $197 = (___muldi3(($99|0),0,($8|0),0)|0);
-  $198 = tempRet0;
-  $199 = (_i64Add(($195|0),($196|0),($197|0),($198|0))|0);
-  $200 = tempRet0;
-  $201 = (___muldi3(($114|0),0,($30|0),0)|0);
-  $202 = tempRet0;
-  $203 = (_i64Add(($199|0),($200|0),($201|0),($202|0))|0);
-  $204 = tempRet0;
-  $205 = (_bitshift64Lshr(($131|0),($132|0),26)|0);
-  $206 = tempRet0;
-  $207 = $131 & 67108863;
-  $208 = (_i64Add(($149|0),($150|0),($205|0),0)|0);
-  $209 = tempRet0;
-  $210 = (_bitshift64Lshr(($208|0),($209|0),26)|0);
-  $211 = tempRet0;
-  $212 = $208 & 67108863;
-  $213 = (_i64Add(($167|0),($168|0),($210|0),0)|0);
-  $214 = tempRet0;
-  $215 = (_bitshift64Lshr(($213|0),($214|0),26)|0);
-  $216 = tempRet0;
-  $217 = $213 & 67108863;
-  $218 = (_i64Add(($185|0),($186|0),($215|0),0)|0);
-  $219 = tempRet0;
-  $220 = (_bitshift64Lshr(($218|0),($219|0),26)|0);
-  $221 = tempRet0;
-  $222 = $218 & 67108863;
-  $223 = (_i64Add(($203|0),($204|0),($220|0),0)|0);
-  $224 = tempRet0;
-  $225 = (_bitshift64Lshr(($223|0),($224|0),26)|0);
-  $226 = tempRet0;
-  $227 = $223 & 67108863;
-  $228 = ($225*5)|0;
-  $229 = (($228) + ($207))|0;
-  $230 = $229 >>> 26;
-  $231 = $229 & 67108863;
-  $232 = (($230) + ($212))|0;
-  $233 = ((($$0170)) + 16|0);
-  $234 = (($$0156169) + -16)|0;
-  $235 = ($234>>>0)>(15);
-  if ($235) {
-   $$0156169 = $234;$$0157168 = $231;$$0158167 = $232;$$0159166 = 
$217;$$0160165 = $222;$$0161164 = $227;$$0170 = $233;
-  } else {
-   $$0157$lcssa = $231;$$0158$lcssa = $232;$$0159$lcssa = $217;$$0160$lcssa = 
$222;$$0161$lcssa = $227;
-   break;
-  }
- }
- HEAP32[$15>>2] = $$0157$lcssa;
- HEAP32[$17>>2] = $$0158$lcssa;
- HEAP32[$19>>2] = $$0159$lcssa;
- HEAP32[$21>>2] = $$0160$lcssa;
- HEAP32[$23>>2] = $$0161$lcssa;
- return 124;
-}
-function _poly1305_finish_ext_ref32($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0156 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, 
$105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, 
$112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 
= 0, $28 = 0, $29 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0;
- var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0;
- var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0;
- var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, dest = 0, label 
= 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $4 = sp;
- $5 = ($2|0)==(0);
- if ($5) {
-  $$0156 = 100;
- } else {
-  
;HEAP32[$4>>2]=0|0;HEAP32[$4+4>>2]=0|0;HEAP32[$4+8>>2]=0|0;HEAP32[$4+12>>2]=0|0;
-  _memcpy(($4|0),($1|0),($2|0))|0;
-  $6 = (($4) + ($2)|0);
-  HEAP8[$6>>0] = 1;
-  $7 = ((($0)) + 56|0);
-  HEAP8[$7>>0] = 1;
-  (_poly1305_blocks_ref32($0,$4,16)|0);
-  $$0156 = 224;
- }
- $8 = ((($0)) + 20|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ((($0)) + 24|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = ((($0)) + 28|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ((($0)) + 32|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = ((($0)) + 36|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = $11 >>> 26;
- $19 = $11 & 67108863;
- $20 = (($13) + ($18))|0;
- $21 = $20 >>> 26;
- $22 = $20 & 67108863;
- $23 = (($21) + ($15))|0;
- $24 = $23 >>> 26;
- $25 = $23 & 67108863;
- $26 = (($24) + ($17))|0;
- $27 = $26 >>> 26;
- $28 = ($27*5)|0;
- $29 = (($28) + ($9))|0;
- $30 = $29 >>> 26;
- $31 = $29 & 67108863;
- $32 = (($30) + ($19))|0;
- $33 = (($31) + 5)|0;
- $34 = $33 >>> 26;
- $35 = (($34) + ($32))|0;
- $36 = $35 >>> 26;
- $37 = (($36) + ($22))|0;
- $38 = $37 >>> 26;
- $39 = (($38) + ($25))|0;
- $40 = $39 >>> 26;
- $41 = $26 | -67108864;
- $42 = (($41) + ($40))|0;
- $43 = $42 >>> 31;
- $44 = (($43) + -1)|0;
- $45 = $44 & 67108863;
- $46 = $45 & $33;
- $47 = $45 & $35;
- $48 = $45 & $37;
- $49 = $45 & $39;
- $50 = $44 & $42;
- $51 = $42 >> 31;
- $52 = $51 & $31;
- $53 = $52 | $46;
- $54 = $51 & $32;
- $55 = $54 | $47;
- $56 = $51 & $22;
- $57 = $56 | $48;
- $58 = $51 & $25;
- $59 = $58 | $49;
- $60 = $51 & $26;
- $61 = $50 | $60;
- $62 = $55 << 26;
- $63 = $53 | $62;
- $64 = $55 >>> 6;
- $65 = $57 << 20;
- $66 = $64 | $65;
- $67 = $57 >>> 12;
- $68 = $59 << 14;
- $69 = $67 | $68;
- $70 = $59 >>> 18;
- $71 = $61 << 8;
- $72 = $71 | $70;
- $73 = ((($0)) + 40|0);
- $74 = HEAP32[$73>>2]|0;
- $75 = (_i64Add(($63|0),0,($74|0),0)|0);
- $76 = tempRet0;
- $77 = ((($0)) + 44|0);
- $78 = HEAP32[$77>>2]|0;
- $79 = (_i64Add(($66|0),0,($78|0),0)|0);
- $80 = tempRet0;
- $81 = (_i64Add(($79|0),($80|0),($76|0),0)|0);
- $82 = tempRet0;
- $83 = ((($0)) + 48|0);
- $84 = HEAP32[$83>>2]|0;
- $85 = (_i64Add(($69|0),0,($84|0),0)|0);
- $86 = tempRet0;
- $87 = (_i64Add(($85|0),($86|0),($82|0),0)|0);
- $88 = tempRet0;
- $89 = ((($0)) + 52|0);
- $90 = HEAP32[$89>>2]|0;
- $91 = (_i64Add(($72|0),0,($90|0),0)|0);
- $92 = tempRet0;
- $93 = (_i64Add(($91|0),($92|0),($88|0),0)|0);
- $94 = tempRet0;
- $95 = $75 >>> 24;
- $96 = $95&255;
- $97 = ((($3)) + 3|0);
- HEAP8[$97>>0] = $96;
- $98 = $75 >>> 16;
- $99 = $98&255;
- $100 = ((($3)) + 2|0);
- HEAP8[$100>>0] = $99;
- $101 = $75 >>> 8;
- $102 = $101&255;
- $103 = ((($3)) + 1|0);
- HEAP8[$103>>0] = $102;
- $104 = $75&255;
- HEAP8[$3>>0] = $104;
- $105 = ((($3)) + 4|0);
- $106 = $81 >>> 24;
- $107 = $106&255;
- $108 = ((($3)) + 7|0);
- HEAP8[$108>>0] = $107;
- $109 = $81 >>> 16;
- $110 = $109&255;
- $111 = ((($3)) + 6|0);
- HEAP8[$111>>0] = $110;
- $112 = $81 >>> 8;
- $113 = $112&255;
- $114 = ((($3)) + 5|0);
- HEAP8[$114>>0] = $113;
- $115 = $81&255;
- HEAP8[$105>>0] = $115;
- $116 = ((($3)) + 8|0);
- $117 = $87 >>> 24;
- $118 = $117&255;
- $119 = ((($3)) + 11|0);
- HEAP8[$119>>0] = $118;
- $120 = $87 >>> 16;
- $121 = $120&255;
- $122 = ((($3)) + 10|0);
- HEAP8[$122>>0] = $121;
- $123 = $87 >>> 8;
- $124 = $123&255;
- $125 = ((($3)) + 9|0);
- HEAP8[$125>>0] = $124;
- $126 = $87&255;
- HEAP8[$116>>0] = $126;
- $127 = ((($3)) + 12|0);
- $128 = $93 >>> 24;
- $129 = $128&255;
- $130 = ((($3)) + 15|0);
- HEAP8[$130>>0] = $129;
- $131 = $93 >>> 16;
- $132 = $131&255;
- $133 = ((($3)) + 14|0);
- HEAP8[$133>>0] = $132;
- $134 = $93 >>> 8;
- $135 = $134&255;
- $136 = ((($3)) + 13|0);
- HEAP8[$136>>0] = $135;
- $137 = $93&255;
- HEAP8[$127>>0] = $137;
- dest=$0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- STACKTOP = sp;return ($$0156|0);
-}
-function __gcry_rngcsprng_initialize($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if (!($1)) {
-  _initialize();
-  return;
- }
- $2 = HEAP32[18131]|0;
- $3 = ($2|0)==(0);
- if (!($3)) {
-  return;
- }
- HEAP32[18131] = 1;
- return;
-}
-function _initialize() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $3 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, $vararg_buffer3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18131]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  HEAP32[18131] = 1;
- }
- $2 = (_gpgrt_lock_lock(40208)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_fatal(67701,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18132] = 1;
- $5 = HEAP32[18133]|0;
- $6 = ($5|0)==(0|0);
- do {
-  if ($6) {
-   $7 = HEAP32[18134]|0;
-   $8 = ($7|0)==(0);
-   if ($8) {
-    $10 = (__gcry_xcalloc(1,664)|0);
-    $11 = $10;
-   } else {
-    $9 = (__gcry_xcalloc_secure(1,664)|0);
-    $11 = $9;
-   }
-   HEAP32[18133] = $11;
-   $12 = HEAP32[18134]|0;
-   $13 = ($12|0)==(0);
-   if ($13) {
-    $15 = (__gcry_xcalloc(1,664)|0);
-    $16 = $15;
-   } else {
-    $14 = (__gcry_xcalloc_secure(1,664)|0);
-    $16 = $14;
-   }
-   HEAP32[18135] = $16;
-   $17 = (_access(69685,4)|0);
-   $18 = ($17|0)==(0);
-   if (!($18)) {
-    $21 = (__gcry_gettext(67738)|0);
-    __gcry_log_fatal($21,$vararg_buffer1);
-    // unreachable;
-   }
-   $19 = (_access(69697,4)|0);
-   $20 = ($19|0)==(0);
-   if ($20) {
-    HEAP32[18136] = 83;
-    break;
-   } else {
-    $21 = (__gcry_gettext(67738)|0);
-    __gcry_log_fatal($21,$vararg_buffer1);
-    // unreachable;
-   }
-  }
- } while(0);
- HEAP32[18132] = 0;
- $22 = (_gpgrt_lock_unlock(40208)|0);
- $23 = ($22|0)==(0);
- if ($23) {
-  STACKTOP = sp;return;
- } else {
-  $24 = (_gpg_strerror($22)|0);
-  HEAP32[$vararg_buffer3>>2] = $24;
-  __gcry_log_fatal(67776,$vararg_buffer3);
-  // unreachable;
- }
-}
-function __gcry_rngcsprng_close_fds() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = (_gpgrt_lock_lock(40208)|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  $2 = (_gpg_strerror($0)|0);
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(67701,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18132] = 1;
- (__gcry_rndlinux_gather_random(0,0,0,0)|0);
- HEAP32[18137] = 0;
- HEAP32[18132] = 0;
- $3 = (_gpgrt_lock_unlock(40208)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  STACKTOP = sp;return;
- } else {
-  $5 = (_gpg_strerror($3)|0);
-  HEAP32[$vararg_buffer1>>2] = $5;
-  __gcry_log_fatal(67776,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_rngcsprng_dump_stats() {
- var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
$vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, 
$vararg_ptr4 = 0;
- var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, 
$vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer = sp;
- $0 = HEAP32[18138]|0;
- $1 = HEAP32[18139]|0;
- $2 = HEAP32[18140]|0;
- $3 = HEAP32[18141]|0;
- $4 = HEAP32[18142]|0;
- $5 = HEAP32[18143]|0;
- $6 = HEAP32[18144]|0;
- $7 = HEAP32[18145]|0;
- $8 = HEAP32[18146]|0;
- $9 = HEAP32[18147]|0;
- $10 = (__gcry_rndhw_failed_p()|0);
- $11 = ($10|0)==(0);
- $12 = $11 ? 73338 : 67813;
- HEAP32[$vararg_buffer>>2] = 600;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $0;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $1;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $2;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $3;
- $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
- HEAP32[$vararg_ptr5>>2] = $4;
- $vararg_ptr6 = ((($vararg_buffer)) + 24|0);
- HEAP32[$vararg_ptr6>>2] = $5;
- $vararg_ptr7 = ((($vararg_buffer)) + 28|0);
- HEAP32[$vararg_ptr7>>2] = $6;
- $vararg_ptr8 = ((($vararg_buffer)) + 32|0);
- HEAP32[$vararg_ptr8>>2] = $7;
- $vararg_ptr9 = ((($vararg_buffer)) + 36|0);
- HEAP32[$vararg_ptr9>>2] = $8;
- $vararg_ptr10 = ((($vararg_buffer)) + 40|0);
- HEAP32[$vararg_ptr10>>2] = $9;
- $vararg_ptr11 = ((($vararg_buffer)) + 44|0);
- HEAP32[$vararg_ptr11>>2] = $12;
- __gcry_log_info(67829,$vararg_buffer);
- STACKTOP = sp;return;
-}
-function __gcry_rngcsprng_secure_alloc() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18134] = 1;
- return;
-}
-function __gcry_rngcsprng_enable_quick_gen() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- HEAP32[18148] = 1;
- return;
-}
-function __gcry_rngcsprng_set_daemon_socket($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function __gcry_rngcsprng_use_daemon($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_rngcsprng_is_faked() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- _initialize();
- $0 = HEAP32[18148]|0;
- return ($0|0);
-}
-function _mix_pool($0) {
- $0 = $0|0;
- var $$04961 = 0, $$052$add = 0, $$052$add53 = 0, $$052$idx60 = 0, 
$$052$ptr$add = 0, $$052$ptr$ptr = 0, $$1$add = 0, $$1$add$1 = 0, $$1$add$10 = 
0, $$1$add$11 = 0, $$1$add$12 = 0, $$1$add$13 = 0, $$1$add$14 = 0, $$1$add$15 = 
0, $$1$add$16 = 0, $$1$add$17 = 0, $$1$add$18 = 0, $$1$add$19 = 0, $$1$add$2 = 
0, $$1$add$20 = 0;
- var $$1$add$21 = 0, $$1$add$22 = 0, $$1$add$23 = 0, $$1$add$24 = 0, 
$$1$add$25 = 0, $$1$add$26 = 0, $$1$add$27 = 0, $$1$add$28 = 0, $$1$add$29 = 0, 
$$1$add$3 = 0, $$1$add$30 = 0, $$1$add$31 = 0, $$1$add$32 = 0, $$1$add$33 = 0, 
$$1$add$34 = 0, $$1$add$35 = 0, $$1$add$36 = 0, $$1$add$37 = 0, $$1$add$38 = 0, 
$$1$add$39 = 0;
- var $$1$add$4 = 0, $$1$add$40 = 0, $$1$add$41 = 0, $$1$add$42 = 0, $$1$add$5 
= 0, $$1$add$6 = 0, $$1$add$7 = 0, $$1$add$8 = 0, $$1$add$9 = 0, $$1$ptr = 0, 
$$1$ptr$1 = 0, $$1$ptr$10 = 0, $$1$ptr$11 = 0, $$1$ptr$12 = 0, $$1$ptr$13 = 0, 
$$1$ptr$14 = 0, $$1$ptr$15 = 0, $$1$ptr$16 = 0, $$1$ptr$17 = 0, $$1$ptr$18 = 0;
- var $$1$ptr$19 = 0, $$1$ptr$2 = 0, $$1$ptr$20 = 0, $$1$ptr$21 = 0, $$1$ptr$22 
= 0, $$1$ptr$23 = 0, $$1$ptr$24 = 0, $$1$ptr$25 = 0, $$1$ptr$26 = 0, $$1$ptr$27 
= 0, $$1$ptr$28 = 0, $$1$ptr$29 = 0, $$1$ptr$3 = 0, $$1$ptr$30 = 0, $$1$ptr$31 
= 0, $$1$ptr$32 = 0, $$1$ptr$33 = 0, $$1$ptr$34 = 0, $$1$ptr$35 = 0, $$1$ptr$36 
= 0;
- var $$1$ptr$37 = 0, $$1$ptr$38 = 0, $$1$ptr$39 = 0, $$1$ptr$4 = 0, $$1$ptr$40 
= 0, $$1$ptr$41 = 0, $$1$ptr$42 = 0, $$1$ptr$43 = 0, $$1$ptr$5 = 0, $$1$ptr$6 = 
0, $$1$ptr$7 = 0, $$1$ptr$8 = 0, $$1$ptr$9 = 0, $$ptr54 = 0, $$ptr55 = 0, $1 = 
0, $10 = 0, $100 = 0, $101 = 0, $102 = 0;
- var $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 
= 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 
= 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0;
- var $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, 
$128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, 
$135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0;
- var $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 
= 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 
= 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0;
- var $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 
= 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 
= 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0;
- var $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 
= 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 
= 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0;
- var $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 
0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 
0, $208 = 0, $209 = 0, $21 = 0, $210 = 0;
- var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, 
$218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, 
$225 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, 
$52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, 
$60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $exitcond = 0, $or$cond = 0, $spec$select = 0, $spec$select$1 = 0, 
$spec$select$10 = 0, $spec$select$11 = 0, $spec$select$12 = 0, $spec$select$13 
= 0, $spec$select$14 = 0, $spec$select$15 = 0, $spec$select$16 = 0, 
$spec$select$17 = 0, $spec$select$18 = 0, $spec$select$19 = 0, $spec$select$2 = 
0, $spec$select$20 = 0, $spec$select$21 = 0, $spec$select$22 = 0, 
$spec$select$23 = 0, $spec$select$24 = 0;
- var $spec$select$25 = 0, $spec$select$26 = 0, $spec$select$27 = 0, 
$spec$select$28 = 0, $spec$select$29 = 0, $spec$select$3 = 0, $spec$select$30 = 
0, $spec$select$31 = 0, $spec$select$32 = 0, $spec$select$33 = 0, 
$spec$select$34 = 0, $spec$select$35 = 0, $spec$select$36 = 0, $spec$select$37 
= 0, $spec$select$38 = 0, $spec$select$39 = 0, $spec$select$4 = 0, 
$spec$select$40 = 0, $spec$select$41 = 0, $spec$select$42 = 0;
- var $spec$select$43 = 0, $spec$select$5 = 0, $spec$select$6 = 0, 
$spec$select$7 = 0, $spec$select$8 = 0, $spec$select$9 = 0, dest = 0, label = 
0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $1 = sp;
- $2 = ((($0)) + 600|0);
- $3 = HEAP32[18132]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  __gcry_assert_failed(67953,67968,615,67984);
-  // unreachable;
- }
- __gcry_rmd160_init($1);
- $5 = ((($0)) + 580|0);
- dest=$2; src=$5; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- $6 = ((($0)) + 620|0);
- dest=$6; src=$0; stop=dest+44|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- __gcry_rmd160_mixblock($1,$2);
- dest=$0; src=$2; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- $7 = HEAP32[18151]|0;
- $8 = ($7|0)!=(0);
- $9 = HEAP32[18133]|0;
- $10 = ($9|0)==($0|0);
- $or$cond = $8 & $10;
- if ($or$cond) {
-  $11 = HEAP8[71216]|0;
-  $12 = HEAP8[$0>>0]|0;
-  $13 = $12 ^ $11;
-  HEAP8[$0>>0] = $13;
-  $14 = HEAP8[(71217)>>0]|0;
-  $15 = ((($0)) + 1|0);
-  $16 = HEAP8[$15>>0]|0;
-  $17 = $16 ^ $14;
-  HEAP8[$15>>0] = $17;
-  $18 = HEAP8[(71218)>>0]|0;
-  $19 = ((($0)) + 2|0);
-  $20 = HEAP8[$19>>0]|0;
-  $21 = $20 ^ $18;
-  HEAP8[$19>>0] = $21;
-  $22 = HEAP8[(71219)>>0]|0;
-  $23 = ((($0)) + 3|0);
-  $24 = HEAP8[$23>>0]|0;
-  $25 = $24 ^ $22;
-  HEAP8[$23>>0] = $25;
-  $26 = HEAP8[(71220)>>0]|0;
-  $27 = ((($0)) + 4|0);
-  $28 = HEAP8[$27>>0]|0;
-  $29 = $28 ^ $26;
-  HEAP8[$27>>0] = $29;
-  $30 = HEAP8[(71221)>>0]|0;
-  $31 = ((($0)) + 5|0);
-  $32 = HEAP8[$31>>0]|0;
-  $33 = $32 ^ $30;
-  HEAP8[$31>>0] = $33;
-  $34 = HEAP8[(71222)>>0]|0;
-  $35 = ((($0)) + 6|0);
-  $36 = HEAP8[$35>>0]|0;
-  $37 = $36 ^ $34;
-  HEAP8[$35>>0] = $37;
-  $38 = HEAP8[(71223)>>0]|0;
-  $39 = ((($0)) + 7|0);
-  $40 = HEAP8[$39>>0]|0;
-  $41 = $40 ^ $38;
-  HEAP8[$39>>0] = $41;
-  $42 = HEAP8[(71224)>>0]|0;
-  $43 = ((($0)) + 8|0);
-  $44 = HEAP8[$43>>0]|0;
-  $45 = $44 ^ $42;
-  HEAP8[$43>>0] = $45;
-  $46 = HEAP8[(71225)>>0]|0;
-  $47 = ((($0)) + 9|0);
-  $48 = HEAP8[$47>>0]|0;
-  $49 = $48 ^ $46;
-  HEAP8[$47>>0] = $49;
-  $50 = HEAP8[(71226)>>0]|0;
-  $51 = ((($0)) + 10|0);
-  $52 = HEAP8[$51>>0]|0;
-  $53 = $52 ^ $50;
-  HEAP8[$51>>0] = $53;
-  $54 = HEAP8[(71227)>>0]|0;
-  $55 = ((($0)) + 11|0);
-  $56 = HEAP8[$55>>0]|0;
-  $57 = $56 ^ $54;
-  HEAP8[$55>>0] = $57;
-  $58 = HEAP8[(71228)>>0]|0;
-  $59 = ((($0)) + 12|0);
-  $60 = HEAP8[$59>>0]|0;
-  $61 = $60 ^ $58;
-  HEAP8[$59>>0] = $61;
-  $62 = HEAP8[(71229)>>0]|0;
-  $63 = ((($0)) + 13|0);
-  $64 = HEAP8[$63>>0]|0;
-  $65 = $64 ^ $62;
-  HEAP8[$63>>0] = $65;
-  $66 = HEAP8[(71230)>>0]|0;
-  $67 = ((($0)) + 14|0);
-  $68 = HEAP8[$67>>0]|0;
-  $69 = $68 ^ $66;
-  HEAP8[$67>>0] = $69;
-  $70 = HEAP8[(71231)>>0]|0;
-  $71 = ((($0)) + 15|0);
-  $72 = HEAP8[$71>>0]|0;
-  $73 = $72 ^ $70;
-  HEAP8[$71>>0] = $73;
-  $74 = HEAP8[(71232)>>0]|0;
-  $75 = ((($0)) + 16|0);
-  $76 = HEAP8[$75>>0]|0;
-  $77 = $76 ^ $74;
-  HEAP8[$75>>0] = $77;
-  $78 = HEAP8[(71233)>>0]|0;
-  $79 = ((($0)) + 17|0);
-  $80 = HEAP8[$79>>0]|0;
-  $81 = $80 ^ $78;
-  HEAP8[$79>>0] = $81;
-  $82 = HEAP8[(71234)>>0]|0;
-  $83 = ((($0)) + 18|0);
-  $84 = HEAP8[$83>>0]|0;
-  $85 = $84 ^ $82;
-  HEAP8[$83>>0] = $85;
-  $86 = HEAP8[(71235)>>0]|0;
-  $87 = ((($0)) + 19|0);
-  $88 = HEAP8[$87>>0]|0;
-  $89 = $88 ^ $86;
-  HEAP8[$87>>0] = $89;
- }
- $90 = ((($0)) + 620|0);
- $91 = ((($0)) + 621|0);
- $92 = ((($0)) + 622|0);
- $93 = ((($0)) + 623|0);
- $94 = ((($0)) + 624|0);
- $95 = ((($0)) + 625|0);
- $96 = ((($0)) + 626|0);
- $97 = ((($0)) + 627|0);
- $98 = ((($0)) + 628|0);
- $99 = ((($0)) + 629|0);
- $100 = ((($0)) + 630|0);
- $101 = ((($0)) + 631|0);
- $102 = ((($0)) + 632|0);
- $103 = ((($0)) + 633|0);
- $104 = ((($0)) + 634|0);
- $105 = ((($0)) + 635|0);
- $106 = ((($0)) + 636|0);
- $107 = ((($0)) + 637|0);
- $108 = ((($0)) + 638|0);
- $109 = ((($0)) + 639|0);
- $110 = ((($0)) + 640|0);
- $111 = ((($0)) + 641|0);
- $112 = ((($0)) + 642|0);
- $113 = ((($0)) + 643|0);
- $114 = ((($0)) + 644|0);
- $115 = ((($0)) + 645|0);
- $116 = ((($0)) + 646|0);
- $117 = ((($0)) + 647|0);
- $118 = ((($0)) + 648|0);
- $119 = ((($0)) + 649|0);
- $120 = ((($0)) + 650|0);
- $121 = ((($0)) + 651|0);
- $122 = ((($0)) + 652|0);
- $123 = ((($0)) + 653|0);
- $124 = ((($0)) + 654|0);
- $125 = ((($0)) + 655|0);
- $126 = ((($0)) + 656|0);
- $127 = ((($0)) + 657|0);
- $128 = ((($0)) + 658|0);
- $129 = ((($0)) + 659|0);
- $130 = ((($0)) + 660|0);
- $131 = ((($0)) + 661|0);
- $132 = ((($0)) + 662|0);
- $133 = ((($0)) + 663|0);
- $$04961 = 1;$$052$idx60 = 0;
- while(1) {
-  $$052$ptr$ptr = (($0) + ($$052$idx60)|0);
-  dest=$2; src=$$052$ptr$ptr; stop=dest+20|0; do { 
HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < 
(stop|0));
-  $$052$add53 = (($$052$idx60) + 20)|0;
-  $$ptr54 = (($0) + ($$052$add53)|0);
-  $$052$ptr$add = (($$052$idx60) + 40)|0;
-  $$052$add = (($$052$idx60) + 104)|0;
-  $134 = ($$052$add>>>0)<(600);
-  if ($134) {
-   $$ptr55 = (($0) + ($$052$ptr$add)|0);
-   dest=$6; src=$$ptr55; stop=dest+44|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  } else {
-   $135 = ($$052$ptr$add>>>0)>(599);
-   $spec$select = $135 ? 0 : $$052$ptr$add;
-   $$1$ptr = (($0) + ($spec$select)|0);
-   $$1$add = $spec$select | 1;
-   $136 = HEAP8[$$1$ptr>>0]|0;
-   HEAP8[$90>>0] = $136;
-   $137 = ($$1$add>>>0)>(599);
-   $spec$select$1 = $137 ? 0 : $$1$add;
-   $$1$ptr$1 = (($0) + ($spec$select$1)|0);
-   $$1$add$1 = (($spec$select$1) + 1)|0;
-   $138 = HEAP8[$$1$ptr$1>>0]|0;
-   HEAP8[$91>>0] = $138;
-   $139 = ($spec$select$1>>>0)>(598);
-   $spec$select$2 = $139 ? 0 : $$1$add$1;
-   $$1$ptr$2 = (($0) + ($spec$select$2)|0);
-   $$1$add$2 = (($spec$select$2) + 1)|0;
-   $140 = HEAP8[$$1$ptr$2>>0]|0;
-   HEAP8[$92>>0] = $140;
-   $141 = ($spec$select$2|0)>(598);
-   $spec$select$3 = $141 ? 0 : $$1$add$2;
-   $$1$ptr$3 = (($0) + ($spec$select$3)|0);
-   $$1$add$3 = (($spec$select$3) + 1)|0;
-   $142 = HEAP8[$$1$ptr$3>>0]|0;
-   HEAP8[$93>>0] = $142;
-   $143 = ($spec$select$3|0)>(598);
-   $spec$select$4 = $143 ? 0 : $$1$add$3;
-   $$1$ptr$4 = (($0) + ($spec$select$4)|0);
-   $$1$add$4 = (($spec$select$4) + 1)|0;
-   $144 = HEAP8[$$1$ptr$4>>0]|0;
-   HEAP8[$94>>0] = $144;
-   $145 = ($spec$select$4|0)>(598);
-   $spec$select$5 = $145 ? 0 : $$1$add$4;
-   $$1$ptr$5 = (($0) + ($spec$select$5)|0);
-   $$1$add$5 = (($spec$select$5) + 1)|0;
-   $146 = HEAP8[$$1$ptr$5>>0]|0;
-   HEAP8[$95>>0] = $146;
-   $147 = ($spec$select$5|0)>(598);
-   $spec$select$6 = $147 ? 0 : $$1$add$5;
-   $$1$ptr$6 = (($0) + ($spec$select$6)|0);
-   $$1$add$6 = (($spec$select$6) + 1)|0;
-   $148 = HEAP8[$$1$ptr$6>>0]|0;
-   HEAP8[$96>>0] = $148;
-   $149 = ($spec$select$6|0)>(598);
-   $spec$select$7 = $149 ? 0 : $$1$add$6;
-   $$1$ptr$7 = (($0) + ($spec$select$7)|0);
-   $$1$add$7 = (($spec$select$7) + 1)|0;
-   $150 = HEAP8[$$1$ptr$7>>0]|0;
-   HEAP8[$97>>0] = $150;
-   $151 = ($spec$select$7|0)>(598);
-   $spec$select$8 = $151 ? 0 : $$1$add$7;
-   $$1$ptr$8 = (($0) + ($spec$select$8)|0);
-   $$1$add$8 = (($spec$select$8) + 1)|0;
-   $152 = HEAP8[$$1$ptr$8>>0]|0;
-   HEAP8[$98>>0] = $152;
-   $153 = ($spec$select$8|0)>(598);
-   $spec$select$9 = $153 ? 0 : $$1$add$8;
-   $$1$ptr$9 = (($0) + ($spec$select$9)|0);
-   $$1$add$9 = (($spec$select$9) + 1)|0;
-   $154 = HEAP8[$$1$ptr$9>>0]|0;
-   HEAP8[$99>>0] = $154;
-   $155 = ($spec$select$9|0)>(598);
-   $spec$select$10 = $155 ? 0 : $$1$add$9;
-   $$1$ptr$10 = (($0) + ($spec$select$10)|0);
-   $$1$add$10 = (($spec$select$10) + 1)|0;
-   $156 = HEAP8[$$1$ptr$10>>0]|0;
-   HEAP8[$100>>0] = $156;
-   $157 = ($spec$select$10|0)>(598);
-   $spec$select$11 = $157 ? 0 : $$1$add$10;
-   $$1$ptr$11 = (($0) + ($spec$select$11)|0);
-   $$1$add$11 = (($spec$select$11) + 1)|0;
-   $158 = HEAP8[$$1$ptr$11>>0]|0;
-   HEAP8[$101>>0] = $158;
-   $159 = ($spec$select$11|0)>(598);
-   $spec$select$12 = $159 ? 0 : $$1$add$11;
-   $$1$ptr$12 = (($0) + ($spec$select$12)|0);
-   $$1$add$12 = (($spec$select$12) + 1)|0;
-   $160 = HEAP8[$$1$ptr$12>>0]|0;
-   HEAP8[$102>>0] = $160;
-   $161 = ($spec$select$12|0)>(598);
-   $spec$select$13 = $161 ? 0 : $$1$add$12;
-   $$1$ptr$13 = (($0) + ($spec$select$13)|0);
-   $$1$add$13 = (($spec$select$13) + 1)|0;
-   $162 = HEAP8[$$1$ptr$13>>0]|0;
-   HEAP8[$103>>0] = $162;
-   $163 = ($spec$select$13|0)>(598);
-   $spec$select$14 = $163 ? 0 : $$1$add$13;
-   $$1$ptr$14 = (($0) + ($spec$select$14)|0);
-   $$1$add$14 = (($spec$select$14) + 1)|0;
-   $164 = HEAP8[$$1$ptr$14>>0]|0;
-   HEAP8[$104>>0] = $164;
-   $165 = ($spec$select$14|0)>(598);
-   $spec$select$15 = $165 ? 0 : $$1$add$14;
-   $$1$ptr$15 = (($0) + ($spec$select$15)|0);
-   $$1$add$15 = (($spec$select$15) + 1)|0;
-   $166 = HEAP8[$$1$ptr$15>>0]|0;
-   HEAP8[$105>>0] = $166;
-   $167 = ($spec$select$15|0)>(598);
-   $spec$select$16 = $167 ? 0 : $$1$add$15;
-   $$1$ptr$16 = (($0) + ($spec$select$16)|0);
-   $$1$add$16 = (($spec$select$16) + 1)|0;
-   $168 = HEAP8[$$1$ptr$16>>0]|0;
-   HEAP8[$106>>0] = $168;
-   $169 = ($spec$select$16|0)>(598);
-   $spec$select$17 = $169 ? 0 : $$1$add$16;
-   $$1$ptr$17 = (($0) + ($spec$select$17)|0);
-   $$1$add$17 = (($spec$select$17) + 1)|0;
-   $170 = HEAP8[$$1$ptr$17>>0]|0;
-   HEAP8[$107>>0] = $170;
-   $171 = ($spec$select$17|0)>(598);
-   $spec$select$18 = $171 ? 0 : $$1$add$17;
-   $$1$ptr$18 = (($0) + ($spec$select$18)|0);
-   $$1$add$18 = (($spec$select$18) + 1)|0;
-   $172 = HEAP8[$$1$ptr$18>>0]|0;
-   HEAP8[$108>>0] = $172;
-   $173 = ($spec$select$18|0)>(598);
-   $spec$select$19 = $173 ? 0 : $$1$add$18;
-   $$1$ptr$19 = (($0) + ($spec$select$19)|0);
-   $$1$add$19 = (($spec$select$19) + 1)|0;
-   $174 = HEAP8[$$1$ptr$19>>0]|0;
-   HEAP8[$109>>0] = $174;
-   $175 = ($spec$select$19|0)>(598);
-   $spec$select$20 = $175 ? 0 : $$1$add$19;
-   $$1$ptr$20 = (($0) + ($spec$select$20)|0);
-   $$1$add$20 = (($spec$select$20) + 1)|0;
-   $176 = HEAP8[$$1$ptr$20>>0]|0;
-   HEAP8[$110>>0] = $176;
-   $177 = ($spec$select$20|0)>(598);
-   $spec$select$21 = $177 ? 0 : $$1$add$20;
-   $$1$ptr$21 = (($0) + ($spec$select$21)|0);
-   $$1$add$21 = (($spec$select$21) + 1)|0;
-   $178 = HEAP8[$$1$ptr$21>>0]|0;
-   HEAP8[$111>>0] = $178;
-   $179 = ($spec$select$21|0)>(598);
-   $spec$select$22 = $179 ? 0 : $$1$add$21;
-   $$1$ptr$22 = (($0) + ($spec$select$22)|0);
-   $$1$add$22 = (($spec$select$22) + 1)|0;
-   $180 = HEAP8[$$1$ptr$22>>0]|0;
-   HEAP8[$112>>0] = $180;
-   $181 = ($spec$select$22|0)>(598);
-   $spec$select$23 = $181 ? 0 : $$1$add$22;
-   $$1$ptr$23 = (($0) + ($spec$select$23)|0);
-   $$1$add$23 = (($spec$select$23) + 1)|0;
-   $182 = HEAP8[$$1$ptr$23>>0]|0;
-   HEAP8[$113>>0] = $182;
-   $183 = ($spec$select$23|0)>(598);
-   $spec$select$24 = $183 ? 0 : $$1$add$23;
-   $$1$ptr$24 = (($0) + ($spec$select$24)|0);
-   $$1$add$24 = (($spec$select$24) + 1)|0;
-   $184 = HEAP8[$$1$ptr$24>>0]|0;
-   HEAP8[$114>>0] = $184;
-   $185 = ($spec$select$24|0)>(598);
-   $spec$select$25 = $185 ? 0 : $$1$add$24;
-   $$1$ptr$25 = (($0) + ($spec$select$25)|0);
-   $$1$add$25 = (($spec$select$25) + 1)|0;
-   $186 = HEAP8[$$1$ptr$25>>0]|0;
-   HEAP8[$115>>0] = $186;
-   $187 = ($spec$select$25|0)>(598);
-   $spec$select$26 = $187 ? 0 : $$1$add$25;
-   $$1$ptr$26 = (($0) + ($spec$select$26)|0);
-   $$1$add$26 = (($spec$select$26) + 1)|0;
-   $188 = HEAP8[$$1$ptr$26>>0]|0;
-   HEAP8[$116>>0] = $188;
-   $189 = ($spec$select$26|0)>(598);
-   $spec$select$27 = $189 ? 0 : $$1$add$26;
-   $$1$ptr$27 = (($0) + ($spec$select$27)|0);
-   $$1$add$27 = (($spec$select$27) + 1)|0;
-   $190 = HEAP8[$$1$ptr$27>>0]|0;
-   HEAP8[$117>>0] = $190;
-   $191 = ($spec$select$27|0)>(598);
-   $spec$select$28 = $191 ? 0 : $$1$add$27;
-   $$1$ptr$28 = (($0) + ($spec$select$28)|0);
-   $$1$add$28 = (($spec$select$28) + 1)|0;
-   $192 = HEAP8[$$1$ptr$28>>0]|0;
-   HEAP8[$118>>0] = $192;
-   $193 = ($spec$select$28|0)>(598);
-   $spec$select$29 = $193 ? 0 : $$1$add$28;
-   $$1$ptr$29 = (($0) + ($spec$select$29)|0);
-   $$1$add$29 = (($spec$select$29) + 1)|0;
-   $194 = HEAP8[$$1$ptr$29>>0]|0;
-   HEAP8[$119>>0] = $194;
-   $195 = ($spec$select$29|0)>(598);
-   $spec$select$30 = $195 ? 0 : $$1$add$29;
-   $$1$ptr$30 = (($0) + ($spec$select$30)|0);
-   $$1$add$30 = (($spec$select$30) + 1)|0;
-   $196 = HEAP8[$$1$ptr$30>>0]|0;
-   HEAP8[$120>>0] = $196;
-   $197 = ($spec$select$30|0)>(598);
-   $spec$select$31 = $197 ? 0 : $$1$add$30;
-   $$1$ptr$31 = (($0) + ($spec$select$31)|0);
-   $$1$add$31 = (($spec$select$31) + 1)|0;
-   $198 = HEAP8[$$1$ptr$31>>0]|0;
-   HEAP8[$121>>0] = $198;
-   $199 = ($spec$select$31|0)>(598);
-   $spec$select$32 = $199 ? 0 : $$1$add$31;
-   $$1$ptr$32 = (($0) + ($spec$select$32)|0);
-   $$1$add$32 = (($spec$select$32) + 1)|0;
-   $200 = HEAP8[$$1$ptr$32>>0]|0;
-   HEAP8[$122>>0] = $200;
-   $201 = ($spec$select$32|0)>(598);
-   $spec$select$33 = $201 ? 0 : $$1$add$32;
-   $$1$ptr$33 = (($0) + ($spec$select$33)|0);
-   $$1$add$33 = (($spec$select$33) + 1)|0;
-   $202 = HEAP8[$$1$ptr$33>>0]|0;
-   HEAP8[$123>>0] = $202;
-   $203 = ($spec$select$33|0)>(598);
-   $spec$select$34 = $203 ? 0 : $$1$add$33;
-   $$1$ptr$34 = (($0) + ($spec$select$34)|0);
-   $$1$add$34 = (($spec$select$34) + 1)|0;
-   $204 = HEAP8[$$1$ptr$34>>0]|0;
-   HEAP8[$124>>0] = $204;
-   $205 = ($spec$select$34|0)>(598);
-   $spec$select$35 = $205 ? 0 : $$1$add$34;
-   $$1$ptr$35 = (($0) + ($spec$select$35)|0);
-   $$1$add$35 = (($spec$select$35) + 1)|0;
-   $206 = HEAP8[$$1$ptr$35>>0]|0;
-   HEAP8[$125>>0] = $206;
-   $207 = ($spec$select$35|0)>(598);
-   $spec$select$36 = $207 ? 0 : $$1$add$35;
-   $$1$ptr$36 = (($0) + ($spec$select$36)|0);
-   $$1$add$36 = (($spec$select$36) + 1)|0;
-   $208 = HEAP8[$$1$ptr$36>>0]|0;
-   HEAP8[$126>>0] = $208;
-   $209 = ($spec$select$36|0)>(598);
-   $spec$select$37 = $209 ? 0 : $$1$add$36;
-   $$1$ptr$37 = (($0) + ($spec$select$37)|0);
-   $$1$add$37 = (($spec$select$37) + 1)|0;
-   $210 = HEAP8[$$1$ptr$37>>0]|0;
-   HEAP8[$127>>0] = $210;
-   $211 = ($spec$select$37|0)>(598);
-   $spec$select$38 = $211 ? 0 : $$1$add$37;
-   $$1$ptr$38 = (($0) + ($spec$select$38)|0);
-   $$1$add$38 = (($spec$select$38) + 1)|0;
-   $212 = HEAP8[$$1$ptr$38>>0]|0;
-   HEAP8[$128>>0] = $212;
-   $213 = ($spec$select$38|0)>(598);
-   $spec$select$39 = $213 ? 0 : $$1$add$38;
-   $$1$ptr$39 = (($0) + ($spec$select$39)|0);
-   $$1$add$39 = (($spec$select$39) + 1)|0;
-   $214 = HEAP8[$$1$ptr$39>>0]|0;
-   HEAP8[$129>>0] = $214;
-   $215 = ($spec$select$39|0)>(598);
-   $spec$select$40 = $215 ? 0 : $$1$add$39;
-   $$1$ptr$40 = (($0) + ($spec$select$40)|0);
-   $$1$add$40 = (($spec$select$40) + 1)|0;
-   $216 = HEAP8[$$1$ptr$40>>0]|0;
-   HEAP8[$130>>0] = $216;
-   $217 = ($spec$select$40|0)>(598);
-   $spec$select$41 = $217 ? 0 : $$1$add$40;
-   $$1$ptr$41 = (($0) + ($spec$select$41)|0);
-   $$1$add$41 = (($spec$select$41) + 1)|0;
-   $218 = HEAP8[$$1$ptr$41>>0]|0;
-   HEAP8[$131>>0] = $218;
-   $219 = ($spec$select$41|0)>(598);
-   $spec$select$42 = $219 ? 0 : $$1$add$41;
-   $$1$ptr$42 = (($0) + ($spec$select$42)|0);
-   $$1$add$42 = (($spec$select$42) + 1)|0;
-   $220 = HEAP8[$$1$ptr$42>>0]|0;
-   HEAP8[$132>>0] = $220;
-   $221 = ($spec$select$42|0)>(598);
-   $spec$select$43 = $221 ? 0 : $$1$add$42;
-   $$1$ptr$43 = (($0) + ($spec$select$43)|0);
-   $222 = HEAP8[$$1$ptr$43>>0]|0;
-   HEAP8[$133>>0] = $222;
-  }
-  __gcry_rmd160_mixblock($1,$2);
-  dest=$$ptr54; src=$2; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  $223 = (($$04961) + 1)|0;
-  $exitcond = ($223|0)==(30);
-  if ($exitcond) {
-   break;
-  } else {
-   $$04961 = $223;$$052$idx60 = $$052$add53;
-  }
- }
- $224 = HEAP32[18133]|0;
- $225 = ($224|0)==($0|0);
- if (!($225)) {
-  ___gcry_burn_stack(384);
-  STACKTOP = sp;return;
- }
- __gcry_rmd160_hash_buffer(71216,$0,600);
- HEAP32[18151] = 1;
- ___gcry_burn_stack(384);
- STACKTOP = sp;return;
-}
-function __gcry_rngcsprng_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$$040$i = 0, $$0$$0$$0$$i = 0, $$0$$0$$0$11$i = 0, $$0$$0$$0$12$i = 0, 
$$0$$0$$0$13$i = 0, $$0$i = 0, $$01113$us$i$i$i = 0, $$0183437 = 0, $$03536 = 
0, $$03763$i = 0, $$03862$i = 0, $$03961$i = 0, $$040$i = 0, $$1$lcssa$i = 0, 
$$164$i = 0, $$in$i = 0, $$op = 0, $$pr$i = 0, $$pre = 0, $$pre$i = 0;
- var $$pre$i$i = 0, $$pre26$i$i = 0, $$pre27$i$i = 0, $$pre28$i$i = 0, 
$$pre29$i$i = 0, $$pre30$i$i = 0, $$pre31$i$i = 0, $$pre32$i$i = 0, $$pre33$i$i 
= 0, $$pre34$i$i = 0, $$pre35$i$i = 0, $$pre36$i$i = 0, $$pre77$i = 0, 
$$pre78$i = 0, $$pre79$i = 0, $$pre80$i = 0, $$pre81$i = 0, $$pre82$i = 0, 
$$pre83$i = 0, $$pre84$i = 0;
- var $$pre86$i = 0, $$pre87$i = 0, $$pre88$i = 0, $$pre89$i = 0, $$pre90$i = 
0, $$sroa$3$0$extract$shift = 0, $$sroa$3$0$extract$shift$i = 0, 
$$sroa$3$0$extract$trunc = 0, $$sroa$3$0$extract$trunc$i = 0, 
$$sroa$330$0$extract$shift = 0, $$sroa$330$0$extract$trunc = 0, 
$$sroa$353$0$extract$shift$i = 0, $$sroa$353$0$extract$trunc$i = 0, 
$$sroa$358$0$extract$shift$i = 0, $$sroa$358$0$extract$trunc$i = 0, 
$$sroa$4$0$extract$shift = 0, $$sroa$4$0$extract$trunc = 0, $10 = 0, $100 = 0, 
$101 = 0;
- var $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, 
$109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, 
$116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0;
- var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, 
$127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, 
$134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0;
- var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 
= 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0;
- var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 
= 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0;
- var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 
= 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 
= 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0;
- var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 
= 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 
= 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0;
- var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, 
$218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, 
$225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0;
- var $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 
= 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 
= 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0;
- var $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 
= 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 
= 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0;
- var $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 
= 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 
= 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0;
- var $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 
= 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 
= 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0;
- var $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, 
$308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, 
$315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0;
- var $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 
= 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 
= 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0;
- var $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 
= 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 
= 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0;
- var $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 
= 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 
= 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0;
- var $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 
= 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 
= 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0;
- var $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, 
$399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, 
$405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0;
- var $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 
= 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 
= 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0;
- var $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 
= 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 
= 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0;
- var $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 
= 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 
= 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0;
- var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, 
$66 = 0, $67 = 0, $68 = 0;
- var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, 
$76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0;
- var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, 
$94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $exitcond$i = 0, $or$cond 
= 0, $or$cond$i = 0, $pool_balance$promoted$i = 0, $pool_readpos$promoted$i = 
0, $rndstats$6$rndstats$4 = 0;
- var $rndstats$7$rndstats$5 = 0, $scevgep$i = 0, $spec$select$i = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer13 = 0, $vararg_buffer16 
= 0, $vararg_buffer18 = 0, $vararg_buffer20 = 0, $vararg_buffer24 = 0, 
$vararg_buffer26 = 0, $vararg_buffer28 = 0, $vararg_buffer3 = 0, 
$vararg_buffer30 = 0, $vararg_buffer32 = 0, $vararg_buffer34 = 0, 
$vararg_buffer36 = 0, $vararg_buffer38 = 0, $vararg_buffer40 = 0, 
$vararg_buffer5 = 0;
- var $vararg_buffer9 = 0, $vararg_ptr12 = 0, $vararg_ptr23 = 0, $vararg_ptr8 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 832|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(832|0);
- $vararg_buffer40 = sp + 736|0;
- $vararg_buffer38 = sp + 728|0;
- $vararg_buffer36 = sp + 720|0;
- $vararg_buffer34 = sp + 712|0;
- $vararg_buffer32 = sp + 704|0;
- $vararg_buffer30 = sp + 696|0;
- $vararg_buffer28 = sp + 688|0;
- $vararg_buffer26 = sp + 680|0;
- $vararg_buffer24 = sp + 672|0;
- $vararg_buffer20 = sp + 664|0;
- $vararg_buffer18 = sp + 656|0;
- $vararg_buffer16 = sp + 648|0;
- $vararg_buffer13 = sp + 640|0;
- $vararg_buffer9 = sp + 632|0;
- $vararg_buffer5 = sp + 624|0;
- $vararg_buffer3 = sp + 616|0;
- $vararg_buffer1 = sp + 608|0;
- $vararg_buffer = sp + 600|0;
- $3 = sp + 744|0;
- $4 = sp;
- $5 = sp + 740|0;
- _initialize();
- $6 = HEAP32[18148]|0;
- $7 = ($6|0)!=(0);
- $8 = ($2>>>0)>(1);
- $or$cond = $8 & $7;
- $$op = $2 & 3;
- $9 = $or$cond ? 1 : $$op;
- $10 = (_gpgrt_lock_lock(40208)|0);
- $11 = ($10|0)==(0);
- if (!($11)) {
-  $12 = (_gpg_strerror($10)|0);
-  HEAP32[$vararg_buffer>>2] = $12;
-  __gcry_log_fatal(67701,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18132] = 1;
- $13 = ($9>>>0)>(1);
- $rndstats$6$rndstats$4 = $13 ? 72588 : 72580;
- $rndstats$7$rndstats$5 = $13 ? 72584 : 72576;
- $14 = HEAP32[$rndstats$6$rndstats$4>>2]|0;
- $15 = (($14) + ($1))|0;
- HEAP32[$rndstats$6$rndstats$4>>2] = $15;
- $16 = HEAP32[$rndstats$7$rndstats$5>>2]|0;
- $17 = (($16) + 1)|0;
- HEAP32[$rndstats$7$rndstats$5>>2] = $17;
- $18 = ($1|0)==(0);
- L4: do {
-  if (!($18)) {
-   $19 = ($9|0)!=(2);
-   $20 = ($9|0)==(2);
-   $21 = ((($3)) + 12|0);
-   $22 = ((($3)) + 36|0);
-   $23 = ($1>>>0)<(600);
-   $24 = $23 ? $1 : 600;
-   $$0183437 = $0;$$03536 = $1;$451 = $24;
-   L6: while(1) {
-    $$0$i = $$0183437;$$040$i = $451;
-    while(1) {
-     $25 = (_getpid()|0);
-     HEAP32[$5>>2] = $25;
-     $26 = HEAP32[10063]|0;
-     $27 = ($26|0)==(-1);
-     if ($27) {
-      $$0$$0$$0$$i = HEAP32[$5>>2]|0;
-      HEAP32[10063] = $$0$$0$$0$$i;
-     }
-     $28 = HEAP32[10063]|0;
-     $$0$$0$$0$11$i = HEAP32[$5>>2]|0;
-     $29 = ($28|0)==($$0$$0$$0$11$i|0);
-     if (!($29)) {
-      $$0$$0$$0$12$i = HEAP32[$5>>2]|0;
-      HEAP32[10063] = $$0$$0$$0$12$i;
-      $30 = HEAP32[10063]|0;
-      $$sroa$330$0$extract$shift = $30 >>> 24;
-      $$sroa$330$0$extract$trunc = $$sroa$330$0$extract$shift&255;
-      $31 = HEAP32[18132]|0;
-      $32 = ($31|0)==(0);
-      $33 = $30 >>> 8;
-      $34 = $33&255;
-      $35 = $30 >>> 16;
-      $36 = $35&255;
-      if ($32) {
-       label = 11;
-       break L6;
-      }
-      $37 = $30&255;
-      $38 = HEAP32[18142]|0;
-      $39 = (($38) + 4)|0;
-      HEAP32[18142] = $39;
-      $40 = HEAP32[18141]|0;
-      $41 = (($40) + 1)|0;
-      HEAP32[18141] = $41;
-      $42 = HEAP32[18133]|0;
-      $43 = HEAP32[18149]|0;
-      $44 = (($43) + 1)|0;
-      HEAP32[18149] = $44;
-      $45 = (($42) + ($43)|0);
-      $46 = HEAP8[$45>>0]|0;
-      $47 = $46 ^ $37;
-      HEAP8[$45>>0] = $47;
-      $48 = ($44>>>0)>(599);
-      if ($48) {
-       HEAP32[18149] = 0;
-       _mix_pool($42);
-       $49 = HEAP32[18138]|0;
-       $50 = (($49) + 1)|0;
-       HEAP32[18138] = $50;
-       HEAP32[18150] = 0;
-       $$pre$i = HEAP32[18133]|0;
-       $$pre77$i = HEAP32[18149]|0;
-       $52 = $$pre77$i;$54 = $$pre$i;
-      } else {
-       $52 = $44;$54 = $42;
-      }
-      $51 = (($52) + 1)|0;
-      HEAP32[18149] = $51;
-      $53 = (($54) + ($52)|0);
-      $55 = HEAP8[$53>>0]|0;
-      $56 = $55 ^ $34;
-      HEAP8[$53>>0] = $56;
-      $57 = ($51>>>0)>(599);
-      if ($57) {
-       HEAP32[18149] = 0;
-       _mix_pool($54);
-       $390 = HEAP32[18138]|0;
-       $391 = (($390) + 1)|0;
-       HEAP32[18138] = $391;
-       HEAP32[18150] = 0;
-       $$pre78$i = HEAP32[18133]|0;
-       $$pre79$i = HEAP32[18149]|0;
-       $393 = $$pre79$i;$395 = $$pre78$i;
-      } else {
-       $393 = $51;$395 = $54;
-      }
-      $392 = (($393) + 1)|0;
-      HEAP32[18149] = $392;
-      $394 = (($395) + ($393)|0);
-      $396 = HEAP8[$394>>0]|0;
-      $397 = $396 ^ $36;
-      HEAP8[$394>>0] = $397;
-      $398 = ($392>>>0)>(599);
-      if ($398) {
-       HEAP32[18149] = 0;
-       _mix_pool($395);
-       $399 = HEAP32[18138]|0;
-       $400 = (($399) + 1)|0;
-       HEAP32[18138] = $400;
-       HEAP32[18150] = 0;
-      }
-      $401 = HEAP32[18133]|0;
-      $402 = HEAP32[18149]|0;
-      $403 = (($402) + 1)|0;
-      HEAP32[18149] = $403;
-      $404 = (($401) + ($402)|0);
-      $405 = HEAP8[$404>>0]|0;
-      $406 = $405 ^ $$sroa$330$0$extract$trunc;
-      HEAP8[$404>>0] = $406;
-      $407 = ($403>>>0)>(599);
-      if ($407) {
-       HEAP32[18149] = 0;
-       _mix_pool($401);
-       $408 = HEAP32[18138]|0;
-       $409 = (($408) + 1)|0;
-       HEAP32[18138] = $409;
-       HEAP32[18150] = 1;
-      }
-      HEAP32[18150] = 0;
-     }
-     $58 = HEAP32[18132]|0;
-     $59 = ($58|0)==(0);
-     if ($59) {
-      label = 16;
-      break L6;
-     }
-     $60 = ($$040$i>>>0)>(600);
-     if ($60) {
-      label = 18;
-      break L6;
-     }
-     $61 = HEAP32[18137]|0;
-     $62 = ($61|0)==(0);
-     L31: do {
-      if ($62) {
-       $63 = HEAP32[18152]|0;
-       $64 = ($63|0)==(0|0);
-       L33: do {
-        if (!($64)) {
-         $65 = (_open($63,0,$vararg_buffer3)|0);
-         $66 = ($65|0)==(-1);
-         if ($66) {
-          $67 = (___errno_location()|0);
-          $68 = HEAP32[$67>>2]|0;
-          $69 = ($68|0)==(2);
-          if ($69) {
-           HEAP32[18153] = 1;
-           break;
-          } else {
-           $70 = (__gcry_gettext(68050)|0);
-           $71 = HEAP32[18152]|0;
-           $72 = (___errno_location()|0);
-           $73 = HEAP32[$72>>2]|0;
-           $74 = (_strerror($73)|0);
-           HEAP32[$vararg_buffer5>>2] = $71;
-           $vararg_ptr8 = ((($vararg_buffer5)) + 4|0);
-           HEAP32[$vararg_ptr8>>2] = $74;
-           __gcry_log_info($70,$vararg_buffer5);
-           break;
-          }
-         }
-         $75 = HEAP32[18152]|0;
-         $76 = (_lock_seed_file($65,$75,0)|0);
-         $77 = ($76|0)==(0);
-         if (!($77)) {
-          (_close($65)|0);
-          break;
-         }
-         $78 = (_fstat($65,$3)|0);
-         $79 = ($78|0)==(0);
-         if (!($79)) {
-          $80 = (__gcry_gettext(68071)|0);
-          $81 = HEAP32[18152]|0;
-          $82 = (___errno_location()|0);
-          $83 = HEAP32[$82>>2]|0;
-          $84 = (_strerror($83)|0);
-          HEAP32[$vararg_buffer9>>2] = $81;
-          $vararg_ptr12 = ((($vararg_buffer9)) + 4|0);
-          HEAP32[$vararg_ptr12>>2] = $84;
-          __gcry_log_info($80,$vararg_buffer9);
-          (_close($65)|0);
-          break;
-         }
-         $85 = HEAP32[$21>>2]|0;
-         $86 = $85 & 61440;
-         $87 = ($86|0)==(32768);
-         if (!($87)) {
-          $88 = (__gcry_gettext(68092)|0);
-          $89 = HEAP32[18152]|0;
-          HEAP32[$vararg_buffer13>>2] = $89;
-          __gcry_log_info($88,$vararg_buffer13);
-          (_close($65)|0);
-          break;
-         }
-         $90 = HEAP32[$22>>2]|0;
-         switch ($90|0) {
-         case 0:  {
-          $91 = (__gcry_gettext(68130)|0);
-          __gcry_log_info($91,$vararg_buffer16);
-          (_close($65)|0);
-          HEAP32[18153] = 1;
-          break L33;
-          break;
-         }
-         case 600:  {
-          L54: while(1) {
-           $93 = (_read($65,$4,600)|0);
-           switch ($93|0) {
-           case 600:  {
-            break L54;
-            break;
-           }
-           case -1:  {
-            break;
-           }
-           default: {
-            label = 37;
-            break L6;
-           }
-           }
-           $94 = (___errno_location()|0);
-           $95 = HEAP32[$94>>2]|0;
-           $96 = ($95|0)==(4);
-           if (!($96)) {
-            label = 37;
-            break L6;
-           }
-          }
-          (_close($65)|0);
-          $102 = HEAP32[18132]|0;
-          $103 = ($102|0)==(0);
-          if ($103) {
-           label = 39;
-           break L6;
-          }
-          $104 = HEAP32[18142]|0;
-          $105 = (($104) + 600)|0;
-          HEAP32[18142] = $105;
-          $106 = HEAP32[18141]|0;
-          $107 = (($106) + 1)|0;
-          HEAP32[18141] = $107;
-          $$01113$us$i$i$i = $4;$120 = 599;
-          while(1) {
-           $108 = ((($$01113$us$i$i$i)) + 1|0);
-           $109 = HEAP8[$$01113$us$i$i$i>>0]|0;
-           $110 = HEAP32[18133]|0;
-           $111 = HEAP32[18149]|0;
-           $112 = (($111) + 1)|0;
-           HEAP32[18149] = $112;
-           $113 = (($110) + ($111)|0);
-           $114 = HEAP8[$113>>0]|0;
-           $115 = $114 ^ $109;
-           HEAP8[$113>>0] = $115;
-           $116 = ($112>>>0)>(599);
-           if ($116) {
-            HEAP32[18149] = 0;
-            _mix_pool($110);
-            $117 = HEAP32[18138]|0;
-            $118 = (($117) + 1)|0;
-            HEAP32[18138] = $118;
-            $119 = ($120|0)==(0);
-            $121 = $119&1;
-            HEAP32[18150] = $121;
-           }
-           $122 = (($120) + -1)|0;
-           $123 = ($120|0)==(0);
-           if ($123) {
-            break;
-           } else {
-            $$01113$us$i$i$i = $108;$120 = $122;
-           }
-          }
-          $124 = (_getpid()|0);
-          $$sroa$358$0$extract$shift$i = $124 >>> 24;
-          $$sroa$358$0$extract$trunc$i = $$sroa$358$0$extract$shift$i&255;
-          $125 = HEAP32[18132]|0;
-          $126 = ($125|0)==(0);
-          $127 = $124 >>> 8;
-          $128 = $127&255;
-          $129 = $124 >>> 16;
-          $130 = $129&255;
-          if ($126) {
-           label = 45;
-           break L6;
-          }
-          $131 = $124&255;
-          $132 = HEAP32[18142]|0;
-          $133 = (($132) + 4)|0;
-          HEAP32[18142] = $133;
-          $134 = HEAP32[18141]|0;
-          $135 = (($134) + 1)|0;
-          HEAP32[18141] = $135;
-          $136 = HEAP32[18133]|0;
-          $137 = HEAP32[18149]|0;
-          $138 = (($137) + 1)|0;
-          HEAP32[18149] = $138;
-          $139 = (($136) + ($137)|0);
-          $140 = HEAP8[$139>>0]|0;
-          $141 = $140 ^ $131;
-          HEAP8[$139>>0] = $141;
-          $142 = ($138>>>0)>(599);
-          if ($142) {
-           HEAP32[18149] = 0;
-           _mix_pool($136);
-           $143 = HEAP32[18138]|0;
-           $144 = (($143) + 1)|0;
-           HEAP32[18138] = $144;
-           HEAP32[18150] = 0;
-           $$pre$i$i = HEAP32[18133]|0;
-           $$pre26$i$i = HEAP32[18149]|0;
-           $146 = $$pre26$i$i;$148 = $$pre$i$i;
-          } else {
-           $146 = $138;$148 = $136;
-          }
-          $145 = (($146) + 1)|0;
-          HEAP32[18149] = $145;
-          $147 = (($148) + ($146)|0);
-          $149 = HEAP8[$147>>0]|0;
-          $150 = $149 ^ $128;
-          HEAP8[$147>>0] = $150;
-          $151 = ($145>>>0)>(599);
-          if ($151) {
-           HEAP32[18149] = 0;
-           _mix_pool($148);
-           $248 = HEAP32[18138]|0;
-           $249 = (($248) + 1)|0;
-           HEAP32[18138] = $249;
-           HEAP32[18150] = 0;
-           $$pre27$i$i = HEAP32[18133]|0;
-           $$pre28$i$i = HEAP32[18149]|0;
-           $251 = $$pre28$i$i;$253 = $$pre27$i$i;
-          } else {
-           $251 = $145;$253 = $148;
-          }
-          $250 = (($251) + 1)|0;
-          HEAP32[18149] = $250;
-          $252 = (($253) + ($251)|0);
-          $254 = HEAP8[$252>>0]|0;
-          $255 = $254 ^ $130;
-          HEAP8[$252>>0] = $255;
-          $256 = ($250>>>0)>(599);
-          if ($256) {
-           HEAP32[18149] = 0;
-           _mix_pool($253);
-           $257 = HEAP32[18138]|0;
-           $258 = (($257) + 1)|0;
-           HEAP32[18138] = $258;
-           HEAP32[18150] = 0;
-          }
-          $259 = HEAP32[18133]|0;
-          $260 = HEAP32[18149]|0;
-          $261 = (($260) + 1)|0;
-          HEAP32[18149] = $261;
-          $262 = (($259) + ($260)|0);
-          $263 = HEAP8[$262>>0]|0;
-          $264 = $263 ^ $$sroa$358$0$extract$trunc$i;
-          HEAP8[$262>>0] = $264;
-          $265 = ($261>>>0)>(599);
-          if ($265) {
-           HEAP32[18149] = 0;
-           _mix_pool($259);
-           $266 = HEAP32[18138]|0;
-           $267 = (($266) + 1)|0;
-           HEAP32[18138] = $267;
-           HEAP32[18150] = 1;
-          }
-          $153 = (_time((0|0))|0);
-          $$sroa$353$0$extract$shift$i = $153 >>> 24;
-          $$sroa$353$0$extract$trunc$i = $$sroa$353$0$extract$shift$i&255;
-          $268 = HEAP32[18132]|0;
-          $269 = ($268|0)==(0);
-          $270 = $153 >>> 8;
-          $173 = $270&255;
-          $271 = $153 >>> 16;
-          $231 = $271&255;
-          if ($269) {
-           label = 49;
-           break L6;
-          }
-          $152 = $153&255;
-          $154 = HEAP32[18142]|0;
-          $155 = (($154) + 4)|0;
-          HEAP32[18142] = $155;
-          $156 = HEAP32[18141]|0;
-          $157 = (($156) + 1)|0;
-          HEAP32[18141] = $157;
-          $158 = HEAP32[18133]|0;
-          $159 = HEAP32[18149]|0;
-          $160 = (($159) + 1)|0;
-          HEAP32[18149] = $160;
-          $161 = (($158) + ($159)|0);
-          $162 = HEAP8[$161>>0]|0;
-          $163 = $162 ^ $152;
-          HEAP8[$161>>0] = $163;
-          $164 = ($160>>>0)>(599);
-          if ($164) {
-           HEAP32[18149] = 0;
-           _mix_pool($158);
-           $165 = HEAP32[18138]|0;
-           $166 = (($165) + 1)|0;
-           HEAP32[18138] = $166;
-           HEAP32[18150] = 0;
-           $$pre29$i$i = HEAP32[18133]|0;
-           $$pre30$i$i = HEAP32[18149]|0;
-           $168 = $$pre30$i$i;$170 = $$pre29$i$i;
-          } else {
-           $168 = $160;$170 = $158;
-          }
-          $167 = (($168) + 1)|0;
-          HEAP32[18149] = $167;
-          $169 = (($170) + ($168)|0);
-          $171 = HEAP8[$169>>0]|0;
-          $172 = $171 ^ $173;
-          HEAP8[$169>>0] = $172;
-          $174 = ($167>>>0)>(599);
-          if ($174) {
-           HEAP32[18149] = 0;
-           _mix_pool($170);
-           $223 = HEAP32[18138]|0;
-           $224 = (($223) + 1)|0;
-           HEAP32[18138] = $224;
-           HEAP32[18150] = 0;
-           $$pre31$i$i = HEAP32[18133]|0;
-           $$pre32$i$i = HEAP32[18149]|0;
-           $226 = $$pre32$i$i;$228 = $$pre31$i$i;
-          } else {
-           $226 = $167;$228 = $170;
-          }
-          $225 = (($226) + 1)|0;
-          HEAP32[18149] = $225;
-          $227 = (($228) + ($226)|0);
-          $229 = HEAP8[$227>>0]|0;
-          $230 = $229 ^ $231;
-          HEAP8[$227>>0] = $230;
-          $232 = ($225>>>0)>(599);
-          if ($232) {
-           HEAP32[18149] = 0;
-           _mix_pool($228);
-           $233 = HEAP32[18138]|0;
-           $234 = (($233) + 1)|0;
-           HEAP32[18138] = $234;
-           HEAP32[18150] = 0;
-          }
-          $235 = HEAP32[18133]|0;
-          $236 = HEAP32[18149]|0;
-          $237 = (($236) + 1)|0;
-          HEAP32[18149] = $237;
-          $238 = (($235) + ($236)|0);
-          $239 = HEAP8[$238>>0]|0;
-          $240 = $239 ^ $$sroa$353$0$extract$trunc$i;
-          HEAP8[$238>>0] = $240;
-          $241 = ($237>>>0)>(599);
-          if ($241) {
-           HEAP32[18149] = 0;
-           _mix_pool($235);
-           $242 = HEAP32[18138]|0;
-           $243 = (($242) + 1)|0;
-           HEAP32[18138] = $243;
-           HEAP32[18150] = 1;
-          }
-          $176 = (_clock()|0);
-          $$sroa$3$0$extract$shift$i = $176 >>> 24;
-          $$sroa$3$0$extract$trunc$i = $$sroa$3$0$extract$shift$i&255;
-          $244 = HEAP32[18132]|0;
-          $245 = ($244|0)==(0);
-          $246 = $176 >>> 8;
-          $196 = $246&255;
-          $247 = $176 >>> 16;
-          $208 = $247&255;
-          if ($245) {
-           label = 53;
-           break L6;
-          }
-          $175 = $176&255;
-          $177 = HEAP32[18142]|0;
-          $178 = (($177) + 4)|0;
-          HEAP32[18142] = $178;
-          $179 = HEAP32[18141]|0;
-          $180 = (($179) + 1)|0;
-          HEAP32[18141] = $180;
-          $181 = HEAP32[18133]|0;
-          $182 = HEAP32[18149]|0;
-          $183 = (($182) + 1)|0;
-          HEAP32[18149] = $183;
-          $184 = (($181) + ($182)|0);
-          $185 = HEAP8[$184>>0]|0;
-          $186 = $185 ^ $175;
-          HEAP8[$184>>0] = $186;
-          $187 = ($183>>>0)>(599);
-          if ($187) {
-           HEAP32[18149] = 0;
-           _mix_pool($181);
-           $188 = HEAP32[18138]|0;
-           $189 = (($188) + 1)|0;
-           HEAP32[18138] = $189;
-           HEAP32[18150] = 0;
-           $$pre33$i$i = HEAP32[18133]|0;
-           $$pre34$i$i = HEAP32[18149]|0;
-           $191 = $$pre34$i$i;$193 = $$pre33$i$i;
-          } else {
-           $191 = $183;$193 = $181;
-          }
-          $190 = (($191) + 1)|0;
-          HEAP32[18149] = $190;
-          $192 = (($193) + ($191)|0);
-          $194 = HEAP8[$192>>0]|0;
-          $195 = $194 ^ $196;
-          HEAP8[$192>>0] = $195;
-          $197 = ($190>>>0)>(599);
-          if ($197) {
-           HEAP32[18149] = 0;
-           _mix_pool($193);
-           $200 = HEAP32[18138]|0;
-           $201 = (($200) + 1)|0;
-           HEAP32[18138] = $201;
-           HEAP32[18150] = 0;
-           $$pre35$i$i = HEAP32[18133]|0;
-           $$pre36$i$i = HEAP32[18149]|0;
-           $203 = $$pre36$i$i;$205 = $$pre35$i$i;
-          } else {
-           $203 = $190;$205 = $193;
-          }
-          $202 = (($203) + 1)|0;
-          HEAP32[18149] = $202;
-          $204 = (($205) + ($203)|0);
-          $206 = HEAP8[$204>>0]|0;
-          $207 = $206 ^ $208;
-          HEAP8[$204>>0] = $207;
-          $209 = ($202>>>0)>(599);
-          if ($209) {
-           HEAP32[18149] = 0;
-           _mix_pool($205);
-           $210 = HEAP32[18138]|0;
-           $211 = (($210) + 1)|0;
-           HEAP32[18138] = $211;
-           HEAP32[18150] = 0;
-          }
-          $212 = HEAP32[18133]|0;
-          $213 = HEAP32[18149]|0;
-          $214 = (($213) + 1)|0;
-          HEAP32[18149] = $214;
-          $215 = (($212) + ($213)|0);
-          $216 = HEAP8[$215>>0]|0;
-          $217 = $216 ^ $$sroa$3$0$extract$trunc$i;
-          HEAP8[$215>>0] = $217;
-          $218 = ($214>>>0)>(599);
-          if ($218) {
-           HEAP32[18149] = 0;
-           _mix_pool($212);
-           $219 = HEAP32[18138]|0;
-           $220 = (($219) + 1)|0;
-           HEAP32[18138] = $220;
-           HEAP32[18150] = 1;
-          }
-          $221 = HEAP32[18136]|0;
-          $222 = ($221|0)==(0|0);
-          if ($222) {
-           label = 57;
-           break L6;
-          }
-          $198 = (__gcry_rndlinux_gather_random(84,0,16,0)|0);
-          $199 = ($198|0)<(0);
-          if ($199) {
-           label = 59;
-           break L6;
-          }
-          HEAP32[18153] = 1;
-          HEAP32[18137] = 1;
-          break L31;
-          break;
-         }
-         default: {
-          $92 = (__gcry_gettext(68163)|0);
-          __gcry_log_info($92,$vararg_buffer18);
-          (_close($65)|0);
-          break L33;
-         }
-         }
-        }
-       } while(0);
-      }
-     } while(0);
-     $272 = HEAP32[18154]|0;
-     $273 = ($272|0)!=(0);
-     $or$cond$i = $19 | $273;
-     if ($or$cond$i) {
-      if ($20) {
-       $$pr$i = HEAP32[18155]|0;
-       $282 = $$pr$i;
-       label = 88;
-      }
-     } else {
-      HEAP32[18155] = 0;
-      $274 = ($$040$i>>>0)>(16);
-      $$$040$i = $274 ? $$040$i : 16;
-      $275 = HEAP32[18136]|0;
-      $276 = ($275|0)==(0|0);
-      if ($276) {
-       label = 82;
-       break L6;
-      }
-      $277 = (__gcry_rndlinux_gather_random(84,4,$$$040$i,2)|0);
-      $278 = ($277|0)<(0);
-      if ($278) {
-       label = 84;
-       break L6;
-      }
-      $279 = HEAP32[18155]|0;
-      $280 = (($279) + ($$$040$i))|0;
-      HEAP32[18155] = $280;
-      HEAP32[18154] = 1;
-      $282 = $280;
-      label = 88;
-     }
-     if ((label|0) == 88) {
-      label = 0;
-      $281 = ($282>>>0)<($$040$i>>>0);
-      if ($281) {
-       $283 = ($282|0)<(0);
-       if ($283) {
-        HEAP32[18155] = 0;
-        $285 = 0;
-       } else {
-        $285 = $282;
-       }
-       $284 = (($$040$i) - ($285))|0;
-       $286 = ($284>>>0)>(600);
-       if ($286) {
-        label = 92;
-        break L6;
-       }
-       $287 = HEAP32[18136]|0;
-       $288 = ($287|0)==(0|0);
-       if ($288) {
-        label = 94;
-        break L6;
-       }
-       $289 = (__gcry_rndlinux_gather_random(84,4,$284,2)|0);
-       $290 = ($289|0)<(0);
-       if ($290) {
-        label = 96;
-        break L6;
-       }
-       $291 = HEAP32[18155]|0;
-       $292 = (($291) + ($284))|0;
-       HEAP32[18155] = $292;
-      }
-     }
-     $293 = HEAP32[18137]|0;
-     $294 = ($293|0)==(0);
-     if ($294) {
-      while(1) {
-       $297 = HEAP32[18139]|0;
-       $298 = (($297) + 1)|0;
-       HEAP32[18139] = $298;
-       $299 = HEAP32[18136]|0;
-       $300 = ($299|0)==(0|0);
-       if ($300) {
-        label = 102;
-        break L6;
-       }
-       $301 = (__gcry_rndlinux_gather_random(84,3,120,1)|0);
-       $302 = ($301|0)<(0);
-       if ($302) {
-        label = 104;
-        break L6;
-       }
-       $295 = HEAP32[18137]|0;
-       $296 = ($295|0)==(0);
-       if (!($296)) {
-        break;
-       }
-      }
-     }
-     _do_fast_random_poll();
-     $303 = HEAP32[10063]|0;
-     $$sroa$4$0$extract$shift = $303 >>> 24;
-     $$sroa$4$0$extract$trunc = $$sroa$4$0$extract$shift&255;
-     $304 = HEAP32[18132]|0;
-     $305 = ($304|0)==(0);
-     $306 = $303 >>> 8;
-     $307 = $306&255;
-     $308 = $303 >>> 16;
-     $309 = $308&255;
-     if ($305) {
-      label = 106;
-      break L6;
-     }
-     $310 = $303&255;
-     $311 = HEAP32[18142]|0;
-     $312 = (($311) + 4)|0;
-     HEAP32[18142] = $312;
-     $313 = HEAP32[18141]|0;
-     $314 = (($313) + 1)|0;
-     HEAP32[18141] = $314;
-     $315 = HEAP32[18133]|0;
-     $316 = HEAP32[18149]|0;
-     $317 = (($316) + 1)|0;
-     HEAP32[18149] = $317;
-     $318 = (($315) + ($316)|0);
-     $319 = HEAP8[$318>>0]|0;
-     $320 = $319 ^ $310;
-     HEAP8[$318>>0] = $320;
-     $321 = ($317>>>0)>(599);
-     if ($321) {
-      HEAP32[18149] = 0;
-      _mix_pool($315);
-      $322 = HEAP32[18138]|0;
-      $323 = (($322) + 1)|0;
-      HEAP32[18138] = $323;
-      HEAP32[18150] = 0;
-      $$pre80$i = HEAP32[18133]|0;
-      $$pre81$i = HEAP32[18149]|0;
-      $325 = $$pre81$i;$327 = $$pre80$i;
-     } else {
-      $325 = $317;$327 = $315;
-     }
-     $324 = (($325) + 1)|0;
-     HEAP32[18149] = $324;
-     $326 = (($327) + ($325)|0);
-     $328 = HEAP8[$326>>0]|0;
-     $329 = $328 ^ $307;
-     HEAP8[$326>>0] = $329;
-     $330 = ($324>>>0)>(599);
-     if ($330) {
-      HEAP32[18149] = 0;
-      _mix_pool($327);
-      $410 = HEAP32[18138]|0;
-      $411 = (($410) + 1)|0;
-      HEAP32[18138] = $411;
-      HEAP32[18150] = 0;
-      $$pre82$i = HEAP32[18133]|0;
-      $$pre83$i = HEAP32[18149]|0;
-      $413 = $$pre83$i;$415 = $$pre82$i;
-     } else {
-      $413 = $324;$415 = $327;
-     }
-     $412 = (($413) + 1)|0;
-     HEAP32[18149] = $412;
-     $414 = (($415) + ($413)|0);
-     $416 = HEAP8[$414>>0]|0;
-     $417 = $416 ^ $309;
-     HEAP8[$414>>0] = $417;
-     $418 = ($412>>>0)>(599);
-     if ($418) {
-      HEAP32[18149] = 0;
-      _mix_pool($415);
-      $419 = HEAP32[18138]|0;
-      $420 = (($419) + 1)|0;
-      HEAP32[18138] = $420;
-      HEAP32[18150] = 0;
-     }
-     $331 = HEAP32[18133]|0;
-     $421 = HEAP32[18149]|0;
-     $422 = (($421) + 1)|0;
-     HEAP32[18149] = $422;
-     $423 = (($331) + ($421)|0);
-     $424 = HEAP8[$423>>0]|0;
-     $425 = $424 ^ $$sroa$4$0$extract$trunc;
-     HEAP8[$423>>0] = $425;
-     $426 = ($422>>>0)>(599);
-     if ($426) {
-      HEAP32[18149] = 0;
-      _mix_pool($331);
-      $427 = HEAP32[18138]|0;
-      $428 = (($427) + 1)|0;
-      HEAP32[18138] = $428;
-      HEAP32[18150] = 1;
-     } else {
-      $$pre84$i = HEAP32[18150]|0;
-      $429 = ($$pre84$i|0)==(0);
-      if ($429) {
-       _mix_pool($331);
-       $332 = HEAP32[18138]|0;
-       $333 = (($332) + 1)|0;
-       HEAP32[18138] = $333;
-      }
-     }
-     $334 = HEAP32[18135]|0;
-     $335 = HEAP32[18133]|0;
-     $$03763$i = $334;$$03862$i = $335;$$03961$i = 0;
-     while(1) {
-      $336 = HEAP32[$$03862$i>>2]|0;
-      $337 = (($336) + -1515870811)|0;
-      HEAP32[$$03763$i>>2] = $337;
-      $338 = (($$03961$i) + 1)|0;
-      $339 = ((($$03763$i)) + 4|0);
-      $340 = ((($$03862$i)) + 4|0);
-      $exitcond$i = ($338|0)==(150);
-      if ($exitcond$i) {
-       break;
-      } else {
-       $$03763$i = $339;$$03862$i = $340;$$03961$i = $338;
-      }
-     }
-     _mix_pool($335);
-     $341 = HEAP32[18138]|0;
-     $342 = (($341) + 1)|0;
-     HEAP32[18138] = $342;
-     $343 = HEAP32[18135]|0;
-     _mix_pool($343);
-     $344 = HEAP32[18143]|0;
-     $345 = (($344) + 1)|0;
-     HEAP32[18143] = $345;
-     $346 = ($$040$i|0)==(0);
-     if ($346) {
-      $$pre86$i = HEAP32[18155]|0;
-      $$1$lcssa$i = $$0$i;$358 = $$pre86$i;
-     } else {
-      $347 = HEAP32[18135]|0;
-      $pool_readpos$promoted$i = HEAP32[18156]|0;
-      $pool_balance$promoted$i = HEAP32[18155]|0;
-      $$164$i = $$0$i;$$in$i = $$040$i;$350 = $pool_readpos$promoted$i;
-      while(1) {
-       $348 = (($$in$i) + -1)|0;
-       $349 = (($350) + 1)|0;
-       $351 = (($347) + ($350)|0);
-       $352 = HEAP8[$351>>0]|0;
-       $353 = ((($$164$i)) + 1|0);
-       HEAP8[$$164$i>>0] = $352;
-       $354 = ($349>>>0)>(599);
-       $spec$select$i = $354 ? 0 : $349;
-       $355 = ($348|0)==(0);
-       if ($355) {
-        break;
-       } else {
-        $$164$i = $353;$$in$i = $348;$350 = $spec$select$i;
-       }
-      }
-      $scevgep$i = (($$0$i) + ($$040$i)|0);
-      $356 = (($pool_balance$promoted$i) - ($$040$i))|0;
-      HEAP32[18156] = $spec$select$i;
-      HEAP32[18155] = $356;
-      $$1$lcssa$i = $scevgep$i;$358 = $356;
-     }
-     $357 = ($358|0)<(0);
-     if ($357) {
-      HEAP32[18155] = 0;
-     }
-     $359 = HEAP32[18135]|0;
-     _memset(($359|0),0,600)|0;
-     $360 = (_getpid()|0);
-     $$0$$0$$0$13$i = HEAP32[$5>>2]|0;
-     $361 = ($360|0)==($$0$$0$$0$13$i|0);
-     if ($361) {
-      break;
-     }
-     $362 = (_getpid()|0);
-     $$sroa$3$0$extract$shift = $362 >>> 24;
-     $$sroa$3$0$extract$trunc = $$sroa$3$0$extract$shift&255;
-     $363 = HEAP32[18132]|0;
-     $364 = ($363|0)==(0);
-     $365 = $362 >>> 8;
-     $366 = $365&255;
-     $367 = $362 >>> 16;
-     $368 = $367&255;
-     if ($364) {
-      label = 122;
-      break L6;
-     }
-     $369 = $362&255;
-     $370 = HEAP32[18142]|0;
-     $371 = (($370) + 4)|0;
-     HEAP32[18142] = $371;
-     $372 = HEAP32[18141]|0;
-     $373 = (($372) + 1)|0;
-     HEAP32[18141] = $373;
-     $374 = HEAP32[18133]|0;
-     $375 = HEAP32[18149]|0;
-     $376 = (($375) + 1)|0;
-     HEAP32[18149] = $376;
-     $377 = (($374) + ($375)|0);
-     $378 = HEAP8[$377>>0]|0;
-     $379 = $378 ^ $369;
-     HEAP8[$377>>0] = $379;
-     $380 = ($376>>>0)>(599);
-     if ($380) {
-      HEAP32[18149] = 0;
-      _mix_pool($374);
-      $381 = HEAP32[18138]|0;
-      $382 = (($381) + 1)|0;
-      HEAP32[18138] = $382;
-      HEAP32[18150] = 0;
-      $$pre87$i = HEAP32[18133]|0;
-      $$pre88$i = HEAP32[18149]|0;
-      $384 = $$pre88$i;$386 = $$pre87$i;
-     } else {
-      $384 = $376;$386 = $374;
-     }
-     $383 = (($384) + 1)|0;
-     HEAP32[18149] = $383;
-     $385 = (($386) + ($384)|0);
-     $387 = HEAP8[$385>>0]|0;
-     $388 = $387 ^ $366;
-     HEAP8[$385>>0] = $388;
-     $389 = ($383>>>0)>(599);
-     if ($389) {
-      HEAP32[18149] = 0;
-      _mix_pool($386);
-      $430 = HEAP32[18138]|0;
-      $431 = (($430) + 1)|0;
-      HEAP32[18138] = $431;
-      HEAP32[18150] = 0;
-      $$pre89$i = HEAP32[18133]|0;
-      $$pre90$i = HEAP32[18149]|0;
-      $433 = $$pre90$i;$435 = $$pre89$i;
-     } else {
-      $433 = $383;$435 = $386;
-     }
-     $432 = (($433) + 1)|0;
-     HEAP32[18149] = $432;
-     $434 = (($435) + ($433)|0);
-     $436 = HEAP8[$434>>0]|0;
-     $437 = $436 ^ $368;
-     HEAP8[$434>>0] = $437;
-     $438 = ($432>>>0)>(599);
-     if ($438) {
-      HEAP32[18149] = 0;
-      _mix_pool($435);
-      $439 = HEAP32[18138]|0;
-      $440 = (($439) + 1)|0;
-      HEAP32[18138] = $440;
-      HEAP32[18150] = 0;
-     }
-     $441 = HEAP32[18133]|0;
-     $442 = HEAP32[18149]|0;
-     $443 = (($442) + 1)|0;
-     HEAP32[18149] = $443;
-     $444 = (($441) + ($442)|0);
-     $445 = HEAP8[$444>>0]|0;
-     $446 = $445 ^ $$sroa$3$0$extract$trunc;
-     HEAP8[$444>>0] = $446;
-     $447 = ($443>>>0)>(599);
-     if ($447) {
-      HEAP32[18149] = 0;
-      _mix_pool($441);
-      $448 = HEAP32[18138]|0;
-      $449 = (($448) + 1)|0;
-      HEAP32[18138] = $449;
-      HEAP32[18150] = 1;
-     }
-     HEAP32[18150] = 0;
-     HEAP32[10063] = $362;
-     $$0$i = $$1$lcssa$i;$$040$i = -1;
-    }
-    $450 = (($$03536) - ($451))|0;
-    $452 = ($450|0)==(0);
-    if ($452) {
-     break L4;
-    }
-    $453 = (($$0183437) + ($451)|0);
-    $$pre = HEAP32[18132]|0;
-    $454 = ($450>>>0)<(600);
-    $455 = $454 ? $450 : 600;
-    $456 = ($$pre|0)==(0);
-    if ($456) {
-     label = 5;
-     break;
-    } else {
-     $$0183437 = $453;$$03536 = $450;$451 = $455;
-    }
-   }
-   switch (label|0) {
-    case 5: {
-     __gcry_assert_failed(67953,67968,934,67993);
-     // unreachable;
-     break;
-    }
-    case 11: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 16: {
-     __gcry_assert_failed(67953,67968,953,67993);
-     // unreachable;
-     break;
-    }
-    case 18: {
-     __gcry_log_bug(68018,$vararg_buffer1);
-     // unreachable;
-     break;
-    }
-    case 37: {
-     $97 = (__gcry_gettext(68217)|0);
-     $98 = HEAP32[18152]|0;
-     $99 = (___errno_location()|0);
-     $100 = HEAP32[$99>>2]|0;
-     $101 = (_strerror($100)|0);
-     HEAP32[$vararg_buffer20>>2] = $98;
-     $vararg_ptr23 = ((($vararg_buffer20)) + 4|0);
-     HEAP32[$vararg_ptr23>>2] = $101;
-     __gcry_log_fatal($97,$vararg_buffer20);
-     // unreachable;
-     break;
-    }
-    case 39: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 45: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 49: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 53: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 57: {
-     __gcry_log_fatal(68238,$vararg_buffer24);
-     // unreachable;
-     break;
-    }
-    case 59: {
-     __gcry_log_fatal(68289,$vararg_buffer26);
-     // unreachable;
-     break;
-    }
-    case 82: {
-     __gcry_log_fatal(68238,$vararg_buffer28);
-     // unreachable;
-     break;
-    }
-    case 84: {
-     __gcry_log_fatal(68289,$vararg_buffer30);
-     // unreachable;
-     break;
-    }
-    case 92: {
-     __gcry_bug(67968,995,67993);
-     // unreachable;
-     break;
-    }
-    case 94: {
-     __gcry_log_fatal(68238,$vararg_buffer32);
-     // unreachable;
-     break;
-    }
-    case 96: {
-     __gcry_log_fatal(68289,$vararg_buffer34);
-     // unreachable;
-     break;
-    }
-    case 102: {
-     __gcry_log_fatal(68238,$vararg_buffer36);
-     // unreachable;
-     break;
-    }
-    case 104: {
-     __gcry_log_fatal(68289,$vararg_buffer38);
-     // unreachable;
-     break;
-    }
-    case 106: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-    case 122: {
-     __gcry_assert_failed(67953,67968,1074,68003);
-     // unreachable;
-     break;
-    }
-   }
-  }
- } while(0);
- HEAP32[18132] = 0;
- $457 = (_gpgrt_lock_unlock(40208)|0);
- $458 = ($457|0)==(0);
- if ($458) {
-  STACKTOP = sp;return;
- } else {
-  $459 = (_gpg_strerror($457)|0);
-  HEAP32[$vararg_buffer40>>2] = $459;
-  __gcry_log_fatal(67776,$vararg_buffer40);
-  // unreachable;
- }
-}
-function _lock_seed_file($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$010 = 0, $$09 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer5 = 0, $vararg_buffer8 = 
0, $vararg_ptr4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer8 = sp + 24|0;
- $vararg_buffer5 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = sp + 40|0;
- $4 = sp + 32|0;
- $5 = ((($3)) + 4|0);
- ;HEAP32[$5>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;
- $6 = ($2|0)!=(0);
- $7 = $6&1;
- HEAP16[$3>>1] = $7;
- $8 = ((($3)) + 2|0);
- HEAP16[$8>>1] = 0;
- HEAP32[$vararg_buffer>>2] = $3;
- $9 = (_fcntl($0,13,$vararg_buffer)|0);
- $10 = ($9|0)==(-1);
- if (!($10)) {
-  $$09 = 0;
-  STACKTOP = sp;return ($$09|0);
- }
- $11 = ((($4)) + 4|0);
- $$010 = 0;
- while(1) {
-  $12 = (___errno_location()|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($13|0)==(11);
-  if (!($14)) {
-   $15 = (___errno_location()|0);
-   $16 = HEAP32[$15>>2]|0;
-   $17 = ($16|0)==(13);
-   if (!($17)) {
-    break;
-   }
-  }
-  $22 = ($$010>>>0)>(2);
-  if ($22) {
-   $23 = (__gcry_gettext(68368)|0);
-   HEAP32[$vararg_buffer5>>2] = $1;
-   __gcry_log_info($23,$vararg_buffer5);
-  }
-  HEAP32[$4>>2] = $$010;
-  HEAP32[$11>>2] = 250000;
-  (_select(0,0,0,0,$4)|0);
-  $24 = ($$010>>>0)<(10);
-  $25 = $24&1;
-  $spec$select = (($$010) + ($25))|0;
-  HEAP32[$vararg_buffer8>>2] = $3;
-  $26 = (_fcntl($0,13,$vararg_buffer8)|0);
-  $27 = ($26|0)==(-1);
-  if ($27) {
-   $$010 = $spec$select;
-  } else {
-   $$09 = 0;
-   label = 9;
-   break;
-  }
- }
- if ((label|0) == 9) {
-  STACKTOP = sp;return ($$09|0);
- }
- $18 = (__gcry_gettext(68347)|0);
- $19 = (___errno_location()|0);
- $20 = HEAP32[$19>>2]|0;
- $21 = (_strerror($20)|0);
- HEAP32[$vararg_buffer1>>2] = $1;
- $vararg_ptr4 = ((($vararg_buffer1)) + 4|0);
- HEAP32[$vararg_ptr4>>2] = $21;
- __gcry_log_info($18,$vararg_buffer1);
- $$09 = -1;
- STACKTOP = sp;return ($$09|0);
-}
-function _add_randomness($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$01113 = 0, $$01113$us = 0, $$014 = 0, $$1 = 0, $$2 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 
= 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[18132]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $5 = HEAP32[18142]|0;
- $6 = (($5) + ($1))|0;
- HEAP32[18142] = $6;
- $7 = HEAP32[18141]|0;
- $8 = (($7) + 1)|0;
- HEAP32[18141] = $8;
- $9 = (($1) + -1)|0;
- $10 = ($1|0)==(0);
- if ($10) {
-  return;
- }
- $11 = ($2>>>0)<(3);
- if ($11) {
-  $$01113$us = $0;$24 = $9;
-  while(1) {
-   $12 = ((($$01113$us)) + 1|0);
-   $13 = HEAP8[$$01113$us>>0]|0;
-   $14 = HEAP32[18133]|0;
-   $15 = HEAP32[18149]|0;
-   $16 = (($15) + 1)|0;
-   HEAP32[18149] = $16;
-   $17 = (($14) + ($15)|0);
-   $18 = HEAP8[$17>>0]|0;
-   $19 = $18 ^ $13;
-   HEAP8[$17>>0] = $19;
-   $20 = ($16>>>0)>(599);
-   if ($20) {
-    HEAP32[18149] = 0;
-    _mix_pool($14);
-    $21 = HEAP32[18138]|0;
-    $22 = (($21) + 1)|0;
-    HEAP32[18138] = $22;
-    $23 = ($24|0)==(0);
-    $25 = $23&1;
-    HEAP32[18150] = $25;
-   }
-   $26 = (($24) + -1)|0;
-   $27 = ($24|0)==(0);
-   if ($27) {
-    break;
-   } else {
-    $$01113$us = $12;$24 = $26;
-   }
-  }
-  return;
- }
- $$01113 = $0;$$014 = 0;$46 = $9;
- while(1) {
-  $28 = ((($$01113)) + 1|0);
-  $29 = HEAP8[$$01113>>0]|0;
-  $30 = HEAP32[18133]|0;
-  $31 = HEAP32[18149]|0;
-  $32 = (($31) + 1)|0;
-  HEAP32[18149] = $32;
-  $33 = (($30) + ($31)|0);
-  $34 = HEAP8[$33>>0]|0;
-  $35 = $34 ^ $29;
-  HEAP8[$33>>0] = $35;
-  $36 = (($$014) + 1)|0;
-  $37 = ($32>>>0)>(599);
-  if ($37) {
-   $38 = HEAP32[18137]|0;
-   $39 = ($38|0)==(0);
-   if ($39) {
-    $40 = HEAP32[18157]|0;
-    $41 = (($40) + ($36))|0;
-    HEAP32[18157] = $41;
-    $42 = ($41>>>0)>(599);
-    if ($42) {
-     HEAP32[18137] = 1;
-     $$1 = 0;
-    } else {
-     $$1 = 0;
-    }
-   } else {
-    $$1 = $36;
-   }
-   HEAP32[18149] = 0;
-   _mix_pool($30);
-   $43 = HEAP32[18138]|0;
-   $44 = (($43) + 1)|0;
-   HEAP32[18138] = $44;
-   $45 = ($46|0)==(0);
-   $47 = $45&1;
-   HEAP32[18150] = $47;
-   $$2 = $$1;
-  } else {
-   $$2 = $36;
-  }
-  $48 = (($46) + -1)|0;
-  $49 = ($46|0)==(0);
-  if ($49) {
-   break;
-  } else {
-   $$01113 = $28;$$014 = $$2;$46 = $48;
-  }
- }
- return;
-}
-function _do_fast_random_poll() {
- var $$01113$us$i3 = 0, $$pre = 0, $$pre13 = 0, $$pre14 = 0, $$pre15 = 0, 
$$pre16 = 0, $$pre17 = 0, $$pre18 = 0, $$pre19 = 0, $$pre20 = 0, $$pre21 = 0, 
$$pre22 = 0, $$pre23 = 0, $$pre24 = 0, $$pre25 = 0, $$pre26 = 0, $$pre27 = 0, 
$0 = 0, $1 = 0, $10 = 0;
- var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, 
$107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, 
$114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0;
- var $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 
= 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0;
- var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 
= 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0;
- var $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 
= 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 
= 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0;
- var $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 
= 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 
= 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0;
- var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, 
$198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, 
$204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0;
- var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 
= 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 
= 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0;
- var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $24 = 0, $25 = 0, $26 = 
0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 
0, $35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0;
- var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 
0, $9 = 0, $90 = 0, $91 = 0;
- var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(160|0);
- $0 = sp + 144|0;
- $1 = sp + 8|0;
- $2 = sp + 4|0;
- $3 = sp;
- $4 = HEAP32[18132]|0;
- $5 = ($4|0)==(0);
- if ($5) {
-  __gcry_assert_failed(67953,67968,1180,68327);
-  // unreachable;
- }
- $6 = HEAP32[18140]|0;
- $7 = (($6) + 1)|0;
- HEAP32[18140] = $7;
- $8 = (_gettimeofday(($0|0),(0|0))|0);
- $9 = ($8|0)==(0);
- if (!($9)) {
-  __gcry_bug(67968,1198,68327);
-  // unreachable;
- }
- $10 = HEAP32[18132]|0;
- $11 = ($10|0)==(0);
- if ($11) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $12 = HEAP32[18142]|0;
- $13 = (($12) + 4)|0;
- HEAP32[18142] = $13;
- $14 = HEAP32[18141]|0;
- $15 = (($14) + 1)|0;
- HEAP32[18141] = $15;
- $16 = ((($0)) + 1|0);
- $17 = HEAP8[$0>>0]|0;
- $18 = HEAP32[18133]|0;
- $19 = HEAP32[18149]|0;
- $20 = (($19) + 1)|0;
- HEAP32[18149] = $20;
- $21 = (($18) + ($19)|0);
- $22 = HEAP8[$21>>0]|0;
- $23 = $22 ^ $17;
- HEAP8[$21>>0] = $23;
- $24 = ($20>>>0)>(599);
- if ($24) {
-  HEAP32[18149] = 0;
-  _mix_pool($18);
-  $25 = HEAP32[18138]|0;
-  $26 = (($25) + 1)|0;
-  HEAP32[18138] = $26;
-  HEAP32[18150] = 0;
-  $$pre = HEAP32[18133]|0;
-  $$pre13 = HEAP32[18149]|0;
-  $30 = $$pre13;$32 = $$pre;
- } else {
-  $30 = $20;$32 = $18;
- }
- $27 = ((($0)) + 2|0);
- $28 = HEAP8[$16>>0]|0;
- $29 = (($30) + 1)|0;
- HEAP32[18149] = $29;
- $31 = (($32) + ($30)|0);
- $33 = HEAP8[$31>>0]|0;
- $34 = $33 ^ $28;
- HEAP8[$31>>0] = $34;
- $35 = ($29>>>0)>(599);
- if ($35) {
-  HEAP32[18149] = 0;
-  _mix_pool($32);
-  $206 = HEAP32[18138]|0;
-  $207 = (($206) + 1)|0;
-  HEAP32[18138] = $207;
-  HEAP32[18150] = 0;
-  $$pre14 = HEAP32[18133]|0;
-  $$pre15 = HEAP32[18149]|0;
-  $211 = $$pre15;$213 = $$pre14;
- } else {
-  $211 = $29;$213 = $32;
- }
- $208 = ((($0)) + 3|0);
- $209 = HEAP8[$27>>0]|0;
- $210 = (($211) + 1)|0;
- HEAP32[18149] = $210;
- $212 = (($213) + ($211)|0);
- $214 = HEAP8[$212>>0]|0;
- $215 = $214 ^ $209;
- HEAP8[$212>>0] = $215;
- $216 = ($210>>>0)>(599);
- if ($216) {
-  HEAP32[18149] = 0;
-  _mix_pool($213);
-  $217 = HEAP32[18138]|0;
-  $218 = (($217) + 1)|0;
-  HEAP32[18138] = $218;
-  HEAP32[18150] = 0;
- }
- $219 = HEAP8[$208>>0]|0;
- $220 = HEAP32[18133]|0;
- $221 = HEAP32[18149]|0;
- $222 = (($221) + 1)|0;
- HEAP32[18149] = $222;
- $223 = (($220) + ($221)|0);
- $224 = HEAP8[$223>>0]|0;
- $225 = $224 ^ $219;
- HEAP8[$223>>0] = $225;
- $226 = ($222>>>0)>(599);
- if ($226) {
-  HEAP32[18149] = 0;
-  _mix_pool($220);
-  $227 = HEAP32[18138]|0;
-  $228 = (($227) + 1)|0;
-  HEAP32[18138] = $228;
-  HEAP32[18150] = 1;
- }
- $229 = HEAP32[18132]|0;
- $230 = ($229|0)==(0);
- if ($230) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $36 = ((($0)) + 4|0);
- $37 = HEAP32[18142]|0;
- $38 = (($37) + 4)|0;
- HEAP32[18142] = $38;
- $39 = HEAP32[18141]|0;
- $40 = (($39) + 1)|0;
- HEAP32[18141] = $40;
- $41 = ((($36)) + 1|0);
- $42 = HEAP8[$36>>0]|0;
- $43 = HEAP32[18133]|0;
- $44 = HEAP32[18149]|0;
- $45 = (($44) + 1)|0;
- HEAP32[18149] = $45;
- $46 = (($43) + ($44)|0);
- $47 = HEAP8[$46>>0]|0;
- $48 = $47 ^ $42;
- HEAP8[$46>>0] = $48;
- $49 = ($45>>>0)>(599);
- if ($49) {
-  HEAP32[18149] = 0;
-  _mix_pool($43);
-  $50 = HEAP32[18138]|0;
-  $51 = (($50) + 1)|0;
-  HEAP32[18138] = $51;
-  HEAP32[18150] = 0;
-  $$pre16 = HEAP32[18133]|0;
-  $$pre17 = HEAP32[18149]|0;
-  $55 = $$pre17;$57 = $$pre16;
- } else {
-  $55 = $45;$57 = $43;
- }
- $52 = ((($36)) + 2|0);
- $53 = HEAP8[$41>>0]|0;
- $54 = (($55) + 1)|0;
- HEAP32[18149] = $54;
- $56 = (($57) + ($55)|0);
- $58 = HEAP8[$56>>0]|0;
- $59 = $58 ^ $53;
- HEAP8[$56>>0] = $59;
- $60 = ($54>>>0)>(599);
- if ($60) {
-  HEAP32[18149] = 0;
-  _mix_pool($57);
-  $181 = HEAP32[18138]|0;
-  $182 = (($181) + 1)|0;
-  HEAP32[18138] = $182;
-  HEAP32[18150] = 0;
-  $$pre18 = HEAP32[18133]|0;
-  $$pre19 = HEAP32[18149]|0;
-  $186 = $$pre19;$188 = $$pre18;
- } else {
-  $186 = $54;$188 = $57;
- }
- $183 = ((($36)) + 3|0);
- $184 = HEAP8[$52>>0]|0;
- $185 = (($186) + 1)|0;
- HEAP32[18149] = $185;
- $187 = (($188) + ($186)|0);
- $189 = HEAP8[$187>>0]|0;
- $190 = $189 ^ $184;
- HEAP8[$187>>0] = $190;
- $191 = ($185>>>0)>(599);
- if ($191) {
-  HEAP32[18149] = 0;
-  _mix_pool($188);
-  $192 = HEAP32[18138]|0;
-  $193 = (($192) + 1)|0;
-  HEAP32[18138] = $193;
-  HEAP32[18150] = 0;
- }
- $194 = HEAP8[$183>>0]|0;
- $195 = HEAP32[18133]|0;
- $196 = HEAP32[18149]|0;
- $197 = (($196) + 1)|0;
- HEAP32[18149] = $197;
- $198 = (($195) + ($196)|0);
- $199 = HEAP8[$198>>0]|0;
- $200 = $199 ^ $194;
- HEAP8[$198>>0] = $200;
- $201 = ($197>>>0)>(599);
- if ($201) {
-  HEAP32[18149] = 0;
-  _mix_pool($195);
-  $202 = HEAP32[18138]|0;
-  $203 = (($202) + 1)|0;
-  HEAP32[18138] = $203;
-  HEAP32[18150] = 1;
- }
- (_getrusage(0,$1)|0);
- $204 = HEAP32[18132]|0;
- $205 = ($204|0)==(0);
- if ($205) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $61 = HEAP32[18142]|0;
- $62 = (($61) + 136)|0;
- HEAP32[18142] = $62;
- $63 = HEAP32[18141]|0;
- $64 = (($63) + 1)|0;
- HEAP32[18141] = $64;
- $$01113$us$i3 = $1;$77 = 135;
- while(1) {
-  $65 = ((($$01113$us$i3)) + 1|0);
-  $66 = HEAP8[$$01113$us$i3>>0]|0;
-  $67 = HEAP32[18133]|0;
-  $68 = HEAP32[18149]|0;
-  $69 = (($68) + 1)|0;
-  HEAP32[18149] = $69;
-  $70 = (($67) + ($68)|0);
-  $71 = HEAP8[$70>>0]|0;
-  $72 = $71 ^ $66;
-  HEAP8[$70>>0] = $72;
-  $73 = ($69>>>0)>(599);
-  if ($73) {
-   HEAP32[18149] = 0;
-   _mix_pool($67);
-   $74 = HEAP32[18138]|0;
-   $75 = (($74) + 1)|0;
-   HEAP32[18138] = $75;
-   $76 = ($77|0)==(0);
-   $78 = $76&1;
-   HEAP32[18150] = $78;
-  }
-  $79 = (($77) + -1)|0;
-  $80 = ($77|0)==(0);
-  if ($80) {
-   break;
-  } else {
-   $$01113$us$i3 = $65;$77 = $79;
-  }
- }
- $81 = (_time((0|0))|0);
- HEAP32[$2>>2] = $81;
- $82 = HEAP32[18132]|0;
- $83 = ($82|0)==(0);
- $84 = $81 >>> 8;
- $85 = $84&255;
- $86 = $81 >>> 16;
- $87 = $86&255;
- if ($83) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $88 = $81&255;
- $89 = HEAP32[18142]|0;
- $90 = (($89) + 4)|0;
- HEAP32[18142] = $90;
- $91 = HEAP32[18141]|0;
- $92 = (($91) + 1)|0;
- HEAP32[18141] = $92;
- $93 = HEAP32[18133]|0;
- $94 = HEAP32[18149]|0;
- $95 = (($94) + 1)|0;
- HEAP32[18149] = $95;
- $96 = (($93) + ($94)|0);
- $97 = HEAP8[$96>>0]|0;
- $98 = $97 ^ $88;
- HEAP8[$96>>0] = $98;
- $99 = ($95>>>0)>(599);
- if ($99) {
-  HEAP32[18149] = 0;
-  _mix_pool($93);
-  $100 = HEAP32[18138]|0;
-  $101 = (($100) + 1)|0;
-  HEAP32[18138] = $101;
-  HEAP32[18150] = 0;
-  $$pre20 = HEAP32[18133]|0;
-  $$pre21 = HEAP32[18149]|0;
-  $103 = $$pre21;$105 = $$pre20;
- } else {
-  $103 = $95;$105 = $93;
- }
- $102 = (($103) + 1)|0;
- HEAP32[18149] = $102;
- $104 = (($105) + ($103)|0);
- $106 = HEAP8[$104>>0]|0;
- $107 = $106 ^ $85;
- HEAP8[$104>>0] = $107;
- $108 = ($102>>>0)>(599);
- if ($108) {
-  HEAP32[18149] = 0;
-  _mix_pool($105);
-  $155 = HEAP32[18138]|0;
-  $156 = (($155) + 1)|0;
-  HEAP32[18138] = $156;
-  HEAP32[18150] = 0;
-  $$pre22 = HEAP32[18133]|0;
-  $$pre23 = HEAP32[18149]|0;
-  $159 = $$pre23;$161 = $$pre22;
- } else {
-  $159 = $102;$161 = $105;
- }
- $157 = ((($2)) + 3|0);
- $158 = (($159) + 1)|0;
- HEAP32[18149] = $158;
- $160 = (($161) + ($159)|0);
- $162 = HEAP8[$160>>0]|0;
- $163 = $162 ^ $87;
- HEAP8[$160>>0] = $163;
- $164 = ($158>>>0)>(599);
- if ($164) {
-  HEAP32[18149] = 0;
-  _mix_pool($161);
-  $165 = HEAP32[18138]|0;
-  $166 = (($165) + 1)|0;
-  HEAP32[18138] = $166;
-  HEAP32[18150] = 0;
- }
- $167 = HEAP8[$157>>0]|0;
- $168 = HEAP32[18133]|0;
- $169 = HEAP32[18149]|0;
- $170 = (($169) + 1)|0;
- HEAP32[18149] = $170;
- $171 = (($168) + ($169)|0);
- $172 = HEAP8[$171>>0]|0;
- $173 = $172 ^ $167;
- HEAP8[$171>>0] = $173;
- $174 = ($170>>>0)>(599);
- if ($174) {
-  HEAP32[18149] = 0;
-  _mix_pool($168);
-  $175 = HEAP32[18138]|0;
-  $176 = (($175) + 1)|0;
-  HEAP32[18138] = $176;
-  HEAP32[18150] = 1;
- }
- $110 = (_clock()|0);
- HEAP32[$3>>2] = $110;
- $177 = HEAP32[18132]|0;
- $178 = ($177|0)==(0);
- $179 = $110 >>> 8;
- $130 = $179&255;
- $180 = $110 >>> 16;
- $141 = $180&255;
- if ($178) {
-  __gcry_assert_failed(67953,67968,1074,68003);
-  // unreachable;
- }
- $109 = $110&255;
- $111 = HEAP32[18142]|0;
- $112 = (($111) + 4)|0;
- HEAP32[18142] = $112;
- $113 = HEAP32[18141]|0;
- $114 = (($113) + 1)|0;
- HEAP32[18141] = $114;
- $115 = HEAP32[18133]|0;
- $116 = HEAP32[18149]|0;
- $117 = (($116) + 1)|0;
- HEAP32[18149] = $117;
- $118 = (($115) + ($116)|0);
- $119 = HEAP8[$118>>0]|0;
- $120 = $119 ^ $109;
- HEAP8[$118>>0] = $120;
- $121 = ($117>>>0)>(599);
- if ($121) {
-  HEAP32[18149] = 0;
-  _mix_pool($115);
-  $122 = HEAP32[18138]|0;
-  $123 = (($122) + 1)|0;
-  HEAP32[18138] = $123;
-  HEAP32[18150] = 0;
-  $$pre24 = HEAP32[18133]|0;
-  $$pre25 = HEAP32[18149]|0;
-  $125 = $$pre25;$127 = $$pre24;
- } else {
-  $125 = $117;$127 = $115;
- }
- $124 = (($125) + 1)|0;
- HEAP32[18149] = $124;
- $126 = (($127) + ($125)|0);
- $128 = HEAP8[$126>>0]|0;
- $129 = $128 ^ $130;
- HEAP8[$126>>0] = $129;
- $131 = ($124>>>0)>(599);
- if ($131) {
-  HEAP32[18149] = 0;
-  _mix_pool($127);
-  $132 = HEAP32[18138]|0;
-  $133 = (($132) + 1)|0;
-  HEAP32[18138] = $133;
-  HEAP32[18150] = 0;
-  $$pre26 = HEAP32[18133]|0;
-  $$pre27 = HEAP32[18149]|0;
-  $136 = $$pre27;$138 = $$pre26;
- } else {
-  $136 = $124;$138 = $127;
- }
- $134 = ((($3)) + 3|0);
- $135 = (($136) + 1)|0;
- HEAP32[18149] = $135;
- $137 = (($138) + ($136)|0);
- $139 = HEAP8[$137>>0]|0;
- $140 = $139 ^ $141;
- HEAP8[$137>>0] = $140;
- $142 = ($135>>>0)>(599);
- if ($142) {
-  HEAP32[18149] = 0;
-  _mix_pool($138);
-  $143 = HEAP32[18138]|0;
-  $144 = (($143) + 1)|0;
-  HEAP32[18138] = $144;
-  HEAP32[18150] = 0;
- }
- $145 = HEAP8[$134>>0]|0;
- $146 = HEAP32[18133]|0;
- $147 = HEAP32[18149]|0;
- $148 = (($147) + 1)|0;
- HEAP32[18149] = $148;
- $149 = (($146) + ($147)|0);
- $150 = HEAP8[$149>>0]|0;
- $151 = $150 ^ $145;
- HEAP8[$149>>0] = $151;
- $152 = ($148>>>0)>(599);
- if (!($152)) {
-  STACKTOP = sp;return;
- }
- HEAP32[18149] = 0;
- _mix_pool($146);
- $153 = HEAP32[18138]|0;
- $154 = (($153) + 1)|0;
- HEAP32[18138] = $154;
- HEAP32[18150] = 1;
- STACKTOP = sp;return;
-}
-function __gcry_rngcsprng_set_seed_file($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18152]|0;
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $3 = (__gcry_xstrdup($0)|0);
-  HEAP32[18152] = $3;
-  return;
- } else {
-  __gcry_bug(67968,673,68397);
-  // unreachable;
- }
-}
-function __gcry_rngcsprng_update_seed_file() {
- var $$02328 = 0, $$02427 = 0, $$029 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 
0, $4 = 0, $40 = 0, $41 = 0;
- var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, 
$5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, 
$58 = 0, $59 = 0, $6 = 0;
- var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $or$cond = 0, $or$cond3 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0, $vararg_buffer16 
= 0, $vararg_buffer20 = 0;
- var $vararg_buffer24 = 0, $vararg_buffer28 = 0, $vararg_buffer4 = 0, 
$vararg_buffer7 = 0, $vararg_buffer9 = 0, $vararg_ptr15 = 0, $vararg_ptr19 = 0, 
$vararg_ptr23 = 0, $vararg_ptr27 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(80|0);
- $vararg_buffer28 = sp + 72|0;
- $vararg_buffer24 = sp + 64|0;
- $vararg_buffer20 = sp + 56|0;
- $vararg_buffer16 = sp + 48|0;
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer9 = sp + 32|0;
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18131]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  HEAP32[18131] = 1;
- }
- $2 = (_gpgrt_lock_lock(40208)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_fatal(67701,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18132] = 1;
- $5 = HEAP32[18152]|0;
- $6 = ($5|0)!=(0|0);
- $7 = HEAP32[18133]|0;
- $8 = ($7|0)!=(0|0);
- $or$cond = $6 & $8;
- $9 = HEAP32[18137]|0;
- $10 = ($9|0)!=(0);
- $or$cond3 = $or$cond & $10;
- if (!($or$cond3)) {
-  HEAP32[18132] = 0;
-  $11 = (_gpgrt_lock_unlock(40208)|0);
-  $12 = ($11|0)==(0);
-  if ($12) {
-   STACKTOP = sp;return;
-  } else {
-   $13 = (_gpg_strerror($11)|0);
-   HEAP32[$vararg_buffer1>>2] = $13;
-   __gcry_log_fatal(67776,$vararg_buffer1);
-   // unreachable;
-  }
- }
- $14 = HEAP32[18153]|0;
- $15 = ($14|0)==(0);
- if ($15) {
-  HEAP32[18132] = 0;
-  $16 = (_gpgrt_lock_unlock(40208)|0);
-  $17 = ($16|0)==(0);
-  if (!($17)) {
-   $18 = (_gpg_strerror($16)|0);
-   HEAP32[$vararg_buffer4>>2] = $18;
-   __gcry_log_fatal(67776,$vararg_buffer4);
-   // unreachable;
-  }
-  $19 = (__gcry_gettext(68427)|0);
-  __gcry_log_info($19,$vararg_buffer7);
-  STACKTOP = sp;return;
- }
- $20 = HEAP32[18135]|0;
- $$02328 = $7;$$02427 = $20;$$029 = 0;
- while(1) {
-  $21 = HEAP32[$$02328>>2]|0;
-  $22 = (($21) + -1515870811)|0;
-  HEAP32[$$02427>>2] = $22;
-  $23 = (($$029) + 1)|0;
-  $24 = ((($$02427)) + 4|0);
-  $25 = ((($$02328)) + 4|0);
-  $exitcond = ($23|0)==(150);
-  if ($exitcond) {
-   break;
-  } else {
-   $$02328 = $25;$$02427 = $24;$$029 = $23;
-  }
- }
- _mix_pool($7);
- $26 = HEAP32[18138]|0;
- $27 = (($26) + 1)|0;
- HEAP32[18138] = $27;
- $28 = HEAP32[18135]|0;
- _mix_pool($28);
- $29 = HEAP32[18143]|0;
- $30 = (($29) + 1)|0;
- HEAP32[18143] = $30;
- $31 = HEAP32[18152]|0;
- HEAP32[$vararg_buffer9>>2] = 384;
- $32 = (_open($31,65,$vararg_buffer9)|0);
- $33 = ($32|0)==(-1);
- do {
-  if ($33) {
-   $34 = (__gcry_gettext(68463)|0);
-   $35 = HEAP32[18152]|0;
-   $36 = (___errno_location()|0);
-   $37 = HEAP32[$36>>2]|0;
-   $38 = (_strerror($37)|0);
-   HEAP32[$vararg_buffer12>>2] = $35;
-   $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-   HEAP32[$vararg_ptr15>>2] = $38;
-   __gcry_log_info($34,$vararg_buffer12);
-  } else {
-   $39 = HEAP32[18152]|0;
-   $40 = (_lock_seed_file($32,$39,1)|0);
-   $41 = ($40|0)==(0);
-   if (!($41)) {
-    (_close($32)|0);
-    break;
-   }
-   $42 = (_ftruncate($32,0)|0);
-   $43 = ($42|0)==(0);
-   if (!($43)) {
-    $44 = (__gcry_gettext(68486)|0);
-    $45 = HEAP32[18152]|0;
-    $46 = (___errno_location()|0);
-    $47 = HEAP32[$46>>2]|0;
-    $48 = (_strerror($47)|0);
-    HEAP32[$vararg_buffer16>>2] = $45;
-    $vararg_ptr19 = ((($vararg_buffer16)) + 4|0);
-    HEAP32[$vararg_ptr19>>2] = $48;
-    __gcry_log_info($44,$vararg_buffer16);
-    (_close($32)|0);
-    break;
-   }
-   L32: while(1) {
-    $49 = HEAP32[18135]|0;
-    $50 = (_write($32,$49,600)|0);
-    switch ($50|0) {
-    case 600:  {
-     break L32;
-     break;
-    }
-    case -1:  {
-     break;
-    }
-    default: {
-     label = 23;
-     break L32;
-    }
-    }
-    $51 = (___errno_location()|0);
-    $52 = HEAP32[$51>>2]|0;
-    $53 = ($52|0)==(4);
-    if (!($53)) {
-     label = 23;
-     break;
-    }
-   }
-   if ((label|0) == 23) {
-    $54 = (__gcry_gettext(68486)|0);
-    $55 = HEAP32[18152]|0;
-    $56 = (___errno_location()|0);
-    $57 = HEAP32[$56>>2]|0;
-    $58 = (_strerror($57)|0);
-    HEAP32[$vararg_buffer20>>2] = $55;
-    $vararg_ptr23 = ((($vararg_buffer20)) + 4|0);
-    HEAP32[$vararg_ptr23>>2] = $58;
-    __gcry_log_info($54,$vararg_buffer20);
-   }
-   $59 = (_close($32)|0);
-   $60 = ($59|0)==(0);
-   if (!($60)) {
-    $61 = (__gcry_gettext(68508)|0);
-    $62 = HEAP32[18152]|0;
-    $63 = (___errno_location()|0);
-    $64 = HEAP32[$63>>2]|0;
-    $65 = (_strerror($64)|0);
-    HEAP32[$vararg_buffer24>>2] = $62;
-    $vararg_ptr27 = ((($vararg_buffer24)) + 4|0);
-    HEAP32[$vararg_ptr27>>2] = $65;
-    __gcry_log_info($61,$vararg_buffer24);
-   }
-  }
- } while(0);
- HEAP32[18132] = 0;
- $66 = (_gpgrt_lock_unlock(40208)|0);
- $67 = ($66|0)==(0);
- if ($67) {
-  STACKTOP = sp;return;
- } else {
-  $68 = (_gpg_strerror($66)|0);
-  HEAP32[$vararg_buffer28>>2] = $68;
-  __gcry_log_fatal(67776,$vararg_buffer28);
-  // unreachable;
- }
-}
-function __gcry_rngcsprng_fast_poll() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = HEAP32[18131]|0;
- $1 = ($0|0)==(0);
- if ($1) {
-  HEAP32[18131] = 1;
- }
- $2 = (_gpgrt_lock_lock(40208)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_fatal(67701,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18132] = 1;
- $5 = HEAP32[18133]|0;
- $6 = ($5|0)==(0|0);
- if (!($6)) {
-  _do_fast_random_poll();
- }
- HEAP32[18132] = 0;
- $7 = (_gpgrt_lock_unlock(40208)|0);
- $8 = ($7|0)==(0);
- if ($8) {
-  STACKTOP = sp;return;
- } else {
-  $9 = (_gpg_strerror($7)|0);
-  HEAP32[$vararg_buffer1>>2] = $9;
-  __gcry_log_fatal(67776,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_rngfips_initialize($0) {
- $0 = $0|0;
- var $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 
= 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer10 = 0, 
$vararg_buffer4 = 0, $vararg_buffer7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer10 = sp + 32|0;
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = HEAP32[18158]|0;
- $2 = ($1|0)==(0);
- if ($2) {
-  HEAP32[18158] = 1;
-  HEAP32[18159] = 0;
- }
- $3 = ($0|0)==(0);
- if ($3) {
-  STACKTOP = sp;return;
- }
- $4 = (_gpgrt_lock_lock(40256)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = (_gpg_strerror($4)|0);
-  HEAP32[$vararg_buffer>>2] = $6;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- $7 = HEAP32[18160]|0;
- $8 = ($7|0)==(0|0);
- if ($8) {
-  $9 = (__gcry_xmalloc_secure(48)|0);
-  HEAP32[18160] = $9;
-  $10 = (__gcry_xcalloc(1,68)|0);
-  HEAP32[18161] = $10;
-  HEAP8[$10>>0] = 17;
-  $11 = ((($10)) + 16|0);
-  HEAP8[$11>>0] = 42;
-  $12 = ((($10)) + 33|0);
-  HEAP8[$12>>0] = -119;
-  $13 = ((($10)) + 50|0);
-  HEAP8[$13>>0] = -4;
-  $14 = (__gcry_xcalloc_secure(1,68)|0);
-  HEAP32[18162] = $14;
-  HEAP8[$14>>0] = 17;
-  $15 = ((($14)) + 16|0);
-  HEAP8[$15>>0] = 42;
-  $16 = ((($14)) + 33|0);
-  HEAP8[$16>>0] = -119;
-  $17 = ((($14)) + 50|0);
-  HEAP8[$17>>0] = -4;
-  $18 = (__gcry_xcalloc_secure(1,68)|0);
-  HEAP32[18163] = $18;
-  HEAP8[$18>>0] = 17;
-  $19 = ((($18)) + 16|0);
-  HEAP8[$19>>0] = 42;
-  $20 = ((($18)) + 33|0);
-  HEAP8[$20>>0] = -119;
-  $21 = ((($18)) + 50|0);
-  HEAP8[$21>>0] = -4;
- } else {
-  $22 = HEAP32[18161]|0;
-  $23 = ((($22)) + 52|0);
-  $24 = HEAP32[$23>>2]|0;
-  $25 = ($24|0)==(0|0);
-  if (!($25)) {
-   __gcry_assert_failed(68566,68594,767,68608);
-   // unreachable;
-  }
-  $26 = HEAP32[18162]|0;
-  $27 = ((($26)) + 52|0);
-  $28 = HEAP32[$27>>2]|0;
-  $29 = ($28|0)==(0|0);
-  if (!($29)) {
-   __gcry_assert_failed(68633,68594,768,68608);
-   // unreachable;
-  }
-  $30 = HEAP32[18163]|0;
-  $31 = ((($30)) + 52|0);
-  $32 = HEAP32[$31>>2]|0;
-  $33 = ($32|0)==(0|0);
-  if (!($33)) {
-   __gcry_assert_failed(68663,68594,769,68608);
-   // unreachable;
-  }
-  $34 = HEAP8[$22>>0]|0;
-  $35 = ($34<<24>>24)==(17);
-  if (!($35)) {
-   HEAP32[$vararg_buffer1>>2] = $22;
-   __gcry_log_fatal(68696,$vararg_buffer1);
-   // unreachable;
-  }
-  $36 = ((($22)) + 16|0);
-  $37 = HEAP8[$36>>0]|0;
-  $38 = ($37<<24>>24)==(42);
-  if (!($38)) {
-   HEAP32[$vararg_buffer1>>2] = $22;
-   __gcry_log_fatal(68696,$vararg_buffer1);
-   // unreachable;
-  }
-  $39 = ((($22)) + 33|0);
-  $40 = HEAP8[$39>>0]|0;
-  $41 = ($40<<24>>24)==(-119);
-  if (!($41)) {
-   HEAP32[$vararg_buffer1>>2] = $22;
-   __gcry_log_fatal(68696,$vararg_buffer1);
-   // unreachable;
-  }
-  $42 = ((($22)) + 50|0);
-  $43 = HEAP8[$42>>0]|0;
-  $44 = ($43<<24>>24)==(-4);
-  if (!($44)) {
-   HEAP32[$vararg_buffer1>>2] = $22;
-   __gcry_log_fatal(68696,$vararg_buffer1);
-   // unreachable;
-  }
-  $45 = HEAP8[$26>>0]|0;
-  $46 = ($45<<24>>24)==(17);
-  if (!($46)) {
-   HEAP32[$vararg_buffer4>>2] = $26;
-   __gcry_log_fatal(68696,$vararg_buffer4);
-   // unreachable;
-  }
-  $47 = ((($26)) + 16|0);
-  $48 = HEAP8[$47>>0]|0;
-  $49 = ($48<<24>>24)==(42);
-  if (!($49)) {
-   HEAP32[$vararg_buffer4>>2] = $26;
-   __gcry_log_fatal(68696,$vararg_buffer4);
-   // unreachable;
-  }
-  $50 = ((($26)) + 33|0);
-  $51 = HEAP8[$50>>0]|0;
-  $52 = ($51<<24>>24)==(-119);
-  if (!($52)) {
-   HEAP32[$vararg_buffer4>>2] = $26;
-   __gcry_log_fatal(68696,$vararg_buffer4);
-   // unreachable;
-  }
-  $53 = ((($26)) + 50|0);
-  $54 = HEAP8[$53>>0]|0;
-  $55 = ($54<<24>>24)==(-4);
-  if (!($55)) {
-   HEAP32[$vararg_buffer4>>2] = $26;
-   __gcry_log_fatal(68696,$vararg_buffer4);
-   // unreachable;
-  }
-  $56 = HEAP8[$30>>0]|0;
-  $57 = ($56<<24>>24)==(17);
-  if (!($57)) {
-   HEAP32[$vararg_buffer7>>2] = $30;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $58 = ((($30)) + 16|0);
-  $59 = HEAP8[$58>>0]|0;
-  $60 = ($59<<24>>24)==(42);
-  if (!($60)) {
-   HEAP32[$vararg_buffer7>>2] = $30;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $61 = ((($30)) + 33|0);
-  $62 = HEAP8[$61>>0]|0;
-  $63 = ($62<<24>>24)==(-119);
-  if (!($63)) {
-   HEAP32[$vararg_buffer7>>2] = $30;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $64 = ((($30)) + 50|0);
-  $65 = HEAP8[$64>>0]|0;
-  $66 = ($65<<24>>24)==(-4);
-  if (!($66)) {
-   HEAP32[$vararg_buffer7>>2] = $30;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
- }
- HEAP32[18159] = 0;
- $67 = (_gpgrt_lock_unlock(40256)|0);
- $68 = ($67|0)==(0);
- if ($68) {
-  STACKTOP = sp;return;
- } else {
-  $69 = (_gpg_strerror($67)|0);
-  HEAP32[$vararg_buffer10>>2] = $69;
-  __gcry_log_fatal(68742,$vararg_buffer10);
-  // unreachable;
- }
-}
-function __gcry_rngfips_close_fds() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = (_gpgrt_lock_lock(40256)|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  $2 = (_gpg_strerror($0)|0);
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- (__gcry_rndlinux_gather_random(0,0,0,0)|0);
- HEAP32[18159] = 0;
- $3 = (_gpgrt_lock_unlock(40256)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  STACKTOP = sp;return;
- } else {
-  $5 = (_gpg_strerror($3)|0);
-  HEAP32[$vararg_buffer1>>2] = $5;
-  __gcry_log_fatal(68742,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_rngfips_dump_stats() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function __gcry_rngfips_is_faked() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_rngfips_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- __gcry_rngfips_initialize(1);
- $3 = (_gpgrt_lock_lock(40256)|0);
- $4 = ($3|0)==(0);
- if (!($4)) {
-  $5 = (_gpg_strerror($3)|0);
-  HEAP32[$vararg_buffer>>2] = $5;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- $6 = ($2|0)==(2);
- if ($6) {
-  $7 = HEAP32[18163]|0;
-  _get_random($0,$1,$7);
- } else {
-  $8 = HEAP32[18162]|0;
-  _get_random($0,$1,$8);
- }
- HEAP32[18159] = 0;
- $9 = (_gpgrt_lock_unlock(40256)|0);
- $10 = ($9|0)==(0);
- if ($10) {
-  STACKTOP = sp;return;
- } else {
-  $11 = (_gpg_strerror($9)|0);
-  HEAP32[$vararg_buffer1>>2] = $11;
-  __gcry_log_fatal(68742,$vararg_buffer1);
-  // unreachable;
- }
-}
-function _get_random($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$mask = 0, $$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, $vararg_buffer4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = ($0|0)==(0|0);
- if ($3) {
-  __gcry_assert_failed(69561,68594,685,69584);
-  // unreachable;
- }
- $4 = ($2|0)==(0|0);
- if ($4) {
-  __gcry_assert_failed(68778,68594,686,69584);
-  // unreachable;
- }
- $5 = HEAP8[$2>>0]|0;
- $6 = ($5<<24>>24)==(17);
- if (!($6)) {
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(68696,$vararg_buffer);
-  // unreachable;
- }
- $7 = ((($2)) + 16|0);
- $8 = HEAP8[$7>>0]|0;
- $9 = ($8<<24>>24)==(42);
- if (!($9)) {
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(68696,$vararg_buffer);
-  // unreachable;
- }
- $10 = ((($2)) + 33|0);
- $11 = HEAP8[$10>>0]|0;
- $12 = ($11<<24>>24)==(-119);
- if (!($12)) {
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(68696,$vararg_buffer);
-  // unreachable;
- }
- $13 = ((($2)) + 50|0);
- $14 = HEAP8[$13>>0]|0;
- $15 = ($14<<24>>24)==(-4);
- if (!($15)) {
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(68696,$vararg_buffer);
-  // unreachable;
- }
- $16 = ((($2)) + 4|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = ($17|0)==(0|0);
- do {
-  if ($18) {
-   $19 = HEAP32[18161]|0;
-   $20 = ($19|0)==($2|0);
-   $$sink = $20&1;
-   $21 = (_x931_generate_key($$sink)|0);
-   HEAP32[$16>>2] = $21;
-   $22 = ($21|0)==(0|0);
-   if ($22) {
-    __gcry_log_fatal(68840,$vararg_buffer4);
-    // unreachable;
-   } else {
-    $23 = (_getpid()|0);
-    $24 = ((($2)) + 60|0);
-    HEAP32[$24>>2] = $23;
-    break;
-   }
-  }
- } while(0);
- $25 = ((($2)) + 8|0);
- $26 = HEAP8[$25>>0]|0;
- $$mask = $26 & 1;
- $27 = ($$mask<<24>>24)==(0);
- if ($27) {
-  _x931_reseed($2);
- }
- $28 = ((($2)) + 60|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = (_getpid()|0);
- $31 = ($29|0)==($30|0);
- if ($31) {
-  $32 = ((($2)) + 64|0);
-  $33 = HEAP32[$32>>2]|0;
-  $34 = (_getpid()|0);
-  $35 = ($33|0)==($34|0);
-  if ($35) {
-   $36 = (_x931_aes_driver($0,$1,$2)|0);
-   $37 = ($36|0)==(0);
-   if (!($37)) {
-    __gcry_log_fatal(68840,$vararg_buffer4);
-    // unreachable;
-   }
-   $38 = HEAP8[$2>>0]|0;
-   $39 = ($38<<24>>24)==(17);
-   if (!($39)) {
-    HEAP32[$vararg_buffer1>>2] = $2;
-    __gcry_log_fatal(68696,$vararg_buffer1);
-    // unreachable;
-   }
-   $40 = HEAP8[$7>>0]|0;
-   $41 = ($40<<24>>24)==(42);
-   if (!($41)) {
-    HEAP32[$vararg_buffer1>>2] = $2;
-    __gcry_log_fatal(68696,$vararg_buffer1);
-    // unreachable;
-   }
-   $42 = HEAP8[$10>>0]|0;
-   $43 = ($42<<24>>24)==(-119);
-   if (!($43)) {
-    HEAP32[$vararg_buffer1>>2] = $2;
-    __gcry_log_fatal(68696,$vararg_buffer1);
-    // unreachable;
-   }
-   $44 = HEAP8[$13>>0]|0;
-   $45 = ($44<<24>>24)==(-4);
-   if ($45) {
-    STACKTOP = sp;return;
-   } else {
-    HEAP32[$vararg_buffer1>>2] = $2;
-    __gcry_log_fatal(68696,$vararg_buffer1);
-    // unreachable;
-   }
-  }
- }
- __gcry_fips_signal_error(68594,714,69584,0,68786);
- __gcry_log_fatal(68840,$vararg_buffer4);
- // unreachable;
-}
-function _x931_generate_key($0) {
- $0 = $0|0;
- var $$0 = 0, $$041$lcssa61 = 0, $$04152 = 0, $$042$lcssa60 = 0, $$04251 = 0, 
$$047 = 0, $$1 = 0, $$143 = 0, $$2 = 0, $$244 = 0, $$34549 = 0, $$350 = 0, $1 = 
0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $scevgep = 0, $vararg_buffer = 
0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $1 = sp + 12|0;
- $2 = HEAP32[18159]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  __gcry_assert_failed(68869,68594,596,69203);
-  // unreachable;
- }
- $4 = (__gcry_cipher_open($1,7,1,1)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $6 = (_gpg_strerror($4)|0);
-  HEAP32[$vararg_buffer>>2] = $6;
-  __gcry_log_error(69221,$vararg_buffer);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $7 = ($0|0)==(0);
- if ($7) {
-  $10 = (_get_entropy()|0);
-  $$047 = $10;
- } else {
-  $8 = (__gcry_xmalloc(16)|0);
-  $9 = HEAP32[18162]|0;
-  _get_random($8,16,$9);
-  $$047 = $8;
- }
- $11 = HEAP32[$1>>2]|0;
- $12 = (__gcry_cipher_setkey($11,$$047,16)|0);
- $13 = $$047;
- $14 = $13 & 7;
- $15 = ($14|0)==(0);
- if ($15) {
-  $$041$lcssa61 = 16;$$042$lcssa60 = $$047;
-  label = 12;
- } else {
-  $$04152 = 16;$$04251 = $$047;
-  while(1) {
-   HEAP8[$$04251>>0] = 0;
-   $16 = ((($$04251)) + 1|0);
-   $17 = (($$04152) + -1)|0;
-   $18 = $16;
-   $19 = $18 & 7;
-   $20 = ($19|0)!=(0);
-   $21 = ($17|0)!=(0);
-   $22 = $21 & $20;
-   if ($22) {
-    $$04152 = $17;$$04251 = $16;
-   } else {
-    break;
-   }
-  }
-  $23 = ($17>>>0)<(8);
-  if ($23) {
-   $$2 = $17;$$244 = $16;
-  } else {
-   $$041$lcssa61 = $17;$$042$lcssa60 = $16;
-   label = 12;
-  }
- }
- if ((label|0) == 12) {
-  $24 = (($$041$lcssa61) + -8)|0;
-  $25 = $24 & -8;
-  $26 = (($25) + 8)|0;
-  $$1 = $$041$lcssa61;$$143 = $$042$lcssa60;
-  while(1) {
-   $27 = $$143;
-   $28 = $27;
-   HEAP32[$28>>2] = 0;
-   $29 = (($27) + 4)|0;
-   $30 = $29;
-   HEAP32[$30>>2] = 0;
-   $31 = (($$1) + -8)|0;
-   $32 = ((($$143)) + 8|0);
-   $33 = ($31>>>0)>(7);
-   if ($33) {
-    $$1 = $31;$$143 = $32;
-   } else {
-    break;
-   }
-  }
-  $34 = (($24) - ($25))|0;
-  $scevgep = (($$042$lcssa60) + ($26)|0);
-  $$2 = $34;$$244 = $scevgep;
- }
- $35 = ($$2|0)==(0);
- if (!($35)) {
-  $$34549 = $$244;$$350 = $$2;
-  while(1) {
-   HEAP8[$$34549>>0] = 0;
-   $36 = ((($$34549)) + 1|0);
-   $37 = (($$350) + -1)|0;
-   $38 = ($37|0)==(0);
-   if ($38) {
-    break;
-   } else {
-    $$34549 = $36;$$350 = $37;
-   }
-  }
- }
- __gcry_free($$047);
- $39 = ($12|0)==(0);
- if ($39) {
-  $42 = HEAP32[$1>>2]|0;
-  $$0 = $42;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $40 = (_gpg_strerror($12)|0);
-  HEAP32[$vararg_buffer1>>2] = $40;
-  __gcry_log_error(69264,$vararg_buffer1);
-  $41 = HEAP32[$1>>2]|0;
-  __gcry_cipher_close($41);
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function _x931_reseed($0) {
- $0 = $0|0;
- var $$0$lcssa14$i = 0, $$035$lcssa13$i = 0, $$0354$i = 0, $$05$i = 0, $$1$i = 
0, $$136$i = 0, $$2$i = 0, $$237$i = 0, $$33$i = 0, $$3382$i = 0, $1 = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0;
- var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, 
$26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0;
- var $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$scevgep$i = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- $1 = HEAP32[18159]|0;
- $2 = ($1|0)==(0);
- if ($2) {
-  __gcry_assert_failed(68869,68594,658,69085);
-  // unreachable;
- }
- $3 = HEAP32[18161]|0;
- $4 = ($3|0)==($0|0);
- $5 = ((($0)) + 17|0);
- if ($4) {
-  $6 = HEAP32[18162]|0;
-  _get_random($5,16,$6);
-  $34 = ((($0)) + 8|0);
-  $35 = HEAP8[$34>>0]|0;
-  $36 = $35 | 1;
-  HEAP8[$34>>0] = $36;
-  $37 = (_getpid()|0);
-  $38 = ((($0)) + 64|0);
-  HEAP32[$38>>2] = $37;
-  return;
- }
- $7 = (_get_entropy()|0);
- dest=$5; src=$7; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- $8 = $7;
- $9 = $8 & 7;
- $10 = ($9|0)==(0);
- if ($10) {
-  $$0$lcssa14$i = $7;$$035$lcssa13$i = 16;
-  label = 9;
- } else {
-  $$0354$i = 16;$$05$i = $7;
-  while(1) {
-   HEAP8[$$05$i>>0] = 0;
-   $11 = ((($$05$i)) + 1|0);
-   $12 = (($$0354$i) + -1)|0;
-   $13 = $11;
-   $14 = $13 & 7;
-   $15 = ($14|0)!=(0);
-   $16 = ($12|0)!=(0);
-   $17 = $16 & $15;
-   if ($17) {
-    $$0354$i = $12;$$05$i = $11;
-   } else {
-    break;
-   }
-  }
-  $18 = ($12>>>0)<(8);
-  if ($18) {
-   $$2$i = $11;$$237$i = $12;
-  } else {
-   $$0$lcssa14$i = $11;$$035$lcssa13$i = $12;
-   label = 9;
-  }
- }
- if ((label|0) == 9) {
-  $19 = (($$035$lcssa13$i) + -8)|0;
-  $20 = $19 & -8;
-  $$1$i = $$0$lcssa14$i;$$136$i = $$035$lcssa13$i;
-  while(1) {
-   $21 = $$1$i;
-   $22 = $21;
-   HEAP32[$22>>2] = 0;
-   $23 = (($21) + 4)|0;
-   $24 = $23;
-   HEAP32[$24>>2] = 0;
-   $25 = (($$136$i) + -8)|0;
-   $26 = ((($$1$i)) + 8|0);
-   $27 = ($25>>>0)>(7);
-   if ($27) {
-    $$1$i = $26;$$136$i = $25;
-   } else {
-    break;
-   }
-  }
-  $28 = (($20) + 8)|0;
-  $29 = (($19) - ($20))|0;
-  $scevgep$i = (($$0$lcssa14$i) + ($28)|0);
-  $$2$i = $scevgep$i;$$237$i = $29;
- }
- $30 = ($$237$i|0)==(0);
- if (!($30)) {
-  $$33$i = $$2$i;$$3382$i = $$237$i;
-  while(1) {
-   HEAP8[$$33$i>>0] = 0;
-   $31 = ((($$33$i)) + 1|0);
-   $32 = (($$3382$i) + -1)|0;
-   $33 = ($32|0)==(0);
-   if ($33) {
-    break;
-   } else {
-    $$33$i = $31;$$3382$i = $32;
-   }
-  }
- }
- __gcry_free($7);
- $34 = ((($0)) + 8|0);
- $35 = HEAP8[$34>>0]|0;
- $36 = $35 | 1;
- HEAP8[$34>>0] = $36;
- $37 = (_getpid()|0);
- $38 = ((($0)) + 64|0);
- HEAP32[$38>>2] = $37;
- return;
-}
-function _x931_aes_driver($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$0$lcssa122$i = 0, $$0108$i = 0, $$071$ph125 = 0, 
$$072$lcssa151 = 0, $$072115 = 0, $$073$lcssa150 = 0, $$073114 = 0, 
$$074$lcssa121$i = 0, $$074107$i = 0, $$078$lcssa124$i = 0, $$078$ph123 = 0, 
$$07897$i = 0, $$082$lcssa123$i = 0, $$08296$i = 0, $$1 = 0, $$1$i = 0, $$174 = 
0, $$175$i = 0, $$179$i = 0;
- var $$183$i = 0, $$2 = 0, $$2$i = 0, $$275 = 0, $$276$i = 0, $$280$i = 0, 
$$284$i = 0, $$3103$i = 0, $$3119 = 0, $$376118 = 0, $$377102$i = 0, $$38195$i 
= 0, $$38594$i = 0, $$mask = 0, $$mask79 = 0, $10 = 0, $100 = 0, $101 = 0, $102 
= 0, $103 = 0;
- var $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 
= 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 
= 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0;
- var $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, 
$129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, 
$136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0;
- var $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, 
$147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, 
$154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0;
- var $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 
= 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 
= 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0;
- var $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 
= 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 
= 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0;
- var $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 
= 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 
= 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0;
- var $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 
= 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 
= 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0;
- var $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, 
$238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, 
$245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0;
- var $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 
= 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 
= 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0;
- var $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 
= 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 
= 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0;
- var $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 
= 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 
0, $30 = 0, $300 = 0, $301 = 0, $302 = 0;
- var $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 
= 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 
= 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0;
- var $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, 
$328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, 
$335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0;
- var $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 
= 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 
= 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0;
- var $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 
= 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 
= 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0;
- var $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 
= 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $or$cond = 0;
- var $or$cond$i = 0, $or$cond3$i = 0, $or$cond5$i = 0, $or$cond7$i = 0, 
$or$cond82 = 0, $or$cond84 = 0, $scevgep = 0, $scevgep$i = 0, $scevgep120$i = 
0, $scevgep149 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 
0, $vararg_buffer7 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer7 = sp + 40|0;
- $vararg_buffer4 = sp + 32|0;
- $vararg_buffer1 = sp + 24|0;
- $vararg_buffer = sp + 16|0;
- $3 = sp + 48|0;
- $4 = sp;
- $5 = HEAP32[18159]|0;
- $6 = ($5|0)==(0);
- if ($6) {
-  __gcry_assert_failed(68869,68594,444,68888);
-  // unreachable;
- }
- $7 = ((($2)) + 4|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ($8|0)==(0|0);
- if ($9) {
-  __gcry_assert_failed(68904,68594,445,68888);
-  // unreachable;
- }
- $10 = ((($2)) + 8|0);
- $11 = HEAP8[$10>>0]|0;
- $$mask = $11 & 1;
- $12 = ($$mask<<24>>24)==(0);
- if ($12) {
-  __gcry_assert_failed(68923,68594,446,68888);
-  // unreachable;
- }
- $13 = HEAP32[18160]|0;
- $14 = ($13|0)==(0|0);
- if ($14) {
-  __gcry_assert_failed(68942,68594,448,68888);
-  // unreachable;
- }
- $15 = ((($13)) + 16|0);
- $16 = ((($13)) + 32|0);
- $17 = ($1|0)==(0);
- if ($17) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = ((($2)) + 52|0);
- $19 = ((($2)) + 12|0);
- $20 = ((($2)) + 17|0);
- $21 = ((($2)) + 56|0);
- $22 = ((($4)) + 12|0);
- $23 = ((($4)) + 13|0);
- $24 = ((($4)) + 14|0);
- $25 = ((($4)) + 15|0);
- $26 = ((($13)) + 1|0);
- $27 = ((($2)) + 18|0);
- $28 = ((($13)) + 17|0);
- $29 = ((($13)) + 2|0);
- $30 = ((($2)) + 19|0);
- $31 = ((($13)) + 18|0);
- $32 = ((($13)) + 3|0);
- $33 = ((($2)) + 20|0);
- $34 = ((($13)) + 19|0);
- $35 = ((($13)) + 4|0);
- $36 = ((($2)) + 21|0);
- $37 = ((($13)) + 20|0);
- $38 = ((($13)) + 5|0);
- $39 = ((($2)) + 22|0);
- $40 = ((($13)) + 21|0);
- $41 = ((($13)) + 6|0);
- $42 = ((($2)) + 23|0);
- $43 = ((($13)) + 22|0);
- $44 = ((($13)) + 7|0);
- $45 = ((($2)) + 24|0);
- $46 = ((($13)) + 23|0);
- $47 = ((($13)) + 8|0);
- $48 = ((($2)) + 25|0);
- $49 = ((($13)) + 24|0);
- $50 = ((($13)) + 9|0);
- $51 = ((($2)) + 26|0);
- $52 = ((($13)) + 25|0);
- $53 = ((($13)) + 10|0);
- $54 = ((($2)) + 27|0);
- $55 = ((($13)) + 26|0);
- $56 = ((($13)) + 11|0);
- $57 = ((($2)) + 28|0);
- $58 = ((($13)) + 27|0);
- $59 = ((($13)) + 12|0);
- $60 = ((($2)) + 29|0);
- $61 = ((($13)) + 28|0);
- $62 = ((($13)) + 13|0);
- $63 = ((($2)) + 30|0);
- $64 = ((($13)) + 29|0);
- $65 = ((($13)) + 14|0);
- $66 = ((($2)) + 31|0);
- $67 = ((($13)) + 30|0);
- $68 = ((($13)) + 15|0);
- $69 = ((($2)) + 32|0);
- $70 = ((($13)) + 31|0);
- $71 = ((($3)) + 4|0);
- $72 = ((($13)) + 33|0);
- $73 = ((($13)) + 34|0);
- $74 = ((($13)) + 35|0);
- $75 = ((($13)) + 36|0);
- $76 = ((($13)) + 37|0);
- $77 = ((($13)) + 38|0);
- $78 = ((($13)) + 39|0);
- $79 = ((($13)) + 40|0);
- $80 = ((($13)) + 41|0);
- $81 = ((($13)) + 42|0);
- $82 = ((($13)) + 43|0);
- $83 = ((($13)) + 44|0);
- $84 = ((($13)) + 45|0);
- $85 = ((($13)) + 46|0);
- $86 = ((($13)) + 47|0);
- $87 = ((($4)) + 1|0);
- $88 = ((($4)) + 2|0);
- $89 = ((($4)) + 3|0);
- $90 = ((($4)) + 4|0);
- $91 = ((($4)) + 5|0);
- $92 = ((($4)) + 6|0);
- $93 = ((($4)) + 7|0);
- $94 = ((($4)) + 8|0);
- $95 = ((($4)) + 9|0);
- $96 = ((($4)) + 10|0);
- $97 = ((($4)) + 11|0);
- $98 = $13;
- $99 = $98 & 7;
- $100 = ($99|0)==(0);
- $101 = $15;
- $102 = $101 & 7;
- $103 = ($102|0)==(0);
- $104 = ((($2)) + 51|0);
- $105 = ((($2)) + 34|0);
- $106 = $16;
- $107 = $106 & 7;
- $108 = ($107|0)==(0);
- $$071$ph125 = $0;$$078$ph123 = $1;
- L16: while(1) {
-  while(1) {
-   $109 = HEAP32[$18>>2]|0;
-   $110 = ($109|0)==(0|0);
-   if ($110) {
-    $111 = HEAP32[$19>>2]|0;
-    $112 = ($111>>>0)>(1000);
-    if ($112) {
-     _x931_reseed($2);
-     HEAP32[$19>>2] = 0;
-    }
-   }
-   $113 = HEAP32[18159]|0;
-   $114 = ($113|0)==(0);
-   if ($114) {
-    label = 16;
-    break L16;
-   }
-   $115 = HEAP32[$18>>2]|0;
-   $116 = ($115|0)==(0|0);
-   $117 = HEAP32[18161]|0;
-   $118 = ($117|0)==($2|0);
-   $or$cond$i = $116 | $118;
-   $119 = HEAP32[18162]|0;
-   $120 = ($119|0)==($2|0);
-   $or$cond3$i = $or$cond$i | $120;
-   $121 = HEAP32[18163]|0;
-   $122 = ($121|0)==($2|0);
-   $or$cond5$i = $or$cond3$i | $122;
-   if ($or$cond5$i) {
-    $132 = HEAP32[18164]|0;
-    $133 = ($132|0)==(0);
-    if ($133) {
-     $134 = (_getpid()|0);
-     HEAP32[18165] = $134;
-     $135 = (_getppid()|0);
-     HEAP32[18166] = $135;
-    }
-    $136 = (_gettimeofday(($3|0),(0|0))|0);
-    $137 = ($136|0)==(0);
-    if (!($137)) {
-     label = 22;
-     break L16;
-    }
-    $141 = HEAP32[$71>>2]|0;
-    $142 = $141 << 4;
-    $143 = HEAP32[$3>>2]|0;
-    $144 = HEAP32[18164]|0;
-    $145 = ($143|0)==($144|0);
-    $146 = HEAP32[18167]|0;
-    $147 = ($142|0)==($146|0);
-    $or$cond7$i = $145 & $147;
-    if ($or$cond7$i) {
-     $148 = HEAP16[36660]|0;
-     $149 = (($148) + 1)<<16>>16;
-     $150 = $149 & 4095;
-     HEAP16[36660] = $150;
-     $163 = $150;
-    } else {
-     HEAP16[36660] = 0;
-     HEAP32[18164] = $143;
-     HEAP32[18167] = $142;
-     $163 = 0;
-    }
-    $151 = $143 >>> 24;
-    $152 = $151&255;
-    HEAP8[$4>>0] = $152;
-    $153 = $143 >>> 16;
-    $154 = $153&255;
-    HEAP8[$87>>0] = $154;
-    $155 = $143 >>> 8;
-    $156 = $155&255;
-    HEAP8[$88>>0] = $156;
-    $157 = $143&255;
-    HEAP8[$89>>0] = $157;
-    $158 = $141 >>> 12;
-    $159 = $158&255;
-    HEAP8[$90>>0] = $159;
-    $160 = $141 >>> 4;
-    $161 = $160&255;
-    HEAP8[$91>>0] = $161;
-    $162 = $163&65535;
-    $164 = $162 >>> 8;
-    $165 = $164 & 15;
-    $166 = $165 | $142;
-    $167 = $166&255;
-    HEAP8[$92>>0] = $167;
-    $168 = $163&255;
-    HEAP8[$93>>0] = $168;
-    $169 = HEAP32[18165]|0;
-    $170 = $169 >>> 24;
-    $171 = $170&255;
-    HEAP8[$94>>0] = $171;
-    $172 = $169 >>> 16;
-    $173 = $172&255;
-    HEAP8[$95>>0] = $173;
-    $174 = $169 >>> 8;
-    $175 = $174&255;
-    HEAP8[$96>>0] = $175;
-    $176 = $169&255;
-    HEAP8[$97>>0] = $176;
-    $177 = HEAP32[18166]|0;
-    $178 = $177 >>> 24;
-    $179 = $178&255;
-    HEAP8[$22>>0] = $179;
-    $180 = $177 >>> 16;
-    $181 = $180&255;
-    HEAP8[$23>>0] = $181;
-    $182 = $177 >>> 8;
-    $183 = $182&255;
-    HEAP8[$24>>0] = $183;
-    $184 = $177&255;
-    HEAP8[$25>>0] = $184;
-    $185 = (($177) + 1)|0;
-    HEAP32[18166] = $185;
-    $186 = ($185|0)==(0);
-    if ($186) {
-     $187 = (($169) + 1)|0;
-     HEAP32[18165] = $187;
-    }
-   } else {
-    dest=$4; src=$115; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    $123 = HEAP32[$21>>2]|0;
-    $124 = $123 >>> 24;
-    $125 = $124&255;
-    HEAP8[$22>>0] = $125;
-    $126 = $123 >>> 16;
-    $127 = $126&255;
-    HEAP8[$23>>0] = $127;
-    $128 = $123 >>> 8;
-    $129 = $128&255;
-    HEAP8[$24>>0] = $129;
-    $130 = $123&255;
-    HEAP8[$25>>0] = $130;
-    $131 = (($123) + 1)|0;
-    HEAP32[$21>>2] = $131;
-   }
-   $188 = HEAP32[$7>>2]|0;
-   $189 = (__gcry_cipher_encrypt($188,$13,16,$4,16)|0);
-   $190 = ($189|0)==(0);
-   if (!($190)) {
-    label = 30;
-    break L16;
-   }
-   $192 = HEAP8[$13>>0]|0;
-   $193 = HEAP8[$20>>0]|0;
-   $194 = $193 ^ $192;
-   HEAP8[$15>>0] = $194;
-   $195 = HEAP8[$26>>0]|0;
-   $196 = HEAP8[$27>>0]|0;
-   $197 = $196 ^ $195;
-   HEAP8[$28>>0] = $197;
-   $198 = HEAP8[$29>>0]|0;
-   $199 = HEAP8[$30>>0]|0;
-   $200 = $199 ^ $198;
-   HEAP8[$31>>0] = $200;
-   $201 = HEAP8[$32>>0]|0;
-   $202 = HEAP8[$33>>0]|0;
-   $203 = $202 ^ $201;
-   HEAP8[$34>>0] = $203;
-   $204 = HEAP8[$35>>0]|0;
-   $205 = HEAP8[$36>>0]|0;
-   $206 = $205 ^ $204;
-   HEAP8[$37>>0] = $206;
-   $207 = HEAP8[$38>>0]|0;
-   $208 = HEAP8[$39>>0]|0;
-   $209 = $208 ^ $207;
-   HEAP8[$40>>0] = $209;
-   $210 = HEAP8[$41>>0]|0;
-   $211 = HEAP8[$42>>0]|0;
-   $212 = $211 ^ $210;
-   HEAP8[$43>>0] = $212;
-   $213 = HEAP8[$44>>0]|0;
-   $214 = HEAP8[$45>>0]|0;
-   $215 = $214 ^ $213;
-   HEAP8[$46>>0] = $215;
-   $216 = HEAP8[$47>>0]|0;
-   $217 = HEAP8[$48>>0]|0;
-   $218 = $217 ^ $216;
-   HEAP8[$49>>0] = $218;
-   $219 = HEAP8[$50>>0]|0;
-   $220 = HEAP8[$51>>0]|0;
-   $221 = $220 ^ $219;
-   HEAP8[$52>>0] = $221;
-   $222 = HEAP8[$53>>0]|0;
-   $223 = HEAP8[$54>>0]|0;
-   $224 = $223 ^ $222;
-   HEAP8[$55>>0] = $224;
-   $225 = HEAP8[$56>>0]|0;
-   $226 = HEAP8[$57>>0]|0;
-   $227 = $226 ^ $225;
-   HEAP8[$58>>0] = $227;
-   $228 = HEAP8[$59>>0]|0;
-   $229 = HEAP8[$60>>0]|0;
-   $230 = $229 ^ $228;
-   HEAP8[$61>>0] = $230;
-   $231 = HEAP8[$62>>0]|0;
-   $232 = HEAP8[$63>>0]|0;
-   $233 = $232 ^ $231;
-   HEAP8[$64>>0] = $233;
-   $234 = HEAP8[$65>>0]|0;
-   $235 = HEAP8[$66>>0]|0;
-   $236 = $235 ^ $234;
-   HEAP8[$67>>0] = $236;
-   $237 = HEAP8[$68>>0]|0;
-   $238 = HEAP8[$69>>0]|0;
-   $239 = $238 ^ $237;
-   HEAP8[$70>>0] = $239;
-   $240 = (__gcry_cipher_encrypt($188,$16,16,$15,16)|0);
-   $241 = ($240|0)==(0);
-   if (!($241)) {
-    label = 32;
-    break L16;
-   }
-   $243 = HEAP8[$16>>0]|0;
-   $244 = HEAP8[$13>>0]|0;
-   $245 = $244 ^ $243;
-   HEAP8[$15>>0] = $245;
-   $246 = HEAP8[$72>>0]|0;
-   $247 = HEAP8[$26>>0]|0;
-   $248 = $247 ^ $246;
-   HEAP8[$28>>0] = $248;
-   $249 = HEAP8[$73>>0]|0;
-   $250 = HEAP8[$29>>0]|0;
-   $251 = $250 ^ $249;
-   HEAP8[$31>>0] = $251;
-   $252 = HEAP8[$74>>0]|0;
-   $253 = HEAP8[$32>>0]|0;
-   $254 = $253 ^ $252;
-   HEAP8[$34>>0] = $254;
-   $255 = HEAP8[$75>>0]|0;
-   $256 = HEAP8[$35>>0]|0;
-   $257 = $256 ^ $255;
-   HEAP8[$37>>0] = $257;
-   $258 = HEAP8[$76>>0]|0;
-   $259 = HEAP8[$38>>0]|0;
-   $260 = $259 ^ $258;
-   HEAP8[$40>>0] = $260;
-   $261 = HEAP8[$77>>0]|0;
-   $262 = HEAP8[$41>>0]|0;
-   $263 = $262 ^ $261;
-   HEAP8[$43>>0] = $263;
-   $264 = HEAP8[$78>>0]|0;
-   $265 = HEAP8[$44>>0]|0;
-   $266 = $265 ^ $264;
-   HEAP8[$46>>0] = $266;
-   $267 = HEAP8[$79>>0]|0;
-   $268 = HEAP8[$47>>0]|0;
-   $269 = $268 ^ $267;
-   HEAP8[$49>>0] = $269;
-   $270 = HEAP8[$80>>0]|0;
-   $271 = HEAP8[$50>>0]|0;
-   $272 = $271 ^ $270;
-   HEAP8[$52>>0] = $272;
-   $273 = HEAP8[$81>>0]|0;
-   $274 = HEAP8[$53>>0]|0;
-   $275 = $274 ^ $273;
-   HEAP8[$55>>0] = $275;
-   $276 = HEAP8[$82>>0]|0;
-   $277 = HEAP8[$56>>0]|0;
-   $278 = $277 ^ $276;
-   HEAP8[$58>>0] = $278;
-   $279 = HEAP8[$83>>0]|0;
-   $280 = HEAP8[$59>>0]|0;
-   $281 = $280 ^ $279;
-   HEAP8[$61>>0] = $281;
-   $282 = HEAP8[$84>>0]|0;
-   $283 = HEAP8[$62>>0]|0;
-   $284 = $283 ^ $282;
-   HEAP8[$64>>0] = $284;
-   $285 = HEAP8[$85>>0]|0;
-   $286 = HEAP8[$65>>0]|0;
-   $287 = $286 ^ $285;
-   HEAP8[$67>>0] = $287;
-   $288 = HEAP8[$86>>0]|0;
-   $289 = HEAP8[$68>>0]|0;
-   $290 = $289 ^ $288;
-   HEAP8[$70>>0] = $290;
-   $291 = (__gcry_cipher_encrypt($188,$20,16,$15,16)|0);
-   $292 = ($291|0)==(0);
-   if (!($292)) {
-    label = 34;
-    break L16;
-   }
-   if ($100) {
-    $$0$lcssa122$i = $13;$$074$lcssa121$i = 16;
-    label = 39;
-   } else {
-    $$0108$i = $13;$$074107$i = 16;
-    while(1) {
-     HEAP8[$$0108$i>>0] = 0;
-     $294 = ((($$0108$i)) + 1|0);
-     $295 = (($$074107$i) + -1)|0;
-     $296 = $294;
-     $297 = $296 & 7;
-     $298 = ($297|0)!=(0);
-     $299 = ($295|0)!=(0);
-     $300 = $299 & $298;
-     if ($300) {
-      $$0108$i = $294;$$074107$i = $295;
-     } else {
-      break;
-     }
-    }
-    $301 = ($295>>>0)<(8);
-    if ($301) {
-     $$2$i = $294;$$276$i = $295;
-    } else {
-     $$0$lcssa122$i = $294;$$074$lcssa121$i = $295;
-     label = 39;
-    }
-   }
-   if ((label|0) == 39) {
-    label = 0;
-    $302 = (($$074$lcssa121$i) + -8)|0;
-    $303 = $302 & -8;
-    $$1$i = $$0$lcssa122$i;$$175$i = $$074$lcssa121$i;
-    while(1) {
-     $304 = $$1$i;
-     $305 = $304;
-     HEAP32[$305>>2] = 0;
-     $306 = (($304) + 4)|0;
-     $307 = $306;
-     HEAP32[$307>>2] = 0;
-     $308 = (($$175$i) + -8)|0;
-     $309 = ((($$1$i)) + 8|0);
-     $310 = ($308>>>0)>(7);
-     if ($310) {
-      $$1$i = $309;$$175$i = $308;
-     } else {
-      break;
-     }
-    }
-    $311 = (($303) + 8)|0;
-    $312 = (($302) - ($303))|0;
-    $scevgep120$i = (($$0$lcssa122$i) + ($311)|0);
-    $$2$i = $scevgep120$i;$$276$i = $312;
-   }
-   $313 = ($$276$i|0)==(0);
-   if (!($313)) {
-    $$3103$i = $$2$i;$$377102$i = $$276$i;
-    while(1) {
-     HEAP8[$$3103$i>>0] = 0;
-     $314 = ((($$3103$i)) + 1|0);
-     $315 = (($$377102$i) + -1)|0;
-     $316 = ($315|0)==(0);
-     if ($316) {
-      break;
-     } else {
-      $$3103$i = $314;$$377102$i = $315;
-     }
-    }
-   }
-   if ($103) {
-    $$078$lcssa124$i = 16;$$082$lcssa123$i = $15;
-    label = 49;
-   } else {
-    $$07897$i = 16;$$08296$i = $15;
-    while(1) {
-     HEAP8[$$08296$i>>0] = 0;
-     $317 = ((($$08296$i)) + 1|0);
-     $318 = (($$07897$i) + -1)|0;
-     $319 = $317;
-     $320 = $319 & 7;
-     $321 = ($320|0)!=(0);
-     $322 = ($318|0)!=(0);
-     $323 = $322 & $321;
-     if ($323) {
-      $$07897$i = $318;$$08296$i = $317;
-     } else {
-      break;
-     }
-    }
-    $324 = ($318>>>0)<(8);
-    if ($324) {
-     $$280$i = $318;$$284$i = $317;
-    } else {
-     $$078$lcssa124$i = $318;$$082$lcssa123$i = $317;
-     label = 49;
-    }
-   }
-   if ((label|0) == 49) {
-    label = 0;
-    $325 = (($$078$lcssa124$i) + -8)|0;
-    $326 = $325 & -8;
-    $$179$i = $$078$lcssa124$i;$$183$i = $$082$lcssa123$i;
-    while(1) {
-     $327 = $$183$i;
-     $328 = $327;
-     HEAP32[$328>>2] = 0;
-     $329 = (($327) + 4)|0;
-     $330 = $329;
-     HEAP32[$330>>2] = 0;
-     $331 = (($$179$i) + -8)|0;
-     $332 = ((($$183$i)) + 8|0);
-     $333 = ($331>>>0)>(7);
-     if ($333) {
-      $$179$i = $331;$$183$i = $332;
-     } else {
-      break;
-     }
-    }
-    $334 = (($326) + 8)|0;
-    $335 = (($325) - ($326))|0;
-    $scevgep$i = (($$082$lcssa123$i) + ($334)|0);
-    $$280$i = $335;$$284$i = $scevgep$i;
-   }
-   $336 = ($$280$i|0)==(0);
-   if (!($336)) {
-    $$38195$i = $$280$i;$$38594$i = $$284$i;
-    while(1) {
-     HEAP8[$$38594$i>>0] = 0;
-     $337 = ((($$38594$i)) + 1|0);
-     $338 = (($$38195$i) + -1)|0;
-     $339 = ($338|0)==(0);
-     if ($339) {
-      break;
-     } else {
-      $$38195$i = $338;$$38594$i = $337;
-     }
-    }
-   }
-   $340 = HEAP32[$19>>2]|0;
-   $341 = (($340) + 1)|0;
-   HEAP32[$19>>2] = $341;
-   $342 = HEAP8[$104>>0]|0;
-   $343 = ($342<<24>>24)==(0);
-   if (!($343)) {
-    $344 = HEAP32[$18>>2]|0;
-    $345 = ($344|0)==(0|0);
-    $346 = HEAP32[18161]|0;
-    $347 = ($346|0)==($2|0);
-    $or$cond = $345 | $347;
-    $348 = HEAP32[18162]|0;
-    $349 = ($348|0)==($2|0);
-    $or$cond82 = $or$cond | $349;
-    $350 = HEAP32[18163]|0;
-    $351 = ($350|0)==($2|0);
-    $or$cond84 = $or$cond82 | $351;
-    if (!($or$cond84)) {
-     label = 62;
-     break;
-    }
-   }
-   $352 = HEAP8[$10>>0]|0;
-   $$mask79 = $352 & 2;
-   $353 = ($$mask79<<24>>24)==(0);
-   if (!($353)) {
-    label = 59;
-    break;
-   }
-   dest=$105; src=$16; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-   $354 = $352 | 2;
-   HEAP8[$10>>0] = $354;
-  }
-  if ((label|0) == 59) {
-   label = 0;
-   $355 = (_memcmp($105,$16,16)|0);
-   $356 = ($355|0)==(0);
-   if ($356) {
-    label = 60;
-    break;
-   }
-   $357 = ($$078$ph123>>>0)<(16);
-   $358 = $357 ? $$078$ph123 : 16;
-   dest=$105; src=$16; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-   $361 = $358;
-  }
-  else if ((label|0) == 62) {
-   label = 0;
-   $359 = ($$078$ph123>>>0)<(16);
-   $360 = $359 ? $$078$ph123 : 16;
-   $361 = $360;
-  }
-  _memcpy(($$071$ph125|0),($16|0),($361|0))|0;
-  if ($108) {
-   $$072$lcssa151 = 16;$$073$lcssa150 = $16;
-   label = 67;
-  } else {
-   $$072115 = 16;$$073114 = $16;
-   while(1) {
-    HEAP8[$$073114>>0] = 0;
-    $362 = ((($$073114)) + 1|0);
-    $363 = (($$072115) + -1)|0;
-    $364 = $362;
-    $365 = $364 & 7;
-    $366 = ($365|0)!=(0);
-    $367 = ($363|0)!=(0);
-    $368 = $367 & $366;
-    if ($368) {
-     $$072115 = $363;$$073114 = $362;
-    } else {
-     break;
-    }
-   }
-   $369 = ($363>>>0)<(8);
-   if ($369) {
-    $$2 = $363;$$275 = $362;
-   } else {
-    $$072$lcssa151 = $363;$$073$lcssa150 = $362;
-    label = 67;
-   }
-  }
-  if ((label|0) == 67) {
-   label = 0;
-   $370 = (($$072$lcssa151) + -8)|0;
-   $371 = $370 & -8;
-   $scevgep = ((($$073$lcssa150)) + 8|0);
-   $$1 = $$072$lcssa151;$$174 = $$073$lcssa150;
-   while(1) {
-    $372 = $$174;
-    $373 = $372;
-    HEAP32[$373>>2] = 0;
-    $374 = (($372) + 4)|0;
-    $375 = $374;
-    HEAP32[$375>>2] = 0;
-    $376 = (($$1) + -8)|0;
-    $377 = ((($$174)) + 8|0);
-    $378 = ($376>>>0)>(7);
-    if ($378) {
-     $$1 = $376;$$174 = $377;
-    } else {
-     break;
-    }
-   }
-   $379 = (($370) - ($371))|0;
-   $scevgep149 = (($scevgep) + ($371)|0);
-   $$2 = $379;$$275 = $scevgep149;
-  }
-  $380 = ($$2|0)==(0);
-  if (!($380)) {
-   $$3119 = $$2;$$376118 = $$275;
-   while(1) {
-    HEAP8[$$376118>>0] = 0;
-    $381 = ((($$376118)) + 1|0);
-    $382 = (($$3119) + -1)|0;
-    $383 = ($382|0)==(0);
-    if ($383) {
-     break;
-    } else {
-     $$3119 = $382;$$376118 = $381;
-    }
-   }
-  }
-  $384 = (($$071$ph125) + ($361)|0);
-  $385 = (($$078$ph123) - ($361))|0;
-  $386 = ($385|0)==(0);
-  if ($386) {
-   $$0 = 0;
-   label = 74;
-   break;
-  } else {
-   $$071$ph125 = $384;$$078$ph123 = $385;
-  }
- }
- if ((label|0) == 16) {
-  __gcry_assert_failed(68869,68594,274,68972);
-  // unreachable;
- }
- else if ((label|0) == 22) {
-  $138 = (___errno_location()|0);
-  $139 = HEAP32[$138>>2]|0;
-  $140 = (_strerror($139)|0);
-  HEAP32[$vararg_buffer>>2] = $140;
-  __gcry_log_fatal(68984,$vararg_buffer);
-  // unreachable;
- }
- else if ((label|0) == 30) {
-  $191 = (__gcry_strerror($189)|0);
-  HEAP32[$vararg_buffer1>>2] = $191;
-  __gcry_log_fatal(69011,$vararg_buffer1);
-  // unreachable;
- }
- else if ((label|0) == 32) {
-  $242 = (__gcry_strerror($240)|0);
-  HEAP32[$vararg_buffer4>>2] = $242;
-  __gcry_log_fatal(69011,$vararg_buffer4);
-  // unreachable;
- }
- else if ((label|0) == 34) {
-  $293 = (__gcry_strerror($291)|0);
-  HEAP32[$vararg_buffer7>>2] = $293;
-  __gcry_log_fatal(69011,$vararg_buffer7);
-  // unreachable;
- }
- else if ((label|0) == 60) {
-  __gcry_fips_signal_error(68594,502,68888,0,69045);
-  $$0 = -1;
-  STACKTOP = sp;return ($$0|0);
- }
- else if ((label|0) == 74) {
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_strerror($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_gpg_strerror($0)|0);
- return ($1|0);
-}
-function _get_entropy() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = HEAP32[18168]|0;
- $1 = ($0|0)==(0|0);
- if (!($1)) {
-  __gcry_assert_failed(69097,68594,552,69121);
-  // unreachable;
- }
- $2 = (__gcry_xmalloc_secure(16)|0);
- HEAP32[18168] = $2;
- HEAP32[18169] = 16;
- HEAP32[18170] = 0;
- $3 = (__gcry_rndlinux_gather_random(85,0,16,2)|0);
- $4 = ($3|0)<(0);
- if (!($4)) {
-  $5 = HEAP32[18170]|0;
-  $6 = HEAP32[18169]|0;
-  $7 = ($5|0)==($6|0);
-  if ($7) {
-   $9 = HEAP32[18168]|0;
-   HEAP32[18168] = 0;
-   STACKTOP = sp;return ($9|0);
-  }
- }
- $8 = HEAP32[18168]|0;
- __gcry_free($8);
- HEAP32[18168] = 0;
- __gcry_log_fatal(69133,$vararg_buffer);
- // unreachable;
- return (0)|0;
-}
-function _entropy_collect_cb($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$05 = 0, $$in = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[18159]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  __gcry_assert_failed(68869,68594,531,69161);
-  // unreachable;
- }
- $5 = HEAP32[18168]|0;
- $6 = ($5|0)==(0|0);
- if ($6) {
-  __gcry_assert_failed(69180,68594,532,69161);
-  // unreachable;
- }
- $7 = ($1|0)==(0);
- if ($7) {
-  return;
- }
- $8 = HEAP32[18169]|0;
- $$pre = HEAP32[18170]|0;
- $$05 = $0;$$in = $1;$11 = $$pre;
- while(1) {
-  $9 = (($$in) + -1)|0;
-  $10 = ($11>>>0)<($8>>>0);
-  if (!($10)) {
-   label = 9;
-   break;
-  }
-  $12 = ((($$05)) + 1|0);
-  $13 = HEAP8[$$05>>0]|0;
-  $14 = (($11) + 1)|0;
-  HEAP32[18170] = $14;
-  $15 = (($5) + ($11)|0);
-  $16 = HEAP8[$15>>0]|0;
-  $17 = $16 ^ $13;
-  HEAP8[$15>>0] = $17;
-  $18 = ($9|0)==(0);
-  if ($18) {
-   label = 9;
-   break;
-  } else {
-   $$05 = $12;$$in = $9;$11 = $14;
-  }
- }
- if ((label|0) == 9) {
-  return;
- }
-}
-function __gcry_rngfips_create_nonce($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $vararg_buffer = 
0, $vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- __gcry_rngfips_initialize(1);
- $2 = (_gpgrt_lock_lock(40256)|0);
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = (_gpg_strerror($2)|0);
-  HEAP32[$vararg_buffer>>2] = $4;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- $5 = HEAP32[18161]|0;
- _get_random($0,$1,$5);
- HEAP32[18159] = 0;
- $6 = (_gpgrt_lock_unlock(40256)|0);
- $7 = ($6|0)==(0);
- if ($7) {
-  STACKTOP = sp;return;
- } else {
-  $8 = (_gpg_strerror($6)|0);
-  HEAP32[$vararg_buffer1>>2] = $8;
-  __gcry_log_fatal(68742,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_rngfips_selftest($0) {
- $0 = $0|0;
- var $$0$i = 0, $$04854$i = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 
= 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0;
- var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, 
$51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 
0, $6 = 0, $60 = 0, $61 = 0;
- var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, 
$7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0;
- var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, 
$88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $or$cond$i = 0;
- var $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, 
$vararg_buffer7 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer7 = sp + 40|0;
- $vararg_buffer4 = sp + 32|0;
- $vararg_buffer1 = sp + 24|0;
- $vararg_buffer = sp + 16|0;
- $1 = sp;
- $2 = sp + 48|0;
- __gcry_randomize($2,8,1);
- $3 = HEAP32[18160]|0;
- $4 = ($3|0)==(0|0);
- if ($4) {
-  __gcry_assert_failed(68942,68594,912,69296);
-  // unreachable;
- }
- $5 = (__gcry_xcalloc(1,68)|0);
- HEAP8[$5>>0] = 17;
- $6 = ((($5)) + 16|0);
- HEAP8[$6>>0] = 42;
- $7 = ((($5)) + 33|0);
- HEAP8[$7>>0] = -119;
- $8 = ((($5)) + 50|0);
- HEAP8[$8>>0] = -4;
- $9 = (_gpgrt_lock_lock(40256)|0);
- $10 = ($9|0)==(0);
- if (!($10)) {
-  $11 = (_gpg_strerror($9)|0);
-  HEAP32[$vararg_buffer>>2] = $11;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- $12 = ((($5)) + 4|0);
- $13 = ((($5)) + 60|0);
- $14 = ((($5)) + 17|0);
- $15 = ((($5)) + 8|0);
- $16 = ((($5)) + 64|0);
- $17 = ((($5)) + 52|0);
- $18 = ((($5)) + 56|0);
- $$04854$i = 0;
- while(1) {
-  $21 = (__gcry_cipher_open($12,7,1,1)|0);
-  $22 = ($21|0)==(0);
-  if (!($22)) {
-   $$0$i = 69378;
-   label = 18;
-   break;
-  }
-  $23 = HEAP32[$12>>2]|0;
-  $24 = (16592 + (($$04854$i*96)|0)|0);
-  $25 = (__gcry_cipher_setkey($23,$24,16)|0);
-  $26 = ($25|0)==(0);
-  if (!($26)) {
-   $$0$i = 69416;
-   label = 18;
-   break;
-  }
-  $27 = (_getpid()|0);
-  HEAP32[$13>>2] = $27;
-  $28 = (((16592 + (($$04854$i*96)|0)|0)) + 32|0);
-  dest=$14; src=$28; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-  $29 = HEAP8[$15>>0]|0;
-  $30 = $29 | 1;
-  HEAP8[$15>>0] = $30;
-  $31 = (_getpid()|0);
-  HEAP32[$16>>2] = $31;
-  $32 = (((16592 + (($$04854$i*96)|0)|0)) + 16|0);
-  HEAP32[$17>>2] = $32;
-  $33 = (((16592 + (($$04854$i*96)|0)|0)) + 28|0);
-  $34 = HEAP8[$33>>0]|0;
-  $35 = $34&255;
-  $36 = $35 << 24;
-  $37 = (((16592 + (($$04854$i*96)|0)|0)) + 29|0);
-  $38 = HEAP8[$37>>0]|0;
-  $39 = $38&255;
-  $40 = $39 << 16;
-  $41 = $40 | $36;
-  $42 = (((16592 + (($$04854$i*96)|0)|0)) + 30|0);
-  $43 = HEAP8[$42>>0]|0;
-  $44 = $43&255;
-  $45 = $44 << 8;
-  $46 = $41 | $45;
-  $47 = (((16592 + (($$04854$i*96)|0)|0)) + 31|0);
-  $48 = HEAP8[$47>>0]|0;
-  $49 = $48&255;
-  $50 = $46 | $49;
-  HEAP32[$18>>2] = $50;
-  $51 = (_x931_aes_driver($1,16,$5)|0);
-  $52 = ($51|0)==(0);
-  if (!($52)) {
-   $$0$i = 69309;
-   label = 18;
-   break;
-  }
-  $55 = (((16592 + (($$04854$i*96)|0)|0)) + 48|0);
-  $56 = (_memcmp($1,$55,16)|0);
-  $57 = ($56|0)==(0);
-  if (!($57)) {
-   $$0$i = 69340;
-   label = 18;
-   break;
-  }
-  $53 = (_x931_aes_driver($1,16,$5)|0);
-  $54 = ($53|0)==(0);
-  if (!($54)) {
-   $$0$i = 69309;
-   label = 18;
-   break;
-  }
-  $86 = (((16592 + (($$04854$i*96)|0)|0)) + 64|0);
-  $87 = (_memcmp($1,$86,16)|0);
-  $88 = ($87|0)==(0);
-  if (!($88)) {
-   $$0$i = 69340;
-   label = 18;
-   break;
-  }
-  $89 = (_x931_aes_driver($1,16,$5)|0);
-  $90 = ($89|0)==(0);
-  if (!($90)) {
-   $$0$i = 69309;
-   label = 18;
-   break;
-  }
-  $91 = (((16592 + (($$04854$i*96)|0)|0)) + 80|0);
-  $92 = (_memcmp($1,$91,16)|0);
-  $93 = ($92|0)==(0);
-  if (!($93)) {
-   $$0$i = 69340;
-   label = 18;
-   break;
-  }
-  $94 = HEAP32[$13>>2]|0;
-  $95 = (_getpid()|0);
-  $96 = ($94|0)==($95|0);
-  if (!($96)) {
-   $$0$i = 69442;
-   label = 18;
-   break;
-  }
-  $58 = HEAP32[$16>>2]|0;
-  $59 = (_getpid()|0);
-  $60 = ($58|0)==($59|0);
-  if (!($60)) {
-   $$0$i = 69442;
-   label = 18;
-   break;
-  }
-  $61 = HEAP32[$12>>2]|0;
-  __gcry_cipher_close($61);
-  HEAP32[$12>>2] = 0;
-  $62 = HEAP8[$15>>0]|0;
-  $63 = $62 & -2;
-  HEAP8[$15>>0] = $63;
-  $64 = HEAP8[$5>>0]|0;
-  $65 = ($64<<24>>24)==(17);
-  if (!($65)) {
-   label = 17;
-   break;
-  }
-  $66 = HEAP8[$6>>0]|0;
-  $67 = ($66<<24>>24)==(42);
-  if (!($67)) {
-   label = 17;
-   break;
-  }
-  $68 = HEAP8[$7>>0]|0;
-  $69 = ($68<<24>>24)==(-119);
-  if (!($69)) {
-   label = 17;
-   break;
-  }
-  $70 = HEAP8[$8>>0]|0;
-  $71 = ($70<<24>>24)==(-4);
-  $20 = (($$04854$i) + 1)|0;
-  if (!($71)) {
-   label = 17;
-   break;
-  }
-  $19 = ($20>>>0)<(3);
-  if ($19) {
-   $$04854$i = $20;
-  } else {
-   $$0$i = 0;
-   label = 18;
-   break;
-  }
- }
- if ((label|0) == 17) {
-  HEAP32[$vararg_buffer1>>2] = $5;
-  __gcry_log_fatal(68696,$vararg_buffer1);
-  // unreachable;
- }
- else if ((label|0) == 18) {
-  HEAP32[18159] = 0;
-  $72 = (_gpgrt_lock_unlock(40256)|0);
-  $73 = ($72|0)==(0);
-  if (!($73)) {
-   $74 = (_gpg_strerror($72)|0);
-   HEAP32[$vararg_buffer4>>2] = $74;
-   __gcry_log_fatal(68742,$vararg_buffer4);
-   // unreachable;
-  }
-  $75 = HEAP32[$12>>2]|0;
-  __gcry_cipher_close($75);
-  $76 = HEAP8[$5>>0]|0;
-  $77 = ($76<<24>>24)==(17);
-  if (!($77)) {
-   HEAP32[$vararg_buffer7>>2] = $5;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $78 = HEAP8[$6>>0]|0;
-  $79 = ($78<<24>>24)==(42);
-  if (!($79)) {
-   HEAP32[$vararg_buffer7>>2] = $5;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $80 = HEAP8[$7>>0]|0;
-  $81 = ($80<<24>>24)==(-119);
-  if (!($81)) {
-   HEAP32[$vararg_buffer7>>2] = $5;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  $82 = HEAP8[$8>>0]|0;
-  $83 = ($82<<24>>24)==(-4);
-  if (!($83)) {
-   HEAP32[$vararg_buffer7>>2] = $5;
-   __gcry_log_fatal(68696,$vararg_buffer7);
-   // unreachable;
-  }
-  __gcry_free($5);
-  $84 = ($0|0)!=(0|0);
-  $85 = ($$0$i|0)!=(0|0);
-  $or$cond$i = $84 & $85;
-  if (!($or$cond$i)) {
-   $97 = $85 ? 16777266 : 0;
-   STACKTOP = sp;return ($97|0);
-  }
-  FUNCTION_TABLE_viiii[$0 & 63](69464,0,69471,$$0$i);
-  $97 = $85 ? 16777266 : 0;
-  STACKTOP = sp;return ($97|0);
- }
- return (0)|0;
-}
-function __gcry_rngfips_init_external_test($0,$1,$2,$3,$4,$5,$6,$7) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- $7 = $7|0;
- var $$0 = 0, $$055 = 0, $$05557 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 
0, $44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 
0, $64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $8 = 0, $9 = 0, $or$cond$not = 0, $or$cond11 = 0, $or$cond3 = 0, 
$or$cond5$not = 0, $or$cond7 = 0, $or$cond9$not = 0, $storemerge = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0;
- var dest = 0, label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- __gcry_rngfips_initialize(1);
- $8 = ($0|0)==(0|0);
- $9 = ($2|0)==(0|0);
- $or$cond$not = $8 | $9;
- $10 = ($3|0)!=(16);
- $or$cond3 = $or$cond$not | $10;
- $11 = ($4|0)==(0|0);
- $or$cond5$not = $or$cond3 | $11;
- $12 = ($5|0)!=(16);
- $or$cond7 = $or$cond5$not | $12;
- $13 = ($6|0)==(0|0);
- $or$cond9$not = $or$cond7 | $13;
- $14 = ($7|0)!=(16);
- $or$cond11 = $or$cond9$not | $14;
- if ($or$cond11) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = (__gcry_calloc(1,84)|0);
- $16 = ($15|0)==(0|0);
- if ($16) {
-  $17 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $17;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP8[$15>>0] = 17;
- $18 = ((($15)) + 16|0);
- HEAP8[$18>>0] = 42;
- $19 = ((($15)) + 33|0);
- HEAP8[$19>>0] = -119;
- $20 = ((($15)) + 50|0);
- HEAP8[$20>>0] = -4;
- $21 = ((($15)) + 4|0);
- $22 = (__gcry_cipher_open($21,7,1,1)|0);
- $23 = ($22|0)==(0);
- do {
-  if ($23) {
-   $24 = HEAP32[$21>>2]|0;
-   $25 = (__gcry_cipher_setkey($24,$2,16)|0);
-   $26 = ($25|0)==(0);
-   if ($26) {
-    $27 = (_getpid()|0);
-    $28 = ((($15)) + 60|0);
-    HEAP32[$28>>2] = $27;
-    $29 = ((($15)) + 17|0);
-    dest=$29; src=$4; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    $30 = ((($15)) + 8|0);
-    $31 = HEAP8[$30>>0]|0;
-    $32 = $31 | 1;
-    HEAP8[$30>>0] = $32;
-    $33 = (_getpid()|0);
-    $34 = ((($15)) + 64|0);
-    HEAP32[$34>>2] = $33;
-    $35 = ((($15)) + 68|0);
-    dest=$35; src=$6; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
-    $36 = ((($15)) + 52|0);
-    HEAP32[$36>>2] = $35;
-    $37 = ((($15)) + 80|0);
-    $38 = HEAP8[$37>>0]|0;
-    $39 = $38&255;
-    $40 = $39 << 24;
-    $41 = ((($15)) + 81|0);
-    $42 = HEAP8[$41>>0]|0;
-    $43 = $42&255;
-    $44 = $43 << 16;
-    $45 = $44 | $40;
-    $46 = ((($15)) + 82|0);
-    $47 = HEAP8[$46>>0]|0;
-    $48 = $47&255;
-    $49 = $48 << 8;
-    $50 = $45 | $49;
-    $51 = ((($15)) + 83|0);
-    $52 = HEAP8[$51>>0]|0;
-    $53 = $52&255;
-    $54 = $50 | $53;
-    $55 = ((($15)) + 56|0);
-    HEAP32[$55>>2] = $54;
-    $56 = $1 & 1;
-    $57 = ($56|0)==(0);
-    if ($57) {
-     $67 = HEAP8[$15>>0]|0;
-     $68 = ($67<<24>>24)==(17);
-     if (!($68)) {
-      HEAP32[$vararg_buffer1>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer1);
-      // unreachable;
-     }
-     $69 = HEAP8[$18>>0]|0;
-     $70 = ($69<<24>>24)==(42);
-     if (!($70)) {
-      HEAP32[$vararg_buffer1>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer1);
-      // unreachable;
-     }
-     $71 = HEAP8[$19>>0]|0;
-     $72 = ($71<<24>>24)==(-119);
-     if (!($72)) {
-      HEAP32[$vararg_buffer1>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer1);
-      // unreachable;
-     }
-     $73 = HEAP8[$20>>0]|0;
-     $74 = ($73<<24>>24)==(-4);
-     if ($74) {
-      $$05557 = 0;$storemerge = $15;
-      break;
-     }
-     HEAP32[$vararg_buffer1>>2] = $15;
-     __gcry_log_fatal(68696,$vararg_buffer1);
-     // unreachable;
-    } else {
-     $58 = ((($15)) + 51|0);
-     HEAP8[$58>>0] = 1;
-     $59 = HEAP8[$15>>0]|0;
-     $60 = ($59<<24>>24)==(17);
-     if (!($60)) {
-      HEAP32[$vararg_buffer>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer);
-      // unreachable;
-     }
-     $61 = HEAP8[$18>>0]|0;
-     $62 = ($61<<24>>24)==(42);
-     if (!($62)) {
-      HEAP32[$vararg_buffer>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer);
-      // unreachable;
-     }
-     $63 = HEAP8[$19>>0]|0;
-     $64 = ($63<<24>>24)==(-119);
-     if (!($64)) {
-      HEAP32[$vararg_buffer>>2] = $15;
-      __gcry_log_fatal(68696,$vararg_buffer);
-      // unreachable;
-     }
-     $65 = HEAP8[$20>>0]|0;
-     $66 = ($65<<24>>24)==(-4);
-     if ($66) {
-      $$05557 = 0;$storemerge = $15;
-      break;
-     }
-     HEAP32[$vararg_buffer>>2] = $15;
-     __gcry_log_fatal(68696,$vararg_buffer);
-     // unreachable;
-    }
-   } else {
-    $$055 = $25;
-    label = 17;
-   }
-  } else {
-   $$055 = $22;
-   label = 17;
-  }
- } while(0);
- if ((label|0) == 17) {
-  $75 = HEAP32[$21>>2]|0;
-  __gcry_cipher_close($75);
-  __gcry_free($15);
-  $$05557 = $$055;$storemerge = 0;
- }
- HEAP32[$0>>2] = $storemerge;
- $$0 = $$05557;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_rngfips_run_external_test($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $or$cond$not = 0, $or$cond3 = 0, $vararg_buffer = 0, $vararg_buffer1 
= 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = ($0|0)==(0|0);
- $4 = ($1|0)==(0|0);
- $or$cond$not = $3 | $4;
- $5 = ($2|0)!=(16);
- $or$cond3 = $or$cond$not | $5;
- if ($or$cond3) {
-  $$0 = 45;
-  STACKTOP = sp;return ($$0|0);
- }
- $6 = (_gpgrt_lock_lock(40256)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = (_gpg_strerror($6)|0);
-  HEAP32[$vararg_buffer>>2] = $8;
-  __gcry_log_fatal(68530,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18159] = 1;
- _get_random($1,16,$0);
- HEAP32[18159] = 0;
- $9 = (_gpgrt_lock_unlock(40256)|0);
- $10 = ($9|0)==(0);
- if ($10) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  $11 = (_gpg_strerror($9)|0);
-  HEAP32[$vararg_buffer1>>2] = $11;
-  __gcry_log_fatal(68742,$vararg_buffer1);
-  // unreachable;
- }
- return (0)|0;
-}
-function __gcry_rngfips_deinit_external_test($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- __gcry_cipher_close($3);
- __gcry_free($0);
- return;
-}
-function __gcry_rngsystem_initialize($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[18171]|0;
- $2 = ($1|0)==(0);
- if (!($2)) {
-  return;
- }
- HEAP32[18171] = 1;
- HEAP32[18172] = 0;
- return;
-}
-function __gcry_rngsystem_close_fds() {
- var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, 
$vararg_buffer1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $0 = (_gpgrt_lock_lock(40300)|0);
- $1 = ($0|0)==(0);
- if (!($1)) {
-  $2 = (_gpg_strerror($0)|0);
-  HEAP32[$vararg_buffer>>2] = $2;
-  __gcry_log_fatal(69475,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18172] = 1;
- (__gcry_rndlinux_gather_random(0,0,0,0)|0);
- HEAP32[18172] = 0;
- $3 = (_gpgrt_lock_unlock(40300)|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  STACKTOP = sp;return;
- } else {
-  $5 = (_gpg_strerror($3)|0);
-  HEAP32[$vararg_buffer1>>2] = $5;
-  __gcry_log_fatal(69518,$vararg_buffer1);
-  // unreachable;
- }
-}
-function __gcry_rngsystem_randomize($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $3 = HEAP32[18171]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  HEAP32[18171] = 1;
-  HEAP32[18172] = 0;
- }
- $5 = ($2|0)==(2);
- $spec$select = $5 ? 2 : 1;
- $6 = (_gpgrt_lock_lock(40300)|0);
- $7 = ($6|0)==(0);
- if (!($7)) {
-  $8 = (_gpg_strerror($6)|0);
-  HEAP32[$vararg_buffer>>2] = $8;
-  __gcry_log_fatal(69475,$vararg_buffer);
-  // unreachable;
- }
- HEAP32[18172] = 1;
- $9 = ($0|0)==(0|0);
- if ($9) {
-  __gcry_assert_failed(69561,69568,144,69584);
-  // unreachable;
- }
- HEAP32[18173] = $0;
- HEAP32[18174] = $1;
- HEAP32[18175] = 0;
- $10 = (__gcry_rndlinux_gather_random(86,0,$1,$spec$select)|0);
- $11 = ($10|0)<(0);
- if ($11) {
-  HEAP32[$vararg_buffer1>>2] = $10;
-  __gcry_log_fatal(69595,$vararg_buffer1);
-  // unreachable;
- }
- $12 = HEAP32[18175]|0;
- $13 = HEAP32[18174]|0;
- $14 = ($12|0)==($13|0);
- if (!($14)) {
-  HEAP32[$vararg_buffer1>>2] = $10;
-  __gcry_log_fatal(69595,$vararg_buffer1);
-  // unreachable;
- }
- HEAP32[18172] = 0;
- $15 = (_gpgrt_lock_unlock(40300)|0);
- $16 = ($15|0)==(0);
- if ($16) {
-  STACKTOP = sp;return;
- } else {
-  $17 = (_gpg_strerror($15)|0);
-  HEAP32[$vararg_buffer4>>2] = $17;
-  __gcry_log_fatal(69518,$vararg_buffer4);
-  // unreachable;
- }
-}
-function _read_cb($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$05 = 0, $$in = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[18172]|0;
- $4 = ($3|0)==(0);
- if ($4) {
-  __gcry_assert_failed(69641,69568,124,69662);
-  // unreachable;
- }
- $5 = HEAP32[18173]|0;
- $6 = ($5|0)==(0|0);
- if ($6) {
-  __gcry_assert_failed(69670,69568,125,69662);
-  // unreachable;
- }
- $7 = ($1|0)==(0);
- if ($7) {
-  return;
- }
- $8 = HEAP32[18174]|0;
- $$pre = HEAP32[18175]|0;
- $$05 = $0;$$in = $1;$11 = $$pre;
- while(1) {
-  $9 = (($$in) + -1)|0;
-  $10 = ($11>>>0)<($8>>>0);
-  if (!($10)) {
-   label = 9;
-   break;
-  }
-  $12 = ((($$05)) + 1|0);
-  $13 = HEAP8[$$05>>0]|0;
-  $14 = (($11) + 1)|0;
-  HEAP32[18175] = $14;
-  $15 = (($5) + ($11)|0);
-  HEAP8[$15>>0] = $13;
-  $16 = ($9|0)==(0);
-  if ($16) {
-   label = 9;
-   break;
-  } else {
-   $$05 = $12;$$in = $9;$11 = $14;
-  }
- }
- if ((label|0) == 9) {
-  return;
- }
-}
-function __gcry_rndhw_failed_p() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18176]|0;
- return ($0|0);
-}
-function __gcry_rndhw_poll_fast($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function __gcry_rndhw_poll_slow($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function __gcry_rndlinux_gather_random($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0102 = 0, $$0110 = 0, $$0113129 = 0, $$0113129$us = 0, $$0116$ph$be = 
0, $$0116$ph183258 = 0, $$0119$lcssa = 0, $$0119$ph$be = 0, $$0119$ph182259 = 
0, $$0119173 = 0, $$0119173$us = 0, $$0122$ph181260 = 0, $$0122172 = 0, 
$$0122172$us = 0, $$1$ph185257 = 0, $$1120 = 0, $$1120$us = 0, $$1123 = 0, 
$$1123$us = 0, $$1174 = 0;
- var $$1174$us = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, 
$105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, 
$112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0;
- var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0;
- var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 
= 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0;
- var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 
= 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0;
- var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, 
$178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, 
$185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0;
- var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 
= 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 
= 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0;
- var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 
= 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 
= 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0;
- var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 
= 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 
= 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0;
- var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 
= 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 
= 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0;
- var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, 
$269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, 
$276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0;
- var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, 
$287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, 
$294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0;
- var $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 
= 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 
= 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0;
- var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 
= 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0;
- var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 
= 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 
= 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0;
- var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 
= 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 
= 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0;
- var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, 
$378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, 
$385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0;
- var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 
= 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 
0, $403 = 0, $404 = 0, $405 = 0, $406 = 0;
- var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 
= 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 
= 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0;
- var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 
= 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 
= 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0;
- var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 
= 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 
= 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0;
- var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, 
$468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, 
$475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0;
- var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 
= 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 
= 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0;
- var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 
0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 
0, $511 = 0, $512 = 0, $513 = 0, $514 = 0;
- var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 
= 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 
= 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0;
- var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 
= 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 
= 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0;
- var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, 
$558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $57 = 0, $58 = 0, 
$59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0;
- var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, 
$70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 
0, $79 = 0, $8 = 0, $80 = 0;
- var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, 
$89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, 
$97 = 0, $98 = 0, $99 = 0;
- var $or$cond = 0, $or$cond$us = 0, $or$cond127 = 0, $or$cond127$us = 0, 
$spec$select = 0, $spec$select126 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer4 = 0, $vararg_buffer7 = 0, dest = 0, label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 944|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(944|0);
- $vararg_buffer7 = sp + 792|0;
- $vararg_buffer4 = sp + 784|0;
- $vararg_buffer1 = sp + 776|0;
- $vararg_buffer = sp + 768|0;
- $4 = sp;
- $5 = sp + 808|0;
- $6 = sp + 800|0;
- $7 = ($0|0)==(0|0);
- if ($7) {
-  $8 = HEAP32[10086]|0;
-  $9 = ($8|0)==(-1);
-  if (!($9)) {
-   (_close($8)|0);
-   HEAP32[10086] = -1;
-  }
-  $10 = HEAP32[10087]|0;
-  $11 = ($10|0)==(-1);
-  if ($11) {
-   STACKTOP = sp;return 0;
-  }
-  (_close($10)|0);
-  HEAP32[10087] = -1;
-  STACKTOP = sp;return 0;
- }
- $12 = (__gcry_rndhw_poll_slow($0,$1)|0);
- $13 = $2 >>> 1;
- $14 = ($12>>>0)>($13>>>0);
- $spec$select = $14 ? $13 : $12;
- $15 = ($2>>>0)>(1);
- $16 = $15 ? $spec$select : 0;
- $$0102 = (($2) - ($16))|0;
- $17 = ($3|0)>(1);
- if ($17) {
-  $18 = HEAP32[10086]|0;
-  $19 = ($18|0)==(-1);
-  if ($19) {
-   $20 = HEAP8[73337]|0;
-   $21 = $20 & 1;
-   $22 = $21&255;
-   $23 = (_open_device(69685,$22)|0);
-   HEAP32[10086] = $23;
-   $24 = HEAP8[73337]|0;
-   $25 = $24 | 1;
-   HEAP8[73337] = $25;
-   $$0110 = $23;
-  } else {
-   $$0110 = $18;
-  }
- } else {
-  $26 = HEAP32[10087]|0;
-  $27 = ($26|0)==(-1);
-  if ($27) {
-   $28 = HEAP8[73337]|0;
-   $29 = $28 & 2;
-   $30 = $29&255;
-   $31 = (_open_device(69697,$30)|0);
-   HEAP32[10087] = $31;
-   $32 = HEAP8[73337]|0;
-   $33 = $32 | 2;
-   HEAP8[73337] = $33;
-   $$0110 = $31;
-  } else {
-   $$0110 = $26;
-  }
- }
- $34 = ($$0102|0)==(0);
- L17: do {
-  if ($34) {
-   $$0119$lcssa = 0;
-  } else {
-   $35 = ($$0110|0)<(1024);
-   $36 = $$0110 & 31;
-   $37 = 1 << $36;
-   $38 = $$0110 >>> 5;
-   $39 = (($5) + ($38<<2)|0);
-   $40 = ((($6)) + 4|0);
-   $41 = (($$0110) + 1)|0;
-   L19: do {
-    if ($35) {
-     $$0116$ph183258 = 0;$$0119$ph182259 = 0;$$0122$ph181260 = 0;$$1$ph185257 
= $$0102;$47 = 100000;$66 = 0;
-     L21: while(1) {
-      $$0119173$us = $$0119$ph182259;$$0122172$us = $$0122$ph181260;$$1174$us 
= $$1$ph185257;
-      L23: while(1) {
-       $42 = ($$0119173$us|0)==(0);
-       $43 = (($2) - ($$1174$us))|0;
-       $44 = ($$0122172$us|0)==($43|0);
-       $or$cond$us = $42 & $44;
-       if ($or$cond$us) {
-        $$1120$us = 0;$$1123$us = $$0122172$us;
-       } else {
-        __gcry_random_progress(69710,88,$43,$2);
-        $$1120$us = 1;$$1123$us = $43;
-       }
-       dest=$5; stop=dest+128|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } 
while ((dest|0) < (stop|0));
-       $45 = HEAP32[$39>>2]|0;
-       $46 = $45 | $37;
-       HEAP32[$39>>2] = $46;
-       HEAP32[$6>>2] = $$0116$ph183258;
-       HEAP32[$40>>2] = $47;
-       $48 = (_select($41,$5,0,0,$6)|0);
-       switch ($48|0) {
-       case 0:  {
-        label = 33;
-        break L23;
-        break;
-       }
-       case -1:  {
-        label = 26;
-        break L23;
-        break;
-       }
-       default: {
-       }
-       }
-       $49 = ($$1174$us>>>0)<(768);
-       $50 = $49 ? $$1174$us : 768;
-       while(1) {
-        $51 = (_read($$0110,$4,$50)|0);
-        $52 = ($51|0)>(-1);
-        $53 = ($51>>>0)>($50>>>0);
-        $or$cond127$us = $52 & $53;
-        if ($or$cond127$us) {
-         label = 22;
-         break;
-        }
-        $54 = ($51|0)==(-1);
-        if (!($54)) {
-         $$0113129$us = $51;
-         break;
-        }
-        $55 = (___errno_location()|0);
-        $56 = HEAP32[$55>>2]|0;
-        $57 = ($56|0)==(4);
-        if (!($57)) {
-         break L21;
-        }
-       }
-       if ((label|0) == 22) {
-        label = 0;
-        HEAP32[$vararg_buffer>>2] = $51;
-        __gcry_log_error(69723,$vararg_buffer);
-        $$0113129$us = $50;
-       }
-       FUNCTION_TABLE_viii[$0 & 127]($4,$$0113129$us,$1);
-       $58 = (($$1174$us) - ($$0113129$us))|0;
-       $59 = ($58|0)==(0);
-       if ($59) {
-        $$0119$lcssa = $$1120$us;
-        break L17;
-       } else {
-        $$0119173$us = $$1120$us;$$0122172$us = $$1123$us;$$1174$us = $58;
-       }
-      }
-      if ((label|0) == 26) {
-       label = 0;
-       $63 = (___errno_location()|0);
-       $64 = HEAP32[$63>>2]|0;
-       $65 = (_strerror($64)|0);
-       HEAP32[$vararg_buffer1>>2] = $65;
-       __gcry_log_error(69761,$vararg_buffer1);
-       $spec$select126 = $66 ? $$0116$ph183258 : 1;
-       $$0116$ph$be = $spec$select126;$$0119$ph$be = $$1120$us;
-      }
-      else if ((label|0) == 33) {
-       label = 0;
-       $$0116$ph$be = 3;$$0119$ph$be = 1;
-      }
-      $79 = ($$0116$ph$be|0)!=(0);
-      $80 = $79 ? 0 : 100000;
-      if ($35) {
-       $$0116$ph183258 = $$0116$ph$be;$$0119$ph182259 = 
$$0119$ph$be;$$0122$ph181260 = $$1123$us;$$1$ph185257 = $$1174$us;$47 = $80;$66 
= $79;
-      } else {
-       break L19;
-      }
-     }
-     $76 = (___errno_location()|0);
-     $77 = HEAP32[$76>>2]|0;
-     $78 = (_strerror($77)|0);
-     HEAP32[$vararg_buffer7>>2] = $78;
-     __gcry_log_fatal(69781,$vararg_buffer7);
-     // unreachable;
-    }
-   } while(0);
-   $$0119173 = 0;$$0122172 = 0;$$1174 = $$0102;
-   L42: while(1) {
-    $60 = ($$0119173|0)==(0);
-    $61 = (($2) - ($$1174))|0;
-    $62 = ($$0122172|0)==($61|0);
-    $or$cond = $60 & $62;
-    if ($or$cond) {
-     $$1120 = 0;$$1123 = $$0122172;
-    } else {
-     __gcry_random_progress(69710,88,$61,$2);
-     $$1120 = 1;$$1123 = $61;
-    }
-    $67 = ($$1174>>>0)<(768);
-    $68 = $67 ? $$1174 : 768;
-    while(1) {
-     $69 = (_read($$0110,$4,$68)|0);
-     $70 = ($69|0)>(-1);
-     $71 = ($69>>>0)>($68>>>0);
-     $or$cond127 = $70 & $71;
-     if ($or$cond127) {
-      label = 29;
-      break;
-     }
-     $72 = ($69|0)==(-1);
-     if (!($72)) {
-      $$0113129 = $69;
-      break;
-     }
-     $73 = (___errno_location()|0);
-     $74 = HEAP32[$73>>2]|0;
-     $75 = ($74|0)==(4);
-     if (!($75)) {
-      break L42;
-     }
-    }
-    if ((label|0) == 29) {
-     label = 0;
-     HEAP32[$vararg_buffer4>>2] = $69;
-     __gcry_log_error(69723,$vararg_buffer4);
-     $$0113129 = $68;
-    }
-    FUNCTION_TABLE_viii[$0 & 127]($4,$$0113129,$1);
-    $81 = (($$1174) - ($$0113129))|0;
-    $82 = ($81|0)==(0);
-    if ($82) {
-     $$0119$lcssa = $$1120;
-     break L17;
-    } else {
-     $$0119173 = $$1120;$$0122172 = $$1123;$$1174 = $81;
-    }
-   }
-   $76 = (___errno_location()|0);
-   $77 = HEAP32[$76>>2]|0;
-   $78 = (_strerror($77)|0);
-   HEAP32[$vararg_buffer7>>2] = $78;
-   __gcry_log_fatal(69781,$vararg_buffer7);
-   // unreachable;
-  }
- } while(0);
- $83 = $4;
- $84 = $83;
- HEAP32[$84>>2] = 0;
- $85 = (($83) + 4)|0;
- $86 = $85;
- HEAP32[$86>>2] = 0;
- $87 = ((($4)) + 8|0);
- $88 = $87;
- $89 = $88;
- HEAP32[$89>>2] = 0;
- $90 = (($88) + 4)|0;
- $91 = $90;
- HEAP32[$91>>2] = 0;
- $92 = ((($4)) + 16|0);
- $93 = $92;
- $94 = $93;
- HEAP32[$94>>2] = 0;
- $95 = (($93) + 4)|0;
- $96 = $95;
- HEAP32[$96>>2] = 0;
- $97 = ((($4)) + 24|0);
- $98 = $97;
- $99 = $98;
- HEAP32[$99>>2] = 0;
- $100 = (($98) + 4)|0;
- $101 = $100;
- HEAP32[$101>>2] = 0;
- $102 = ((($4)) + 32|0);
- $103 = $102;
- $104 = $103;
- HEAP32[$104>>2] = 0;
- $105 = (($103) + 4)|0;
- $106 = $105;
- HEAP32[$106>>2] = 0;
- $107 = ((($4)) + 40|0);
- $108 = $107;
- $109 = $108;
- HEAP32[$109>>2] = 0;
- $110 = (($108) + 4)|0;
- $111 = $110;
- HEAP32[$111>>2] = 0;
- $112 = ((($4)) + 48|0);
- $113 = $112;
- $114 = $113;
- HEAP32[$114>>2] = 0;
- $115 = (($113) + 4)|0;
- $116 = $115;
- HEAP32[$116>>2] = 0;
- $117 = ((($4)) + 56|0);
- $118 = $117;
- $119 = $118;
- HEAP32[$119>>2] = 0;
- $120 = (($118) + 4)|0;
- $121 = $120;
- HEAP32[$121>>2] = 0;
- $122 = ((($4)) + 64|0);
- $123 = $122;
- $124 = $123;
- HEAP32[$124>>2] = 0;
- $125 = (($123) + 4)|0;
- $126 = $125;
- HEAP32[$126>>2] = 0;
- $127 = ((($4)) + 72|0);
- $128 = $127;
- $129 = $128;
- HEAP32[$129>>2] = 0;
- $130 = (($128) + 4)|0;
- $131 = $130;
- HEAP32[$131>>2] = 0;
- $132 = ((($4)) + 80|0);
- $133 = $132;
- $134 = $133;
- HEAP32[$134>>2] = 0;
- $135 = (($133) + 4)|0;
- $136 = $135;
- HEAP32[$136>>2] = 0;
- $137 = ((($4)) + 88|0);
- $138 = $137;
- $139 = $138;
- HEAP32[$139>>2] = 0;
- $140 = (($138) + 4)|0;
- $141 = $140;
- HEAP32[$141>>2] = 0;
- $142 = ((($4)) + 96|0);
- $143 = $142;
- $144 = $143;
- HEAP32[$144>>2] = 0;
- $145 = (($143) + 4)|0;
- $146 = $145;
- HEAP32[$146>>2] = 0;
- $147 = ((($4)) + 104|0);
- $148 = $147;
- $149 = $148;
- HEAP32[$149>>2] = 0;
- $150 = (($148) + 4)|0;
- $151 = $150;
- HEAP32[$151>>2] = 0;
- $152 = ((($4)) + 112|0);
- $153 = $152;
- $154 = $153;
- HEAP32[$154>>2] = 0;
- $155 = (($153) + 4)|0;
- $156 = $155;
- HEAP32[$156>>2] = 0;
- $157 = ((($4)) + 120|0);
- $158 = $157;
- $159 = $158;
- HEAP32[$159>>2] = 0;
- $160 = (($158) + 4)|0;
- $161 = $160;
- HEAP32[$161>>2] = 0;
- $162 = ((($4)) + 128|0);
- $163 = $162;
- $164 = $163;
- HEAP32[$164>>2] = 0;
- $165 = (($163) + 4)|0;
- $166 = $165;
- HEAP32[$166>>2] = 0;
- $167 = ((($4)) + 136|0);
- $168 = $167;
- $169 = $168;
- HEAP32[$169>>2] = 0;
- $170 = (($168) + 4)|0;
- $171 = $170;
- HEAP32[$171>>2] = 0;
- $172 = ((($4)) + 144|0);
- $173 = $172;
- $174 = $173;
- HEAP32[$174>>2] = 0;
- $175 = (($173) + 4)|0;
- $176 = $175;
- HEAP32[$176>>2] = 0;
- $177 = ((($4)) + 152|0);
- $178 = $177;
- $179 = $178;
- HEAP32[$179>>2] = 0;
- $180 = (($178) + 4)|0;
- $181 = $180;
- HEAP32[$181>>2] = 0;
- $182 = ((($4)) + 160|0);
- $183 = $182;
- $184 = $183;
- HEAP32[$184>>2] = 0;
- $185 = (($183) + 4)|0;
- $186 = $185;
- HEAP32[$186>>2] = 0;
- $187 = ((($4)) + 168|0);
- $188 = $187;
- $189 = $188;
- HEAP32[$189>>2] = 0;
- $190 = (($188) + 4)|0;
- $191 = $190;
- HEAP32[$191>>2] = 0;
- $192 = ((($4)) + 176|0);
- $193 = $192;
- $194 = $193;
- HEAP32[$194>>2] = 0;
- $195 = (($193) + 4)|0;
- $196 = $195;
- HEAP32[$196>>2] = 0;
- $197 = ((($4)) + 184|0);
- $198 = $197;
- $199 = $198;
- HEAP32[$199>>2] = 0;
- $200 = (($198) + 4)|0;
- $201 = $200;
- HEAP32[$201>>2] = 0;
- $202 = ((($4)) + 192|0);
- $203 = $202;
- $204 = $203;
- HEAP32[$204>>2] = 0;
- $205 = (($203) + 4)|0;
- $206 = $205;
- HEAP32[$206>>2] = 0;
- $207 = ((($4)) + 200|0);
- $208 = $207;
- $209 = $208;
- HEAP32[$209>>2] = 0;
- $210 = (($208) + 4)|0;
- $211 = $210;
- HEAP32[$211>>2] = 0;
- $212 = ((($4)) + 208|0);
- $213 = $212;
- $214 = $213;
- HEAP32[$214>>2] = 0;
- $215 = (($213) + 4)|0;
- $216 = $215;
- HEAP32[$216>>2] = 0;
- $217 = ((($4)) + 216|0);
- $218 = $217;
- $219 = $218;
- HEAP32[$219>>2] = 0;
- $220 = (($218) + 4)|0;
- $221 = $220;
- HEAP32[$221>>2] = 0;
- $222 = ((($4)) + 224|0);
- $223 = $222;
- $224 = $223;
- HEAP32[$224>>2] = 0;
- $225 = (($223) + 4)|0;
- $226 = $225;
- HEAP32[$226>>2] = 0;
- $227 = ((($4)) + 232|0);
- $228 = $227;
- $229 = $228;
- HEAP32[$229>>2] = 0;
- $230 = (($228) + 4)|0;
- $231 = $230;
- HEAP32[$231>>2] = 0;
- $232 = ((($4)) + 240|0);
- $233 = $232;
- $234 = $233;
- HEAP32[$234>>2] = 0;
- $235 = (($233) + 4)|0;
- $236 = $235;
- HEAP32[$236>>2] = 0;
- $237 = ((($4)) + 248|0);
- $238 = $237;
- $239 = $238;
- HEAP32[$239>>2] = 0;
- $240 = (($238) + 4)|0;
- $241 = $240;
- HEAP32[$241>>2] = 0;
- $242 = ((($4)) + 256|0);
- $243 = $242;
- $244 = $243;
- HEAP32[$244>>2] = 0;
- $245 = (($243) + 4)|0;
- $246 = $245;
- HEAP32[$246>>2] = 0;
- $247 = ((($4)) + 264|0);
- $248 = $247;
- $249 = $248;
- HEAP32[$249>>2] = 0;
- $250 = (($248) + 4)|0;
- $251 = $250;
- HEAP32[$251>>2] = 0;
- $252 = ((($4)) + 272|0);
- $253 = $252;
- $254 = $253;
- HEAP32[$254>>2] = 0;
- $255 = (($253) + 4)|0;
- $256 = $255;
- HEAP32[$256>>2] = 0;
- $257 = ((($4)) + 280|0);
- $258 = $257;
- $259 = $258;
- HEAP32[$259>>2] = 0;
- $260 = (($258) + 4)|0;
- $261 = $260;
- HEAP32[$261>>2] = 0;
- $262 = ((($4)) + 288|0);
- $263 = $262;
- $264 = $263;
- HEAP32[$264>>2] = 0;
- $265 = (($263) + 4)|0;
- $266 = $265;
- HEAP32[$266>>2] = 0;
- $267 = ((($4)) + 296|0);
- $268 = $267;
- $269 = $268;
- HEAP32[$269>>2] = 0;
- $270 = (($268) + 4)|0;
- $271 = $270;
- HEAP32[$271>>2] = 0;
- $272 = ((($4)) + 304|0);
- $273 = $272;
- $274 = $273;
- HEAP32[$274>>2] = 0;
- $275 = (($273) + 4)|0;
- $276 = $275;
- HEAP32[$276>>2] = 0;
- $277 = ((($4)) + 312|0);
- $278 = $277;
- $279 = $278;
- HEAP32[$279>>2] = 0;
- $280 = (($278) + 4)|0;
- $281 = $280;
- HEAP32[$281>>2] = 0;
- $282 = ((($4)) + 320|0);
- $283 = $282;
- $284 = $283;
- HEAP32[$284>>2] = 0;
- $285 = (($283) + 4)|0;
- $286 = $285;
- HEAP32[$286>>2] = 0;
- $287 = ((($4)) + 328|0);
- $288 = $287;
- $289 = $288;
- HEAP32[$289>>2] = 0;
- $290 = (($288) + 4)|0;
- $291 = $290;
- HEAP32[$291>>2] = 0;
- $292 = ((($4)) + 336|0);
- $293 = $292;
- $294 = $293;
- HEAP32[$294>>2] = 0;
- $295 = (($293) + 4)|0;
- $296 = $295;
- HEAP32[$296>>2] = 0;
- $297 = ((($4)) + 344|0);
- $298 = $297;
- $299 = $298;
- HEAP32[$299>>2] = 0;
- $300 = (($298) + 4)|0;
- $301 = $300;
- HEAP32[$301>>2] = 0;
- $302 = ((($4)) + 352|0);
- $303 = $302;
- $304 = $303;
- HEAP32[$304>>2] = 0;
- $305 = (($303) + 4)|0;
- $306 = $305;
- HEAP32[$306>>2] = 0;
- $307 = ((($4)) + 360|0);
- $308 = $307;
- $309 = $308;
- HEAP32[$309>>2] = 0;
- $310 = (($308) + 4)|0;
- $311 = $310;
- HEAP32[$311>>2] = 0;
- $312 = ((($4)) + 368|0);
- $313 = $312;
- $314 = $313;
- HEAP32[$314>>2] = 0;
- $315 = (($313) + 4)|0;
- $316 = $315;
- HEAP32[$316>>2] = 0;
- $317 = ((($4)) + 376|0);
- $318 = $317;
- $319 = $318;
- HEAP32[$319>>2] = 0;
- $320 = (($318) + 4)|0;
- $321 = $320;
- HEAP32[$321>>2] = 0;
- $322 = ((($4)) + 384|0);
- $323 = $322;
- $324 = $323;
- HEAP32[$324>>2] = 0;
- $325 = (($323) + 4)|0;
- $326 = $325;
- HEAP32[$326>>2] = 0;
- $327 = ((($4)) + 392|0);
- $328 = $327;
- $329 = $328;
- HEAP32[$329>>2] = 0;
- $330 = (($328) + 4)|0;
- $331 = $330;
- HEAP32[$331>>2] = 0;
- $332 = ((($4)) + 400|0);
- $333 = $332;
- $334 = $333;
- HEAP32[$334>>2] = 0;
- $335 = (($333) + 4)|0;
- $336 = $335;
- HEAP32[$336>>2] = 0;
- $337 = ((($4)) + 408|0);
- $338 = $337;
- $339 = $338;
- HEAP32[$339>>2] = 0;
- $340 = (($338) + 4)|0;
- $341 = $340;
- HEAP32[$341>>2] = 0;
- $342 = ((($4)) + 416|0);
- $343 = $342;
- $344 = $343;
- HEAP32[$344>>2] = 0;
- $345 = (($343) + 4)|0;
- $346 = $345;
- HEAP32[$346>>2] = 0;
- $347 = ((($4)) + 424|0);
- $348 = $347;
- $349 = $348;
- HEAP32[$349>>2] = 0;
- $350 = (($348) + 4)|0;
- $351 = $350;
- HEAP32[$351>>2] = 0;
- $352 = ((($4)) + 432|0);
- $353 = $352;
- $354 = $353;
- HEAP32[$354>>2] = 0;
- $355 = (($353) + 4)|0;
- $356 = $355;
- HEAP32[$356>>2] = 0;
- $357 = ((($4)) + 440|0);
- $358 = $357;
- $359 = $358;
- HEAP32[$359>>2] = 0;
- $360 = (($358) + 4)|0;
- $361 = $360;
- HEAP32[$361>>2] = 0;
- $362 = ((($4)) + 448|0);
- $363 = $362;
- $364 = $363;
- HEAP32[$364>>2] = 0;
- $365 = (($363) + 4)|0;
- $366 = $365;
- HEAP32[$366>>2] = 0;
- $367 = ((($4)) + 456|0);
- $368 = $367;
- $369 = $368;
- HEAP32[$369>>2] = 0;
- $370 = (($368) + 4)|0;
- $371 = $370;
- HEAP32[$371>>2] = 0;
- $372 = ((($4)) + 464|0);
- $373 = $372;
- $374 = $373;
- HEAP32[$374>>2] = 0;
- $375 = (($373) + 4)|0;
- $376 = $375;
- HEAP32[$376>>2] = 0;
- $377 = ((($4)) + 472|0);
- $378 = $377;
- $379 = $378;
- HEAP32[$379>>2] = 0;
- $380 = (($378) + 4)|0;
- $381 = $380;
- HEAP32[$381>>2] = 0;
- $382 = ((($4)) + 480|0);
- $383 = $382;
- $384 = $383;
- HEAP32[$384>>2] = 0;
- $385 = (($383) + 4)|0;
- $386 = $385;
- HEAP32[$386>>2] = 0;
- $387 = ((($4)) + 488|0);
- $388 = $387;
- $389 = $388;
- HEAP32[$389>>2] = 0;
- $390 = (($388) + 4)|0;
- $391 = $390;
- HEAP32[$391>>2] = 0;
- $392 = ((($4)) + 496|0);
- $393 = $392;
- $394 = $393;
- HEAP32[$394>>2] = 0;
- $395 = (($393) + 4)|0;
- $396 = $395;
- HEAP32[$396>>2] = 0;
- $397 = ((($4)) + 504|0);
- $398 = $397;
- $399 = $398;
- HEAP32[$399>>2] = 0;
- $400 = (($398) + 4)|0;
- $401 = $400;
- HEAP32[$401>>2] = 0;
- $402 = ((($4)) + 512|0);
- $403 = $402;
- $404 = $403;
- HEAP32[$404>>2] = 0;
- $405 = (($403) + 4)|0;
- $406 = $405;
- HEAP32[$406>>2] = 0;
- $407 = ((($4)) + 520|0);
- $408 = $407;
- $409 = $408;
- HEAP32[$409>>2] = 0;
- $410 = (($408) + 4)|0;
- $411 = $410;
- HEAP32[$411>>2] = 0;
- $412 = ((($4)) + 528|0);
- $413 = $412;
- $414 = $413;
- HEAP32[$414>>2] = 0;
- $415 = (($413) + 4)|0;
- $416 = $415;
- HEAP32[$416>>2] = 0;
- $417 = ((($4)) + 536|0);
- $418 = $417;
- $419 = $418;
- HEAP32[$419>>2] = 0;
- $420 = (($418) + 4)|0;
- $421 = $420;
- HEAP32[$421>>2] = 0;
- $422 = ((($4)) + 544|0);
- $423 = $422;
- $424 = $423;
- HEAP32[$424>>2] = 0;
- $425 = (($423) + 4)|0;
- $426 = $425;
- HEAP32[$426>>2] = 0;
- $427 = ((($4)) + 552|0);
- $428 = $427;
- $429 = $428;
- HEAP32[$429>>2] = 0;
- $430 = (($428) + 4)|0;
- $431 = $430;
- HEAP32[$431>>2] = 0;
- $432 = ((($4)) + 560|0);
- $433 = $432;
- $434 = $433;
- HEAP32[$434>>2] = 0;
- $435 = (($433) + 4)|0;
- $436 = $435;
- HEAP32[$436>>2] = 0;
- $437 = ((($4)) + 568|0);
- $438 = $437;
- $439 = $438;
- HEAP32[$439>>2] = 0;
- $440 = (($438) + 4)|0;
- $441 = $440;
- HEAP32[$441>>2] = 0;
- $442 = ((($4)) + 576|0);
- $443 = $442;
- $444 = $443;
- HEAP32[$444>>2] = 0;
- $445 = (($443) + 4)|0;
- $446 = $445;
- HEAP32[$446>>2] = 0;
- $447 = ((($4)) + 584|0);
- $448 = $447;
- $449 = $448;
- HEAP32[$449>>2] = 0;
- $450 = (($448) + 4)|0;
- $451 = $450;
- HEAP32[$451>>2] = 0;
- $452 = ((($4)) + 592|0);
- $453 = $452;
- $454 = $453;
- HEAP32[$454>>2] = 0;
- $455 = (($453) + 4)|0;
- $456 = $455;
- HEAP32[$456>>2] = 0;
- $457 = ((($4)) + 600|0);
- $458 = $457;
- $459 = $458;
- HEAP32[$459>>2] = 0;
- $460 = (($458) + 4)|0;
- $461 = $460;
- HEAP32[$461>>2] = 0;
- $462 = ((($4)) + 608|0);
- $463 = $462;
- $464 = $463;
- HEAP32[$464>>2] = 0;
- $465 = (($463) + 4)|0;
- $466 = $465;
- HEAP32[$466>>2] = 0;
- $467 = ((($4)) + 616|0);
- $468 = $467;
- $469 = $468;
- HEAP32[$469>>2] = 0;
- $470 = (($468) + 4)|0;
- $471 = $470;
- HEAP32[$471>>2] = 0;
- $472 = ((($4)) + 624|0);
- $473 = $472;
- $474 = $473;
- HEAP32[$474>>2] = 0;
- $475 = (($473) + 4)|0;
- $476 = $475;
- HEAP32[$476>>2] = 0;
- $477 = ((($4)) + 632|0);
- $478 = $477;
- $479 = $478;
- HEAP32[$479>>2] = 0;
- $480 = (($478) + 4)|0;
- $481 = $480;
- HEAP32[$481>>2] = 0;
- $482 = ((($4)) + 640|0);
- $483 = $482;
- $484 = $483;
- HEAP32[$484>>2] = 0;
- $485 = (($483) + 4)|0;
- $486 = $485;
- HEAP32[$486>>2] = 0;
- $487 = ((($4)) + 648|0);
- $488 = $487;
- $489 = $488;
- HEAP32[$489>>2] = 0;
- $490 = (($488) + 4)|0;
- $491 = $490;
- HEAP32[$491>>2] = 0;
- $492 = ((($4)) + 656|0);
- $493 = $492;
- $494 = $493;
- HEAP32[$494>>2] = 0;
- $495 = (($493) + 4)|0;
- $496 = $495;
- HEAP32[$496>>2] = 0;
- $497 = ((($4)) + 664|0);
- $498 = $497;
- $499 = $498;
- HEAP32[$499>>2] = 0;
- $500 = (($498) + 4)|0;
- $501 = $500;
- HEAP32[$501>>2] = 0;
- $502 = ((($4)) + 672|0);
- $503 = $502;
- $504 = $503;
- HEAP32[$504>>2] = 0;
- $505 = (($503) + 4)|0;
- $506 = $505;
- HEAP32[$506>>2] = 0;
- $507 = ((($4)) + 680|0);
- $508 = $507;
- $509 = $508;
- HEAP32[$509>>2] = 0;
- $510 = (($508) + 4)|0;
- $511 = $510;
- HEAP32[$511>>2] = 0;
- $512 = ((($4)) + 688|0);
- $513 = $512;
- $514 = $513;
- HEAP32[$514>>2] = 0;
- $515 = (($513) + 4)|0;
- $516 = $515;
- HEAP32[$516>>2] = 0;
- $517 = ((($4)) + 696|0);
- $518 = $517;
- $519 = $518;
- HEAP32[$519>>2] = 0;
- $520 = (($518) + 4)|0;
- $521 = $520;
- HEAP32[$521>>2] = 0;
- $522 = ((($4)) + 704|0);
- $523 = $522;
- $524 = $523;
- HEAP32[$524>>2] = 0;
- $525 = (($523) + 4)|0;
- $526 = $525;
- HEAP32[$526>>2] = 0;
- $527 = ((($4)) + 712|0);
- $528 = $527;
- $529 = $528;
- HEAP32[$529>>2] = 0;
- $530 = (($528) + 4)|0;
- $531 = $530;
- HEAP32[$531>>2] = 0;
- $532 = ((($4)) + 720|0);
- $533 = $532;
- $534 = $533;
- HEAP32[$534>>2] = 0;
- $535 = (($533) + 4)|0;
- $536 = $535;
- HEAP32[$536>>2] = 0;
- $537 = ((($4)) + 728|0);
- $538 = $537;
- $539 = $538;
- HEAP32[$539>>2] = 0;
- $540 = (($538) + 4)|0;
- $541 = $540;
- HEAP32[$541>>2] = 0;
- $542 = ((($4)) + 736|0);
- $543 = $542;
- $544 = $543;
- HEAP32[$544>>2] = 0;
- $545 = (($543) + 4)|0;
- $546 = $545;
- HEAP32[$546>>2] = 0;
- $547 = ((($4)) + 744|0);
- $548 = $547;
- $549 = $548;
- HEAP32[$549>>2] = 0;
- $550 = (($548) + 4)|0;
- $551 = $550;
- HEAP32[$551>>2] = 0;
- $552 = ((($4)) + 752|0);
- $553 = $552;
- $554 = $553;
- HEAP32[$554>>2] = 0;
- $555 = (($553) + 4)|0;
- $556 = $555;
- HEAP32[$556>>2] = 0;
- $557 = ((($4)) + 760|0);
- $558 = $557;
- $559 = $558;
- HEAP32[$559>>2] = 0;
- $560 = (($558) + 4)|0;
- $561 = $560;
- HEAP32[$561>>2] = 0;
- $562 = ($$0119$lcssa|0)==(0);
- if ($562) {
-  STACKTOP = sp;return 0;
- }
- __gcry_random_progress(69710,88,$2,$2);
- STACKTOP = sp;return 0;
-}
-function _open_device($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$lcssa1016 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $or$cond11 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer11 = 0, $vararg_buffer14 = 0, $vararg_buffer3 = 0, 
$vararg_buffer5 = 0, $vararg_buffer8 = 0, $vararg_ptr17 = 0, $vararg_ptr7 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer14 = sp + 48|0;
- $vararg_buffer11 = sp + 40|0;
- $vararg_buffer8 = sp + 32|0;
- $vararg_buffer5 = sp + 24|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = sp + 56|0;
- $3 = ($1|0)!=(0);
- do {
-  if ($3) {
-   __gcry_random_progress(69814,88,1,0);
-   $6 = (_open($0,0,$vararg_buffer1)|0);
-   $7 = ($6|0)==(-1);
-   $or$cond11 = $3 & $7;
-   if ($or$cond11) {
-    $8 = ((($2)) + 4|0);
-    while(1) {
-     HEAP32[$2>>2] = 5;
-     HEAP32[$8>>2] = 0;
-     __gcry_random_progress(69830,88,0,5);
-     (_select(0,0,0,0,$2)|0);
-     $9 = (_open($0,0,$vararg_buffer3)|0);
-     $10 = ($9|0)==(-1);
-     if (!($10)) {
-      $$lcssa1016 = $9;
-      break;
-     }
-    }
-   } else {
-    if (!($7)) {
-     $$lcssa1016 = $6;
-     break;
-    }
-    $11 = (___errno_location()|0);
-    $12 = HEAP32[$11>>2]|0;
-    $13 = (_strerror($12)|0);
-    HEAP32[$vararg_buffer5>>2] = $0;
-    $vararg_ptr7 = ((($vararg_buffer5)) + 4|0);
-    HEAP32[$vararg_ptr7>>2] = $13;
-    __gcry_log_fatal(69846,$vararg_buffer5);
-    // unreachable;
-   }
-  } else {
-   $4 = (_open($0,0,$vararg_buffer)|0);
-   $5 = ($4|0)==(-1);
-   if ($5) {
-    $11 = (___errno_location()|0);
-    $12 = HEAP32[$11>>2]|0;
-    $13 = (_strerror($12)|0);
-    HEAP32[$vararg_buffer5>>2] = $0;
-    $vararg_ptr7 = ((($vararg_buffer5)) + 4|0);
-    HEAP32[$vararg_ptr7>>2] = $13;
-    __gcry_log_fatal(69846,$vararg_buffer5);
-    // unreachable;
-   } else {
-    $$lcssa1016 = $4;
-   }
-  }
- } while(0);
- HEAP32[$vararg_buffer8>>2] = 0;
- $14 = (_fcntl($$lcssa1016,1,$vararg_buffer8)|0);
- $15 = ($14|0)<(0);
- if (!($15)) {
-  $16 = $14 | 1;
-  HEAP32[$vararg_buffer11>>2] = $16;
-  $17 = (_fcntl($$lcssa1016,2,$vararg_buffer11)|0);
-  $18 = ($17|0)==(0);
-  if ($18) {
-   STACKTOP = sp;return ($$lcssa1016|0);
-  }
- }
- $19 = (___errno_location()|0);
- $20 = HEAP32[$19>>2]|0;
- $21 = (_strerror($20)|0);
- HEAP32[$vararg_buffer14>>2] = $$lcssa1016;
- $vararg_ptr17 = ((($vararg_buffer14)) + 4|0);
- HEAP32[$vararg_ptr17>>2] = $21;
- __gcry_log_error(69865,$vararg_buffer14);
- STACKTOP = sp;return ($$lcssa1016|0);
-}
-function __gcry_mpih_addmul_1($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$076 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = (0 - ($2))|0;
- $5 = (($0) + ($2<<2)|0);
- $6 = (($1) + ($2<<2)|0);
- $7 = $3 & 65535;
- $8 = $3 >>> 16;
- $$0 = 0;$$076 = $4;
- while(1) {
-  $9 = (($6) + ($$076<<2)|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = $10 & 65535;
-  $12 = $10 >>> 16;
-  $13 = Math_imul($11, $7)|0;
-  $14 = Math_imul($11, $8)|0;
-  $15 = Math_imul($12, $7)|0;
-  $16 = Math_imul($12, $8)|0;
-  $17 = $13 >>> 16;
-  $18 = (($15) + ($14))|0;
-  $19 = (($18) + ($17))|0;
-  $20 = ($19>>>0)<($15>>>0);
-  $21 = (($16) + 65536)|0;
-  $spec$select = $20 ? $21 : $16;
-  $22 = $19 >>> 16;
-  $23 = (($spec$select) + ($22))|0;
-  $24 = $19 << 16;
-  $25 = $13 & 65535;
-  $26 = $24 | $25;
-  $27 = (($26) + ($$0))|0;
-  $28 = ($27>>>0)<($$0>>>0);
-  $29 = $28&1;
-  $30 = (($23) + ($29))|0;
-  $31 = (($5) + ($$076<<2)|0);
-  $32 = HEAP32[$31>>2]|0;
-  $33 = (($27) + ($32))|0;
-  $34 = ($33>>>0)<($32>>>0);
-  $35 = $34&1;
-  $36 = (($30) + ($35))|0;
-  HEAP32[$31>>2] = $33;
-  $37 = (($$076) + 1)|0;
-  $38 = ($37|0)==(0);
-  if ($38) {
-   break;
-  } else {
-   $$0 = $36;$$076 = $37;
-  }
- }
- return ($36|0);
-}
-function __gcry_dsa_gen_k($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$0$us = 0, $$1 = 0, $$1$lcssa = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, $vararg_buffer = 0;
- var $vararg_buffer2 = 0, $vararg_buffer4 = 0, $vararg_buffer6 = 0, 
$vararg_buffer8 = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer8 = sp + 32|0;
- $vararg_buffer6 = sp + 24|0;
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = (__gcry_mpi_alloc_secure($3)|0);
- $5 = (__gcry_mpi_get_nbits($0)|0);
- $6 = (($5) + 7)|0;
- $7 = $6 >>> 3;
- $8 = (__gcry_get_debug_flag(1)|0);
- $9 = ($8|0)==(0);
- if (!($9)) {
-  HEAP32[$vararg_buffer>>2] = $5;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $1;
-  __gcry_log_debug(69904,$vararg_buffer);
- }
- $10 = ($5>>>0)<(32);
- $11 = (($5) + -1)|0;
- if ($10) {
-  $$0$us = 0;
-  while(1) {
-   __gcry_free($$0$us);
-   $12 = (__gcry_random_bytes_secure($7,$1)|0);
-   __gcry_mpi_set_buffer($4,$12,$7,0);
-   $13 = (__gcry_mpi_test_bit($4,$11)|0);
-   $14 = ($13|0)==(0);
-   __gcry_mpi_set_highbit($4,$11);
-   if ($14) {
-    __gcry_mpi_clear_bit($4,$11);
-   }
-   $15 = (__gcry_mpi_cmp($4,$0)|0);
-   $16 = ($15|0)<(0);
-   if ($16) {
-    $19 = (__gcry_mpi_cmp_ui($4,0)|0);
-    $20 = ($19|0)>(0);
-    if ($20) {
-     $$1$lcssa = $12;
-     break;
-    }
-    $21 = (__gcry_get_debug_flag(1)|0);
-    $22 = ($21|0)==(0);
-    if (!($22)) {
-     __gcry_log_debug(69973,$vararg_buffer4);
-    }
-   } else {
-    $17 = (__gcry_get_debug_flag(1)|0);
-    $18 = ($17|0)==(0);
-    if (!($18)) {
-     __gcry_log_debug(69951,$vararg_buffer2);
-    }
-   }
-   $$0$us = $12;
-  }
-  __gcry_free($$1$lcssa);
-  STACKTOP = sp;return ($4|0);
- }
- $$0 = 0;
- while(1) {
-  $23 = ($$0|0)==(0|0);
-  if ($23) {
-   __gcry_free(0);
-   $24 = (__gcry_random_bytes_secure($7,$1)|0);
-   $$1 = $24;
-  } else {
-   $25 = (__gcry_random_bytes_secure(4,$1)|0);
-   $26 = 
HEAPU8[$25>>0]|(HEAPU8[$25+1>>0]<<8)|(HEAPU8[$25+2>>0]<<16)|(HEAPU8[$25+3>>0]<<24);
-   
HEAP8[$$0>>0]=$26&255;HEAP8[$$0+1>>0]=($26>>8)&255;HEAP8[$$0+2>>0]=($26>>16)&255;HEAP8[$$0+3>>0]=$26>>24;
-   __gcry_free($25);
-   $$1 = $$0;
-  }
-  __gcry_mpi_set_buffer($4,$$1,$7,0);
-  $27 = (__gcry_mpi_test_bit($4,$11)|0);
-  $28 = ($27|0)==(0);
-  __gcry_mpi_set_highbit($4,$11);
-  if ($28) {
-   __gcry_mpi_clear_bit($4,$11);
-  }
-  $29 = (__gcry_mpi_cmp($4,$0)|0);
-  $30 = ($29|0)<(0);
-  if ($30) {
-   $33 = (__gcry_mpi_cmp_ui($4,0)|0);
-   $34 = ($33|0)>(0);
-   if ($34) {
-    $$1$lcssa = $$1;
-    break;
-   }
-   $35 = (__gcry_get_debug_flag(1)|0);
-   $36 = ($35|0)==(0);
-   if (!($36)) {
-    __gcry_log_debug(69973,$vararg_buffer8);
-   }
-  } else {
-   $31 = (__gcry_get_debug_flag(1)|0);
-   $32 = ($31|0)==(0);
-   if (!($32)) {
-    __gcry_log_debug(69951,$vararg_buffer6);
-   }
-  }
-  $$0 = $$1;
- }
- __gcry_free($$1$lcssa);
- STACKTOP = sp;return ($4|0);
-}
-function __gcry_dsa_gen_rfc6979_k($0,$1,$2,$3,$4,$5,$6) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- $6 = $6|0;
- var $$0135 = 0, $$0136145$us = 0, $$0136145$us$be = 0, $$0137 = 0, $$0138 = 
0, $$0139 = 0, $$0140$ph = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, 
$104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0;
- var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, 
$118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, 
$125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0;
- var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 
= 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, 
$22 = 0, $23 = 0, $24 = 0, $25 = 0;
- var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 
0, $43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 
0, $63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, $or$cond = 0, $or$cond3 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $7 = sp + 16|0;
- $8 = sp + 12|0;
- $9 = sp + 8|0;
- $10 = sp + 4|0;
- $11 = sp;
- HEAP32[$8>>2] = 0;
- HEAP32[$9>>2] = 0;
- HEAP32[$10>>2] = 0;
- HEAP32[$11>>2] = 0;
- $12 = (__gcry_mpi_get_nbits($1)|0);
- $13 = ($12|0)!=(0);
- $14 = ($3|0)!=(0|0);
- $or$cond = $14 & $13;
- $15 = ($4|0)!=(0);
- $or$cond3 = $15 & $or$cond;
- if (!($or$cond3)) {
-  $$0135 = 32816;
-  STACKTOP = sp;return ($$0135|0);
- }
- $16 = (__gcry_md_get_algo_dlen($5)|0);
- $17 = ($16|0)==($4|0);
- if (!($17)) {
-  $$0135 = 5;
-  STACKTOP = sp;return ($$0135|0);
- }
- $18 = (__gcry_malloc($4)|0);
- $19 = ($18|0)==(0|0);
- L7: do {
-  if ($19) {
-   $20 = (_gpg_err_code_from_syserror()|0);
-   $$0137 = 0;$$0138 = 0;$$0139 = $20;
-  } else {
-   _memset(($18|0),1,($4|0))|0;
-   $21 = (__gcry_calloc(1,$4)|0);
-   $22 = ($21|0)==(0|0);
-   if ($22) {
-    $23 = (_gpg_err_code_from_syserror()|0);
-    $$0137 = 0;$$0138 = 0;$$0139 = $23;
-    break;
-   }
-   $24 = (($12) + 7)|0;
-   $25 = $24 >>> 3;
-   $26 = (_int2octets($8,$2,$25)|0);
-   $27 = ($26|0)==(0);
-   if ($27) {
-    $28 = $4 << 3;
-    $29 = $4 & 536870911;
-    $30 = (__gcry_mpi_scan($7,5,$3,$29,0)|0);
-    $31 = ($30|0)==(0);
-    if (!($31)) {
-     $$0137 = 0;$$0138 = $21;$$0139 = $30;
-     break;
-    }
-    $32 = ($28>>>0)>($12>>>0);
-    if ($32) {
-     $33 = (($28) - ($12))|0;
-     $34 = HEAP32[$7>>2]|0;
-     __gcry_mpi_rshift($34,$34,$33);
-    }
-    $35 = HEAP32[$7>>2]|0;
-    $36 = (__gcry_mpi_cmp($35,$1)|0);
-    $37 = ($36|0)>(-1);
-    if ($37) {
-     $38 = HEAP32[$7>>2]|0;
-     __gcry_mpi_sub($38,$38,$1);
-    }
-    $39 = HEAP32[$7>>2]|0;
-    $40 = (_int2octets($9,$39,$25)|0);
-    $41 = HEAP32[$7>>2]|0;
-    __gcry_mpi_free($41);
-    $42 = ($40|0)==(0);
-    if ($42) {
-     $43 = (__gcry_md_open($10,$5,3)|0);
-     $44 = ($43|0)==(0);
-     if ($44) {
-      $45 = HEAP32[$10>>2]|0;
-      $46 = (__gcry_md_setkey($45,$21,$4)|0);
-      $47 = ($46|0)==(0);
-      if ($47) {
-       $48 = HEAP32[$10>>2]|0;
-       __gcry_md_write($48,$18,$4);
-       $49 = HEAP32[$10>>2]|0;
-       __gcry_md_write($49,73338,1);
-       $50 = HEAP32[$10>>2]|0;
-       $51 = HEAP32[$8>>2]|0;
-       __gcry_md_write($50,$51,$25);
-       $52 = HEAP32[$10>>2]|0;
-       $53 = HEAP32[$9>>2]|0;
-       __gcry_md_write($52,$53,$25);
-       $54 = HEAP32[$10>>2]|0;
-       $55 = (__gcry_md_read($54,0)|0);
-       _memcpy(($21|0),($55|0),($4|0))|0;
-       $56 = HEAP32[$10>>2]|0;
-       $57 = (__gcry_md_setkey($56,$21,$4)|0);
-       $58 = ($57|0)==(0);
-       if ($58) {
-        $59 = HEAP32[$10>>2]|0;
-        __gcry_md_write($59,$18,$4);
-        $60 = HEAP32[$10>>2]|0;
-        $61 = (__gcry_md_read($60,0)|0);
-        _memcpy(($18|0),($61|0),($4|0))|0;
-        $62 = HEAP32[$10>>2]|0;
-        $63 = (__gcry_md_setkey($62,$21,$4)|0);
-        $64 = ($63|0)==(0);
-        if ($64) {
-         $65 = HEAP32[$10>>2]|0;
-         __gcry_md_write($65,$18,$4);
-         $66 = HEAP32[$10>>2]|0;
-         __gcry_md_write($66,69993,1);
-         $67 = HEAP32[$10>>2]|0;
-         __gcry_md_write($67,$51,$25);
-         $68 = HEAP32[$10>>2]|0;
-         __gcry_md_write($68,$53,$25);
-         $69 = HEAP32[$10>>2]|0;
-         $70 = (__gcry_md_read($69,0)|0);
-         _memcpy(($21|0),($70|0),($4|0))|0;
-         $71 = HEAP32[$10>>2]|0;
-         $72 = (__gcry_md_setkey($71,$21,$4)|0);
-         $73 = ($72|0)==(0);
-         if ($73) {
-          $74 = HEAP32[$10>>2]|0;
-          __gcry_md_write($74,$18,$4);
-          $75 = HEAP32[$10>>2]|0;
-          $76 = (__gcry_md_read($75,0)|0);
-          _memcpy(($18|0),($76|0),($4|0))|0;
-          $77 = (($25) + ($4))|0;
-          $78 = (__gcry_malloc($77)|0);
-          $79 = ($78|0)==(0|0);
-          if ($79) {
-           $80 = (_gpg_err_code_from_syserror()|0);
-           $$0137 = 0;$$0138 = $21;$$0139 = $80;
-           break;
-          }
-          $$0140$ph = $6;
-          while(1) {
-           $$0136145$us = 0;
-           while(1) {
-            $104 = HEAP32[$10>>2]|0;
-            $105 = (__gcry_md_setkey($104,$21,$4)|0);
-            $106 = ($105|0)==(0);
-            if (!($106)) {
-             $$0137 = $78;$$0138 = $21;$$0139 = $105;
-             break L7;
-            }
-            $107 = HEAP32[$10>>2]|0;
-            __gcry_md_write($107,$18,$4);
-            $108 = HEAP32[$10>>2]|0;
-            $109 = (__gcry_md_read($108,0)|0);
-            _memcpy(($18|0),($109|0),($4|0))|0;
-            $110 = $$0136145$us >>> 3;
-            $111 = (($78) + ($110)|0);
-            _memcpy(($111|0),($18|0),($4|0))|0;
-            $82 = (($$0136145$us) + ($28))|0;
-            $112 = ($82>>>0)<($12>>>0);
-            if ($112) {
-             $$0136145$us$be = $82;
-            } else {
-             $113 = HEAP32[$11>>2]|0;
-             __gcry_mpi_free($113);
-             HEAP32[$11>>2] = 0;
-             $114 = $82 >>> 3;
-             $115 = (__gcry_mpi_scan($11,5,$78,$114,0)|0);
-             $116 = ($115|0)==(0);
-             if (!($116)) {
-              $$0137 = $78;$$0138 = $21;$$0139 = $115;
-              break L7;
-             }
-             $81 = ($82>>>0)>($12>>>0);
-             if ($81) {
-              $83 = (($82) - ($12))|0;
-              $84 = HEAP32[$11>>2]|0;
-              __gcry_mpi_rshift($84,$84,$83);
-             }
-             $85 = HEAP32[$11>>2]|0;
-             $86 = (__gcry_mpi_cmp($85,$1)|0);
-             $87 = ($86|0)<(0);
-             if ($87) {
-              $88 = HEAP32[$11>>2]|0;
-              $89 = (__gcry_mpi_cmp_ui($88,0)|0);
-              $90 = ($89|0)>(0);
-              if ($90) {
-               break;
-              }
-             }
-             $91 = HEAP32[$10>>2]|0;
-             $92 = (__gcry_md_setkey($91,$21,$4)|0);
-             $93 = ($92|0)==(0);
-             if (!($93)) {
-              $$0137 = $78;$$0138 = $21;$$0139 = $92;
-              break L7;
-             }
-             $94 = HEAP32[$10>>2]|0;
-             __gcry_md_write($94,$18,$4);
-             $95 = HEAP32[$10>>2]|0;
-             __gcry_md_write($95,73338,1);
-             $96 = HEAP32[$10>>2]|0;
-             $97 = (__gcry_md_read($96,0)|0);
-             _memcpy(($21|0),($97|0),($4|0))|0;
-             $98 = HEAP32[$10>>2]|0;
-             $99 = (__gcry_md_setkey($98,$21,$4)|0);
-             $100 = ($99|0)==(0);
-             if (!($100)) {
-              $$0137 = $78;$$0138 = $21;$$0139 = $99;
-              break L7;
-             }
-             $101 = HEAP32[$10>>2]|0;
-             __gcry_md_write($101,$18,$4);
-             $102 = HEAP32[$10>>2]|0;
-             $103 = (__gcry_md_read($102,0)|0);
-             _memcpy(($18|0),($103|0),($4|0))|0;
-             $$0136145$us$be = 0;
-            }
-            $$0136145$us = $$0136145$us$be;
-           }
-           $117 = ($$0140$ph|0)==(0);
-           if ($117) {
-            $$0137 = $78;$$0138 = $21;$$0139 = 0;
-            break L7;
-           }
-           $118 = (($$0140$ph) + -1)|0;
-           $119 = HEAP32[$10>>2]|0;
-           $120 = (__gcry_md_setkey($119,$21,$4)|0);
-           $121 = ($120|0)==(0);
-           if (!($121)) {
-            $$0137 = $78;$$0138 = $21;$$0139 = $120;
-            break L7;
-           }
-           $122 = HEAP32[$10>>2]|0;
-           __gcry_md_write($122,$18,$4);
-           $123 = HEAP32[$10>>2]|0;
-           __gcry_md_write($123,73338,1);
-           $124 = HEAP32[$10>>2]|0;
-           $125 = (__gcry_md_read($124,0)|0);
-           _memcpy(($21|0),($125|0),($4|0))|0;
-           $126 = HEAP32[$10>>2]|0;
-           $127 = (__gcry_md_setkey($126,$21,$4)|0);
-           $128 = ($127|0)==(0);
-           if (!($128)) {
-            $$0137 = $78;$$0138 = $21;$$0139 = $127;
-            break L7;
-           }
-           $129 = HEAP32[$10>>2]|0;
-           __gcry_md_write($129,$18,$4);
-           $130 = HEAP32[$10>>2]|0;
-           $131 = (__gcry_md_read($130,0)|0);
-           _memcpy(($18|0),($131|0),($4|0))|0;
-           $$0140$ph = $118;
-          }
-         } else {
-          $$0137 = 0;$$0138 = $21;$$0139 = $72;
-         }
-        } else {
-         $$0137 = 0;$$0138 = $21;$$0139 = $63;
-        }
-       } else {
-        $$0137 = 0;$$0138 = $21;$$0139 = $57;
-       }
-      } else {
-       $$0137 = 0;$$0138 = $21;$$0139 = $46;
-      }
-     } else {
-      $$0137 = 0;$$0138 = $21;$$0139 = $43;
-     }
-    } else {
-     $$0137 = 0;$$0138 = $21;$$0139 = $40;
-    }
-   } else {
-    $$0137 = 0;$$0138 = $21;$$0139 = $26;
-   }
-  }
- } while(0);
- __gcry_free($$0137);
- $132 = HEAP32[$10>>2]|0;
- __gcry_md_close($132);
- $133 = HEAP32[$9>>2]|0;
- __gcry_free($133);
- $134 = HEAP32[$8>>2]|0;
- __gcry_free($134);
- __gcry_free($$0138);
- __gcry_free($18);
- $135 = ($$0139|0)==(0);
- $136 = HEAP32[$11>>2]|0;
- if ($135) {
-  HEAP32[$0>>2] = $136;
-  $$0135 = 0;
-  STACKTOP = sp;return ($$0135|0);
- } else {
-  __gcry_mpi_free($136);
-  $$0135 = $$0139;
-  STACKTOP = sp;return ($$0135|0);
- }
- return (0)|0;
-}
-function _int2octets($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $3 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- $4 = (__gcry_mpi_print(5,0,0,$3,$1)|0);
- $5 = ($4|0)==(0);
- if (!($5)) {
-  $$0 = $4;
-  STACKTOP = sp;return ($$0|0);
- }
- $6 = HEAP32[$3>>2]|0;
- $7 = ($6>>>0)>($2>>>0);
- if ($7) {
-  $$0 = 67;
-  STACKTOP = sp;return ($$0|0);
- }
- $8 = ($6>>>0)<($2>>>0);
- $9 = (($2) - ($6))|0;
- $spec$select = $8 ? $9 : 0;
- $10 = (($spec$select) + ($6))|0;
- $11 = ($1|0)==(0|0);
- if ($11) {
-  label = 6;
- } else {
-  $12 = ((($1)) + 12|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = $13 & 1;
-  $15 = ($14|0)==(0);
-  if ($15) {
-   label = 6;
-  } else {
-   $16 = (__gcry_malloc_secure($10)|0);
-   $19 = $16;
-  }
- }
- if ((label|0) == 6) {
-  $17 = (__gcry_malloc($10)|0);
-  $19 = $17;
- }
- $18 = ($19|0)==(0|0);
- if ($18) {
-  $20 = (_gpg_err_code_from_syserror()|0);
-  $$0 = $20;
-  STACKTOP = sp;return ($$0|0);
- }
- $21 = ($spec$select|0)==(0);
- if (!($21)) {
-  _memset(($19|0),0,($spec$select|0))|0;
- }
- $22 = HEAP32[$3>>2]|0;
- $23 = (($22) + ($spec$select))|0;
- HEAP32[$3>>2] = $23;
- $24 = (($19) + ($spec$select)|0);
- $25 = (__gcry_mpi_print(5,$24,$22,0,$1)|0);
- $26 = ($25|0)==(0);
- if ($26) {
-  HEAP32[$0>>2] = $19;
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- } else {
-  __gcry_free($19);
-  $$0 = $25;
-  STACKTOP = sp;return ($$0|0);
- }
- return (0)|0;
-}
-function __gcry_dsa_normalize_hash($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 
= 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp + 4|0;
- $4 = sp;
- $5 = ($0|0)==(0|0);
- if ($5) {
-  label = 6;
- } else {
-  $6 = ((($0)) + 12|0);
-  $7 = HEAP32[$6>>2]|0;
-  $8 = $7 & 4;
-  $9 = ($8|0)==(0);
-  if ($9) {
-   label = 6;
-  } else {
-   $10 = (__gcry_mpi_get_opaque($0,$3)|0);
-   $11 = HEAP32[$3>>2]|0;
-   $12 = (($11) + 7)|0;
-   $13 = $12 >>> 3;
-   $14 = (__gcry_mpi_scan($4,5,$10,$13,0)|0);
-   $15 = ($14|0)==(0);
-   if (!($15)) {
-    $$0 = $14;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $16 = HEAP32[$3>>2]|0;
-   $17 = ($16>>>0)>($2>>>0);
-   if ($17) {
-    $18 = (($16) - ($2))|0;
-    $19 = HEAP32[$4>>2]|0;
-    __gcry_mpi_rshift($19,$19,$18);
-   }
-  }
- }
- if ((label|0) == 6) {
-  HEAP32[$4>>2] = $0;
- }
- $20 = HEAP32[$4>>2]|0;
- HEAP32[$1>>2] = $20;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_ecdsa_sign($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $$074 = 0, $$175$us = 0, $$276$lcssa77 = 0, $$3 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $9 = 0;
- var $or$cond = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $6 = sp + 24|0;
- $7 = sp + 12|0;
- $8 = sp + 8|0;
- $9 = sp + 4|0;
- $10 = (__gcry_get_debug_flag(1)|0);
- $11 = ($10|0)==(0);
- if (!($11)) {
-  __gcry_log_printmpi(69995,$0);
- }
- $12 = ((($1)) + 32|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = (__gcry_mpi_get_nbits($13)|0);
- $15 = (__gcry_dsa_normalize_hash($0,$8,$14)|0);
- $16 = ($15|0)==(0);
- if (!($16)) {
-  $$0 = $15;
-  STACKTOP = sp;return ($$0|0);
- }
- HEAP32[$6>>2] = 0;
- $17 = (__gcry_mpi_alloc(0)|0);
- $18 = (__gcry_mpi_alloc(0)|0);
- $19 = (__gcry_mpi_alloc(0)|0);
- $20 = (__gcry_mpi_alloc(0)|0);
- __gcry_mpi_point_init($7);
- $21 = HEAP32[$1>>2]|0;
- $22 = ((($1)) + 4|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = ((($1)) + 8|0);
- $25 = HEAP32[$24>>2]|0;
- $26 = ((($1)) + 12|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($1)) + 16|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = (__gcry_mpi_ec_p_internal_new($21,$23,0,$25,$27,$29)|0);
- $31 = $4 & 2;
- $32 = ($31|0)!=(0);
- $33 = ($5|0)!=(0);
- $or$cond = $32 & $33;
- $34 = ($0|0)==(0|0);
- $35 = ((($1)) + 20|0);
- $36 = ((($0)) + 12|0);
- $37 = ((($1)) + 56|0);
- $$074 = 0;
- L7: while(1) {
-  if ($or$cond) {
-   $$175$us = $$074;
-   while(1) {
-    $38 = HEAP32[$6>>2]|0;
-    __gcry_mpi_free($38);
-    HEAP32[$6>>2] = 0;
-    if ($34) {
-     $$3 = 70;
-     break L7;
-    }
-    $39 = HEAP32[$36>>2]|0;
-    $40 = $39 & 4;
-    $41 = ($40|0)==(0);
-    if ($41) {
-     $$3 = 70;
-     break L7;
-    }
-    $42 = (__gcry_mpi_get_opaque($0,$9)|0);
-    $43 = HEAP32[$12>>2]|0;
-    $44 = HEAP32[$37>>2]|0;
-    $45 = HEAP32[$9>>2]|0;
-    $46 = (($45) + 7)|0;
-    $47 = $46 >>> 3;
-    $48 = (__gcry_dsa_gen_rfc6979_k($6,$43,$44,$42,$47,$5,$$175$us)|0);
-    $49 = ($48|0)==(0);
-    if (!($49)) {
-     $$3 = $48;
-     break L7;
-    }
-    $50 = (($$175$us) + 1)|0;
-    $51 = HEAP32[$6>>2]|0;
-    __gcry_mpi_ec_mul_point($7,$51,$35,$30);
-    $52 = (__gcry_mpi_ec_get_affine($20,0,$7,$30)|0);
-    $53 = ($52|0)==(0);
-    if (!($53)) {
-     label = 14;
-     break L7;
-    }
-    $54 = HEAP32[$12>>2]|0;
-    __gcry_mpi_mod($2,$20,$54);
-    $55 = (__gcry_mpi_cmp_ui($2,0)|0);
-    $56 = ($55|0)==(0);
-    if ($56) {
-     $$175$us = $50;
-    } else {
-     $$276$lcssa77 = $50;
-     break;
-    }
-   }
-  } else {
-   while(1) {
-    $57 = HEAP32[$6>>2]|0;
-    __gcry_mpi_free($57);
-    HEAP32[$6>>2] = 0;
-    $58 = HEAP32[$12>>2]|0;
-    $59 = (__gcry_dsa_gen_k($58,1)|0);
-    HEAP32[$6>>2] = $59;
-    __gcry_mpi_ec_mul_point($7,$59,$35,$30);
-    $60 = (__gcry_mpi_ec_get_affine($20,0,$7,$30)|0);
-    $61 = ($60|0)==(0);
-    if (!($61)) {
-     label = 14;
-     break L7;
-    }
-    $64 = HEAP32[$12>>2]|0;
-    __gcry_mpi_mod($2,$20,$64);
-    $65 = (__gcry_mpi_cmp_ui($2,0)|0);
-    $66 = ($65|0)==(0);
-    if (!($66)) {
-     $$276$lcssa77 = $$074;
-     break;
-    }
-   }
-  }
-  $67 = HEAP32[$37>>2]|0;
-  $68 = HEAP32[$12>>2]|0;
-  __gcry_mpi_mulm($17,$67,$2,$68);
-  $69 = HEAP32[$8>>2]|0;
-  $70 = HEAP32[$12>>2]|0;
-  __gcry_mpi_addm($18,$69,$17,$70);
-  $71 = HEAP32[$6>>2]|0;
-  $72 = HEAP32[$12>>2]|0;
-  (__gcry_mpi_invm($19,$71,$72)|0);
-  $73 = HEAP32[$12>>2]|0;
-  __gcry_mpi_mulm($3,$19,$18,$73);
-  $74 = (__gcry_mpi_cmp_ui($3,0)|0);
-  $75 = ($74|0)==(0);
-  if ($75) {
-   $$074 = $$276$lcssa77;
-  } else {
-   label = 18;
-   break;
-  }
- }
- if ((label|0) == 14) {
-  $62 = (__gcry_get_debug_flag(1)|0);
-  $63 = ($62|0)==(0);
-  if ($63) {
-   $$3 = 8;
-  } else {
-   __gcry_log_debug(70072,$vararg_buffer);
-   $$3 = 8;
-  }
- }
- else if ((label|0) == 18) {
-  $76 = (__gcry_get_debug_flag(1)|0);
-  $77 = ($76|0)==(0);
-  if ($77) {
-   $$3 = 0;
-  } else {
-   __gcry_log_printmpi(70013,$2);
-   __gcry_log_printmpi(70034,$3);
-   $$3 = 0;
-  }
- }
- __gcry_mpi_ec_free($30);
- __gcry_mpi_point_free_parts($7);
- __gcry_mpi_free($20);
- __gcry_mpi_free($19);
- __gcry_mpi_free($18);
- __gcry_mpi_free($17);
- $78 = HEAP32[$6>>2]|0;
- __gcry_mpi_free($78);
- $79 = HEAP32[$8>>2]|0;
- $80 = ($79|0)==($0|0);
- if ($80) {
-  $$0 = $$3;
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_free($79);
- $$0 = $$3;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_ecdsa_verify($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$063 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = sp + 48|0;
- $5 = sp + 36|0;
- $6 = sp + 24|0;
- $7 = sp + 12|0;
- $8 = (__gcry_mpi_cmp_ui($2,0)|0);
- $9 = ($8|0)>(0);
- if (!($9)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $10 = ((($1)) + 32|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = (__gcry_mpi_cmp($2,$11)|0);
- $13 = ($12|0)<(0);
- if (!($13)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $14 = (__gcry_mpi_cmp_ui($3,0)|0);
- $15 = ($14|0)>(0);
- if (!($15)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $16 = HEAP32[$10>>2]|0;
- $17 = (__gcry_mpi_cmp($3,$16)|0);
- $18 = ($17|0)<(0);
- if (!($18)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $19 = HEAP32[$10>>2]|0;
- $20 = (__gcry_mpi_get_nbits($19)|0);
- $21 = (__gcry_dsa_normalize_hash($0,$4,$20)|0);
- $22 = ($21|0)==(0);
- if (!($22)) {
-  $$0 = $21;
-  STACKTOP = sp;return ($$0|0);
- }
- $23 = (__gcry_mpi_alloc(0)|0);
- $24 = (__gcry_mpi_alloc(0)|0);
- $25 = (__gcry_mpi_alloc(0)|0);
- $26 = (__gcry_mpi_alloc(0)|0);
- __gcry_mpi_point_init($5);
- __gcry_mpi_point_init($6);
- __gcry_mpi_point_init($7);
- $27 = HEAP32[$1>>2]|0;
- $28 = ((($1)) + 4|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = ((($1)) + 8|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = ((($1)) + 12|0);
- $33 = HEAP32[$32>>2]|0;
- $34 = ((($1)) + 16|0);
- $35 = HEAP32[$34>>2]|0;
- $36 = (__gcry_mpi_ec_p_internal_new($27,$29,0,$31,$33,$35)|0);
- $37 = HEAP32[$10>>2]|0;
- (__gcry_mpi_invm($23,$3,$37)|0);
- $38 = HEAP32[$4>>2]|0;
- $39 = HEAP32[$10>>2]|0;
- __gcry_mpi_mulm($24,$38,$23,$39);
- $40 = ((($1)) + 20|0);
- __gcry_mpi_ec_mul_point($6,$24,$40,$36);
- $41 = HEAP32[$10>>2]|0;
- __gcry_mpi_mulm($25,$2,$23,$41);
- $42 = ((($1)) + 44|0);
- __gcry_mpi_ec_mul_point($7,$25,$42,$36);
- __gcry_mpi_ec_add_points($5,$6,$7,$36);
- $43 = ((($5)) + 8|0);
- $44 = HEAP32[$43>>2]|0;
- $45 = (__gcry_mpi_cmp_ui($44,0)|0);
- $46 = ($45|0)==(0);
- do {
-  if ($46) {
-   $47 = (__gcry_get_debug_flag(1)|0);
-   $48 = ($47|0)==(0);
-   if ($48) {
-    $$063 = 8;
-   } else {
-    __gcry_log_debug(70156,$vararg_buffer);
-    $$063 = 8;
-   }
-  } else {
-   $49 = (__gcry_mpi_ec_get_affine($26,0,$5,$36)|0);
-   $50 = ($49|0)==(0);
-   if (!($50)) {
-    $51 = (__gcry_get_debug_flag(1)|0);
-    $52 = ($51|0)==(0);
-    if ($52) {
-     $$063 = 8;
-     break;
-    }
-    __gcry_log_debug(70178,$vararg_buffer1);
-    $$063 = 8;
-    break;
-   }
-   $53 = HEAP32[$10>>2]|0;
-   __gcry_mpi_mod($26,$26,$53);
-   $54 = (__gcry_mpi_cmp($26,$2)|0);
-   $55 = ($54|0)==(0);
-   if ($55) {
-    $$063 = 0;
-   } else {
-    $56 = (__gcry_get_debug_flag(1)|0);
-    $57 = ($56|0)==(0);
-    if ($57) {
-     $$063 = 8;
-    } else {
-     __gcry_log_printmpi(70224,$26);
-     __gcry_log_printmpi(70231,$2);
-     __gcry_log_printmpi(70238,$3);
-     $$063 = 8;
-    }
-   }
-  }
- } while(0);
- __gcry_mpi_ec_free($36);
- __gcry_mpi_point_free_parts($7);
- __gcry_mpi_point_free_parts($6);
- __gcry_mpi_point_free_parts($5);
- __gcry_mpi_free($26);
- __gcry_mpi_free($25);
- __gcry_mpi_free($24);
- __gcry_mpi_free($23);
- $58 = HEAP32[$4>>2]|0;
- $59 = ($58|0)==($0|0);
- if ($59) {
-  $$0 = $$063;
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_free($58);
- $$0 = $$063;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_gost_sign($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$1 = 0, $$177 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 
0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $4 = sp + 12|0;
- $5 = sp + 8|0;
- $6 = sp + 4|0;
- $7 = (__gcry_get_debug_flag(1)|0);
- $8 = ($7|0)==(0);
- if (!($8)) {
-  __gcry_log_printmpi(70055,$0);
- }
- $9 = ((($1)) + 32|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (__gcry_mpi_get_nbits($10)|0);
- $12 = ($0|0)==(0|0);
- if ($12) {
-  label = 8;
- } else {
-  $13 = ((($0)) + 12|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = $14 & 4;
-  $16 = ($15|0)==(0);
-  if ($16) {
-   label = 8;
-  } else {
-   $17 = (__gcry_mpi_get_opaque($0,$6)|0);
-   $18 = HEAP32[$6>>2]|0;
-   $19 = (($18) + 7)|0;
-   $20 = $19 >>> 3;
-   $21 = (__gcry_mpi_scan($5,5,$17,$20,0)|0);
-   $22 = ($21|0)==(0);
-   if (!($22)) {
-    $$0 = $21;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $23 = HEAP32[$6>>2]|0;
-   $24 = ($23>>>0)>($11>>>0);
-   if ($24) {
-    $25 = (($23) - ($11))|0;
-    $26 = HEAP32[$5>>2]|0;
-    __gcry_mpi_rshift($26,$26,$25);
-   }
-  }
- }
- if ((label|0) == 8) {
-  HEAP32[$5>>2] = $0;
- }
- $27 = (__gcry_mpi_alloc(0)|0);
- $28 = (__gcry_mpi_alloc(0)|0);
- $29 = (__gcry_mpi_alloc(0)|0);
- $30 = (__gcry_mpi_alloc(0)|0);
- $31 = (__gcry_mpi_alloc(0)|0);
- __gcry_mpi_point_init($4);
- $32 = HEAP32[$1>>2]|0;
- $33 = ((($1)) + 4|0);
- $34 = HEAP32[$33>>2]|0;
- $35 = ((($1)) + 8|0);
- $36 = HEAP32[$35>>2]|0;
- $37 = ((($1)) + 12|0);
- $38 = HEAP32[$37>>2]|0;
- $39 = ((($1)) + 16|0);
- $40 = HEAP32[$39>>2]|0;
- $41 = (__gcry_mpi_ec_p_internal_new($32,$34,0,$36,$38,$40)|0);
- $42 = HEAP32[$9>>2]|0;
- __gcry_mpi_mod($30,$0,$42);
- $43 = (__gcry_mpi_cmp_ui($30,0)|0);
- $44 = ($43|0)==(0);
- if ($44) {
-  (__gcry_mpi_set_ui($30,1)|0);
- }
- $45 = ((($1)) + 20|0);
- $46 = ((($1)) + 56|0);
- $$177 = 0;
- while(1) {
-  __gcry_mpi_free($$177);
-  $47 = HEAP32[$9>>2]|0;
-  $48 = (__gcry_dsa_gen_k($47,1)|0);
-  __gcry_mpi_ec_mul_point($4,$48,$45,$41);
-  $49 = (__gcry_mpi_ec_get_affine($31,0,$4,$41)|0);
-  $50 = ($49|0)==(0);
-  if (!($50)) {
-   label = 13;
-   break;
-  }
-  $53 = HEAP32[$9>>2]|0;
-  __gcry_mpi_mod($2,$31,$53);
-  $54 = (__gcry_mpi_cmp_ui($2,0)|0);
-  $55 = ($54|0)==(0);
-  if (!($55)) {
-   $56 = HEAP32[$46>>2]|0;
-   $57 = HEAP32[$9>>2]|0;
-   __gcry_mpi_mulm($27,$56,$2,$57);
-   $58 = HEAP32[$9>>2]|0;
-   __gcry_mpi_mulm($29,$48,$30,$58);
-   $59 = HEAP32[$9>>2]|0;
-   __gcry_mpi_addm($3,$29,$27,$59);
-   $60 = (__gcry_mpi_cmp_ui($3,0)|0);
-   $61 = ($60|0)==(0);
-   if (!($61)) {
-    label = 18;
-    break;
-   }
-  }
-  $$177 = $48;
- }
- if ((label|0) == 13) {
-  $51 = (__gcry_get_debug_flag(1)|0);
-  $52 = ($51|0)==(0);
-  if ($52) {
-   $$1 = 8;
-  } else {
-   __gcry_log_debug(70072,$vararg_buffer);
-   $$1 = 8;
-  }
- }
- else if ((label|0) == 18) {
-  $62 = (__gcry_get_debug_flag(1)|0);
-  $63 = ($62|0)==(0);
-  if ($63) {
-   $$1 = 0;
-  } else {
-   __gcry_log_printmpi(70116,$2);
-   __gcry_log_printmpi(70136,$3);
-   $$1 = 0;
-  }
- }
- __gcry_mpi_ec_free($41);
- __gcry_mpi_point_free_parts($4);
- __gcry_mpi_free($31);
- __gcry_mpi_free($30);
- __gcry_mpi_free($29);
- __gcry_mpi_free($28);
- __gcry_mpi_free($27);
- __gcry_mpi_free($48);
- $64 = HEAP32[$5>>2]|0;
- $65 = ($64|0)==($0|0);
- if ($65) {
-  $$0 = $$1;
-  STACKTOP = sp;return ($$0|0);
- }
- __gcry_mpi_free($64);
- $$0 = $$1;
- STACKTOP = sp;return ($$0|0);
-}
-function __gcry_ecc_gost_verify($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$074 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer3 = 0;
- var $vararg_buffer5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer5 = sp + 24|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- $4 = sp + 52|0;
- $5 = sp + 40|0;
- $6 = sp + 28|0;
- $7 = (__gcry_mpi_cmp_ui($2,0)|0);
- $8 = ($7|0)>(0);
- if (!($8)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $9 = ((($1)) + 32|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = (__gcry_mpi_cmp($2,$10)|0);
- $12 = ($11|0)<(0);
- if (!($12)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $13 = (__gcry_mpi_cmp_ui($3,0)|0);
- $14 = ($13|0)>(0);
- if (!($14)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $15 = HEAP32[$9>>2]|0;
- $16 = (__gcry_mpi_cmp($3,$15)|0);
- $17 = ($16|0)<(0);
- if (!($17)) {
-  $$0 = 8;
-  STACKTOP = sp;return ($$0|0);
- }
- $18 = (__gcry_mpi_alloc(0)|0);
- $19 = (__gcry_mpi_alloc(0)|0);
- $20 = (__gcry_mpi_alloc(0)|0);
- $21 = (__gcry_mpi_alloc(0)|0);
- $22 = (__gcry_mpi_alloc(0)|0);
- $23 = (__gcry_mpi_alloc(0)|0);
- $24 = (__gcry_mpi_alloc(0)|0);
- __gcry_mpi_point_init($4);
- __gcry_mpi_point_init($5);
- __gcry_mpi_point_init($6);
- $25 = HEAP32[$1>>2]|0;
- $26 = ((($1)) + 4|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ((($1)) + 8|0);
- $29 = HEAP32[$28>>2]|0;
- $30 = ((($1)) + 12|0);
- $31 = HEAP32[$30>>2]|0;
- $32 = ((($1)) + 16|0);
- $33 = HEAP32[$32>>2]|0;
- $34 = (__gcry_mpi_ec_p_internal_new($25,$27,0,$29,$31,$33)|0);
- $35 = HEAP32[$9>>2]|0;
- __gcry_mpi_mod($19,$0,$35);
- $36 = (__gcry_mpi_cmp_ui($19,0)|0);
- $37 = ($36|0)==(0);
- if ($37) {
-  (__gcry_mpi_set_ui($19,1)|0);
- }
- $38 = HEAP32[$9>>2]|0;
- (__gcry_mpi_invm($22,$19,$38)|0);
- $39 = HEAP32[$9>>2]|0;
- __gcry_mpi_mulm($20,$3,$22,$39);
- $40 = HEAP32[$9>>2]|0;
- __gcry_mpi_mulm($23,$2,$22,$40);
- $41 = HEAP32[$9>>2]|0;
- __gcry_mpi_subm($21,$24,$23,$41);
- $42 = ((($1)) + 20|0);
- __gcry_mpi_ec_mul_point($5,$20,$42,$34);
- $43 = ((($1)) + 44|0);
- __gcry_mpi_ec_mul_point($6,$21,$43,$34);
- __gcry_mpi_ec_add_points($4,$5,$6,$34);
- $44 = ((($4)) + 8|0);
- $45 = HEAP32[$44>>2]|0;
- $46 = (__gcry_mpi_cmp_ui($45,0)|0);
- $47 = ($46|0)==(0);
- do {
-  if ($47) {
-   $48 = (__gcry_get_debug_flag(1)|0);
-   $49 = ($48|0)==(0);
-   if ($49) {
-    $$074 = 8;
-   } else {
-    __gcry_log_debug(70156,$vararg_buffer);
-    $$074 = 8;
-   }
-  } else {
-   $50 = (__gcry_mpi_ec_get_affine($18,0,$4,$34)|0);
-   $51 = ($50|0)==(0);
-   if (!($51)) {
-    $52 = (__gcry_get_debug_flag(1)|0);
-    $53 = ($52|0)==(0);
-    if ($53) {
-     $$074 = 8;
-     break;
-    }
-    __gcry_log_debug(70178,$vararg_buffer1);
-    $$074 = 8;
-    break;
-   }
-   $54 = HEAP32[$9>>2]|0;
-   __gcry_mpi_mod($18,$18,$54);
-   $55 = (__gcry_mpi_cmp($18,$2)|0);
-   $56 = ($55|0)==(0);
-   $57 = (__gcry_get_debug_flag(1)|0);
-   $58 = ($57|0)!=(0);
-   if ($56) {
-    if (!($58)) {
-     $$074 = 0;
-     break;
-    }
-    __gcry_log_debug(70271,$vararg_buffer5);
-    $$074 = 0;
-    break;
-   } else {
-    if (!($58)) {
-     $$074 = 8;
-     break;
-    }
-    __gcry_log_printmpi(70224,$18);
-    __gcry_log_printmpi(70231,$2);
-    __gcry_log_printmpi(70238,$3);
-    __gcry_log_debug(70245,$vararg_buffer3);
-    $$074 = 8;
-    break;
-   }
-  }
- } while(0);
- __gcry_mpi_ec_free($34);
- __gcry_mpi_point_free_parts($6);
- __gcry_mpi_point_free_parts($5);
- __gcry_mpi_point_free_parts($4);
- __gcry_mpi_free($24);
- __gcry_mpi_free($23);
- __gcry_mpi_free($22);
- __gcry_mpi_free($21);
- __gcry_mpi_free($20);
- __gcry_mpi_free($18);
- __gcry_mpi_free($19);
- $$0 = $$074;
- STACKTOP = sp;return ($$0|0);
-}
-function _gpg_err_init() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gpg_err_init()|0);
- return ($0|0);
-}
-function _gpg_strerror($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpg_strerror($0)|0);
- return ($1|0);
-}
-function _gpg_err_code_from_errno($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpg_err_code_from_errno($0)|0);
- return ($1|0);
-}
-function _gpg_err_code_to_errno($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpg_err_code_to_errno($0)|0);
- return ($1|0);
-}
-function _gpg_err_code_from_syserror() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (__gpg_err_code_from_syserror()|0);
- return ($0|0);
-}
-function _gpg_err_set_errno($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- __gpg_err_set_errno($0);
- return;
-}
-function _gpgrt_lock_init($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpgrt_lock_init($0)|0);
- return ($1|0);
-}
-function _gpgrt_lock_lock($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpgrt_lock_lock($0)|0);
- return ($1|0);
-}
-function _gpgrt_lock_unlock($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpgrt_lock_unlock($0)|0);
- return ($1|0);
-}
-function _gpgrt_lock_destroy($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (__gpgrt_lock_destroy($0)|0);
- return ($1|0);
-}
-function __gpgrt_lock_init($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- switch ($1|0) {
- case 0:  {
-  HEAP32[$0>>2] = 1;
-  break;
- }
- case 1:  {
-  break;
- }
- default: {
-  ___assert_fail((70293|0),(70313|0),114,(70326|0));
-  // unreachable;
- }
- }
- $2 = ((($0)) + 4|0);
- $3 = (_pthread_mutex_init(($2|0),(0|0))|0);
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $5 = (_gpg_err_code_from_errno($3)|0);
- $$0 = $5;
- return ($$0|0);
-}
-function __gpgrt_lock_lock($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)==(1);
- if (!($2)) {
-  ___assert_fail((70293|0),(70313|0),114,(70326|0));
-  // unreachable;
- }
- $3 = ((($0)) + 4|0);
- $4 = (_pthread_mutex_lock(($3|0))|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $6 = (_gpg_err_code_from_errno($4)|0);
- $$0 = $6;
- return ($$0|0);
-}
-function __gpgrt_lock_unlock($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)==(1);
- if (!($2)) {
-  ___assert_fail((70293|0),(70313|0),114,(70326|0));
-  // unreachable;
- }
- $3 = ((($0)) + 4|0);
- $4 = (_pthread_mutex_unlock(($3|0))|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $6 = (_gpg_err_code_from_errno($4)|0);
- $$0 = $6;
- return ($$0|0);
-}
-function __gpgrt_lock_destroy($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, dest = 0, label 
= 0, sp = 0, stop = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)==(1);
- if (!($2)) {
-  ___assert_fail((70293|0),(70313|0),114,(70326|0));
-  // unreachable;
- }
- $3 = ((($0)) + 4|0);
- $4 = (_pthread_mutex_destroy(($3|0))|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  HEAP32[$0>>2] = 1;
-  dest=$3; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
-  $$0 = 0;
-  return ($$0|0);
- } else {
-  $6 = (_gpg_err_code_from_errno($4)|0);
-  $$0 = $6;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function __gpg_err_init() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- (__gpgrt_es_init()|0);
- return 0;
-}
-function __gpg_err_set_errno($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___errno_location()|0);
- HEAP32[$1>>2] = $0;
- return;
-}
-function __gpgrt_es_init() {
- var $0 = 0, $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = HEAP32[18177]|0;
- $1 = ($0|0)==(0);
- if (!($1)) {
-  return 0;
- }
- HEAP32[18177] = 1;
- (_atexit((87|0))|0);
- return 0;
-}
-function _do_deinit() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- (__gpgrt_fflush(0)|0);
- return;
-}
-function __gpgrt_fflush($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i = 0, $$0$i20 = 0, $$014$lcssa = 0, $$01424 = 0, $$025 = 0, 
$$1 = 0, $$2 = 0, $$idx = 0, $$idx$val = 0, $$idx15 = 0, $$idx15$val = 0, 
$$idx16 = 0, $$idx16$val = 0, $$idx17$val = 0, $$pre = 0, $$pre26 = 0, $1 = 0, 
$10 = 0, $11 = 0;
- var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, 
$2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, 
$28 = 0, $29 = 0, $3 = 0;
- var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if (!($1)) {
-  $$idx15 = ((($0)) + 36|0);
-  $$idx15$val = HEAP32[$$idx15>>2]|0;
-  $2 = ((($$idx15$val)) + 1148|0);
-  $3 = HEAP8[$2>>0]|0;
-  $4 = $3 & 32;
-  $5 = ($4<<24>>24)==(0);
-  if ($5) {
-   $6 = ((($$idx15$val)) + 1040|0);
-   (__gpgrt_lock_lock($6)|0);
-  }
-  $7 = HEAP32[$0>>2]|0;
-  $8 = $7 & 65536;
-  $9 = ($8|0)==(0);
-  if ($9) {
-   $11 = ((($0)) + 12|0);
-   HEAP32[$11>>2] = 0;
-   $12 = ((($0)) + 16|0);
-   HEAP32[$12>>2] = 0;
-   $13 = ((($0)) + 32|0);
-   HEAP32[$13>>2] = 0;
-   $$0$i = 0;
-  } else {
-   $10 = (_es_flush($0)|0);
-   $$0$i = $10;
-  }
-  $$idx17$val = HEAP32[$$idx15>>2]|0;
-  $14 = ((($$idx17$val)) + 1148|0);
-  $15 = HEAP8[$14>>0]|0;
-  $16 = $15 & 32;
-  $17 = ($16<<24>>24)==(0);
-  if (!($17)) {
-   $$2 = $$0$i;
-   $44 = ($$2|0)!=(0);
-   $45 = $44 << 31 >> 31;
-   return ($45|0);
-  }
-  $18 = ((($$idx17$val)) + 1040|0);
-  (__gpgrt_lock_unlock($18)|0);
-  $$2 = $$0$i;
-  $44 = ($$2|0)!=(0);
-  $45 = $44 << 31 >> 31;
-  return ($45|0);
- }
- (__gpgrt_lock_lock(40352)|0);
- $19 = (0|0)==(0|0);
- if ($19) {
-  $$014$lcssa = 0;
- } else {
-  $$01424 = 0;$$025 = 0;
-  while(1) {
-   $20 = ((($$025)) + 4|0);
-   $21 = HEAP32[$20>>2]|0;
-   $22 = ($21|0)==(0|0);
-   if ($22) {
-    $$1 = $$01424;
-   } else {
-    $$idx = ((($21)) + 36|0);
-    $$idx$val = HEAP32[$$idx>>2]|0;
-    $23 = ((($$idx$val)) + 1148|0);
-    $24 = HEAP8[$23>>0]|0;
-    $25 = $24 & 32;
-    $26 = ($25<<24>>24)==(0);
-    if ($26) {
-     $27 = ((($$idx$val)) + 1040|0);
-     (__gpgrt_lock_lock($27)|0);
-     $$pre = HEAP32[$20>>2]|0;
-     $29 = $$pre;
-    } else {
-     $29 = $21;
-    }
-    $28 = HEAP32[$29>>2]|0;
-    $30 = $28 & 65536;
-    $31 = ($30|0)==(0);
-    if ($31) {
-     $33 = ((($29)) + 12|0);
-     HEAP32[$33>>2] = 0;
-     $34 = ((($29)) + 16|0);
-     HEAP32[$34>>2] = 0;
-     $35 = ((($29)) + 32|0);
-     HEAP32[$35>>2] = 0;
-     $$0$i20 = 0;$37 = $29;
-    } else {
-     $32 = (_es_flush($29)|0);
-     $$pre26 = HEAP32[$20>>2]|0;
-     $$0$i20 = $32;$37 = $$pre26;
-    }
-    $36 = $$0$i20 | $$01424;
-    $$idx16 = ((($37)) + 36|0);
-    $$idx16$val = HEAP32[$$idx16>>2]|0;
-    $38 = ((($$idx16$val)) + 1148|0);
-    $39 = HEAP8[$38>>0]|0;
-    $40 = $39 & 32;
-    $41 = ($40<<24>>24)==(0);
-    if ($41) {
-     $42 = ((($$idx16$val)) + 1040|0);
-     (__gpgrt_lock_unlock($42)|0);
-     $$1 = $36;
-    } else {
-     $$1 = $36;
-    }
-   }
-   $$0 = HEAP32[$$025>>2]|0;
-   $43 = ($$0|0)==(0|0);
-   if ($43) {
-    $$014$lcssa = $$1;
-    break;
-   } else {
-    $$01424 = $$1;$$025 = $$0;
-   }
-  }
- }
- (__gpgrt_lock_unlock(40352)|0);
- $$2 = $$014$lcssa;
- $44 = ($$2|0)!=(0);
- $45 = $44 << 31 >> 31;
- return ($45|0);
-}
-function _es_flush($0) {
- $0 = $0|0;
- var $$ = 0, $$2 = 0, $$446 = 0, $$448 = 0, $$63 = 0, $$lcssa = 0, $$pre = 0, 
$$pre54$pre = 0, $$pre55 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0;
- var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, 
$27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0;
- var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, 
$45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0;
- var $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 36|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ((($2)) + 1116|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = HEAP32[$0>>2]|0;
- $6 = $5 & 65536;
- $7 = ($6|0)==(0);
- if ($7) {
-  ___assert_fail((70342|0),(70364|0),1654,(70374|0));
-  // unreachable;
- }
- $8 = ((($0)) + 16|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  $$446 = 0;
-  return ($$446|0);
- }
- $11 = ($4|0)==(0|0);
- do {
-  if ($11) {
-   $$448 = 95;$54 = $2;
-  } else {
-   $12 = ($9|0)>(0);
-   if (!($12)) {
-    $$446 = 0;
-    return ($$446|0);
-   }
-   $13 = ((($0)) + 4|0);
-   $14 = ((($2)) + 1084|0);
-   $15 = HEAP32[$14>>2]|0;
-   $16 = HEAP32[$13>>2]|0;
-   $17 = (FUNCTION_TABLE_iiii[$4 & 127]($15,$16,$9)|0);
-   $18 = ($17|0)==(-1);
-   $$63 = $18 ? 0 : $17;
-   L12: do {
-    if ($18) {
-     $$lcssa = $$63;
-     label = 10;
-    } else {
-     $21 = $$63;
-     while(1) {
-      $19 = HEAP32[$8>>2]|0;
-      $20 = (($19) - ($21))|0;
-      $22 = ($20|0)>(0);
-      if (!($22)) {
-       $$2 = 0;$33 = $21;$35 = $19;
-       break L12;
-      }
-      $$pre = HEAP32[$1>>2]|0;
-      $23 = ((($$pre)) + 1084|0);
-      $24 = HEAP32[$23>>2]|0;
-      $25 = HEAP32[$13>>2]|0;
-      $26 = (($25) + ($21)|0);
-      $27 = (FUNCTION_TABLE_iiii[$4 & 127]($24,$26,$20)|0);
-      $28 = ($27|0)==(-1);
-      $$ = $28 ? 0 : $27;
-      $29 = (($$) + ($21))|0;
-      if ($28) {
-       $$lcssa = $29;
-       label = 10;
-       break;
-      } else {
-       $21 = $29;
-      }
-     }
-    }
-   } while(0);
-   if ((label|0) == 10) {
-    $$pre54$pre = HEAP32[$8>>2]|0;
-    $$2 = -1;$33 = $$lcssa;$35 = $$pre54$pre;
-   }
-   $30 = ((($0)) + 20|0);
-   $31 = HEAP32[$30>>2]|0;
-   $32 = (($31) + ($33))|0;
-   HEAP32[$30>>2] = $32;
-   $34 = ($35|0)==($33|0);
-   if ($34) {
-    $36 = HEAP32[$1>>2]|0;
-    $37 = ((($36)) + 1104|0);
-    $38 = $37;
-    $39 = $38;
-    $40 = HEAP32[$39>>2]|0;
-    $41 = (($38) + 4)|0;
-    $42 = $41;
-    $43 = HEAP32[$42>>2]|0;
-    $44 = (_i64Add(($40|0),($43|0),($35|0),0)|0);
-    $45 = tempRet0;
-    $46 = $37;
-    $47 = $46;
-    HEAP32[$47>>2] = $44;
-    $48 = (($46) + 4)|0;
-    $49 = $48;
-    HEAP32[$49>>2] = $45;
-    HEAP32[$8>>2] = 0;
-    HEAP32[$30>>2] = 0;
-    $50 = ((($36)) + 1084|0);
-    $51 = HEAP32[$50>>2]|0;
-    (FUNCTION_TABLE_iiii[$4 & 127]($51,0,0)|0);
-   }
-   $52 = ($$2|0)==(0);
-   if ($52) {
-    $$446 = 0;
-    return ($$446|0);
-   } else {
-    $$pre55 = HEAP32[$1>>2]|0;
-    $$448 = -1;$54 = $$pre55;
-    break;
-   }
-  }
- } while(0);
- $53 = ((($54)) + 1144|0);
- $55 = HEAP8[$53>>0]|0;
- $56 = $55 | 1;
- HEAP8[$53>>0] = $56;
- $$446 = $$448;
- return ($$446|0);
-}
-function __gpg_strerror($0) {
- $0 = $0|0;
- var $$1 = 0, $$1121417202326293235384143454850 = 0, $$off$i = 0, $$off64$i = 
0, $$off65$i = 0, $$off66$i = 0, $$off67$i = 0, $$off68$i = 0, $$off69$i = 0, 
$$off70$i = 0, $$off71$i = 0, $$off75$i = 0, $$off77$i = 0, $1 = 0, $10 = 0, 
$11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0;
- var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $trunc = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = $0 & 65535;
- $2 = $0 & 32768;
- $3 = ($2|0)==(0);
- L1: do {
-  if ($3) {
-   $7 = ($1>>>0)<(214);
-   if ($7) {
-    $38 = $1;
-   } else {
-    $$off$i = (($1) + -222)|0;
-    $8 = ($$off$i>>>0)<(33);
-    if ($8) {
-     $9 = (($1) + -8)|0;
-     $38 = $9;
-     break;
-    }
-    $$off64$i = (($1) + -257)|0;
-    $10 = ($$off64$i>>>0)<(15);
-    if ($10) {
-     $11 = (($1) + -10)|0;
-     $38 = $11;
-     break;
-    }
-    $$off65$i = (($1) + -273)|0;
-    $12 = ($$off65$i>>>0)<(9);
-    if ($12) {
-     $13 = (($1) + -11)|0;
-     $38 = $13;
-     break;
-    }
-    $$off66$i = (($1) + -721)|0;
-    $14 = ($$off66$i>>>0)<(9);
-    if ($14) {
-     $15 = (($1) + -450)|0;
-     $38 = $15;
-     break;
-    }
-    $$off67$i = (($1) + -750)|0;
-    $16 = ($$off67$i>>>0)<(3);
-    if ($16) {
-     $17 = (($1) + -470)|0;
-     $38 = $17;
-     break;
-    }
-    $$off68$i = (($1) + -754)|0;
-    $18 = ($$off68$i>>>0)<(29);
-    if ($18) {
-     $19 = (($1) + -471)|0;
-     $38 = $19;
-     break;
-    }
-    $$off69$i = (($1) + -784)|0;
-    $20 = ($$off69$i>>>0)<(6);
-    if ($20) {
-     $21 = (($1) + -472)|0;
-     $38 = $21;
-     break;
-    }
-    $$off70$i = (($1) + -800)|0;
-    $22 = ($$off70$i>>>0)<(5);
-    if ($22) {
-     $23 = (($1) + -482)|0;
-     $38 = $23;
-     break;
-    }
-    $$off71$i = (($1) + -815)|0;
-    $24 = ($$off71$i>>>0)<(8);
-    if ($24) {
-     $25 = (($1) + -492)|0;
-     $38 = $25;
-     break;
-    }
-    $26 = $0 & 65528;
-    $27 = ($26|0)==(832);
-    if ($27) {
-     $28 = (($1) + -501)|0;
-     $38 = $28;
-     break;
-    }
-    $trunc = $0&65535;
-    switch ($trunc<<16>>16) {
-    case 844:  {
-     $38 = 339;
-     break L1;
-     break;
-    }
-    case 848:  {
-     $38 = 340;
-     break L1;
-     break;
-    }
-    default: {
-    }
-    }
-    $$off75$i = (($1) + -881)|0;
-    $29 = ($$off75$i>>>0)<(11);
-    if ($29) {
-     $30 = (($1) + -540)|0;
-     $38 = $30;
-     break;
-    }
-    $31 = $0 & 65520;
-    $32 = ($31|0)==(1024);
-    if ($32) {
-     $33 = (($1) + -672)|0;
-     $38 = $33;
-    } else {
-     $$1121417202326293235384143454850 = $1;
-     label = 31;
-    }
-   }
-  } else {
-   $4 = (_gpg_err_code_to_errno($1)|0);
-   $5 = ($4|0)==(0);
-   if ($5) {
-    $$1121417202326293235384143454850 = 16382;
-    label = 31;
-   } else {
-    $6 = (_strerror($4)|0);
-    $$1 = $6;
-    return ($$1|0);
-   }
-  }
- } while(0);
- if ((label|0) == 31) {
-  $$off77$i = (($$1121417202326293235384143454850) + -16381)|0;
-  $34 = ($$off77$i>>>0)<(3);
-  $35 = (($$1121417202326293235384143454850) + -16013)|0;
-  $36 = $34 ? $35 : 371;
-  $38 = $36;
- }
- $37 = (16880 + ($38<<2)|0);
- $39 = HEAP32[$37>>2]|0;
- $40 = (18368 + ($39)|0);
- $$1 = $40;
- return ($$1|0);
-}
-function __gpg_err_code_to_errno($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = $0 & 32768;
- $2 = ($1|0)==(0);
- if ($2) {
-  $$0 = 0;
- } else {
-  $3 = $0 & -32769;
-  $4 = ($3>>>0)<(141);
-  if ($4) {
-   $5 = (26384 + ($3<<2)|0);
-   $6 = HEAP32[$5>>2]|0;
-   $$0 = $6;
-  } else {
-   $$0 = 0;
-  }
- }
- return ($$0|0);
-}
-function __gpg_err_code_from_errno($0) {
- $0 = $0|0;
- var $$0 = 0, $$off = 0, $$off29 = 0, $$off30 = 0, $$off31 = 0, $$off32 = 0, 
$$off33 = 0, $$ph$pn = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, 
$3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if ($1) {
-  $$0 = 0;
-  return ($$0|0);
- }
- $$off = (($0) + -1)|0;
- $2 = ($$off>>>0)<(11);
- do {
-  if ($2) {
-   $$ph$pn = $$off;
-  } else {
-   $$off29 = (($0) + -11)|0;
-   $3 = ($$off29>>>0)<(25);
-   if ($3) {
-    $$ph$pn = $0;
-   } else {
-    $$off30 = (($0) + -35)|0;
-    $4 = ($$off30>>>0)<(6);
-    if ($4) {
-     $5 = (($0) + 1)|0;
-     $$ph$pn = $5;
-     break;
-    }
-    $$off31 = (($0) + -42)|0;
-    $6 = ($$off31>>>0)<(16);
-    if ($6) {
-     $$ph$pn = $0;
-    } else {
-     $$off32 = (($0) + -59)|0;
-     $7 = ($$off32>>>0)<(37);
-     $$off33 = (($0) + -95)|0;
-     $8 = ($$off33>>>0)<(31);
-     $9 = $8 ? $0 : -1;
-     $spec$select = $7 ? $$off : $9;
-     $10 = ($spec$select|0)<(0);
-     if ($10) {
-      $$0 = 16382;
-      return ($$0|0);
-     } else {
-      $$ph$pn = $spec$select;
-     }
-    }
-   }
-  }
- } while(0);
- $11 = (26960 + ($$ph$pn<<2)|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = $12 | 32768;
- $$0 = $13;
- return ($$0|0);
-}
-function __gpg_err_code_from_syserror() {
- var $$0 = 0, $$off = 0, $$off31 = 0, $$off32 = 0, $$off33 = 0, $$off34 = 0, 
$$off35 = 0, $$ph$pn = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (___errno_location()|0);
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)==(0);
- if ($2) {
-  $$0 = 16381;
-  return ($$0|0);
- }
- $$off = (($1) + -1)|0;
- $3 = ($$off>>>0)<(11);
- do {
-  if ($3) {
-   $$ph$pn = $$off;
-  } else {
-   $$off31 = (($1) + -11)|0;
-   $4 = ($$off31>>>0)<(25);
-   if ($4) {
-    $$ph$pn = $1;
-   } else {
-    $$off32 = (($1) + -35)|0;
-    $5 = ($$off32>>>0)<(6);
-    if ($5) {
-     $6 = (($1) + 1)|0;
-     $$ph$pn = $6;
-     break;
-    }
-    $$off33 = (($1) + -42)|0;
-    $7 = ($$off33>>>0)<(16);
-    if ($7) {
-     $$ph$pn = $1;
-    } else {
-     $$off34 = (($1) + -59)|0;
-     $8 = ($$off34>>>0)<(37);
-     $$off35 = (($1) + -95)|0;
-     $9 = ($$off35>>>0)<(31);
-     $10 = $9 ? $1 : -1;
-     $spec$select = $8 ? $$off : $10;
-     $11 = ($spec$select|0)<(0);
-     if ($11) {
-      $$0 = 16382;
-      return ($$0|0);
-     } else {
-      $$ph$pn = $spec$select;
-     }
-    }
-   }
-  }
- } while(0);
- $12 = (26960 + ($$ph$pn<<2)|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = $13 | 32768;
- $$0 = $14;
- return ($$0|0);
-}
-function _TALER_amount_hton($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, dest = 0, label = 0;
- var sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- $2 = $1;
- $3 = $2;
- $4 = HEAP32[$3>>2]|0;
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = HEAP32[$6>>2]|0;
- $8 = (_GNUNET_htonll($4,$7)|0);
- $9 = tempRet0;
- $10 = $0;
- $11 = $10;
- 
HEAP8[$11>>0]=$8&255;HEAP8[$11+1>>0]=($8>>8)&255;HEAP8[$11+2>>0]=($8>>16)&255;HEAP8[$11+3>>0]=$8>>24;
- $12 = (($10) + 4)|0;
- $13 = $12;
- 
HEAP8[$13>>0]=$9&255;HEAP8[$13+1>>0]=($9>>8)&255;HEAP8[$13+2>>0]=($9>>16)&255;HEAP8[$13+3>>0]=$9>>24;
- $14 = ((($1)) + 8|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (_htonl($15)|0);
- $17 = ((($0)) + 8|0);
- 
HEAP8[$17>>0]=$16&255;HEAP8[$17+1>>0]=($16>>8)&255;HEAP8[$17+2>>0]=($16>>16)&255;HEAP8[$17+3>>0]=$16>>24;
- $18 = ((($0)) + 12|0);
- $19 = ((($1)) + 12|0);
- dest=$18; src=$19; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- return;
-}
-function _TALER_amount_ntoh($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, dest = 0, label = 0;
- var sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- $2 = $1;
- $3 = $2;
- $4 = 
HEAPU8[$3>>0]|(HEAPU8[$3+1>>0]<<8)|(HEAPU8[$3+2>>0]<<16)|(HEAPU8[$3+3>>0]<<24);
- $5 = (($2) + 4)|0;
- $6 = $5;
- $7 = 
HEAPU8[$6>>0]|(HEAPU8[$6+1>>0]<<8)|(HEAPU8[$6+2>>0]<<16)|(HEAPU8[$6+3>>0]<<24);
- $8 = (_GNUNET_ntohll($4,$7)|0);
- $9 = tempRet0;
- $10 = $0;
- $11 = $10;
- HEAP32[$11>>2] = $8;
- $12 = (($10) + 4)|0;
- $13 = $12;
- HEAP32[$13>>2] = $9;
- $14 = ((($1)) + 8|0);
- $15 = 
HEAPU8[$14>>0]|(HEAPU8[$14+1>>0]<<8)|(HEAPU8[$14+2>>0]<<16)|(HEAPU8[$14+3>>0]<<24);
- $16 = (_ntohl($15)|0);
- $17 = ((($0)) + 8|0);
- HEAP32[$17>>2] = $16;
- $18 = ((($0)) + 12|0);
- $19 = ((($1)) + 12|0);
- dest=$18; src=$19; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- return;
-}
-function _TALER_amount_get_zero($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (_strlen($0)|0);
- $3 = ($2>>>0)>(11);
- if ($3) {
-  $$0 = -1;
-  return ($$0|0);
- }
- 
;HEAP32[$1>>2]=0|0;HEAP32[$1+4>>2]=0|0;HEAP32[$1+8>>2]=0|0;HEAP32[$1+12>>2]=0|0;HEAP32[$1+16>>2]=0|0;HEAP32[$1+20>>2]=0|0;
- $4 = ((($1)) + 12|0);
- _memcpy(($4|0),($0|0),($2|0))|0;
- $$0 = 1;
- return ($$0|0);
-}
-function _TALER_amount_cmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$65 = 0, $$66 = 0, $$idx$i = 0, $$idx$val$i = 0, $$idx4$i = 0, 
$$idx4$val$i = 0, $$sroa$7$0 = 0, $$sroa$7$0$$sroa_idx80 = 0, 
$$sroa$7$0$copyload = 0, $$sroa$7$1 = 0, $$sroa$7$2 = 0, $$sroa$796$0 = 0, 
$$sroa$796$0$$sroa_idx97 = 0, $$sroa$796$0$copyload = 0, $$sroa$796$1 = 0, 
$$sroa$796$2$ph = 0, $10 = 0, $11 = 0, $12 = 0;
- var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 
0, $29 = 0, $3 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0;
- var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0;
- var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $spec$select = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, 
$vararg_ptr5 = 0;
- var $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer6 = sp + 16|0;
- $vararg_buffer2 = sp + 8|0;
- $vararg_buffer = sp;
- $$idx4$i = ((($0)) + 12|0);
- $$idx4$val$i = HEAP8[$$idx4$i>>0]|0;
- $2 = ($$idx4$val$i<<24>>24)==(0);
- if (!($2)) {
-  $$idx$i = ((($1)) + 12|0);
-  $$idx$val$i = HEAP8[$$idx$i>>0]|0;
-  $3 = ($$idx$val$i<<24>>24)==(0);
-  if (!($3)) {
-   $4 = (_strcasecmp($$idx4$i,$$idx$i)|0);
-   $5 = ($4|0)==(0);
-   if ($5) {
-    $13 = $0;
-    $14 = $13;
-    $15 = HEAP32[$14>>2]|0;
-    $16 = (($13) + 4)|0;
-    $17 = $16;
-    $18 = HEAP32[$17>>2]|0;
-    $$sroa$796$0$$sroa_idx97 = ((($0)) + 8|0);
-    $$sroa$796$0$copyload = HEAP32[$$sroa$796$0$$sroa_idx97>>2]|0;
-    $19 = $1;
-    $20 = $19;
-    $21 = HEAP32[$20>>2]|0;
-    $22 = (($19) + 4)|0;
-    $23 = $22;
-    $24 = HEAP32[$23>>2]|0;
-    $$sroa$7$0$$sroa_idx80 = ((($1)) + 8|0);
-    $$sroa$7$0$copyload = HEAP32[$$sroa$7$0$$sroa_idx80>>2]|0;
-    $25 = ($15|0)==(-1);
-    $26 = ($18|0)==(-1);
-    $27 = $25 & $26;
-    L5: do {
-     if ($27) {
-      $$sroa$796$1 = $$sroa$796$0$copyload;
-      label = 15;
-     } else {
-      $$sroa$796$0 = $$sroa$796$0$copyload;$30 = $15;$31 = $18;
-      while(1) {
-       $28 = ($$sroa$796$0>>>0)>(99999999);
-       if (!($28)) {
-        $$sroa$796$2$ph = $$sroa$796$0;$66 = $30;$69 = $31;
-        break L5;
-       }
-       $29 = (($$sroa$796$0) + -100000000)|0;
-       $32 = (_i64Add(($30|0),($31|0),1,0)|0);
-       $33 = tempRet0;
-       $34 = ($32|0)==(-1);
-       $35 = ($33|0)==(-1);
-       $36 = $34 & $35;
-       if ($36) {
-        $$sroa$796$1 = $29;
-        label = 15;
-        break;
-       } else {
-        $$sroa$796$0 = $29;$30 = $32;$31 = $33;
-       }
-      }
-     }
-    } while(0);
-    if ((label|0) == 15) {
-     $37 = ($$sroa$796$1>>>0)>(99999999);
-     if ($37) {
-      $38 = HEAP32[10100]|0;
-      $39 = ($38|0)==(-1);
-      if ($39) {
-       $40 = (_GNUNET_get_log_call_status(1,0,70383,70392,353)|0);
-       HEAP32[10100] = $40;
-      }
-      $41 = (_GNUNET_get_log_skip()|0);
-      $42 = ($41|0)>(0);
-      if ($42) {
-       _GNUNET_log_skip(-1,0);
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      $43 = HEAP32[10100]|0;
-      $44 = ($43|0)==(0);
-      if ($44) {
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      HEAP32[$vararg_buffer2>>2] = 70383;
-      $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-      HEAP32[$vararg_ptr5>>2] = 353;
-      _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-      _GNUNET_abort_();
-      // unreachable;
-     } else {
-      $$sroa$796$2$ph = $$sroa$796$1;$66 = -1;$69 = -1;
-     }
-    }
-    $45 = ($21|0)==(-1);
-    $46 = ($24|0)==(-1);
-    $47 = $45 & $46;
-    L25: do {
-     if ($47) {
-      $$sroa$7$1 = $$sroa$7$0$copyload;
-      label = 27;
-     } else {
-      $$sroa$7$0 = $$sroa$7$0$copyload;$50 = $21;$51 = $24;
-      while(1) {
-       $48 = ($$sroa$7$0>>>0)>(99999999);
-       if (!($48)) {
-        $$sroa$7$2 = $$sroa$7$0;$67 = $50;$70 = $51;
-        break L25;
-       }
-       $49 = (($$sroa$7$0) + -100000000)|0;
-       $52 = (_i64Add(($50|0),($51|0),1,0)|0);
-       $53 = tempRet0;
-       $54 = ($52|0)==(-1);
-       $55 = ($53|0)==(-1);
-       $56 = $54 & $55;
-       if ($56) {
-        $$sroa$7$1 = $49;
-        label = 27;
-        break;
-       } else {
-        $$sroa$7$0 = $49;$50 = $52;$51 = $53;
-       }
-      }
-     }
-    } while(0);
-    if ((label|0) == 27) {
-     $57 = ($$sroa$7$1>>>0)>(99999999);
-     if ($57) {
-      $58 = HEAP32[10101]|0;
-      $59 = ($58|0)==(-1);
-      if ($59) {
-       $60 = (_GNUNET_get_log_call_status(1,0,70383,70392,355)|0);
-       HEAP32[10101] = $60;
-      }
-      $61 = (_GNUNET_get_log_skip()|0);
-      $62 = ($61|0)>(0);
-      if ($62) {
-       _GNUNET_log_skip(-1,0);
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      $63 = HEAP32[10101]|0;
-      $64 = ($63|0)==(0);
-      if ($64) {
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      HEAP32[$vararg_buffer6>>2] = 70383;
-      $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-      HEAP32[$vararg_ptr9>>2] = 355;
-      _GNUNET_log_nocheck(1,70521,$vararg_buffer6);
-      _GNUNET_abort_();
-      // unreachable;
-     } else {
-      $$sroa$7$2 = $$sroa$7$1;$67 = -1;$70 = -1;
-     }
-    }
-    $65 = ($66|0)==($67|0);
-    $68 = ($69|0)==($70|0);
-    $71 = $65 & $68;
-    if ($71) {
-     $72 = ($$sroa$796$2$ph>>>0)<($$sroa$7$2>>>0);
-     $73 = ($$sroa$796$2$ph>>>0)>($$sroa$7$2>>>0);
-     $$65 = $73&1;
-     $spec$select = $72 ? -1 : $$65;
-     $$0 = $spec$select;
-     STACKTOP = sp;return ($$0|0);
-    } else {
-     $74 = ($69>>>0)<($70>>>0);
-     $75 = ($66>>>0)<($67>>>0);
-     $76 = ($69|0)==($70|0);
-     $77 = $76 & $75;
-     $78 = $74 | $77;
-     $$66 = $78 ? -1 : 1;
-     $$0 = $$66;
-     STACKTOP = sp;return ($$0|0);
-    }
-   }
-  }
- }
- $6 = HEAP32[10099]|0;
- $7 = ($6|0)==(-1);
- if ($7) {
-  $8 = (_GNUNET_get_log_call_status(1,0,70383,70392,349)|0);
-  HEAP32[10099] = $8;
- }
- $9 = (_GNUNET_get_log_skip()|0);
- $10 = ($9|0)>(0);
- if ($10) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $11 = HEAP32[10099]|0;
- $12 = ($11|0)==(0);
- if ($12) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer>>2] = 70383;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 349;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer);
- _GNUNET_abort_();
- // unreachable;
- return (0)|0;
-}
-function _TALER_amount_normalize($0) {
- $0 = $0|0;
- var $$0$lcssa = 0, $$08 = 0, $$09 = 0, $$idx = 0, $$idx$val = 0, $1 = 0, $10 
= 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, 
$19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $$idx = ((($0)) + 12|0);
- $$idx$val = HEAP8[$$idx>>0]|0;
- $1 = ($$idx$val<<24>>24)==(0);
- if ($1) {
-  $$08 = -1;
-  return ($$08|0);
- }
- $2 = ((($0)) + 8|0);
- $3 = $0;
- $4 = $3;
- $5 = HEAP32[$4>>2]|0;
- $6 = (($3) + 4)|0;
- $7 = $6;
- $8 = HEAP32[$7>>2]|0;
- $9 = ($5|0)==(-1);
- $10 = ($8|0)==(-1);
- $11 = $9 & $10;
- $12 = HEAP32[$2>>2]|0;
- L4: do {
-  if ($11) {
-   $$0$lcssa = 0;$28 = $12;
-  } else {
-   $$09 = 0;$14 = $12;$16 = $5;$17 = $8;
-   while(1) {
-    $13 = ($14>>>0)>(99999999);
-    if (!($13)) {
-     $$08 = $$09;
-     break;
-    }
-    $15 = (($14) + -100000000)|0;
-    HEAP32[$2>>2] = $15;
-    $18 = (_i64Add(($16|0),($17|0),1,0)|0);
-    $19 = tempRet0;
-    $20 = $0;
-    $21 = $20;
-    HEAP32[$21>>2] = $18;
-    $22 = (($20) + 4)|0;
-    $23 = $22;
-    HEAP32[$23>>2] = $19;
-    $24 = ($18|0)==(-1);
-    $25 = ($19|0)==(-1);
-    $26 = $24 & $25;
-    if ($26) {
-     $$0$lcssa = 1;$28 = $15;
-     break L4;
-    } else {
-     $$09 = 1;$14 = $15;$16 = $18;$17 = $19;
-    }
-   }
-   return ($$08|0);
-  }
- } while(0);
- $27 = ($28>>>0)>(99999999);
- if (!($27)) {
-  $$08 = $$0$lcssa;
-  return ($$08|0);
- }
- 
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
- $$08 = -1;
- return ($$08|0);
-}
-function _TALER_amount_subtract($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$idx$i = 0, $$idx$i75 = 0, $$idx$val$i = 0, $$idx$val$i76 = 0, 
$$idx4$i = 0, $$idx4$val$i = 0, $$sroa$8$0 = 0, $$sroa$8$0$$sroa_idx90 = 0, 
$$sroa$8$0$copyload = 0, $$sroa$8$1 = 0, $$sroa$8$2 = 0, $10 = 0, $100 = 0, 
$101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0;
- var $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 
= 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, 
$21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, 
$87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, 
$95 = 0, $96 = 0, $97 = 0;
- var $98 = 0, $99 = 0, $not$or$cond = 0, $spec$select = 0, $vararg_buffer = 0, 
$vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer2 = sp + 32|0;
- $vararg_buffer = sp + 24|0;
- $3 = sp;
- $$idx4$i = ((($1)) + 12|0);
- $$idx4$val$i = HEAP8[$$idx4$i>>0]|0;
- $4 = ($$idx4$val$i<<24>>24)==(0);
- if (!($4)) {
-  $$idx$i = ((($2)) + 12|0);
-  $$idx$val$i = HEAP8[$$idx$i>>0]|0;
-  $5 = ($$idx$val$i<<24>>24)==(0);
-  if (!($5)) {
-   $6 = (_strcasecmp($$idx4$i,$$idx$i)|0);
-   $7 = ($6|0)==(0);
-   if ($7) {
-    
;HEAP32[$3>>2]=HEAP32[$1>>2]|0;HEAP32[$3+4>>2]=HEAP32[$1+4>>2]|0;HEAP32[$3+8>>2]=HEAP32[$1+8>>2]|0;HEAP32[$3+12>>2]=HEAP32[$1+12>>2]|0;HEAP32[$3+16>>2]=HEAP32[$1+16>>2]|0;HEAP32[$3+20>>2]=HEAP32[$1+20>>2]|0;
-    $8 = $2;
-    $9 = $8;
-    $10 = HEAP32[$9>>2]|0;
-    $11 = (($8) + 4)|0;
-    $12 = $11;
-    $13 = HEAP32[$12>>2]|0;
-    $$sroa$8$0$$sroa_idx90 = ((($2)) + 8|0);
-    $$sroa$8$0$copyload = HEAP32[$$sroa$8$0$$sroa_idx90>>2]|0;
-    $$idx$i75 = ((($3)) + 12|0);
-    $$idx$val$i76 = HEAP8[$$idx$i75>>0]|0;
-    $14 = ($$idx$val$i76<<24>>24)==(0);
-    do {
-     if (!($14)) {
-      $15 = ((($3)) + 8|0);
-      $16 = $3;
-      $17 = $16;
-      $18 = HEAP32[$17>>2]|0;
-      $19 = (($16) + 4)|0;
-      $20 = $19;
-      $21 = HEAP32[$20>>2]|0;
-      $22 = ($18|0)==(-1);
-      $23 = ($21|0)==(-1);
-      $24 = $22 & $23;
-      $25 = HEAP32[$15>>2]|0;
-      do {
-       if ($24) {
-        $41 = $25;
-        label = 11;
-       } else {
-        $27 = $25;$29 = $18;$30 = $21;
-        while(1) {
-         $26 = ($27>>>0)>(99999999);
-         if (!($26)) {
-          label = 13;
-          break;
-         }
-         $28 = (($27) + -100000000)|0;
-         $31 = (_i64Add(($29|0),($30|0),1,0)|0);
-         $32 = tempRet0;
-         $33 = ($31|0)==(-1);
-         $34 = ($32|0)==(-1);
-         $35 = $33 & $34;
-         if ($35) {
-          label = 10;
-          break;
-         } else {
-          $27 = $28;$29 = $31;$30 = $32;
-         }
-        }
-        if ((label|0) == 10) {
-         HEAP32[$15>>2] = $28;
-         $36 = $3;
-         $37 = $36;
-         HEAP32[$37>>2] = -1;
-         $38 = (($36) + 4)|0;
-         $39 = $38;
-         HEAP32[$39>>2] = -1;
-         $41 = $28;
-         label = 11;
-         break;
-        }
-        else if ((label|0) == 13) {
-         HEAP32[$15>>2] = $27;
-         $42 = $3;
-         $43 = $42;
-         HEAP32[$43>>2] = $29;
-         $44 = (($42) + 4)|0;
-         $45 = $44;
-         HEAP32[$45>>2] = $30;
-         $60 = $27;$62 = $29;$64 = $30;
-         break;
-        }
-       }
-      } while(0);
-      if ((label|0) == 11) {
-       $40 = ($41>>>0)>(99999999);
-       if ($40) {
-        
;HEAP32[$3>>2]=0|0;HEAP32[$3+4>>2]=0|0;HEAP32[$3+8>>2]=0|0;HEAP32[$3+12>>2]=0|0;HEAP32[$3+16>>2]=0|0;HEAP32[$3+20>>2]=0|0;
-        break;
-       } else {
-        $60 = $41;$62 = -1;$64 = -1;
-       }
-      }
-      $46 = ($10|0)==(-1);
-      $47 = ($13|0)==(-1);
-      $48 = $46 & $47;
-      L19: do {
-       if ($48) {
-        $$sroa$8$1 = $$sroa$8$0$copyload;
-        label = 18;
-       } else {
-        $$sroa$8$0 = $$sroa$8$0$copyload;$51 = $10;$52 = $13;
-        while(1) {
-         $49 = ($$sroa$8$0>>>0)>(99999999);
-         if (!($49)) {
-          $$sroa$8$2 = $$sroa$8$0;$75 = $52;$78 = $51;
-          break L19;
-         }
-         $50 = (($$sroa$8$0) + -100000000)|0;
-         $53 = (_i64Add(($51|0),($52|0),1,0)|0);
-         $54 = tempRet0;
-         $55 = ($53|0)==(-1);
-         $56 = ($54|0)==(-1);
-         $57 = $55 & $56;
-         if ($57) {
-          $$sroa$8$1 = $50;
-          label = 18;
-          break;
-         } else {
-          $$sroa$8$0 = $50;$51 = $53;$52 = $54;
-         }
-        }
-       }
-      } while(0);
-      if ((label|0) == 18) {
-       $58 = ($$sroa$8$1>>>0)>(99999999);
-       if ($58) {
-        break;
-       } else {
-        $$sroa$8$2 = $$sroa$8$1;$75 = -1;$78 = -1;
-       }
-      }
-      $59 = ($60>>>0)<($$sroa$8$2>>>0);
-      do {
-       if ($59) {
-        $61 = ($62|0)==(0);
-        $63 = ($64|0)==(0);
-        $65 = $61 & $63;
-        if (!($65)) {
-         $66 = (($60) + 100000000)|0;
-         HEAP32[$15>>2] = $66;
-         $67 = (_i64Add(($62|0),($64|0),-1,-1)|0);
-         $68 = tempRet0;
-         $69 = $3;
-         $70 = $69;
-         HEAP32[$70>>2] = $67;
-         $71 = (($69) + 4)|0;
-         $72 = $71;
-         HEAP32[$72>>2] = $68;
-         $74 = $68;$77 = $67;$93 = $66;
-         break;
-        }
-        
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-        $$0 = -1;
-        STACKTOP = sp;return ($$0|0);
-       } else {
-        $74 = $64;$77 = $62;$93 = $60;
-       }
-      } while(0);
-      $73 = ($74>>>0)<($75>>>0);
-      $76 = ($77>>>0)<($78>>>0);
-      $79 = ($74|0)==($75|0);
-      $80 = $79 & $76;
-      $81 = $73 | $80;
-      if ($81) {
-       
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-       $$0 = -1;
-       STACKTOP = sp;return ($$0|0);
-      }
-      $82 = (_strlen($$idx$i75)|0);
-      $83 = ($82>>>0)>(11);
-      if ($83) {
-       $84 = HEAP32[10102]|0;
-       $85 = ($84|0)==(-1);
-       if ($85) {
-        $86 = (_GNUNET_get_log_call_status(1,0,70383,70409,421)|0);
-        HEAP32[10102] = $86;
-       }
-       $87 = (_GNUNET_get_log_skip()|0);
-       $88 = ($87|0)>(0);
-       if ($88) {
-        _GNUNET_log_skip(-1,0);
-        _GNUNET_abort_();
-        // unreachable;
-       }
-       $89 = HEAP32[10102]|0;
-       $90 = ($89|0)==(0);
-       if ($90) {
-        _GNUNET_abort_();
-        // unreachable;
-       }
-       HEAP32[$vararg_buffer>>2] = 70383;
-       $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-       HEAP32[$vararg_ptr1>>2] = 421;
-       _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-      $91 = ((($0)) + 12|0);
-      _memcpy(($91|0),($$idx$i75|0),($82|0))|0;
-      $92 = ($93>>>0)<($$sroa$8$2>>>0);
-      if (!($92)) {
-       $101 = (($93) - ($$sroa$8$2))|0;
-       $102 = ((($0)) + 8|0);
-       HEAP32[$102>>2] = $101;
-       $103 = (_i64Subtract(($77|0),($74|0),($78|0),($75|0))|0);
-       $104 = tempRet0;
-       $105 = $0;
-       $106 = $105;
-       HEAP32[$106>>2] = $103;
-       $107 = (($105) + 4)|0;
-       $108 = $107;
-       HEAP32[$108>>2] = $104;
-       $109 = ($101|0)!=(0);
-       $110 = ($103|0)!=(0);
-       $111 = ($104|0)!=(0);
-       $112 = $110 | $111;
-       $not$or$cond = $112 | $109;
-       $spec$select = $not$or$cond&1;
-       $$0 = $spec$select;
-       STACKTOP = sp;return ($$0|0);
-      }
-      $94 = HEAP32[10103]|0;
-      $95 = ($94|0)==(-1);
-      if ($95) {
-       $96 = (_GNUNET_get_log_call_status(1,0,70383,70409,422)|0);
-       HEAP32[10103] = $96;
-      }
-      $97 = (_GNUNET_get_log_skip()|0);
-      $98 = ($97|0)>(0);
-      if ($98) {
-       _GNUNET_log_skip(-1,0);
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      $99 = HEAP32[10103]|0;
-      $100 = ($99|0)==(0);
-      if ($100) {
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      HEAP32[$vararg_buffer2>>2] = 70383;
-      $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-      HEAP32[$vararg_ptr5>>2] = 422;
-      _GNUNET_log_nocheck(1,70521,$vararg_buffer2);
-      _GNUNET_abort_();
-      // unreachable;
-     }
-    } while(0);
-    
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-    $$0 = -1;
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- }
- 
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _TALER_amount_add($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$idx$i = 0, $$idx$val$i = 0, $$idx4$i = 0, $$idx4$val$i = 0, 
$$sroa$11 = 0, $$sroa$11$0$$sroa$11$12$$idx$val$i29 = 0, $$sroa$11$0$$sroa_idx 
= 0, $$sroa$7$0 = 0, $$sroa$7$0$$sroa_idx72 = 0, $$sroa$7$0$copyload = 0, 
$$sroa$7$1 = 0, $$sroa$7$2 = 0, $$sroa$788$0 = 0, $$sroa$788$0$$sroa_idx90 = 0, 
$$sroa$788$0$copyload = 0, $$sroa$788$1 = 0, $$sroa$788$2$ph = 0, $$sroa$8$0 = 
0, $$sroa$8$0$$sroa_idx51 = 0;
- var $$sroa$8$1 = 0, $$sroa$8$2 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, 
$43 = 0, $44 = 0, $45 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $$sroa$11 = sp + 8|0;
- $$idx4$i = ((($1)) + 12|0);
- $$idx4$val$i = HEAP8[$$idx4$i>>0]|0;
- $3 = ($$idx4$val$i<<24>>24)==(0);
- if (!($3)) {
-  $$idx$i = ((($2)) + 12|0);
-  $$idx$val$i = HEAP8[$$idx$i>>0]|0;
-  $4 = ($$idx$val$i<<24>>24)==(0);
-  if (!($4)) {
-   $5 = (_strcasecmp($$idx4$i,$$idx$i)|0);
-   $6 = ($5|0)==(0);
-   if ($6) {
-    $7 = $1;
-    $8 = $7;
-    $9 = HEAP32[$8>>2]|0;
-    $10 = (($7) + 4)|0;
-    $11 = $10;
-    $12 = HEAP32[$11>>2]|0;
-    $$sroa$788$0$$sroa_idx90 = ((($1)) + 8|0);
-    $$sroa$788$0$copyload = HEAP32[$$sroa$788$0$$sroa_idx90>>2]|0;
-    $13 = $2;
-    $14 = $13;
-    $15 = HEAP32[$14>>2]|0;
-    $16 = (($13) + 4)|0;
-    $17 = $16;
-    $18 = HEAP32[$17>>2]|0;
-    $$sroa$7$0$$sroa_idx72 = ((($2)) + 8|0);
-    $$sroa$7$0$copyload = HEAP32[$$sroa$7$0$$sroa_idx72>>2]|0;
-    $19 = ($9|0)==(-1);
-    $20 = ($12|0)==(-1);
-    $21 = $19 & $20;
-    L5: do {
-     if ($21) {
-      $$sroa$788$1 = $$sroa$788$0$copyload;
-      label = 9;
-     } else {
-      $$sroa$788$0 = $$sroa$788$0$copyload;$24 = $9;$25 = $12;
-      while(1) {
-       $22 = ($$sroa$788$0>>>0)>(99999999);
-       if (!($22)) {
-        $$sroa$788$2$ph = $$sroa$788$0;$58 = $24;$59 = $25;
-        label = 10;
-        break L5;
-       }
-       $23 = (($$sroa$788$0) + -100000000)|0;
-       $26 = (_i64Add(($24|0),($25|0),1,0)|0);
-       $27 = tempRet0;
-       $28 = ($26|0)==(-1);
-       $29 = ($27|0)==(-1);
-       $30 = $28 & $29;
-       if ($30) {
-        $$sroa$788$1 = $23;
-        label = 9;
-        break;
-       } else {
-        $$sroa$788$0 = $23;$24 = $26;$25 = $27;
-       }
-      }
-     }
-    } while(0);
-    if ((label|0) == 9) {
-     $31 = ($$sroa$788$1>>>0)>(99999999);
-     if (!($31)) {
-      $$sroa$788$2$ph = $$sroa$788$1;$58 = -1;$59 = -1;
-      label = 10;
-     }
-    }
-    do {
-     if ((label|0) == 10) {
-      $32 = ($15|0)==(-1);
-      $33 = ($18|0)==(-1);
-      $34 = $32 & $33;
-      L14: do {
-       if ($34) {
-        $$sroa$7$1 = $$sroa$7$0$copyload;
-        label = 14;
-       } else {
-        $$sroa$7$0 = $$sroa$7$0$copyload;$37 = $15;$38 = $18;
-        while(1) {
-         $35 = ($$sroa$7$0>>>0)>(99999999);
-         if (!($35)) {
-          $$sroa$7$2 = $$sroa$7$0;$56 = $37;$57 = $38;
-          break L14;
-         }
-         $36 = (($$sroa$7$0) + -100000000)|0;
-         $39 = (_i64Add(($37|0),($38|0),1,0)|0);
-         $40 = tempRet0;
-         $41 = ($39|0)==(-1);
-         $42 = ($40|0)==(-1);
-         $43 = $41 & $42;
-         if ($43) {
-          $$sroa$7$1 = $36;
-          label = 14;
-          break;
-         } else {
-          $$sroa$7$0 = $36;$37 = $39;$38 = $40;
-         }
-        }
-       }
-      } while(0);
-      if ((label|0) == 14) {
-       $44 = ($$sroa$7$1>>>0)>(99999999);
-       if ($44) {
-        break;
-       } else {
-        $$sroa$7$2 = $$sroa$7$1;$56 = -1;$57 = -1;
-       }
-      }
-      $45 = (_strlen($$idx4$i)|0);
-      $46 = ($45>>>0)>(11);
-      if ($46) {
-       $47 = HEAP32[10104]|0;
-       $48 = ($47|0)==(-1);
-       if ($48) {
-        $49 = (_GNUNET_get_log_call_status(1,0,70383,70431,468)|0);
-        HEAP32[10104] = $49;
-       }
-       $50 = (_GNUNET_get_log_skip()|0);
-       $51 = ($50|0)>(0);
-       if ($51) {
-        _GNUNET_log_skip(-1,0);
-        _GNUNET_abort_();
-        // unreachable;
-       }
-       $52 = HEAP32[10104]|0;
-       $53 = ($52|0)==(0);
-       if ($53) {
-        _GNUNET_abort_();
-        // unreachable;
-       }
-       HEAP32[$vararg_buffer>>2] = 70383;
-       $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-       HEAP32[$vararg_ptr1>>2] = 468;
-       _GNUNET_log_nocheck(1,70521,$vararg_buffer);
-       _GNUNET_abort_();
-       // unreachable;
-      }
-      $54 = (12 - ($45))|0;
-      $55 = (($$sroa$11) + ($45)|0);
-      _memset(($55|0),0,($54|0))|0;
-      _memcpy(($$sroa$11|0),($$idx4$i|0),($45|0))|0;
-      $60 = (_i64Add(($56|0),($57|0),($58|0),($59|0))|0);
-      $61 = tempRet0;
-      $62 = ($61>>>0)<($59>>>0);
-      $63 = ($60>>>0)<($58>>>0);
-      $64 = ($61|0)==($59|0);
-      $65 = $64 & $63;
-      $66 = $62 | $65;
-      if ($66) {
-       
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-       $$0 = -1;
-       STACKTOP = sp;return ($$0|0);
-      }
-      $67 = (($$sroa$7$2) + ($$sroa$788$2$ph))|0;
-      $$sroa$11$0$$sroa$11$12$$idx$val$i29 = HEAP8[$$sroa$11>>0]|0;
-      $68 = ($$sroa$11$0$$sroa$11$12$$idx$val$i29<<24>>24)==(0);
-      do {
-       if (!($68)) {
-        $69 = ($60|0)==(-1);
-        $70 = ($61|0)==(-1);
-        $71 = $69 & $70;
-        L42: do {
-         if ($71) {
-          $$sroa$8$1 = $67;
-          label = 31;
-         } else {
-          $$sroa$8$0 = $67;$74 = $60;$75 = $61;
-          while(1) {
-           $72 = ($$sroa$8$0>>>0)>(99999999);
-           if (!($72)) {
-            $$sroa$8$2 = $$sroa$8$0;$84 = $74;$87 = $75;
-            break L42;
-           }
-           $73 = (($$sroa$8$0) + -100000000)|0;
-           $76 = (_i64Add(($74|0),($75|0),1,0)|0);
-           $77 = tempRet0;
-           $78 = ($76|0)==(-1);
-           $79 = ($77|0)==(-1);
-           $80 = $78 & $79;
-           if ($80) {
-            $$sroa$8$1 = $73;
-            label = 31;
-            break;
-           } else {
-            $$sroa$8$0 = $73;$74 = $76;$75 = $77;
-           }
-          }
-         }
-        } while(0);
-        if ((label|0) == 31) {
-         $81 = ($$sroa$8$1>>>0)>(99999999);
-         if ($81) {
-          
;HEAP32[$$sroa$11>>2]=0|0;HEAP32[$$sroa$11+4>>2]=0|0;HEAP32[$$sroa$11+8>>2]=0|0;
-          break;
-         } else {
-          $$sroa$8$2 = $$sroa$8$1;$84 = -1;$87 = -1;
-         }
-        }
-        $82 = $0;
-        $83 = $82;
-        HEAP32[$83>>2] = $84;
-        $85 = (($82) + 4)|0;
-        $86 = $85;
-        HEAP32[$86>>2] = $87;
-        $$sroa$8$0$$sroa_idx51 = ((($0)) + 8|0);
-        HEAP32[$$sroa$8$0$$sroa_idx51>>2] = $$sroa$8$2;
-        $$sroa$11$0$$sroa_idx = ((($0)) + 12|0);
-        
;HEAP32[$$sroa$11$0$$sroa_idx>>2]=HEAP32[$$sroa$11>>2]|0;HEAP32[$$sroa$11$0$$sroa_idx+4>>2]=HEAP32[$$sroa$11+4>>2]|0;HEAP32[$$sroa$11$0$$sroa_idx+8>>2]=HEAP32[$$sroa$11+8>>2]|0;
-        $$0 = 1;
-        STACKTOP = sp;return ($$0|0);
-       }
-      } while(0);
-      
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-      $$0 = -1;
-      STACKTOP = sp;return ($$0|0);
-     }
-    } while(0);
-    
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
-    $$0 = -1;
-    STACKTOP = sp;return ($$0|0);
-   }
-  }
- }
- 
;HEAP32[$0>>2]=0|0;HEAP32[$0+4>>2]=0|0;HEAP32[$0+8>>2]=0|0;HEAP32[$0+12>>2]=0|0;HEAP32[$0+16>>2]=0|0;HEAP32[$0+20>>2]=0|0;
- $$0 = -1;
- STACKTOP = sp;return ($$0|0);
-}
-function _TALER_gcrypt_init() {
- var $0 = 0, $1 = 0, $2 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer1 = sp + 8|0;
- $vararg_buffer = sp;
- _gcry_set_fatalerror_handler(88,0);
- $0 = (_gcry_check_version(70448)|0);
- $1 = ($0|0)==(0|0);
- if ($1) {
-  $2 = HEAP32[10138]|0;
-  (_fwrite(70454,27,1,$2)|0);
-  _abort();
-  // unreachable;
- } else {
-  HEAP32[$vararg_buffer>>2] = 0;
-  (_gcry_control(37,$vararg_buffer)|0);
-  HEAP32[$vararg_buffer1>>2] = 0;
-  (_gcry_control(38,$vararg_buffer1)|0);
-  STACKTOP = sp;return;
- }
-}
-function _fatal_error_handler_2503($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = HEAP32[10138]|0;
- HEAP32[$vararg_buffer>>2] = $2;
- (_fprintf($3,70482,$vararg_buffer)|0);
- _abort();
- // unreachable;
-}
-function _TALER_setup_fresh_coin($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0;
- var $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer4 = sp + 16|0;
- $vararg_buffer = sp;
- $3 = sp + 24|0;
- $4 = (_htonl($1)|0);
- HEAP32[$3>>2] = $4;
- HEAP32[$vararg_buffer>>2] = 70559;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 21;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = 0;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = 0;
- $5 = (_GNUNET_CRYPTO_kdf($2,64,$3,4,$0,64,$vararg_buffer)|0);
- $6 = ($5|0)==(1);
- if ($6) {
-  $14 = HEAP8[$2>>0]|0;
-  $15 = $14 & 63;
-  $16 = $15 | 64;
-  HEAP8[$2>>0] = $16;
-  $17 = ((($2)) + 31|0);
-  $18 = HEAP8[$17>>0]|0;
-  $19 = $18 & -8;
-  HEAP8[$17>>0] = $19;
-  STACKTOP = sp;return;
- }
- $7 = HEAP32[10105]|0;
- $8 = ($7|0)==(-1);
- if ($8) {
-  $9 = (_GNUNET_get_log_call_status(1,0,70512,70581,197)|0);
-  HEAP32[10105] = $9;
- }
- $10 = (_GNUNET_get_log_skip()|0);
- $11 = ($10|0)>(0);
- if ($11) {
-  _GNUNET_log_skip(-1,0);
-  _GNUNET_abort_();
-  // unreachable;
- }
- $12 = HEAP32[10105]|0;
- $13 = ($12|0)==(0);
- if ($13) {
-  _GNUNET_abort_();
-  // unreachable;
- }
- HEAP32[$vararg_buffer4>>2] = 70512;
- $vararg_ptr7 = ((($vararg_buffer4)) + 4|0);
- HEAP32[$vararg_ptr7>>2] = 197;
- _GNUNET_log_nocheck(1,70521,$vararg_buffer4);
- _GNUNET_abort_();
- // unreachable;
-}
-function _malloc($0) {
- $0 = $0|0;
- var $$0 = 0, $$0$i = 0, $$0$i$i = 0, $$0$i$i$i = 0, $$0$i20$i = 0, $$0169$i = 
0, $$0170$i = 0, $$0171$i = 0, $$0192 = 0, $$0194 = 0, $$02014$i$i = 0, 
$$0202$lcssa$i$i = 0, $$02023$i$i = 0, $$0206$i$i = 0, $$0207$i$i = 0, 
$$024372$i = 0, $$0259$i$i = 0, $$02604$i$i = 0, $$0261$lcssa$i$i = 0, 
$$02613$i$i = 0;
- var $$0267$i$i = 0, $$0268$i$i = 0, $$0318$i = 0, $$032012$i = 0, 
$$0321$lcssa$i = 0, $$032111$i = 0, $$0323$i = 0, $$0329$i = 0, $$0335$i = 0, 
$$0336$i = 0, $$0338$i = 0, $$0339$i = 0, $$0344$i = 0, $$1174$i = 0, 
$$1174$i$be = 0, $$1174$i$ph = 0, $$1176$i = 0, $$1176$i$be = 0, $$1176$i$ph = 
0, $$124471$i = 0;
- var $$1263$i$i = 0, $$1263$i$i$be = 0, $$1263$i$i$ph = 0, $$1265$i$i = 0, 
$$1265$i$i$be = 0, $$1265$i$i$ph = 0, $$1319$i = 0, $$1324$i = 0, $$1340$i = 0, 
$$1346$i = 0, $$1346$i$be = 0, $$1346$i$ph = 0, $$1350$i = 0, $$1350$i$be = 0, 
$$1350$i$ph = 0, $$2234243136$i = 0, $$2247$ph$i = 0, $$2253$ph$i = 0, $$2331$i 
= 0, $$3$i = 0;
- var $$3$i$i = 0, $$3$i198 = 0, $$3$i198211 = 0, $$3326$i = 0, $$3348$i = 0, 
$$4$lcssa$i = 0, $$415$i = 0, $$415$i$ph = 0, $$4236$i = 0, $$4327$lcssa$i = 0, 
$$432714$i = 0, $$432714$i$ph = 0, $$4333$i = 0, $$533413$i = 0, $$533413$i$ph 
= 0, $$723947$i = 0, $$748$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i$i = 0;
- var $$pre$i16$i = 0, $$pre$i195 = 0, $$pre$i204 = 0, $$pre$phi$i$iZ2D = 0, 
$$pre$phi$i17$iZ2D = 0, $$pre$phi$i205Z2D = 0, $$pre$phi$iZ2D = 0, $$pre$phiZ2D 
= 0, $$sink = 0, $$sink320 = 0, $$sink321 = 0, $1 = 0, $10 = 0, $100 = 0, $101 
= 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0;
- var $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 
= 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0;
- var $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 
= 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 
= 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0;
- var $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 
= 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 
= 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0;
- var $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, 
$168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, 
$175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0;
- var $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 
= 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 
= 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0;
- var $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 
0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 
0, $211 = 0, $212 = 0, $213 = 0, $214 = 0;
- var $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 
= 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 
= 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0;
- var $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 
= 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 
= 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0;
- var $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, 
$258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, 
$265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0;
- var $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 
= 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 
= 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0;
- var $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 
= 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 
0, $301 = 0, $302 = 0, $303 = 0, $304 = 0;
- var $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 
= 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 
= 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0;
- var $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 
= 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 
= 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0;
- var $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, 
$348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, 
$355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0;
- var $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 
= 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 
= 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0;
- var $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 
= 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 
= 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0;
- var $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 
0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 
0, $41 = 0, $410 = 0, $411 = 0, $412 = 0;
- var $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 
= 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 
= 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0;
- var $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, 
$438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, 
$445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0;
- var $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 
= 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 
= 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0;
- var $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 
= 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 
= 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0;
- var $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 
= 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 
0, $50 = 0, $500 = 0, $501 = 0, $502 = 0;
- var $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 
= 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 
= 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0;
- var $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, 
$528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, 
$535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0;
- var $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 
= 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 
= 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0;
- var $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 
= 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 
= 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0;
- var $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 
= 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 
= 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0;
- var $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 
0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 
0, $608 = 0, $609 = 0, $61 = 0, $610 = 0;
- var $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, 
$618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, 
$625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0;
- var $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 
= 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 
= 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0;
- var $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 
= 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 
= 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0;
- var $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 
= 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 
= 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0;
- var $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 
= 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 
= 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0;
- var $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, 
$708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, 
$715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0;
- var $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 
= 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 
= 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0;
- var $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 
= 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 
= 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0;
- var $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 
= 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 
= 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0;
- var $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 
= 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 
= 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0;
- var $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, 
$799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, 
$805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0;
- var $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 
= 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 
= 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0;
- var $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 
= 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 
= 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0;
- var $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 
= 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 
= 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0;
- var $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 
= 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 
= 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0;
- var $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, 
$889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, 
$896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0;
- var $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 
= 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 
= 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0;
- var $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 
= 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 
= 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0;
- var $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 
= 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 
= 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0;
- var $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 
= 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 
= 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0;
- var $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, 
$979 = 0, $98 = 0, $99 = 0, $cond$i = 0, $cond$i$i = 0, $cond$i203 = 0, $not$$i 
= 0, $or$cond$i = 0, $or$cond$i199 = 0, $or$cond1$i = 0, $or$cond1$i197 = 0, 
$or$cond11$i = 0, $or$cond2$i = 0;
- var $or$cond5$i = 0, $or$cond50$i = 0, $or$cond51$i = 0, $or$cond6$i = 0, 
$or$cond7$i = 0, $or$cond8$i = 0, $or$cond8$not$i = 0, $spec$select$i = 0, 
$spec$select$i201 = 0, $spec$select1$i = 0, $spec$select2$i = 0, 
$spec$select4$i = 0, $spec$select49$i = 0, $spec$select9$i = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- $2 = ($0>>>0)<(245);
- do {
-  if ($2) {
-   $3 = ($0>>>0)<(11);
-   $4 = (($0) + 11)|0;
-   $5 = $4 & -8;
-   $6 = $3 ? 16 : $5;
-   $7 = $6 >>> 3;
-   $8 = HEAP32[18178]|0;
-   $9 = $8 >>> $7;
-   $10 = $9 & 3;
-   $11 = ($10|0)==(0);
-   if (!($11)) {
-    $12 = $9 & 1;
-    $13 = $12 ^ 1;
-    $14 = (($13) + ($7))|0;
-    $15 = $14 << 1;
-    $16 = (72752 + ($15<<2)|0);
-    $17 = ((($16)) + 8|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ((($18)) + 8|0);
-    $20 = HEAP32[$19>>2]|0;
-    $21 = ($20|0)==($16|0);
-    if ($21) {
-     $22 = 1 << $14;
-     $23 = $22 ^ -1;
-     $24 = $8 & $23;
-     HEAP32[18178] = $24;
-    } else {
-     $25 = ((($20)) + 12|0);
-     HEAP32[$25>>2] = $16;
-     HEAP32[$17>>2] = $20;
-    }
-    $26 = $14 << 3;
-    $27 = $26 | 3;
-    $28 = ((($18)) + 4|0);
-    HEAP32[$28>>2] = $27;
-    $29 = (($18) + ($26)|0);
-    $30 = ((($29)) + 4|0);
-    $31 = HEAP32[$30>>2]|0;
-    $32 = $31 | 1;
-    HEAP32[$30>>2] = $32;
-    $$0 = $19;
-    STACKTOP = sp;return ($$0|0);
-   }
-   $33 = HEAP32[(72720)>>2]|0;
-   $34 = ($6>>>0)>($33>>>0);
-   if ($34) {
-    $35 = ($9|0)==(0);
-    if (!($35)) {
-     $36 = $9 << $7;
-     $37 = 2 << $7;
-     $38 = (0 - ($37))|0;
-     $39 = $37 | $38;
-     $40 = $36 & $39;
-     $41 = (0 - ($40))|0;
-     $42 = $40 & $41;
-     $43 = (($42) + -1)|0;
-     $44 = $43 >>> 12;
-     $45 = $44 & 16;
-     $46 = $43 >>> $45;
-     $47 = $46 >>> 5;
-     $48 = $47 & 8;
-     $49 = $48 | $45;
-     $50 = $46 >>> $48;
-     $51 = $50 >>> 2;
-     $52 = $51 & 4;
-     $53 = $49 | $52;
-     $54 = $50 >>> $52;
-     $55 = $54 >>> 1;
-     $56 = $55 & 2;
-     $57 = $53 | $56;
-     $58 = $54 >>> $56;
-     $59 = $58 >>> 1;
-     $60 = $59 & 1;
-     $61 = $57 | $60;
-     $62 = $58 >>> $60;
-     $63 = (($61) + ($62))|0;
-     $64 = $63 << 1;
-     $65 = (72752 + ($64<<2)|0);
-     $66 = ((($65)) + 8|0);
-     $67 = HEAP32[$66>>2]|0;
-     $68 = ((($67)) + 8|0);
-     $69 = HEAP32[$68>>2]|0;
-     $70 = ($69|0)==($65|0);
-     if ($70) {
-      $71 = 1 << $63;
-      $72 = $71 ^ -1;
-      $73 = $8 & $72;
-      HEAP32[18178] = $73;
-      $90 = $73;
-     } else {
-      $74 = ((($69)) + 12|0);
-      HEAP32[$74>>2] = $65;
-      HEAP32[$66>>2] = $69;
-      $90 = $8;
-     }
-     $75 = $63 << 3;
-     $76 = (($75) - ($6))|0;
-     $77 = $6 | 3;
-     $78 = ((($67)) + 4|0);
-     HEAP32[$78>>2] = $77;
-     $79 = (($67) + ($6)|0);
-     $80 = $76 | 1;
-     $81 = ((($79)) + 4|0);
-     HEAP32[$81>>2] = $80;
-     $82 = (($67) + ($75)|0);
-     HEAP32[$82>>2] = $76;
-     $83 = ($33|0)==(0);
-     if (!($83)) {
-      $84 = HEAP32[(72732)>>2]|0;
-      $85 = $33 >>> 3;
-      $86 = $85 << 1;
-      $87 = (72752 + ($86<<2)|0);
-      $88 = 1 << $85;
-      $89 = $90 & $88;
-      $91 = ($89|0)==(0);
-      if ($91) {
-       $92 = $90 | $88;
-       HEAP32[18178] = $92;
-       $$pre = ((($87)) + 8|0);
-       $$0194 = $87;$$pre$phiZ2D = $$pre;
-      } else {
-       $93 = ((($87)) + 8|0);
-       $94 = HEAP32[$93>>2]|0;
-       $$0194 = $94;$$pre$phiZ2D = $93;
-      }
-      HEAP32[$$pre$phiZ2D>>2] = $84;
-      $95 = ((($$0194)) + 12|0);
-      HEAP32[$95>>2] = $84;
-      $96 = ((($84)) + 8|0);
-      HEAP32[$96>>2] = $$0194;
-      $97 = ((($84)) + 12|0);
-      HEAP32[$97>>2] = $87;
-     }
-     HEAP32[(72720)>>2] = $76;
-     HEAP32[(72732)>>2] = $79;
-     $$0 = $68;
-     STACKTOP = sp;return ($$0|0);
-    }
-    $98 = HEAP32[(72716)>>2]|0;
-    $99 = ($98|0)==(0);
-    if ($99) {
-     $$0192 = $6;
-    } else {
-     $100 = (0 - ($98))|0;
-     $101 = $98 & $100;
-     $102 = (($101) + -1)|0;
-     $103 = $102 >>> 12;
-     $104 = $103 & 16;
-     $105 = $102 >>> $104;
-     $106 = $105 >>> 5;
-     $107 = $106 & 8;
-     $108 = $107 | $104;
-     $109 = $105 >>> $107;
-     $110 = $109 >>> 2;
-     $111 = $110 & 4;
-     $112 = $108 | $111;
-     $113 = $109 >>> $111;
-     $114 = $113 >>> 1;
-     $115 = $114 & 2;
-     $116 = $112 | $115;
-     $117 = $113 >>> $115;
-     $118 = $117 >>> 1;
-     $119 = $118 & 1;
-     $120 = $116 | $119;
-     $121 = $117 >>> $119;
-     $122 = (($120) + ($121))|0;
-     $123 = (73016 + ($122<<2)|0);
-     $124 = HEAP32[$123>>2]|0;
-     $125 = ((($124)) + 4|0);
-     $126 = HEAP32[$125>>2]|0;
-     $127 = $126 & -8;
-     $128 = (($127) - ($6))|0;
-     $$0169$i = $124;$$0170$i = $124;$$0171$i = $128;
-     while(1) {
-      $129 = ((($$0169$i)) + 16|0);
-      $130 = HEAP32[$129>>2]|0;
-      $131 = ($130|0)==(0|0);
-      if ($131) {
-       $132 = ((($$0169$i)) + 20|0);
-       $133 = HEAP32[$132>>2]|0;
-       $134 = ($133|0)==(0|0);
-       if ($134) {
-        break;
-       } else {
-        $136 = $133;
-       }
-      } else {
-       $136 = $130;
-      }
-      $135 = ((($136)) + 4|0);
-      $137 = HEAP32[$135>>2]|0;
-      $138 = $137 & -8;
-      $139 = (($138) - ($6))|0;
-      $140 = ($139>>>0)<($$0171$i>>>0);
-      $spec$select$i = $140 ? $139 : $$0171$i;
-      $spec$select1$i = $140 ? $136 : $$0170$i;
-      $$0169$i = $136;$$0170$i = $spec$select1$i;$$0171$i = $spec$select$i;
-     }
-     $141 = (($$0170$i) + ($6)|0);
-     $142 = ($141>>>0)>($$0170$i>>>0);
-     if ($142) {
-      $143 = ((($$0170$i)) + 24|0);
-      $144 = HEAP32[$143>>2]|0;
-      $145 = ((($$0170$i)) + 12|0);
-      $146 = HEAP32[$145>>2]|0;
-      $147 = ($146|0)==($$0170$i|0);
-      do {
-       if ($147) {
-        $152 = ((($$0170$i)) + 20|0);
-        $153 = HEAP32[$152>>2]|0;
-        $154 = ($153|0)==(0|0);
-        if ($154) {
-         $155 = ((($$0170$i)) + 16|0);
-         $156 = HEAP32[$155>>2]|0;
-         $157 = ($156|0)==(0|0);
-         if ($157) {
-          $$3$i = 0;
-          break;
-         } else {
-          $$1174$i$ph = $156;$$1176$i$ph = $155;
-         }
-        } else {
-         $$1174$i$ph = $153;$$1176$i$ph = $152;
-        }
-        $$1174$i = $$1174$i$ph;$$1176$i = $$1176$i$ph;
-        while(1) {
-         $158 = ((($$1174$i)) + 20|0);
-         $159 = HEAP32[$158>>2]|0;
-         $160 = ($159|0)==(0|0);
-         if ($160) {
-          $161 = ((($$1174$i)) + 16|0);
-          $162 = HEAP32[$161>>2]|0;
-          $163 = ($162|0)==(0|0);
-          if ($163) {
-           break;
-          } else {
-           $$1174$i$be = $162;$$1176$i$be = $161;
-          }
-         } else {
-          $$1174$i$be = $159;$$1176$i$be = $158;
-         }
-         $$1174$i = $$1174$i$be;$$1176$i = $$1176$i$be;
-        }
-        HEAP32[$$1176$i>>2] = 0;
-        $$3$i = $$1174$i;
-       } else {
-        $148 = ((($$0170$i)) + 8|0);
-        $149 = HEAP32[$148>>2]|0;
-        $150 = ((($149)) + 12|0);
-        HEAP32[$150>>2] = $146;
-        $151 = ((($146)) + 8|0);
-        HEAP32[$151>>2] = $149;
-        $$3$i = $146;
-       }
-      } while(0);
-      $164 = ($144|0)==(0|0);
-      do {
-       if (!($164)) {
-        $165 = ((($$0170$i)) + 28|0);
-        $166 = HEAP32[$165>>2]|0;
-        $167 = (73016 + ($166<<2)|0);
-        $168 = HEAP32[$167>>2]|0;
-        $169 = ($$0170$i|0)==($168|0);
-        if ($169) {
-         HEAP32[$167>>2] = $$3$i;
-         $cond$i = ($$3$i|0)==(0|0);
-         if ($cond$i) {
-          $170 = 1 << $166;
-          $171 = $170 ^ -1;
-          $172 = $98 & $171;
-          HEAP32[(72716)>>2] = $172;
-          break;
-         }
-        } else {
-         $173 = ((($144)) + 16|0);
-         $174 = HEAP32[$173>>2]|0;
-         $175 = ($174|0)==($$0170$i|0);
-         $176 = ((($144)) + 20|0);
-         $$sink = $175 ? $173 : $176;
-         HEAP32[$$sink>>2] = $$3$i;
-         $177 = ($$3$i|0)==(0|0);
-         if ($177) {
-          break;
-         }
-        }
-        $178 = ((($$3$i)) + 24|0);
-        HEAP32[$178>>2] = $144;
-        $179 = ((($$0170$i)) + 16|0);
-        $180 = HEAP32[$179>>2]|0;
-        $181 = ($180|0)==(0|0);
-        if (!($181)) {
-         $182 = ((($$3$i)) + 16|0);
-         HEAP32[$182>>2] = $180;
-         $183 = ((($180)) + 24|0);
-         HEAP32[$183>>2] = $$3$i;
-        }
-        $184 = ((($$0170$i)) + 20|0);
-        $185 = HEAP32[$184>>2]|0;
-        $186 = ($185|0)==(0|0);
-        if (!($186)) {
-         $187 = ((($$3$i)) + 20|0);
-         HEAP32[$187>>2] = $185;
-         $188 = ((($185)) + 24|0);
-         HEAP32[$188>>2] = $$3$i;
-        }
-       }
-      } while(0);
-      $189 = ($$0171$i>>>0)<(16);
-      if ($189) {
-       $190 = (($$0171$i) + ($6))|0;
-       $191 = $190 | 3;
-       $192 = ((($$0170$i)) + 4|0);
-       HEAP32[$192>>2] = $191;
-       $193 = (($$0170$i) + ($190)|0);
-       $194 = ((($193)) + 4|0);
-       $195 = HEAP32[$194>>2]|0;
-       $196 = $195 | 1;
-       HEAP32[$194>>2] = $196;
-      } else {
-       $197 = $6 | 3;
-       $198 = ((($$0170$i)) + 4|0);
-       HEAP32[$198>>2] = $197;
-       $199 = $$0171$i | 1;
-       $200 = ((($141)) + 4|0);
-       HEAP32[$200>>2] = $199;
-       $201 = (($141) + ($$0171$i)|0);
-       HEAP32[$201>>2] = $$0171$i;
-       $202 = ($33|0)==(0);
-       if (!($202)) {
-        $203 = HEAP32[(72732)>>2]|0;
-        $204 = $33 >>> 3;
-        $205 = $204 << 1;
-        $206 = (72752 + ($205<<2)|0);
-        $207 = 1 << $204;
-        $208 = $207 & $8;
-        $209 = ($208|0)==(0);
-        if ($209) {
-         $210 = $207 | $8;
-         HEAP32[18178] = $210;
-         $$pre$i = ((($206)) + 8|0);
-         $$0$i = $206;$$pre$phi$iZ2D = $$pre$i;
-        } else {
-         $211 = ((($206)) + 8|0);
-         $212 = HEAP32[$211>>2]|0;
-         $$0$i = $212;$$pre$phi$iZ2D = $211;
-        }
-        HEAP32[$$pre$phi$iZ2D>>2] = $203;
-        $213 = ((($$0$i)) + 12|0);
-        HEAP32[$213>>2] = $203;
-        $214 = ((($203)) + 8|0);
-        HEAP32[$214>>2] = $$0$i;
-        $215 = ((($203)) + 12|0);
-        HEAP32[$215>>2] = $206;
-       }
-       HEAP32[(72720)>>2] = $$0171$i;
-       HEAP32[(72732)>>2] = $141;
-      }
-      $216 = ((($$0170$i)) + 8|0);
-      $$0 = $216;
-      STACKTOP = sp;return ($$0|0);
-     } else {
-      $$0192 = $6;
-     }
-    }
-   } else {
-    $$0192 = $6;
-   }
-  } else {
-   $217 = ($0>>>0)>(4294967231);
-   if ($217) {
-    $$0192 = -1;
-   } else {
-    $218 = (($0) + 11)|0;
-    $219 = $218 & -8;
-    $220 = HEAP32[(72716)>>2]|0;
-    $221 = ($220|0)==(0);
-    if ($221) {
-     $$0192 = $219;
-    } else {
-     $222 = (0 - ($219))|0;
-     $223 = $218 >>> 8;
-     $224 = ($223|0)==(0);
-     if ($224) {
-      $$0335$i = 0;
-     } else {
-      $225 = ($219>>>0)>(16777215);
-      if ($225) {
-       $$0335$i = 31;
-      } else {
-       $226 = (($223) + 1048320)|0;
-       $227 = $226 >>> 16;
-       $228 = $227 & 8;
-       $229 = $223 << $228;
-       $230 = (($229) + 520192)|0;
-       $231 = $230 >>> 16;
-       $232 = $231 & 4;
-       $233 = $232 | $228;
-       $234 = $229 << $232;
-       $235 = (($234) + 245760)|0;
-       $236 = $235 >>> 16;
-       $237 = $236 & 2;
-       $238 = $233 | $237;
-       $239 = (14 - ($238))|0;
-       $240 = $234 << $237;
-       $241 = $240 >>> 15;
-       $242 = (($239) + ($241))|0;
-       $243 = $242 << 1;
-       $244 = (($242) + 7)|0;
-       $245 = $219 >>> $244;
-       $246 = $245 & 1;
-       $247 = $246 | $243;
-       $$0335$i = $247;
-      }
-     }
-     $248 = (73016 + ($$0335$i<<2)|0);
-     $249 = HEAP32[$248>>2]|0;
-     $250 = ($249|0)==(0|0);
-     L79: do {
-      if ($250) {
-       $$2331$i = 0;$$3$i198 = 0;$$3326$i = $222;
-       label = 61;
-      } else {
-       $251 = ($$0335$i|0)==(31);
-       $252 = $$0335$i >>> 1;
-       $253 = (25 - ($252))|0;
-       $254 = $251 ? 0 : $253;
-       $255 = $219 << $254;
-       $$0318$i = 0;$$0323$i = $222;$$0329$i = $249;$$0336$i = $255;$$0339$i = 
0;
-       while(1) {
-        $256 = ((($$0329$i)) + 4|0);
-        $257 = HEAP32[$256>>2]|0;
-        $258 = $257 & -8;
-        $259 = (($258) - ($219))|0;
-        $260 = ($259>>>0)<($$0323$i>>>0);
-        if ($260) {
-         $261 = ($259|0)==(0);
-         if ($261) {
-          $$415$i$ph = $$0329$i;$$432714$i$ph = 0;$$533413$i$ph = $$0329$i;
-          label = 65;
-          break L79;
-         } else {
-          $$1319$i = $$0329$i;$$1324$i = $259;
-         }
-        } else {
-         $$1319$i = $$0318$i;$$1324$i = $$0323$i;
-        }
-        $262 = ((($$0329$i)) + 20|0);
-        $263 = HEAP32[$262>>2]|0;
-        $264 = $$0336$i >>> 31;
-        $265 = (((($$0329$i)) + 16|0) + ($264<<2)|0);
-        $266 = HEAP32[$265>>2]|0;
-        $267 = ($263|0)==(0|0);
-        $268 = ($263|0)==($266|0);
-        $or$cond1$i197 = $267 | $268;
-        $$1340$i = $or$cond1$i197 ? $$0339$i : $263;
-        $269 = ($266|0)==(0|0);
-        $spec$select4$i = $$0336$i << 1;
-        if ($269) {
-         $$2331$i = $$1340$i;$$3$i198 = $$1319$i;$$3326$i = $$1324$i;
-         label = 61;
-         break;
-        } else {
-         $$0318$i = $$1319$i;$$0323$i = $$1324$i;$$0329$i = $266;$$0336$i = 
$spec$select4$i;$$0339$i = $$1340$i;
-        }
-       }
-      }
-     } while(0);
-     if ((label|0) == 61) {
-      $270 = ($$2331$i|0)==(0|0);
-      $271 = ($$3$i198|0)==(0|0);
-      $or$cond$i199 = $270 & $271;
-      if ($or$cond$i199) {
-       $272 = 2 << $$0335$i;
-       $273 = (0 - ($272))|0;
-       $274 = $272 | $273;
-       $275 = $274 & $220;
-       $276 = ($275|0)==(0);
-       if ($276) {
-        $$0192 = $219;
-        break;
-       }
-       $277 = (0 - ($275))|0;
-       $278 = $275 & $277;
-       $279 = (($278) + -1)|0;
-       $280 = $279 >>> 12;
-       $281 = $280 & 16;
-       $282 = $279 >>> $281;
-       $283 = $282 >>> 5;
-       $284 = $283 & 8;
-       $285 = $284 | $281;
-       $286 = $282 >>> $284;
-       $287 = $286 >>> 2;
-       $288 = $287 & 4;
-       $289 = $285 | $288;
-       $290 = $286 >>> $288;
-       $291 = $290 >>> 1;
-       $292 = $291 & 2;
-       $293 = $289 | $292;
-       $294 = $290 >>> $292;
-       $295 = $294 >>> 1;
-       $296 = $295 & 1;
-       $297 = $293 | $296;
-       $298 = $294 >>> $296;
-       $299 = (($297) + ($298))|0;
-       $300 = (73016 + ($299<<2)|0);
-       $301 = HEAP32[$300>>2]|0;
-       $$3$i198211 = 0;$$4333$i = $301;
-      } else {
-       $$3$i198211 = $$3$i198;$$4333$i = $$2331$i;
-      }
-      $302 = ($$4333$i|0)==(0|0);
-      if ($302) {
-       $$4$lcssa$i = $$3$i198211;$$4327$lcssa$i = $$3326$i;
-      } else {
-       $$415$i$ph = $$3$i198211;$$432714$i$ph = $$3326$i;$$533413$i$ph = 
$$4333$i;
-       label = 65;
-      }
-     }
-     if ((label|0) == 65) {
-      $$415$i = $$415$i$ph;$$432714$i = $$432714$i$ph;$$533413$i = 
$$533413$i$ph;
-      while(1) {
-       $303 = ((($$533413$i)) + 4|0);
-       $304 = HEAP32[$303>>2]|0;
-       $305 = $304 & -8;
-       $306 = (($305) - ($219))|0;
-       $307 = ($306>>>0)<($$432714$i>>>0);
-       $spec$select$i201 = $307 ? $306 : $$432714$i;
-       $spec$select2$i = $307 ? $$533413$i : $$415$i;
-       $308 = ((($$533413$i)) + 16|0);
-       $309 = HEAP32[$308>>2]|0;
-       $310 = ($309|0)==(0|0);
-       if ($310) {
-        $311 = ((($$533413$i)) + 20|0);
-        $312 = HEAP32[$311>>2]|0;
-        $314 = $312;
-       } else {
-        $314 = $309;
-       }
-       $313 = ($314|0)==(0|0);
-       if ($313) {
-        $$4$lcssa$i = $spec$select2$i;$$4327$lcssa$i = $spec$select$i201;
-        break;
-       } else {
-        $$415$i = $spec$select2$i;$$432714$i = $spec$select$i201;$$533413$i = 
$314;
-       }
-      }
-     }
-     $315 = ($$4$lcssa$i|0)==(0|0);
-     if ($315) {
-      $$0192 = $219;
-     } else {
-      $316 = HEAP32[(72720)>>2]|0;
-      $317 = (($316) - ($219))|0;
-      $318 = ($$4327$lcssa$i>>>0)<($317>>>0);
-      if ($318) {
-       $319 = (($$4$lcssa$i) + ($219)|0);
-       $320 = ($319>>>0)>($$4$lcssa$i>>>0);
-       if ($320) {
-        $321 = ((($$4$lcssa$i)) + 24|0);
-        $322 = HEAP32[$321>>2]|0;
-        $323 = ((($$4$lcssa$i)) + 12|0);
-        $324 = HEAP32[$323>>2]|0;
-        $325 = ($324|0)==($$4$lcssa$i|0);
-        do {
-         if ($325) {
-          $330 = ((($$4$lcssa$i)) + 20|0);
-          $331 = HEAP32[$330>>2]|0;
-          $332 = ($331|0)==(0|0);
-          if ($332) {
-           $333 = ((($$4$lcssa$i)) + 16|0);
-           $334 = HEAP32[$333>>2]|0;
-           $335 = ($334|0)==(0|0);
-           if ($335) {
-            $$3348$i = 0;
-            break;
-           } else {
-            $$1346$i$ph = $334;$$1350$i$ph = $333;
-           }
-          } else {
-           $$1346$i$ph = $331;$$1350$i$ph = $330;
-          }
-          $$1346$i = $$1346$i$ph;$$1350$i = $$1350$i$ph;
-          while(1) {
-           $336 = ((($$1346$i)) + 20|0);
-           $337 = HEAP32[$336>>2]|0;
-           $338 = ($337|0)==(0|0);
-           if ($338) {
-            $339 = ((($$1346$i)) + 16|0);
-            $340 = HEAP32[$339>>2]|0;
-            $341 = ($340|0)==(0|0);
-            if ($341) {
-             break;
-            } else {
-             $$1346$i$be = $340;$$1350$i$be = $339;
-            }
-           } else {
-            $$1346$i$be = $337;$$1350$i$be = $336;
-           }
-           $$1346$i = $$1346$i$be;$$1350$i = $$1350$i$be;
-          }
-          HEAP32[$$1350$i>>2] = 0;
-          $$3348$i = $$1346$i;
-         } else {
-          $326 = ((($$4$lcssa$i)) + 8|0);
-          $327 = HEAP32[$326>>2]|0;
-          $328 = ((($327)) + 12|0);
-          HEAP32[$328>>2] = $324;
-          $329 = ((($324)) + 8|0);
-          HEAP32[$329>>2] = $327;
-          $$3348$i = $324;
-         }
-        } while(0);
-        $342 = ($322|0)==(0|0);
-        do {
-         if ($342) {
-          $425 = $220;
-         } else {
-          $343 = ((($$4$lcssa$i)) + 28|0);
-          $344 = HEAP32[$343>>2]|0;
-          $345 = (73016 + ($344<<2)|0);
-          $346 = HEAP32[$345>>2]|0;
-          $347 = ($$4$lcssa$i|0)==($346|0);
-          if ($347) {
-           HEAP32[$345>>2] = $$3348$i;
-           $cond$i203 = ($$3348$i|0)==(0|0);
-           if ($cond$i203) {
-            $348 = 1 << $344;
-            $349 = $348 ^ -1;
-            $350 = $220 & $349;
-            HEAP32[(72716)>>2] = $350;
-            $425 = $350;
-            break;
-           }
-          } else {
-           $351 = ((($322)) + 16|0);
-           $352 = HEAP32[$351>>2]|0;
-           $353 = ($352|0)==($$4$lcssa$i|0);
-           $354 = ((($322)) + 20|0);
-           $$sink320 = $353 ? $351 : $354;
-           HEAP32[$$sink320>>2] = $$3348$i;
-           $355 = ($$3348$i|0)==(0|0);
-           if ($355) {
-            $425 = $220;
-            break;
-           }
-          }
-          $356 = ((($$3348$i)) + 24|0);
-          HEAP32[$356>>2] = $322;
-          $357 = ((($$4$lcssa$i)) + 16|0);
-          $358 = HEAP32[$357>>2]|0;
-          $359 = ($358|0)==(0|0);
-          if (!($359)) {
-           $360 = ((($$3348$i)) + 16|0);
-           HEAP32[$360>>2] = $358;
-           $361 = ((($358)) + 24|0);
-           HEAP32[$361>>2] = $$3348$i;
-          }
-          $362 = ((($$4$lcssa$i)) + 20|0);
-          $363 = HEAP32[$362>>2]|0;
-          $364 = ($363|0)==(0|0);
-          if ($364) {
-           $425 = $220;
-          } else {
-           $365 = ((($$3348$i)) + 20|0);
-           HEAP32[$365>>2] = $363;
-           $366 = ((($363)) + 24|0);
-           HEAP32[$366>>2] = $$3348$i;
-           $425 = $220;
-          }
-         }
-        } while(0);
-        $367 = ($$4327$lcssa$i>>>0)<(16);
-        L128: do {
-         if ($367) {
-          $368 = (($$4327$lcssa$i) + ($219))|0;
-          $369 = $368 | 3;
-          $370 = ((($$4$lcssa$i)) + 4|0);
-          HEAP32[$370>>2] = $369;
-          $371 = (($$4$lcssa$i) + ($368)|0);
-          $372 = ((($371)) + 4|0);
-          $373 = HEAP32[$372>>2]|0;
-          $374 = $373 | 1;
-          HEAP32[$372>>2] = $374;
-         } else {
-          $375 = $219 | 3;
-          $376 = ((($$4$lcssa$i)) + 4|0);
-          HEAP32[$376>>2] = $375;
-          $377 = $$4327$lcssa$i | 1;
-          $378 = ((($319)) + 4|0);
-          HEAP32[$378>>2] = $377;
-          $379 = (($319) + ($$4327$lcssa$i)|0);
-          HEAP32[$379>>2] = $$4327$lcssa$i;
-          $380 = $$4327$lcssa$i >>> 3;
-          $381 = ($$4327$lcssa$i>>>0)<(256);
-          if ($381) {
-           $382 = $380 << 1;
-           $383 = (72752 + ($382<<2)|0);
-           $384 = HEAP32[18178]|0;
-           $385 = 1 << $380;
-           $386 = $384 & $385;
-           $387 = ($386|0)==(0);
-           if ($387) {
-            $388 = $384 | $385;
-            HEAP32[18178] = $388;
-            $$pre$i204 = ((($383)) + 8|0);
-            $$0344$i = $383;$$pre$phi$i205Z2D = $$pre$i204;
-           } else {
-            $389 = ((($383)) + 8|0);
-            $390 = HEAP32[$389>>2]|0;
-            $$0344$i = $390;$$pre$phi$i205Z2D = $389;
-           }
-           HEAP32[$$pre$phi$i205Z2D>>2] = $319;
-           $391 = ((($$0344$i)) + 12|0);
-           HEAP32[$391>>2] = $319;
-           $392 = ((($319)) + 8|0);
-           HEAP32[$392>>2] = $$0344$i;
-           $393 = ((($319)) + 12|0);
-           HEAP32[$393>>2] = $383;
-           break;
-          }
-          $394 = $$4327$lcssa$i >>> 8;
-          $395 = ($394|0)==(0);
-          if ($395) {
-           $$0338$i = 0;
-          } else {
-           $396 = ($$4327$lcssa$i>>>0)>(16777215);
-           if ($396) {
-            $$0338$i = 31;
-           } else {
-            $397 = (($394) + 1048320)|0;
-            $398 = $397 >>> 16;
-            $399 = $398 & 8;
-            $400 = $394 << $399;
-            $401 = (($400) + 520192)|0;
-            $402 = $401 >>> 16;
-            $403 = $402 & 4;
-            $404 = $403 | $399;
-            $405 = $400 << $403;
-            $406 = (($405) + 245760)|0;
-            $407 = $406 >>> 16;
-            $408 = $407 & 2;
-            $409 = $404 | $408;
-            $410 = (14 - ($409))|0;
-            $411 = $405 << $408;
-            $412 = $411 >>> 15;
-            $413 = (($410) + ($412))|0;
-            $414 = $413 << 1;
-            $415 = (($413) + 7)|0;
-            $416 = $$4327$lcssa$i >>> $415;
-            $417 = $416 & 1;
-            $418 = $417 | $414;
-            $$0338$i = $418;
-           }
-          }
-          $419 = (73016 + ($$0338$i<<2)|0);
-          $420 = ((($319)) + 28|0);
-          HEAP32[$420>>2] = $$0338$i;
-          $421 = ((($319)) + 16|0);
-          $422 = ((($421)) + 4|0);
-          HEAP32[$422>>2] = 0;
-          HEAP32[$421>>2] = 0;
-          $423 = 1 << $$0338$i;
-          $424 = $425 & $423;
-          $426 = ($424|0)==(0);
-          if ($426) {
-           $427 = $425 | $423;
-           HEAP32[(72716)>>2] = $427;
-           HEAP32[$419>>2] = $319;
-           $428 = ((($319)) + 24|0);
-           HEAP32[$428>>2] = $419;
-           $429 = ((($319)) + 12|0);
-           HEAP32[$429>>2] = $319;
-           $430 = ((($319)) + 8|0);
-           HEAP32[$430>>2] = $319;
-           break;
-          }
-          $431 = HEAP32[$419>>2]|0;
-          $432 = ((($431)) + 4|0);
-          $433 = HEAP32[$432>>2]|0;
-          $434 = $433 & -8;
-          $435 = ($434|0)==($$4327$lcssa$i|0);
-          L145: do {
-           if ($435) {
-            $$0321$lcssa$i = $431;
-           } else {
-            $436 = ($$0338$i|0)==(31);
-            $437 = $$0338$i >>> 1;
-            $438 = (25 - ($437))|0;
-            $439 = $436 ? 0 : $438;
-            $440 = $$4327$lcssa$i << $439;
-            $$032012$i = $440;$$032111$i = $431;
-            while(1) {
-             $447 = $$032012$i >>> 31;
-             $448 = (((($$032111$i)) + 16|0) + ($447<<2)|0);
-             $443 = HEAP32[$448>>2]|0;
-             $449 = ($443|0)==(0|0);
-             if ($449) {
-              break;
-             }
-             $441 = $$032012$i << 1;
-             $442 = ((($443)) + 4|0);
-             $444 = HEAP32[$442>>2]|0;
-             $445 = $444 & -8;
-             $446 = ($445|0)==($$4327$lcssa$i|0);
-             if ($446) {
-              $$0321$lcssa$i = $443;
-              break L145;
-             } else {
-              $$032012$i = $441;$$032111$i = $443;
-             }
-            }
-            HEAP32[$448>>2] = $319;
-            $450 = ((($319)) + 24|0);
-            HEAP32[$450>>2] = $$032111$i;
-            $451 = ((($319)) + 12|0);
-            HEAP32[$451>>2] = $319;
-            $452 = ((($319)) + 8|0);
-            HEAP32[$452>>2] = $319;
-            break L128;
-           }
-          } while(0);
-          $453 = ((($$0321$lcssa$i)) + 8|0);
-          $454 = HEAP32[$453>>2]|0;
-          $455 = ((($454)) + 12|0);
-          HEAP32[$455>>2] = $319;
-          HEAP32[$453>>2] = $319;
-          $456 = ((($319)) + 8|0);
-          HEAP32[$456>>2] = $454;
-          $457 = ((($319)) + 12|0);
-          HEAP32[$457>>2] = $$0321$lcssa$i;
-          $458 = ((($319)) + 24|0);
-          HEAP32[$458>>2] = 0;
-         }
-        } while(0);
-        $459 = ((($$4$lcssa$i)) + 8|0);
-        $$0 = $459;
-        STACKTOP = sp;return ($$0|0);
-       } else {
-        $$0192 = $219;
-       }
-      } else {
-       $$0192 = $219;
-      }
-     }
-    }
-   }
-  }
- } while(0);
- $460 = HEAP32[(72720)>>2]|0;
- $461 = ($460>>>0)<($$0192>>>0);
- if (!($461)) {
-  $462 = (($460) - ($$0192))|0;
-  $463 = HEAP32[(72732)>>2]|0;
-  $464 = ($462>>>0)>(15);
-  if ($464) {
-   $465 = (($463) + ($$0192)|0);
-   HEAP32[(72732)>>2] = $465;
-   HEAP32[(72720)>>2] = $462;
-   $466 = $462 | 1;
-   $467 = ((($465)) + 4|0);
-   HEAP32[$467>>2] = $466;
-   $468 = (($463) + ($460)|0);
-   HEAP32[$468>>2] = $462;
-   $469 = $$0192 | 3;
-   $470 = ((($463)) + 4|0);
-   HEAP32[$470>>2] = $469;
-  } else {
-   HEAP32[(72720)>>2] = 0;
-   HEAP32[(72732)>>2] = 0;
-   $471 = $460 | 3;
-   $472 = ((($463)) + 4|0);
-   HEAP32[$472>>2] = $471;
-   $473 = (($463) + ($460)|0);
-   $474 = ((($473)) + 4|0);
-   $475 = HEAP32[$474>>2]|0;
-   $476 = $475 | 1;
-   HEAP32[$474>>2] = $476;
-  }
-  $477 = ((($463)) + 8|0);
-  $$0 = $477;
-  STACKTOP = sp;return ($$0|0);
- }
- $478 = HEAP32[(72724)>>2]|0;
- $479 = ($478>>>0)>($$0192>>>0);
- if ($479) {
-  $480 = (($478) - ($$0192))|0;
-  HEAP32[(72724)>>2] = $480;
-  $481 = HEAP32[(72736)>>2]|0;
-  $482 = (($481) + ($$0192)|0);
-  HEAP32[(72736)>>2] = $482;
-  $483 = $480 | 1;
-  $484 = ((($482)) + 4|0);
-  HEAP32[$484>>2] = $483;
-  $485 = $$0192 | 3;
-  $486 = ((($481)) + 4|0);
-  HEAP32[$486>>2] = $485;
-  $487 = ((($481)) + 8|0);
-  $$0 = $487;
-  STACKTOP = sp;return ($$0|0);
- }
- $488 = HEAP32[18296]|0;
- $489 = ($488|0)==(0);
- if ($489) {
-  HEAP32[(73192)>>2] = 4096;
-  HEAP32[(73188)>>2] = 4096;
-  HEAP32[(73196)>>2] = -1;
-  HEAP32[(73200)>>2] = -1;
-  HEAP32[(73204)>>2] = 0;
-  HEAP32[(73156)>>2] = 0;
-  $490 = $1;
-  $491 = $490 & -16;
-  $492 = $491 ^ 1431655768;
-  HEAP32[18296] = $492;
-  $496 = 4096;
- } else {
-  $$pre$i195 = HEAP32[(73192)>>2]|0;
-  $496 = $$pre$i195;
- }
- $493 = (($$0192) + 48)|0;
- $494 = (($$0192) + 47)|0;
- $495 = (($496) + ($494))|0;
- $497 = (0 - ($496))|0;
- $498 = $495 & $497;
- $499 = ($498>>>0)>($$0192>>>0);
- if (!($499)) {
-  $$0 = 0;
-  STACKTOP = sp;return ($$0|0);
- }
- $500 = HEAP32[(73152)>>2]|0;
- $501 = ($500|0)==(0);
- if (!($501)) {
-  $502 = HEAP32[(73144)>>2]|0;
-  $503 = (($502) + ($498))|0;
-  $504 = ($503>>>0)<=($502>>>0);
-  $505 = ($503>>>0)>($500>>>0);
-  $or$cond1$i = $504 | $505;
-  if ($or$cond1$i) {
-   $$0 = 0;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $506 = HEAP32[(73156)>>2]|0;
- $507 = $506 & 4;
- $508 = ($507|0)==(0);
- L178: do {
-  if ($508) {
-   $509 = HEAP32[(72736)>>2]|0;
-   $510 = ($509|0)==(0|0);
-   L180: do {
-    if ($510) {
-     label = 128;
-    } else {
-     $$0$i20$i = (73160);
-     while(1) {
-      $511 = HEAP32[$$0$i20$i>>2]|0;
-      $512 = ($511>>>0)>($509>>>0);
-      if (!($512)) {
-       $513 = ((($$0$i20$i)) + 4|0);
-       $514 = HEAP32[$513>>2]|0;
-       $515 = (($511) + ($514)|0);
-       $516 = ($515>>>0)>($509>>>0);
-       if ($516) {
-        break;
-       }
-      }
-      $517 = ((($$0$i20$i)) + 8|0);
-      $518 = HEAP32[$517>>2]|0;
-      $519 = ($518|0)==(0|0);
-      if ($519) {
-       label = 128;
-       break L180;
-      } else {
-       $$0$i20$i = $518;
-      }
-     }
-     $542 = (($495) - ($478))|0;
-     $543 = $542 & $497;
-     $544 = ($543>>>0)<(2147483647);
-     if ($544) {
-      $545 = ((($$0$i20$i)) + 4|0);
-      $546 = (_sbrk(($543|0))|0);
-      $547 = HEAP32[$$0$i20$i>>2]|0;
-      $548 = HEAP32[$545>>2]|0;
-      $549 = (($547) + ($548)|0);
-      $550 = ($546|0)==($549|0);
-      if ($550) {
-       $551 = ($546|0)==((-1)|0);
-       if ($551) {
-        $$2234243136$i = $543;
-       } else {
-        $$723947$i = $543;$$748$i = $546;
-        label = 145;
-        break L178;
-       }
-      } else {
-       $$2247$ph$i = $546;$$2253$ph$i = $543;
-       label = 136;
-      }
-     } else {
-      $$2234243136$i = 0;
-     }
-    }
-   } while(0);
-   do {
-    if ((label|0) == 128) {
-     $520 = (_sbrk(0)|0);
-     $521 = ($520|0)==((-1)|0);
-     if ($521) {
-      $$2234243136$i = 0;
-     } else {
-      $522 = $520;
-      $523 = HEAP32[(73188)>>2]|0;
-      $524 = (($523) + -1)|0;
-      $525 = $524 & $522;
-      $526 = ($525|0)==(0);
-      $527 = (($524) + ($522))|0;
-      $528 = (0 - ($523))|0;
-      $529 = $527 & $528;
-      $530 = (($529) - ($522))|0;
-      $531 = $526 ? 0 : $530;
-      $spec$select49$i = (($531) + ($498))|0;
-      $532 = HEAP32[(73144)>>2]|0;
-      $533 = (($spec$select49$i) + ($532))|0;
-      $534 = ($spec$select49$i>>>0)>($$0192>>>0);
-      $535 = ($spec$select49$i>>>0)<(2147483647);
-      $or$cond$i = $534 & $535;
-      if ($or$cond$i) {
-       $536 = HEAP32[(73152)>>2]|0;
-       $537 = ($536|0)==(0);
-       if (!($537)) {
-        $538 = ($533>>>0)<=($532>>>0);
-        $539 = ($533>>>0)>($536>>>0);
-        $or$cond2$i = $538 | $539;
-        if ($or$cond2$i) {
-         $$2234243136$i = 0;
-         break;
-        }
-       }
-       $540 = (_sbrk(($spec$select49$i|0))|0);
-       $541 = ($540|0)==($520|0);
-       if ($541) {
-        $$723947$i = $spec$select49$i;$$748$i = $520;
-        label = 145;
-        break L178;
-       } else {
-        $$2247$ph$i = $540;$$2253$ph$i = $spec$select49$i;
-        label = 136;
-       }
-      } else {
-       $$2234243136$i = 0;
-      }
-     }
-    }
-   } while(0);
-   do {
-    if ((label|0) == 136) {
-     $552 = (0 - ($$2253$ph$i))|0;
-     $553 = ($$2247$ph$i|0)!=((-1)|0);
-     $554 = ($$2253$ph$i>>>0)<(2147483647);
-     $or$cond7$i = $554 & $553;
-     $555 = ($493>>>0)>($$2253$ph$i>>>0);
-     $or$cond6$i = $555 & $or$cond7$i;
-     if (!($or$cond6$i)) {
-      $565 = ($$2247$ph$i|0)==((-1)|0);
-      if ($565) {
-       $$2234243136$i = 0;
-       break;
-      } else {
-       $$723947$i = $$2253$ph$i;$$748$i = $$2247$ph$i;
-       label = 145;
-       break L178;
-      }
-     }
-     $556 = HEAP32[(73192)>>2]|0;
-     $557 = (($494) - ($$2253$ph$i))|0;
-     $558 = (($557) + ($556))|0;
-     $559 = (0 - ($556))|0;
-     $560 = $558 & $559;
-     $561 = ($560>>>0)<(2147483647);
-     if (!($561)) {
-      $$723947$i = $$2253$ph$i;$$748$i = $$2247$ph$i;
-      label = 145;
-      break L178;
-     }
-     $562 = (_sbrk(($560|0))|0);
-     $563 = ($562|0)==((-1)|0);
-     if ($563) {
-      (_sbrk(($552|0))|0);
-      $$2234243136$i = 0;
-      break;
-     } else {
-      $564 = (($560) + ($$2253$ph$i))|0;
-      $$723947$i = $564;$$748$i = $$2247$ph$i;
-      label = 145;
-      break L178;
-     }
-    }
-   } while(0);
-   $566 = HEAP32[(73156)>>2]|0;
-   $567 = $566 | 4;
-   HEAP32[(73156)>>2] = $567;
-   $$4236$i = $$2234243136$i;
-   label = 143;
-  } else {
-   $$4236$i = 0;
-   label = 143;
-  }
- } while(0);
- if ((label|0) == 143) {
-  $568 = ($498>>>0)<(2147483647);
-  if ($568) {
-   $569 = (_sbrk(($498|0))|0);
-   $570 = (_sbrk(0)|0);
-   $571 = ($569|0)!=((-1)|0);
-   $572 = ($570|0)!=((-1)|0);
-   $or$cond5$i = $571 & $572;
-   $573 = ($569>>>0)<($570>>>0);
-   $or$cond8$i = $573 & $or$cond5$i;
-   $574 = $570;
-   $575 = $569;
-   $576 = (($574) - ($575))|0;
-   $577 = (($$0192) + 40)|0;
-   $578 = ($576>>>0)>($577>>>0);
-   $spec$select9$i = $578 ? $576 : $$4236$i;
-   $or$cond8$not$i = $or$cond8$i ^ 1;
-   $579 = ($569|0)==((-1)|0);
-   $not$$i = $578 ^ 1;
-   $580 = $579 | $not$$i;
-   $or$cond50$i = $580 | $or$cond8$not$i;
-   if (!($or$cond50$i)) {
-    $$723947$i = $spec$select9$i;$$748$i = $569;
-    label = 145;
-   }
-  }
- }
- if ((label|0) == 145) {
-  $581 = HEAP32[(73144)>>2]|0;
-  $582 = (($581) + ($$723947$i))|0;
-  HEAP32[(73144)>>2] = $582;
-  $583 = HEAP32[(73148)>>2]|0;
-  $584 = ($582>>>0)>($583>>>0);
-  if ($584) {
-   HEAP32[(73148)>>2] = $582;
-  }
-  $585 = HEAP32[(72736)>>2]|0;
-  $586 = ($585|0)==(0|0);
-  L215: do {
-   if ($586) {
-    $587 = HEAP32[(72728)>>2]|0;
-    $588 = ($587|0)==(0|0);
-    $589 = ($$748$i>>>0)<($587>>>0);
-    $or$cond11$i = $588 | $589;
-    if ($or$cond11$i) {
-     HEAP32[(72728)>>2] = $$748$i;
-    }
-    HEAP32[(73160)>>2] = $$748$i;
-    HEAP32[(73164)>>2] = $$723947$i;
-    HEAP32[(73172)>>2] = 0;
-    $590 = HEAP32[18296]|0;
-    HEAP32[(72748)>>2] = $590;
-    HEAP32[(72744)>>2] = -1;
-    HEAP32[(72764)>>2] = (72752);
-    HEAP32[(72760)>>2] = (72752);
-    HEAP32[(72772)>>2] = (72760);
-    HEAP32[(72768)>>2] = (72760);
-    HEAP32[(72780)>>2] = (72768);
-    HEAP32[(72776)>>2] = (72768);
-    HEAP32[(72788)>>2] = (72776);
-    HEAP32[(72784)>>2] = (72776);
-    HEAP32[(72796)>>2] = (72784);
-    HEAP32[(72792)>>2] = (72784);
-    HEAP32[(72804)>>2] = (72792);
-    HEAP32[(72800)>>2] = (72792);
-    HEAP32[(72812)>>2] = (72800);
-    HEAP32[(72808)>>2] = (72800);
-    HEAP32[(72820)>>2] = (72808);
-    HEAP32[(72816)>>2] = (72808);
-    HEAP32[(72828)>>2] = (72816);
-    HEAP32[(72824)>>2] = (72816);
-    HEAP32[(72836)>>2] = (72824);
-    HEAP32[(72832)>>2] = (72824);
-    HEAP32[(72844)>>2] = (72832);
-    HEAP32[(72840)>>2] = (72832);
-    HEAP32[(72852)>>2] = (72840);
-    HEAP32[(72848)>>2] = (72840);
-    HEAP32[(72860)>>2] = (72848);
-    HEAP32[(72856)>>2] = (72848);
-    HEAP32[(72868)>>2] = (72856);
-    HEAP32[(72864)>>2] = (72856);
-    HEAP32[(72876)>>2] = (72864);
-    HEAP32[(72872)>>2] = (72864);
-    HEAP32[(72884)>>2] = (72872);
-    HEAP32[(72880)>>2] = (72872);
-    HEAP32[(72892)>>2] = (72880);
-    HEAP32[(72888)>>2] = (72880);
-    HEAP32[(72900)>>2] = (72888);
-    HEAP32[(72896)>>2] = (72888);
-    HEAP32[(72908)>>2] = (72896);
-    HEAP32[(72904)>>2] = (72896);
-    HEAP32[(72916)>>2] = (72904);
-    HEAP32[(72912)>>2] = (72904);
-    HEAP32[(72924)>>2] = (72912);
-    HEAP32[(72920)>>2] = (72912);
-    HEAP32[(72932)>>2] = (72920);
-    HEAP32[(72928)>>2] = (72920);
-    HEAP32[(72940)>>2] = (72928);
-    HEAP32[(72936)>>2] = (72928);
-    HEAP32[(72948)>>2] = (72936);
-    HEAP32[(72944)>>2] = (72936);
-    HEAP32[(72956)>>2] = (72944);
-    HEAP32[(72952)>>2] = (72944);
-    HEAP32[(72964)>>2] = (72952);
-    HEAP32[(72960)>>2] = (72952);
-    HEAP32[(72972)>>2] = (72960);
-    HEAP32[(72968)>>2] = (72960);
-    HEAP32[(72980)>>2] = (72968);
-    HEAP32[(72976)>>2] = (72968);
-    HEAP32[(72988)>>2] = (72976);
-    HEAP32[(72984)>>2] = (72976);
-    HEAP32[(72996)>>2] = (72984);
-    HEAP32[(72992)>>2] = (72984);
-    HEAP32[(73004)>>2] = (72992);
-    HEAP32[(73000)>>2] = (72992);
-    HEAP32[(73012)>>2] = (73000);
-    HEAP32[(73008)>>2] = (73000);
-    $591 = (($$723947$i) + -40)|0;
-    $592 = ((($$748$i)) + 8|0);
-    $593 = $592;
-    $594 = $593 & 7;
-    $595 = ($594|0)==(0);
-    $596 = (0 - ($593))|0;
-    $597 = $596 & 7;
-    $598 = $595 ? 0 : $597;
-    $599 = (($$748$i) + ($598)|0);
-    $600 = (($591) - ($598))|0;
-    HEAP32[(72736)>>2] = $599;
-    HEAP32[(72724)>>2] = $600;
-    $601 = $600 | 1;
-    $602 = ((($599)) + 4|0);
-    HEAP32[$602>>2] = $601;
-    $603 = (($$748$i) + ($591)|0);
-    $604 = ((($603)) + 4|0);
-    HEAP32[$604>>2] = 40;
-    $605 = HEAP32[(73200)>>2]|0;
-    HEAP32[(72740)>>2] = $605;
-   } else {
-    $$024372$i = (73160);
-    while(1) {
-     $606 = HEAP32[$$024372$i>>2]|0;
-     $607 = ((($$024372$i)) + 4|0);
-     $608 = HEAP32[$607>>2]|0;
-     $609 = (($606) + ($608)|0);
-     $610 = ($$748$i|0)==($609|0);
-     if ($610) {
-      label = 154;
-      break;
-     }
-     $611 = ((($$024372$i)) + 8|0);
-     $612 = HEAP32[$611>>2]|0;
-     $613 = ($612|0)==(0|0);
-     if ($613) {
-      break;
-     } else {
-      $$024372$i = $612;
-     }
-    }
-    if ((label|0) == 154) {
-     $614 = ((($$024372$i)) + 4|0);
-     $615 = ((($$024372$i)) + 12|0);
-     $616 = HEAP32[$615>>2]|0;
-     $617 = $616 & 8;
-     $618 = ($617|0)==(0);
-     if ($618) {
-      $619 = ($606>>>0)<=($585>>>0);
-      $620 = ($$748$i>>>0)>($585>>>0);
-      $or$cond51$i = $620 & $619;
-      if ($or$cond51$i) {
-       $621 = (($608) + ($$723947$i))|0;
-       HEAP32[$614>>2] = $621;
-       $622 = HEAP32[(72724)>>2]|0;
-       $623 = (($622) + ($$723947$i))|0;
-       $624 = ((($585)) + 8|0);
-       $625 = $624;
-       $626 = $625 & 7;
-       $627 = ($626|0)==(0);
-       $628 = (0 - ($625))|0;
-       $629 = $628 & 7;
-       $630 = $627 ? 0 : $629;
-       $631 = (($585) + ($630)|0);
-       $632 = (($623) - ($630))|0;
-       HEAP32[(72736)>>2] = $631;
-       HEAP32[(72724)>>2] = $632;
-       $633 = $632 | 1;
-       $634 = ((($631)) + 4|0);
-       HEAP32[$634>>2] = $633;
-       $635 = (($585) + ($623)|0);
-       $636 = ((($635)) + 4|0);
-       HEAP32[$636>>2] = 40;
-       $637 = HEAP32[(73200)>>2]|0;
-       HEAP32[(72740)>>2] = $637;
-       break;
-      }
-     }
-    }
-    $638 = HEAP32[(72728)>>2]|0;
-    $639 = ($$748$i>>>0)<($638>>>0);
-    if ($639) {
-     HEAP32[(72728)>>2] = $$748$i;
-    }
-    $640 = (($$748$i) + ($$723947$i)|0);
-    $$124471$i = (73160);
-    while(1) {
-     $641 = HEAP32[$$124471$i>>2]|0;
-     $642 = ($641|0)==($640|0);
-     if ($642) {
-      label = 162;
-      break;
-     }
-     $643 = ((($$124471$i)) + 8|0);
-     $644 = HEAP32[$643>>2]|0;
-     $645 = ($644|0)==(0|0);
-     if ($645) {
-      break;
-     } else {
-      $$124471$i = $644;
-     }
-    }
-    if ((label|0) == 162) {
-     $646 = ((($$124471$i)) + 12|0);
-     $647 = HEAP32[$646>>2]|0;
-     $648 = $647 & 8;
-     $649 = ($648|0)==(0);
-     if ($649) {
-      HEAP32[$$124471$i>>2] = $$748$i;
-      $650 = ((($$124471$i)) + 4|0);
-      $651 = HEAP32[$650>>2]|0;
-      $652 = (($651) + ($$723947$i))|0;
-      HEAP32[$650>>2] = $652;
-      $653 = ((($$748$i)) + 8|0);
-      $654 = $653;
-      $655 = $654 & 7;
-      $656 = ($655|0)==(0);
-      $657 = (0 - ($654))|0;
-      $658 = $657 & 7;
-      $659 = $656 ? 0 : $658;
-      $660 = (($$748$i) + ($659)|0);
-      $661 = ((($640)) + 8|0);
-      $662 = $661;
-      $663 = $662 & 7;
-      $664 = ($663|0)==(0);
-      $665 = (0 - ($662))|0;
-      $666 = $665 & 7;
-      $667 = $664 ? 0 : $666;
-      $668 = (($640) + ($667)|0);
-      $669 = $668;
-      $670 = $660;
-      $671 = (($669) - ($670))|0;
-      $672 = (($660) + ($$0192)|0);
-      $673 = (($671) - ($$0192))|0;
-      $674 = $$0192 | 3;
-      $675 = ((($660)) + 4|0);
-      HEAP32[$675>>2] = $674;
-      $676 = ($585|0)==($668|0);
-      L238: do {
-       if ($676) {
-        $677 = HEAP32[(72724)>>2]|0;
-        $678 = (($677) + ($673))|0;
-        HEAP32[(72724)>>2] = $678;
-        HEAP32[(72736)>>2] = $672;
-        $679 = $678 | 1;
-        $680 = ((($672)) + 4|0);
-        HEAP32[$680>>2] = $679;
-       } else {
-        $681 = HEAP32[(72732)>>2]|0;
-        $682 = ($681|0)==($668|0);
-        if ($682) {
-         $683 = HEAP32[(72720)>>2]|0;
-         $684 = (($683) + ($673))|0;
-         HEAP32[(72720)>>2] = $684;
-         HEAP32[(72732)>>2] = $672;
-         $685 = $684 | 1;
-         $686 = ((($672)) + 4|0);
-         HEAP32[$686>>2] = $685;
-         $687 = (($672) + ($684)|0);
-         HEAP32[$687>>2] = $684;
-         break;
-        }
-        $688 = ((($668)) + 4|0);
-        $689 = HEAP32[$688>>2]|0;
-        $690 = $689 & 3;
-        $691 = ($690|0)==(1);
-        if ($691) {
-         $692 = $689 & -8;
-         $693 = $689 >>> 3;
-         $694 = ($689>>>0)<(256);
-         L246: do {
-          if ($694) {
-           $695 = ((($668)) + 8|0);
-           $696 = HEAP32[$695>>2]|0;
-           $697 = ((($668)) + 12|0);
-           $698 = HEAP32[$697>>2]|0;
-           $699 = ($698|0)==($696|0);
-           if ($699) {
-            $700 = 1 << $693;
-            $701 = $700 ^ -1;
-            $702 = HEAP32[18178]|0;
-            $703 = $702 & $701;
-            HEAP32[18178] = $703;
-            break;
-           } else {
-            $704 = ((($696)) + 12|0);
-            HEAP32[$704>>2] = $698;
-            $705 = ((($698)) + 8|0);
-            HEAP32[$705>>2] = $696;
-            break;
-           }
-          } else {
-           $706 = ((($668)) + 24|0);
-           $707 = HEAP32[$706>>2]|0;
-           $708 = ((($668)) + 12|0);
-           $709 = HEAP32[$708>>2]|0;
-           $710 = ($709|0)==($668|0);
-           do {
-            if ($710) {
-             $715 = ((($668)) + 16|0);
-             $716 = ((($715)) + 4|0);
-             $717 = HEAP32[$716>>2]|0;
-             $718 = ($717|0)==(0|0);
-             if ($718) {
-              $719 = HEAP32[$715>>2]|0;
-              $720 = ($719|0)==(0|0);
-              if ($720) {
-               $$3$i$i = 0;
-               break;
-              } else {
-               $$1263$i$i$ph = $719;$$1265$i$i$ph = $715;
-              }
-             } else {
-              $$1263$i$i$ph = $717;$$1265$i$i$ph = $716;
-             }
-             $$1263$i$i = $$1263$i$i$ph;$$1265$i$i = $$1265$i$i$ph;
-             while(1) {
-              $721 = ((($$1263$i$i)) + 20|0);
-              $722 = HEAP32[$721>>2]|0;
-              $723 = ($722|0)==(0|0);
-              if ($723) {
-               $724 = ((($$1263$i$i)) + 16|0);
-               $725 = HEAP32[$724>>2]|0;
-               $726 = ($725|0)==(0|0);
-               if ($726) {
-                break;
-               } else {
-                $$1263$i$i$be = $725;$$1265$i$i$be = $724;
-               }
-              } else {
-               $$1263$i$i$be = $722;$$1265$i$i$be = $721;
-              }
-              $$1263$i$i = $$1263$i$i$be;$$1265$i$i = $$1265$i$i$be;
-             }
-             HEAP32[$$1265$i$i>>2] = 0;
-             $$3$i$i = $$1263$i$i;
-            } else {
-             $711 = ((($668)) + 8|0);
-             $712 = HEAP32[$711>>2]|0;
-             $713 = ((($712)) + 12|0);
-             HEAP32[$713>>2] = $709;
-             $714 = ((($709)) + 8|0);
-             HEAP32[$714>>2] = $712;
-             $$3$i$i = $709;
-            }
-           } while(0);
-           $727 = ($707|0)==(0|0);
-           if ($727) {
-            break;
-           }
-           $728 = ((($668)) + 28|0);
-           $729 = HEAP32[$728>>2]|0;
-           $730 = (73016 + ($729<<2)|0);
-           $731 = HEAP32[$730>>2]|0;
-           $732 = ($731|0)==($668|0);
-           do {
-            if ($732) {
-             HEAP32[$730>>2] = $$3$i$i;
-             $cond$i$i = ($$3$i$i|0)==(0|0);
-             if (!($cond$i$i)) {
-              break;
-             }
-             $733 = 1 << $729;
-             $734 = $733 ^ -1;
-             $735 = HEAP32[(72716)>>2]|0;
-             $736 = $735 & $734;
-             HEAP32[(72716)>>2] = $736;
-             break L246;
-            } else {
-             $737 = ((($707)) + 16|0);
-             $738 = HEAP32[$737>>2]|0;
-             $739 = ($738|0)==($668|0);
-             $740 = ((($707)) + 20|0);
-             $$sink321 = $739 ? $737 : $740;
-             HEAP32[$$sink321>>2] = $$3$i$i;
-             $741 = ($$3$i$i|0)==(0|0);
-             if ($741) {
-              break L246;
-             }
-            }
-           } while(0);
-           $742 = ((($$3$i$i)) + 24|0);
-           HEAP32[$742>>2] = $707;
-           $743 = ((($668)) + 16|0);
-           $744 = HEAP32[$743>>2]|0;
-           $745 = ($744|0)==(0|0);
-           if (!($745)) {
-            $746 = ((($$3$i$i)) + 16|0);
-            HEAP32[$746>>2] = $744;
-            $747 = ((($744)) + 24|0);
-            HEAP32[$747>>2] = $$3$i$i;
-           }
-           $748 = ((($743)) + 4|0);
-           $749 = HEAP32[$748>>2]|0;
-           $750 = ($749|0)==(0|0);
-           if ($750) {
-            break;
-           }
-           $751 = ((($$3$i$i)) + 20|0);
-           HEAP32[$751>>2] = $749;
-           $752 = ((($749)) + 24|0);
-           HEAP32[$752>>2] = $$3$i$i;
-          }
-         } while(0);
-         $753 = (($668) + ($692)|0);
-         $754 = (($692) + ($673))|0;
-         $$0$i$i = $753;$$0259$i$i = $754;
-        } else {
-         $$0$i$i = $668;$$0259$i$i = $673;
-        }
-        $755 = ((($$0$i$i)) + 4|0);
-        $756 = HEAP32[$755>>2]|0;
-        $757 = $756 & -2;
-        HEAP32[$755>>2] = $757;
-        $758 = $$0259$i$i | 1;
-        $759 = ((($672)) + 4|0);
-        HEAP32[$759>>2] = $758;
-        $760 = (($672) + ($$0259$i$i)|0);
-        HEAP32[$760>>2] = $$0259$i$i;
-        $761 = $$0259$i$i >>> 3;
-        $762 = ($$0259$i$i>>>0)<(256);
-        if ($762) {
-         $763 = $761 << 1;
-         $764 = (72752 + ($763<<2)|0);
-         $765 = HEAP32[18178]|0;
-         $766 = 1 << $761;
-         $767 = $765 & $766;
-         $768 = ($767|0)==(0);
-         if ($768) {
-          $769 = $765 | $766;
-          HEAP32[18178] = $769;
-          $$pre$i16$i = ((($764)) + 8|0);
-          $$0267$i$i = $764;$$pre$phi$i17$iZ2D = $$pre$i16$i;
-         } else {
-          $770 = ((($764)) + 8|0);
-          $771 = HEAP32[$770>>2]|0;
-          $$0267$i$i = $771;$$pre$phi$i17$iZ2D = $770;
-         }
-         HEAP32[$$pre$phi$i17$iZ2D>>2] = $672;
-         $772 = ((($$0267$i$i)) + 12|0);
-         HEAP32[$772>>2] = $672;
-         $773 = ((($672)) + 8|0);
-         HEAP32[$773>>2] = $$0267$i$i;
-         $774 = ((($672)) + 12|0);
-         HEAP32[$774>>2] = $764;
-         break;
-        }
-        $775 = $$0259$i$i >>> 8;
-        $776 = ($775|0)==(0);
-        do {
-         if ($776) {
-          $$0268$i$i = 0;
-         } else {
-          $777 = ($$0259$i$i>>>0)>(16777215);
-          if ($777) {
-           $$0268$i$i = 31;
-           break;
-          }
-          $778 = (($775) + 1048320)|0;
-          $779 = $778 >>> 16;
-          $780 = $779 & 8;
-          $781 = $775 << $780;
-          $782 = (($781) + 520192)|0;
-          $783 = $782 >>> 16;
-          $784 = $783 & 4;
-          $785 = $784 | $780;
-          $786 = $781 << $784;
-          $787 = (($786) + 245760)|0;
-          $788 = $787 >>> 16;
-          $789 = $788 & 2;
-          $790 = $785 | $789;
-          $791 = (14 - ($790))|0;
-          $792 = $786 << $789;
-          $793 = $792 >>> 15;
-          $794 = (($791) + ($793))|0;
-          $795 = $794 << 1;
-          $796 = (($794) + 7)|0;
-          $797 = $$0259$i$i >>> $796;
-          $798 = $797 & 1;
-          $799 = $798 | $795;
-          $$0268$i$i = $799;
-         }
-        } while(0);
-        $800 = (73016 + ($$0268$i$i<<2)|0);
-        $801 = ((($672)) + 28|0);
-        HEAP32[$801>>2] = $$0268$i$i;
-        $802 = ((($672)) + 16|0);
-        $803 = ((($802)) + 4|0);
-        HEAP32[$803>>2] = 0;
-        HEAP32[$802>>2] = 0;
-        $804 = HEAP32[(72716)>>2]|0;
-        $805 = 1 << $$0268$i$i;
-        $806 = $804 & $805;
-        $807 = ($806|0)==(0);
-        if ($807) {
-         $808 = $804 | $805;
-         HEAP32[(72716)>>2] = $808;
-         HEAP32[$800>>2] = $672;
-         $809 = ((($672)) + 24|0);
-         HEAP32[$809>>2] = $800;
-         $810 = ((($672)) + 12|0);
-         HEAP32[$810>>2] = $672;
-         $811 = ((($672)) + 8|0);
-         HEAP32[$811>>2] = $672;
-         break;
-        }
-        $812 = HEAP32[$800>>2]|0;
-        $813 = ((($812)) + 4|0);
-        $814 = HEAP32[$813>>2]|0;
-        $815 = $814 & -8;
-        $816 = ($815|0)==($$0259$i$i|0);
-        L291: do {
-         if ($816) {
-          $$0261$lcssa$i$i = $812;
-         } else {
-          $817 = ($$0268$i$i|0)==(31);
-          $818 = $$0268$i$i >>> 1;
-          $819 = (25 - ($818))|0;
-          $820 = $817 ? 0 : $819;
-          $821 = $$0259$i$i << $820;
-          $$02604$i$i = $821;$$02613$i$i = $812;
-          while(1) {
-           $828 = $$02604$i$i >>> 31;
-           $829 = (((($$02613$i$i)) + 16|0) + ($828<<2)|0);
-           $824 = HEAP32[$829>>2]|0;
-           $830 = ($824|0)==(0|0);
-           if ($830) {
-            break;
-           }
-           $822 = $$02604$i$i << 1;
-           $823 = ((($824)) + 4|0);
-           $825 = HEAP32[$823>>2]|0;
-           $826 = $825 & -8;
-           $827 = ($826|0)==($$0259$i$i|0);
-           if ($827) {
-            $$0261$lcssa$i$i = $824;
-            break L291;
-           } else {
-            $$02604$i$i = $822;$$02613$i$i = $824;
-           }
-          }
-          HEAP32[$829>>2] = $672;
-          $831 = ((($672)) + 24|0);
-          HEAP32[$831>>2] = $$02613$i$i;
-          $832 = ((($672)) + 12|0);
-          HEAP32[$832>>2] = $672;
-          $833 = ((($672)) + 8|0);
-          HEAP32[$833>>2] = $672;
-          break L238;
-         }
-        } while(0);
-        $834 = ((($$0261$lcssa$i$i)) + 8|0);
-        $835 = HEAP32[$834>>2]|0;
-        $836 = ((($835)) + 12|0);
-        HEAP32[$836>>2] = $672;
-        HEAP32[$834>>2] = $672;
-        $837 = ((($672)) + 8|0);
-        HEAP32[$837>>2] = $835;
-        $838 = ((($672)) + 12|0);
-        HEAP32[$838>>2] = $$0261$lcssa$i$i;
-        $839 = ((($672)) + 24|0);
-        HEAP32[$839>>2] = 0;
-       }
-      } while(0);
-      $968 = ((($660)) + 8|0);
-      $$0 = $968;
-      STACKTOP = sp;return ($$0|0);
-     }
-    }
-    $$0$i$i$i = (73160);
-    while(1) {
-     $840 = HEAP32[$$0$i$i$i>>2]|0;
-     $841 = ($840>>>0)>($585>>>0);
-     if (!($841)) {
-      $842 = ((($$0$i$i$i)) + 4|0);
-      $843 = HEAP32[$842>>2]|0;
-      $844 = (($840) + ($843)|0);
-      $845 = ($844>>>0)>($585>>>0);
-      if ($845) {
-       break;
-      }
-     }
-     $846 = ((($$0$i$i$i)) + 8|0);
-     $847 = HEAP32[$846>>2]|0;
-     $$0$i$i$i = $847;
-    }
-    $848 = ((($844)) + -47|0);
-    $849 = ((($848)) + 8|0);
-    $850 = $849;
-    $851 = $850 & 7;
-    $852 = ($851|0)==(0);
-    $853 = (0 - ($850))|0;
-    $854 = $853 & 7;
-    $855 = $852 ? 0 : $854;
-    $856 = (($848) + ($855)|0);
-    $857 = ((($585)) + 16|0);
-    $858 = ($856>>>0)<($857>>>0);
-    $859 = $858 ? $585 : $856;
-    $860 = ((($859)) + 8|0);
-    $861 = ((($859)) + 24|0);
-    $862 = (($$723947$i) + -40)|0;
-    $863 = ((($$748$i)) + 8|0);
-    $864 = $863;
-    $865 = $864 & 7;
-    $866 = ($865|0)==(0);
-    $867 = (0 - ($864))|0;
-    $868 = $867 & 7;
-    $869 = $866 ? 0 : $868;
-    $870 = (($$748$i) + ($869)|0);
-    $871 = (($862) - ($869))|0;
-    HEAP32[(72736)>>2] = $870;
-    HEAP32[(72724)>>2] = $871;
-    $872 = $871 | 1;
-    $873 = ((($870)) + 4|0);
-    HEAP32[$873>>2] = $872;
-    $874 = (($$748$i) + ($862)|0);
-    $875 = ((($874)) + 4|0);
-    HEAP32[$875>>2] = 40;
-    $876 = HEAP32[(73200)>>2]|0;
-    HEAP32[(72740)>>2] = $876;
-    $877 = ((($859)) + 4|0);
-    HEAP32[$877>>2] = 27;
-    
;HEAP32[$860>>2]=HEAP32[(73160)>>2]|0;HEAP32[$860+4>>2]=HEAP32[(73160)+4>>2]|0;HEAP32[$860+8>>2]=HEAP32[(73160)+8>>2]|0;HEAP32[$860+12>>2]=HEAP32[(73160)+12>>2]|0;
-    HEAP32[(73160)>>2] = $$748$i;
-    HEAP32[(73164)>>2] = $$723947$i;
-    HEAP32[(73172)>>2] = 0;
-    HEAP32[(73168)>>2] = $860;
-    $879 = $861;
-    while(1) {
-     $878 = ((($879)) + 4|0);
-     HEAP32[$878>>2] = 7;
-     $880 = ((($879)) + 8|0);
-     $881 = ($880>>>0)<($844>>>0);
-     if ($881) {
-      $879 = $878;
-     } else {
-      break;
-     }
-    }
-    $882 = ($859|0)==($585|0);
-    if (!($882)) {
-     $883 = $859;
-     $884 = $585;
-     $885 = (($883) - ($884))|0;
-     $886 = HEAP32[$877>>2]|0;
-     $887 = $886 & -2;
-     HEAP32[$877>>2] = $887;
-     $888 = $885 | 1;
-     $889 = ((($585)) + 4|0);
-     HEAP32[$889>>2] = $888;
-     HEAP32[$859>>2] = $885;
-     $890 = $885 >>> 3;
-     $891 = ($885>>>0)<(256);
-     if ($891) {
-      $892 = $890 << 1;
-      $893 = (72752 + ($892<<2)|0);
-      $894 = HEAP32[18178]|0;
-      $895 = 1 << $890;
-      $896 = $894 & $895;
-      $897 = ($896|0)==(0);
-      if ($897) {
-       $898 = $894 | $895;
-       HEAP32[18178] = $898;
-       $$pre$i$i = ((($893)) + 8|0);
-       $$0206$i$i = $893;$$pre$phi$i$iZ2D = $$pre$i$i;
-      } else {
-       $899 = ((($893)) + 8|0);
-       $900 = HEAP32[$899>>2]|0;
-       $$0206$i$i = $900;$$pre$phi$i$iZ2D = $899;
-      }
-      HEAP32[$$pre$phi$i$iZ2D>>2] = $585;
-      $901 = ((($$0206$i$i)) + 12|0);
-      HEAP32[$901>>2] = $585;
-      $902 = ((($585)) + 8|0);
-      HEAP32[$902>>2] = $$0206$i$i;
-      $903 = ((($585)) + 12|0);
-      HEAP32[$903>>2] = $893;
-      break;
-     }
-     $904 = $885 >>> 8;
-     $905 = ($904|0)==(0);
-     if ($905) {
-      $$0207$i$i = 0;
-     } else {
-      $906 = ($885>>>0)>(16777215);
-      if ($906) {
-       $$0207$i$i = 31;
-      } else {
-       $907 = (($904) + 1048320)|0;
-       $908 = $907 >>> 16;
-       $909 = $908 & 8;
-       $910 = $904 << $909;
-       $911 = (($910) + 520192)|0;
-       $912 = $911 >>> 16;
-       $913 = $912 & 4;
-       $914 = $913 | $909;
-       $915 = $910 << $913;
-       $916 = (($915) + 245760)|0;
-       $917 = $916 >>> 16;
-       $918 = $917 & 2;
-       $919 = $914 | $918;
-       $920 = (14 - ($919))|0;
-       $921 = $915 << $918;
-       $922 = $921 >>> 15;
-       $923 = (($920) + ($922))|0;
-       $924 = $923 << 1;
-       $925 = (($923) + 7)|0;
-       $926 = $885 >>> $925;
-       $927 = $926 & 1;
-       $928 = $927 | $924;
-       $$0207$i$i = $928;
-      }
-     }
-     $929 = (73016 + ($$0207$i$i<<2)|0);
-     $930 = ((($585)) + 28|0);
-     HEAP32[$930>>2] = $$0207$i$i;
-     $931 = ((($585)) + 20|0);
-     HEAP32[$931>>2] = 0;
-     HEAP32[$857>>2] = 0;
-     $932 = HEAP32[(72716)>>2]|0;
-     $933 = 1 << $$0207$i$i;
-     $934 = $932 & $933;
-     $935 = ($934|0)==(0);
-     if ($935) {
-      $936 = $932 | $933;
-      HEAP32[(72716)>>2] = $936;
-      HEAP32[$929>>2] = $585;
-      $937 = ((($585)) + 24|0);
-      HEAP32[$937>>2] = $929;
-      $938 = ((($585)) + 12|0);
-      HEAP32[$938>>2] = $585;
-      $939 = ((($585)) + 8|0);
-      HEAP32[$939>>2] = $585;
-      break;
-     }
-     $940 = HEAP32[$929>>2]|0;
-     $941 = ((($940)) + 4|0);
-     $942 = HEAP32[$941>>2]|0;
-     $943 = $942 & -8;
-     $944 = ($943|0)==($885|0);
-     L325: do {
-      if ($944) {
-       $$0202$lcssa$i$i = $940;
-      } else {
-       $945 = ($$0207$i$i|0)==(31);
-       $946 = $$0207$i$i >>> 1;
-       $947 = (25 - ($946))|0;
-       $948 = $945 ? 0 : $947;
-       $949 = $885 << $948;
-       $$02014$i$i = $949;$$02023$i$i = $940;
-       while(1) {
-        $956 = $$02014$i$i >>> 31;
-        $957 = (((($$02023$i$i)) + 16|0) + ($956<<2)|0);
-        $952 = HEAP32[$957>>2]|0;
-        $958 = ($952|0)==(0|0);
-        if ($958) {
-         break;
-        }
-        $950 = $$02014$i$i << 1;
-        $951 = ((($952)) + 4|0);
-        $953 = HEAP32[$951>>2]|0;
-        $954 = $953 & -8;
-        $955 = ($954|0)==($885|0);
-        if ($955) {
-         $$0202$lcssa$i$i = $952;
-         break L325;
-        } else {
-         $$02014$i$i = $950;$$02023$i$i = $952;
-        }
-       }
-       HEAP32[$957>>2] = $585;
-       $959 = ((($585)) + 24|0);
-       HEAP32[$959>>2] = $$02023$i$i;
-       $960 = ((($585)) + 12|0);
-       HEAP32[$960>>2] = $585;
-       $961 = ((($585)) + 8|0);
-       HEAP32[$961>>2] = $585;
-       break L215;
-      }
-     } while(0);
-     $962 = ((($$0202$lcssa$i$i)) + 8|0);
-     $963 = HEAP32[$962>>2]|0;
-     $964 = ((($963)) + 12|0);
-     HEAP32[$964>>2] = $585;
-     HEAP32[$962>>2] = $585;
-     $965 = ((($585)) + 8|0);
-     HEAP32[$965>>2] = $963;
-     $966 = ((($585)) + 12|0);
-     HEAP32[$966>>2] = $$0202$lcssa$i$i;
-     $967 = ((($585)) + 24|0);
-     HEAP32[$967>>2] = 0;
-    }
-   }
-  } while(0);
-  $969 = HEAP32[(72724)>>2]|0;
-  $970 = ($969>>>0)>($$0192>>>0);
-  if ($970) {
-   $971 = (($969) - ($$0192))|0;
-   HEAP32[(72724)>>2] = $971;
-   $972 = HEAP32[(72736)>>2]|0;
-   $973 = (($972) + ($$0192)|0);
-   HEAP32[(72736)>>2] = $973;
-   $974 = $971 | 1;
-   $975 = ((($973)) + 4|0);
-   HEAP32[$975>>2] = $974;
-   $976 = $$0192 | 3;
-   $977 = ((($972)) + 4|0);
-   HEAP32[$977>>2] = $976;
-   $978 = ((($972)) + 8|0);
-   $$0 = $978;
-   STACKTOP = sp;return ($$0|0);
-  }
- }
- $979 = (___errno_location()|0);
- HEAP32[$979>>2] = 12;
- $$0 = 0;
- STACKTOP = sp;return ($$0|0);
-}
-function _free($0) {
- $0 = $0|0;
- var $$0194$i = 0, $$0194$in$i = 0, $$0346381 = 0, $$0347$lcssa = 0, $$0347380 
= 0, $$0359 = 0, $$0366 = 0, $$1 = 0, $$1345 = 0, $$1350 = 0, $$1350$be = 0, 
$$1350$ph = 0, $$1353 = 0, $$1353$be = 0, $$1353$ph = 0, $$1361 = 0, $$1361$be 
= 0, $$1361$ph = 0, $$1365 = 0, $$1365$be = 0;
- var $$1365$ph = 0, $$2 = 0, $$3 = 0, $$3363 = 0, $$pre = 0, $$pre$phiZ2D = 0, 
$$sink = 0, $$sink395 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 
= 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0;
- var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 
= 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0;
- var $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 
= 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0;
- var $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 
= 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 
= 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0;
- var $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 
= 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 
= 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0;
- var $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, 
$189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, 
$196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0;
- var $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 
= 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0;
- var $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 
= 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0;
- var $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0;
- var $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, $cond371 = 0, $cond372 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- if ($1) {
-  return;
- }
- $2 = ((($0)) + -8|0);
- $3 = HEAP32[(72728)>>2]|0;
- $4 = ((($0)) + -4|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = $5 & -8;
- $7 = (($2) + ($6)|0);
- $8 = $5 & 1;
- $9 = ($8|0)==(0);
- do {
-  if ($9) {
-   $10 = HEAP32[$2>>2]|0;
-   $11 = $5 & 3;
-   $12 = ($11|0)==(0);
-   if ($12) {
-    return;
-   }
-   $13 = (0 - ($10))|0;
-   $14 = (($2) + ($13)|0);
-   $15 = (($10) + ($6))|0;
-   $16 = ($14>>>0)<($3>>>0);
-   if ($16) {
-    return;
-   }
-   $17 = HEAP32[(72732)>>2]|0;
-   $18 = ($17|0)==($14|0);
-   if ($18) {
-    $79 = ((($7)) + 4|0);
-    $80 = HEAP32[$79>>2]|0;
-    $81 = $80 & 3;
-    $82 = ($81|0)==(3);
-    if (!($82)) {
-     $$1 = $14;$$1345 = $15;$88 = $14;
-     break;
-    }
-    $83 = (($14) + ($15)|0);
-    $84 = ((($14)) + 4|0);
-    $85 = $15 | 1;
-    $86 = $80 & -2;
-    HEAP32[(72720)>>2] = $15;
-    HEAP32[$79>>2] = $86;
-    HEAP32[$84>>2] = $85;
-    HEAP32[$83>>2] = $15;
-    return;
-   }
-   $19 = $10 >>> 3;
-   $20 = ($10>>>0)<(256);
-   if ($20) {
-    $21 = ((($14)) + 8|0);
-    $22 = HEAP32[$21>>2]|0;
-    $23 = ((($14)) + 12|0);
-    $24 = HEAP32[$23>>2]|0;
-    $25 = ($24|0)==($22|0);
-    if ($25) {
-     $26 = 1 << $19;
-     $27 = $26 ^ -1;
-     $28 = HEAP32[18178]|0;
-     $29 = $28 & $27;
-     HEAP32[18178] = $29;
-     $$1 = $14;$$1345 = $15;$88 = $14;
-     break;
-    } else {
-     $30 = ((($22)) + 12|0);
-     HEAP32[$30>>2] = $24;
-     $31 = ((($24)) + 8|0);
-     HEAP32[$31>>2] = $22;
-     $$1 = $14;$$1345 = $15;$88 = $14;
-     break;
-    }
-   }
-   $32 = ((($14)) + 24|0);
-   $33 = HEAP32[$32>>2]|0;
-   $34 = ((($14)) + 12|0);
-   $35 = HEAP32[$34>>2]|0;
-   $36 = ($35|0)==($14|0);
-   do {
-    if ($36) {
-     $41 = ((($14)) + 16|0);
-     $42 = ((($41)) + 4|0);
-     $43 = HEAP32[$42>>2]|0;
-     $44 = ($43|0)==(0|0);
-     if ($44) {
-      $45 = HEAP32[$41>>2]|0;
-      $46 = ($45|0)==(0|0);
-      if ($46) {
-       $$3 = 0;
-       break;
-      } else {
-       $$1350$ph = $45;$$1353$ph = $41;
-      }
-     } else {
-      $$1350$ph = $43;$$1353$ph = $42;
-     }
-     $$1350 = $$1350$ph;$$1353 = $$1353$ph;
-     while(1) {
-      $47 = ((($$1350)) + 20|0);
-      $48 = HEAP32[$47>>2]|0;
-      $49 = ($48|0)==(0|0);
-      if ($49) {
-       $50 = ((($$1350)) + 16|0);
-       $51 = HEAP32[$50>>2]|0;
-       $52 = ($51|0)==(0|0);
-       if ($52) {
-        break;
-       } else {
-        $$1350$be = $51;$$1353$be = $50;
-       }
-      } else {
-       $$1350$be = $48;$$1353$be = $47;
-      }
-      $$1350 = $$1350$be;$$1353 = $$1353$be;
-     }
-     HEAP32[$$1353>>2] = 0;
-     $$3 = $$1350;
-    } else {
-     $37 = ((($14)) + 8|0);
-     $38 = HEAP32[$37>>2]|0;
-     $39 = ((($38)) + 12|0);
-     HEAP32[$39>>2] = $35;
-     $40 = ((($35)) + 8|0);
-     HEAP32[$40>>2] = $38;
-     $$3 = $35;
-    }
-   } while(0);
-   $53 = ($33|0)==(0|0);
-   if ($53) {
-    $$1 = $14;$$1345 = $15;$88 = $14;
-   } else {
-    $54 = ((($14)) + 28|0);
-    $55 = HEAP32[$54>>2]|0;
-    $56 = (73016 + ($55<<2)|0);
-    $57 = HEAP32[$56>>2]|0;
-    $58 = ($57|0)==($14|0);
-    if ($58) {
-     HEAP32[$56>>2] = $$3;
-     $cond371 = ($$3|0)==(0|0);
-     if ($cond371) {
-      $59 = 1 << $55;
-      $60 = $59 ^ -1;
-      $61 = HEAP32[(72716)>>2]|0;
-      $62 = $61 & $60;
-      HEAP32[(72716)>>2] = $62;
-      $$1 = $14;$$1345 = $15;$88 = $14;
-      break;
-     }
-    } else {
-     $63 = ((($33)) + 16|0);
-     $64 = HEAP32[$63>>2]|0;
-     $65 = ($64|0)==($14|0);
-     $66 = ((($33)) + 20|0);
-     $$sink = $65 ? $63 : $66;
-     HEAP32[$$sink>>2] = $$3;
-     $67 = ($$3|0)==(0|0);
-     if ($67) {
-      $$1 = $14;$$1345 = $15;$88 = $14;
-      break;
-     }
-    }
-    $68 = ((($$3)) + 24|0);
-    HEAP32[$68>>2] = $33;
-    $69 = ((($14)) + 16|0);
-    $70 = HEAP32[$69>>2]|0;
-    $71 = ($70|0)==(0|0);
-    if (!($71)) {
-     $72 = ((($$3)) + 16|0);
-     HEAP32[$72>>2] = $70;
-     $73 = ((($70)) + 24|0);
-     HEAP32[$73>>2] = $$3;
-    }
-    $74 = ((($69)) + 4|0);
-    $75 = HEAP32[$74>>2]|0;
-    $76 = ($75|0)==(0|0);
-    if ($76) {
-     $$1 = $14;$$1345 = $15;$88 = $14;
-    } else {
-     $77 = ((($$3)) + 20|0);
-     HEAP32[$77>>2] = $75;
-     $78 = ((($75)) + 24|0);
-     HEAP32[$78>>2] = $$3;
-     $$1 = $14;$$1345 = $15;$88 = $14;
-    }
-   }
-  } else {
-   $$1 = $2;$$1345 = $6;$88 = $2;
-  }
- } while(0);
- $87 = ($88>>>0)<($7>>>0);
- if (!($87)) {
-  return;
- }
- $89 = ((($7)) + 4|0);
- $90 = HEAP32[$89>>2]|0;
- $91 = $90 & 1;
- $92 = ($91|0)==(0);
- if ($92) {
-  return;
- }
- $93 = $90 & 2;
- $94 = ($93|0)==(0);
- if ($94) {
-  $95 = HEAP32[(72736)>>2]|0;
-  $96 = ($95|0)==($7|0);
-  if ($96) {
-   $97 = HEAP32[(72724)>>2]|0;
-   $98 = (($97) + ($$1345))|0;
-   HEAP32[(72724)>>2] = $98;
-   HEAP32[(72736)>>2] = $$1;
-   $99 = $98 | 1;
-   $100 = ((($$1)) + 4|0);
-   HEAP32[$100>>2] = $99;
-   $101 = HEAP32[(72732)>>2]|0;
-   $102 = ($$1|0)==($101|0);
-   if (!($102)) {
-    return;
-   }
-   HEAP32[(72732)>>2] = 0;
-   HEAP32[(72720)>>2] = 0;
-   return;
-  }
-  $103 = HEAP32[(72732)>>2]|0;
-  $104 = ($103|0)==($7|0);
-  if ($104) {
-   $105 = HEAP32[(72720)>>2]|0;
-   $106 = (($105) + ($$1345))|0;
-   HEAP32[(72720)>>2] = $106;
-   HEAP32[(72732)>>2] = $88;
-   $107 = $106 | 1;
-   $108 = ((($$1)) + 4|0);
-   HEAP32[$108>>2] = $107;
-   $109 = (($88) + ($106)|0);
-   HEAP32[$109>>2] = $106;
-   return;
-  }
-  $110 = $90 & -8;
-  $111 = (($110) + ($$1345))|0;
-  $112 = $90 >>> 3;
-  $113 = ($90>>>0)<(256);
-  do {
-   if ($113) {
-    $114 = ((($7)) + 8|0);
-    $115 = HEAP32[$114>>2]|0;
-    $116 = ((($7)) + 12|0);
-    $117 = HEAP32[$116>>2]|0;
-    $118 = ($117|0)==($115|0);
-    if ($118) {
-     $119 = 1 << $112;
-     $120 = $119 ^ -1;
-     $121 = HEAP32[18178]|0;
-     $122 = $121 & $120;
-     HEAP32[18178] = $122;
-     break;
-    } else {
-     $123 = ((($115)) + 12|0);
-     HEAP32[$123>>2] = $117;
-     $124 = ((($117)) + 8|0);
-     HEAP32[$124>>2] = $115;
-     break;
-    }
-   } else {
-    $125 = ((($7)) + 24|0);
-    $126 = HEAP32[$125>>2]|0;
-    $127 = ((($7)) + 12|0);
-    $128 = HEAP32[$127>>2]|0;
-    $129 = ($128|0)==($7|0);
-    do {
-     if ($129) {
-      $134 = ((($7)) + 16|0);
-      $135 = ((($134)) + 4|0);
-      $136 = HEAP32[$135>>2]|0;
-      $137 = ($136|0)==(0|0);
-      if ($137) {
-       $138 = HEAP32[$134>>2]|0;
-       $139 = ($138|0)==(0|0);
-       if ($139) {
-        $$3363 = 0;
-        break;
-       } else {
-        $$1361$ph = $138;$$1365$ph = $134;
-       }
-      } else {
-       $$1361$ph = $136;$$1365$ph = $135;
-      }
-      $$1361 = $$1361$ph;$$1365 = $$1365$ph;
-      while(1) {
-       $140 = ((($$1361)) + 20|0);
-       $141 = HEAP32[$140>>2]|0;
-       $142 = ($141|0)==(0|0);
-       if ($142) {
-        $143 = ((($$1361)) + 16|0);
-        $144 = HEAP32[$143>>2]|0;
-        $145 = ($144|0)==(0|0);
-        if ($145) {
-         break;
-        } else {
-         $$1361$be = $144;$$1365$be = $143;
-        }
-       } else {
-        $$1361$be = $141;$$1365$be = $140;
-       }
-       $$1361 = $$1361$be;$$1365 = $$1365$be;
-      }
-      HEAP32[$$1365>>2] = 0;
-      $$3363 = $$1361;
-     } else {
-      $130 = ((($7)) + 8|0);
-      $131 = HEAP32[$130>>2]|0;
-      $132 = ((($131)) + 12|0);
-      HEAP32[$132>>2] = $128;
-      $133 = ((($128)) + 8|0);
-      HEAP32[$133>>2] = $131;
-      $$3363 = $128;
-     }
-    } while(0);
-    $146 = ($126|0)==(0|0);
-    if (!($146)) {
-     $147 = ((($7)) + 28|0);
-     $148 = HEAP32[$147>>2]|0;
-     $149 = (73016 + ($148<<2)|0);
-     $150 = HEAP32[$149>>2]|0;
-     $151 = ($150|0)==($7|0);
-     if ($151) {
-      HEAP32[$149>>2] = $$3363;
-      $cond372 = ($$3363|0)==(0|0);
-      if ($cond372) {
-       $152 = 1 << $148;
-       $153 = $152 ^ -1;
-       $154 = HEAP32[(72716)>>2]|0;
-       $155 = $154 & $153;
-       HEAP32[(72716)>>2] = $155;
-       break;
-      }
-     } else {
-      $156 = ((($126)) + 16|0);
-      $157 = HEAP32[$156>>2]|0;
-      $158 = ($157|0)==($7|0);
-      $159 = ((($126)) + 20|0);
-      $$sink395 = $158 ? $156 : $159;
-      HEAP32[$$sink395>>2] = $$3363;
-      $160 = ($$3363|0)==(0|0);
-      if ($160) {
-       break;
-      }
-     }
-     $161 = ((($$3363)) + 24|0);
-     HEAP32[$161>>2] = $126;
-     $162 = ((($7)) + 16|0);
-     $163 = HEAP32[$162>>2]|0;
-     $164 = ($163|0)==(0|0);
-     if (!($164)) {
-      $165 = ((($$3363)) + 16|0);
-      HEAP32[$165>>2] = $163;
-      $166 = ((($163)) + 24|0);
-      HEAP32[$166>>2] = $$3363;
-     }
-     $167 = ((($162)) + 4|0);
-     $168 = HEAP32[$167>>2]|0;
-     $169 = ($168|0)==(0|0);
-     if (!($169)) {
-      $170 = ((($$3363)) + 20|0);
-      HEAP32[$170>>2] = $168;
-      $171 = ((($168)) + 24|0);
-      HEAP32[$171>>2] = $$3363;
-     }
-    }
-   }
-  } while(0);
-  $172 = $111 | 1;
-  $173 = ((($$1)) + 4|0);
-  HEAP32[$173>>2] = $172;
-  $174 = (($88) + ($111)|0);
-  HEAP32[$174>>2] = $111;
-  $175 = HEAP32[(72732)>>2]|0;
-  $176 = ($$1|0)==($175|0);
-  if ($176) {
-   HEAP32[(72720)>>2] = $111;
-   return;
-  } else {
-   $$2 = $111;
-  }
- } else {
-  $177 = $90 & -2;
-  HEAP32[$89>>2] = $177;
-  $178 = $$1345 | 1;
-  $179 = ((($$1)) + 4|0);
-  HEAP32[$179>>2] = $178;
-  $180 = (($88) + ($$1345)|0);
-  HEAP32[$180>>2] = $$1345;
-  $$2 = $$1345;
- }
- $181 = $$2 >>> 3;
- $182 = ($$2>>>0)<(256);
- if ($182) {
-  $183 = $181 << 1;
-  $184 = (72752 + ($183<<2)|0);
-  $185 = HEAP32[18178]|0;
-  $186 = 1 << $181;
-  $187 = $185 & $186;
-  $188 = ($187|0)==(0);
-  if ($188) {
-   $189 = $185 | $186;
-   HEAP32[18178] = $189;
-   $$pre = ((($184)) + 8|0);
-   $$0366 = $184;$$pre$phiZ2D = $$pre;
-  } else {
-   $190 = ((($184)) + 8|0);
-   $191 = HEAP32[$190>>2]|0;
-   $$0366 = $191;$$pre$phiZ2D = $190;
-  }
-  HEAP32[$$pre$phiZ2D>>2] = $$1;
-  $192 = ((($$0366)) + 12|0);
-  HEAP32[$192>>2] = $$1;
-  $193 = ((($$1)) + 8|0);
-  HEAP32[$193>>2] = $$0366;
-  $194 = ((($$1)) + 12|0);
-  HEAP32[$194>>2] = $184;
-  return;
- }
- $195 = $$2 >>> 8;
- $196 = ($195|0)==(0);
- if ($196) {
-  $$0359 = 0;
- } else {
-  $197 = ($$2>>>0)>(16777215);
-  if ($197) {
-   $$0359 = 31;
-  } else {
-   $198 = (($195) + 1048320)|0;
-   $199 = $198 >>> 16;
-   $200 = $199 & 8;
-   $201 = $195 << $200;
-   $202 = (($201) + 520192)|0;
-   $203 = $202 >>> 16;
-   $204 = $203 & 4;
-   $205 = $204 | $200;
-   $206 = $201 << $204;
-   $207 = (($206) + 245760)|0;
-   $208 = $207 >>> 16;
-   $209 = $208 & 2;
-   $210 = $205 | $209;
-   $211 = (14 - ($210))|0;
-   $212 = $206 << $209;
-   $213 = $212 >>> 15;
-   $214 = (($211) + ($213))|0;
-   $215 = $214 << 1;
-   $216 = (($214) + 7)|0;
-   $217 = $$2 >>> $216;
-   $218 = $217 & 1;
-   $219 = $218 | $215;
-   $$0359 = $219;
-  }
- }
- $220 = (73016 + ($$0359<<2)|0);
- $221 = ((($$1)) + 28|0);
- HEAP32[$221>>2] = $$0359;
- $222 = ((($$1)) + 16|0);
- $223 = ((($$1)) + 20|0);
- HEAP32[$223>>2] = 0;
- HEAP32[$222>>2] = 0;
- $224 = HEAP32[(72716)>>2]|0;
- $225 = 1 << $$0359;
- $226 = $224 & $225;
- $227 = ($226|0)==(0);
- L112: do {
-  if ($227) {
-   $228 = $224 | $225;
-   HEAP32[(72716)>>2] = $228;
-   HEAP32[$220>>2] = $$1;
-   $229 = ((($$1)) + 24|0);
-   HEAP32[$229>>2] = $220;
-   $230 = ((($$1)) + 12|0);
-   HEAP32[$230>>2] = $$1;
-   $231 = ((($$1)) + 8|0);
-   HEAP32[$231>>2] = $$1;
-  } else {
-   $232 = HEAP32[$220>>2]|0;
-   $233 = ((($232)) + 4|0);
-   $234 = HEAP32[$233>>2]|0;
-   $235 = $234 & -8;
-   $236 = ($235|0)==($$2|0);
-   L115: do {
-    if ($236) {
-     $$0347$lcssa = $232;
-    } else {
-     $237 = ($$0359|0)==(31);
-     $238 = $$0359 >>> 1;
-     $239 = (25 - ($238))|0;
-     $240 = $237 ? 0 : $239;
-     $241 = $$2 << $240;
-     $$0346381 = $241;$$0347380 = $232;
-     while(1) {
-      $248 = $$0346381 >>> 31;
-      $249 = (((($$0347380)) + 16|0) + ($248<<2)|0);
-      $244 = HEAP32[$249>>2]|0;
-      $250 = ($244|0)==(0|0);
-      if ($250) {
-       break;
-      }
-      $242 = $$0346381 << 1;
-      $243 = ((($244)) + 4|0);
-      $245 = HEAP32[$243>>2]|0;
-      $246 = $245 & -8;
-      $247 = ($246|0)==($$2|0);
-      if ($247) {
-       $$0347$lcssa = $244;
-       break L115;
-      } else {
-       $$0346381 = $242;$$0347380 = $244;
-      }
-     }
-     HEAP32[$249>>2] = $$1;
-     $251 = ((($$1)) + 24|0);
-     HEAP32[$251>>2] = $$0347380;
-     $252 = ((($$1)) + 12|0);
-     HEAP32[$252>>2] = $$1;
-     $253 = ((($$1)) + 8|0);
-     HEAP32[$253>>2] = $$1;
-     break L112;
-    }
-   } while(0);
-   $254 = ((($$0347$lcssa)) + 8|0);
-   $255 = HEAP32[$254>>2]|0;
-   $256 = ((($255)) + 12|0);
-   HEAP32[$256>>2] = $$1;
-   HEAP32[$254>>2] = $$1;
-   $257 = ((($$1)) + 8|0);
-   HEAP32[$257>>2] = $255;
-   $258 = ((($$1)) + 12|0);
-   HEAP32[$258>>2] = $$0347$lcssa;
-   $259 = ((($$1)) + 24|0);
-   HEAP32[$259>>2] = 0;
-  }
- } while(0);
- $260 = HEAP32[(72744)>>2]|0;
- $261 = (($260) + -1)|0;
- HEAP32[(72744)>>2] = $261;
- $262 = ($261|0)==(0);
- if (!($262)) {
-  return;
- }
- $$0194$in$i = (73168);
- while(1) {
-  $$0194$i = HEAP32[$$0194$in$i>>2]|0;
-  $263 = ($$0194$i|0)==(0|0);
-  $264 = ((($$0194$i)) + 8|0);
-  if ($263) {
-   break;
-  } else {
-   $$0194$in$i = $264;
-  }
- }
- HEAP32[(72744)>>2] = -1;
- return;
-}
-function _calloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0);
- if ($2) {
-  $$0 = 0;
- } else {
-  $3 = Math_imul($1, $0)|0;
-  $4 = $1 | $0;
-  $5 = ($4>>>0)>(65535);
-  if ($5) {
-   $6 = (($3>>>0) / ($0>>>0))&-1;
-   $7 = ($6|0)==($1|0);
-   $spec$select = $7 ? $3 : -1;
-   $$0 = $spec$select;
-  } else {
-   $$0 = $3;
-  }
- }
- $8 = (_malloc($$0)|0);
- $9 = ($8|0)==(0|0);
- if ($9) {
-  return ($8|0);
- }
- $10 = ((($8)) + -4|0);
- $11 = HEAP32[$10>>2]|0;
- $12 = $11 & 3;
- $13 = ($12|0)==(0);
- if ($13) {
-  return ($8|0);
- }
- (_memset(($8|0),0,($$0|0))|0);
- return ($8|0);
-}
-function _realloc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$3 = 0, $4 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $3 = (_malloc($1)|0);
-  $$1 = $3;
-  return ($$1|0);
- }
- $4 = ($1>>>0)>(4294967231);
- if ($4) {
-  $5 = (___errno_location()|0);
-  HEAP32[$5>>2] = 12;
-  $$1 = 0;
-  return ($$1|0);
- }
- $6 = ($1>>>0)<(11);
- $7 = (($1) + 11)|0;
- $8 = $7 & -8;
- $9 = $6 ? 16 : $8;
- $10 = ((($0)) + -8|0);
- $11 = (_try_realloc_chunk($10,$9)|0);
- $12 = ($11|0)==(0|0);
- if (!($12)) {
-  $13 = ((($11)) + 8|0);
-  $$1 = $13;
-  return ($$1|0);
- }
- $14 = (_malloc($1)|0);
- $15 = ($14|0)==(0|0);
- if ($15) {
-  $$1 = 0;
-  return ($$1|0);
- }
- $16 = ((($0)) + -4|0);
- $17 = HEAP32[$16>>2]|0;
- $18 = $17 & -8;
- $19 = $17 & 3;
- $20 = ($19|0)==(0);
- $21 = $20 ? 8 : 4;
- $22 = (($18) - ($21))|0;
- $23 = ($22>>>0)<($1>>>0);
- $24 = $23 ? $22 : $1;
- (_memcpy(($14|0),($0|0),($24|0))|0);
- _free($0);
- $$1 = $14;
- return ($$1|0);
-}
-function _try_realloc_chunk($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$1245 = 0, $$1245$be = 0, $$1245$ph = 0, $$1248 = 0, $$1248$be = 0, 
$$1248$ph = 0, $$2 = 0, $$3 = 0, $$sink = 0, $10 = 0, $100 = 0, $101 = 0, $102 
= 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0;
- var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 
= 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 
= 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0;
- var $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 
= 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 
= 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0;
- var $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 
0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 
0, $28 = 0, $29 = 0, $3 = 0;
- var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0;
- var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cond = 
0, $storemerge = 0, $storemerge1 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 4|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = $3 & -8;
- $5 = (($0) + ($4)|0);
- $6 = $3 & 3;
- $7 = ($6|0)==(0);
- if ($7) {
-  $8 = ($1>>>0)<(256);
-  if ($8) {
-   $$2 = 0;
-   return ($$2|0);
-  }
-  $9 = (($1) + 4)|0;
-  $10 = ($4>>>0)<($9>>>0);
-  if (!($10)) {
-   $11 = (($4) - ($1))|0;
-   $12 = HEAP32[(73192)>>2]|0;
-   $13 = $12 << 1;
-   $14 = ($11>>>0)>($13>>>0);
-   if (!($14)) {
-    $$2 = $0;
-    return ($$2|0);
-   }
-  }
-  $$2 = 0;
-  return ($$2|0);
- }
- $15 = ($4>>>0)<($1>>>0);
- if (!($15)) {
-  $16 = (($4) - ($1))|0;
-  $17 = ($16>>>0)>(15);
-  if (!($17)) {
-   $$2 = $0;
-   return ($$2|0);
-  }
-  $18 = (($0) + ($1)|0);
-  $19 = $3 & 1;
-  $20 = $19 | $1;
-  $21 = $20 | 2;
-  HEAP32[$2>>2] = $21;
-  $22 = ((($18)) + 4|0);
-  $23 = $16 | 3;
-  HEAP32[$22>>2] = $23;
-  $24 = ((($5)) + 4|0);
-  $25 = HEAP32[$24>>2]|0;
-  $26 = $25 | 1;
-  HEAP32[$24>>2] = $26;
-  _dispose_chunk($18,$16);
-  $$2 = $0;
-  return ($$2|0);
- }
- $27 = HEAP32[(72736)>>2]|0;
- $28 = ($27|0)==($5|0);
- if ($28) {
-  $29 = HEAP32[(72724)>>2]|0;
-  $30 = (($29) + ($4))|0;
-  $31 = ($30>>>0)>($1>>>0);
-  $32 = (($30) - ($1))|0;
-  $33 = (($0) + ($1)|0);
-  if (!($31)) {
-   $$2 = 0;
-   return ($$2|0);
-  }
-  $34 = $32 | 1;
-  $35 = ((($33)) + 4|0);
-  $36 = $3 & 1;
-  $37 = $36 | $1;
-  $38 = $37 | 2;
-  HEAP32[$2>>2] = $38;
-  HEAP32[$35>>2] = $34;
-  HEAP32[(72736)>>2] = $33;
-  HEAP32[(72724)>>2] = $32;
-  $$2 = $0;
-  return ($$2|0);
- }
- $39 = HEAP32[(72732)>>2]|0;
- $40 = ($39|0)==($5|0);
- if ($40) {
-  $41 = HEAP32[(72720)>>2]|0;
-  $42 = (($41) + ($4))|0;
-  $43 = ($42>>>0)<($1>>>0);
-  if ($43) {
-   $$2 = 0;
-   return ($$2|0);
-  }
-  $44 = (($42) - ($1))|0;
-  $45 = ($44>>>0)>(15);
-  if ($45) {
-   $46 = (($0) + ($1)|0);
-   $47 = (($0) + ($42)|0);
-   $48 = $3 & 1;
-   $49 = $48 | $1;
-   $50 = $49 | 2;
-   HEAP32[$2>>2] = $50;
-   $51 = ((($46)) + 4|0);
-   $52 = $44 | 1;
-   HEAP32[$51>>2] = $52;
-   HEAP32[$47>>2] = $44;
-   $53 = ((($47)) + 4|0);
-   $54 = HEAP32[$53>>2]|0;
-   $55 = $54 & -2;
-   HEAP32[$53>>2] = $55;
-   $storemerge = $46;$storemerge1 = $44;
-  } else {
-   $56 = $3 & 1;
-   $57 = $56 | $42;
-   $58 = $57 | 2;
-   HEAP32[$2>>2] = $58;
-   $59 = (($0) + ($42)|0);
-   $60 = ((($59)) + 4|0);
-   $61 = HEAP32[$60>>2]|0;
-   $62 = $61 | 1;
-   HEAP32[$60>>2] = $62;
-   $storemerge = 0;$storemerge1 = 0;
-  }
-  HEAP32[(72720)>>2] = $storemerge1;
-  HEAP32[(72732)>>2] = $storemerge;
-  $$2 = $0;
-  return ($$2|0);
- }
- $63 = ((($5)) + 4|0);
- $64 = HEAP32[$63>>2]|0;
- $65 = $64 & 2;
- $66 = ($65|0)==(0);
- if (!($66)) {
-  $$2 = 0;
-  return ($$2|0);
- }
- $67 = $64 & -8;
- $68 = (($67) + ($4))|0;
- $69 = ($68>>>0)<($1>>>0);
- if ($69) {
-  $$2 = 0;
-  return ($$2|0);
- }
- $70 = (($68) - ($1))|0;
- $71 = $64 >>> 3;
- $72 = ($64>>>0)<(256);
- do {
-  if ($72) {
-   $73 = ((($5)) + 8|0);
-   $74 = HEAP32[$73>>2]|0;
-   $75 = ((($5)) + 12|0);
-   $76 = HEAP32[$75>>2]|0;
-   $77 = ($76|0)==($74|0);
-   if ($77) {
-    $78 = 1 << $71;
-    $79 = $78 ^ -1;
-    $80 = HEAP32[18178]|0;
-    $81 = $80 & $79;
-    HEAP32[18178] = $81;
-    break;
-   } else {
-    $82 = ((($74)) + 12|0);
-    HEAP32[$82>>2] = $76;
-    $83 = ((($76)) + 8|0);
-    HEAP32[$83>>2] = $74;
-    break;
-   }
-  } else {
-   $84 = ((($5)) + 24|0);
-   $85 = HEAP32[$84>>2]|0;
-   $86 = ((($5)) + 12|0);
-   $87 = HEAP32[$86>>2]|0;
-   $88 = ($87|0)==($5|0);
-   do {
-    if ($88) {
-     $93 = ((($5)) + 16|0);
-     $94 = ((($93)) + 4|0);
-     $95 = HEAP32[$94>>2]|0;
-     $96 = ($95|0)==(0|0);
-     if ($96) {
-      $97 = HEAP32[$93>>2]|0;
-      $98 = ($97|0)==(0|0);
-      if ($98) {
-       $$3 = 0;
-       break;
-      } else {
-       $$1245$ph = $97;$$1248$ph = $93;
-      }
-     } else {
-      $$1245$ph = $95;$$1248$ph = $94;
-     }
-     $$1245 = $$1245$ph;$$1248 = $$1248$ph;
-     while(1) {
-      $99 = ((($$1245)) + 20|0);
-      $100 = HEAP32[$99>>2]|0;
-      $101 = ($100|0)==(0|0);
-      if ($101) {
-       $102 = ((($$1245)) + 16|0);
-       $103 = HEAP32[$102>>2]|0;
-       $104 = ($103|0)==(0|0);
-       if ($104) {
-        break;
-       } else {
-        $$1245$be = $103;$$1248$be = $102;
-       }
-      } else {
-       $$1245$be = $100;$$1248$be = $99;
-      }
-      $$1245 = $$1245$be;$$1248 = $$1248$be;
-     }
-     HEAP32[$$1248>>2] = 0;
-     $$3 = $$1245;
-    } else {
-     $89 = ((($5)) + 8|0);
-     $90 = HEAP32[$89>>2]|0;
-     $91 = ((($90)) + 12|0);
-     HEAP32[$91>>2] = $87;
-     $92 = ((($87)) + 8|0);
-     HEAP32[$92>>2] = $90;
-     $$3 = $87;
-    }
-   } while(0);
-   $105 = ($85|0)==(0|0);
-   if (!($105)) {
-    $106 = ((($5)) + 28|0);
-    $107 = HEAP32[$106>>2]|0;
-    $108 = (73016 + ($107<<2)|0);
-    $109 = HEAP32[$108>>2]|0;
-    $110 = ($109|0)==($5|0);
-    if ($110) {
-     HEAP32[$108>>2] = $$3;
-     $cond = ($$3|0)==(0|0);
-     if ($cond) {
-      $111 = 1 << $107;
-      $112 = $111 ^ -1;
-      $113 = HEAP32[(72716)>>2]|0;
-      $114 = $113 & $112;
-      HEAP32[(72716)>>2] = $114;
-      break;
-     }
-    } else {
-     $115 = ((($85)) + 16|0);
-     $116 = HEAP32[$115>>2]|0;
-     $117 = ($116|0)==($5|0);
-     $118 = ((($85)) + 20|0);
-     $$sink = $117 ? $115 : $118;
-     HEAP32[$$sink>>2] = $$3;
-     $119 = ($$3|0)==(0|0);
-     if ($119) {
-      break;
-     }
-    }
-    $120 = ((($$3)) + 24|0);
-    HEAP32[$120>>2] = $85;
-    $121 = ((($5)) + 16|0);
-    $122 = HEAP32[$121>>2]|0;
-    $123 = ($122|0)==(0|0);
-    if (!($123)) {
-     $124 = ((($$3)) + 16|0);
-     HEAP32[$124>>2] = $122;
-     $125 = ((($122)) + 24|0);
-     HEAP32[$125>>2] = $$3;
-    }
-    $126 = ((($121)) + 4|0);
-    $127 = HEAP32[$126>>2]|0;
-    $128 = ($127|0)==(0|0);
-    if (!($128)) {
-     $129 = ((($$3)) + 20|0);
-     HEAP32[$129>>2] = $127;
-     $130 = ((($127)) + 24|0);
-     HEAP32[$130>>2] = $$3;
-    }
-   }
-  }
- } while(0);
- $131 = ($70>>>0)<(16);
- if ($131) {
-  $132 = $3 & 1;
-  $133 = $132 | $68;
-  $134 = $133 | 2;
-  HEAP32[$2>>2] = $134;
-  $135 = (($0) + ($68)|0);
-  $136 = ((($135)) + 4|0);
-  $137 = HEAP32[$136>>2]|0;
-  $138 = $137 | 1;
-  HEAP32[$136>>2] = $138;
-  $$2 = $0;
-  return ($$2|0);
- } else {
-  $139 = (($0) + ($1)|0);
-  $140 = $3 & 1;
-  $141 = $140 | $1;
-  $142 = $141 | 2;
-  HEAP32[$2>>2] = $142;
-  $143 = ((($139)) + 4|0);
-  $144 = $70 | 3;
-  HEAP32[$143>>2] = $144;
-  $145 = (($0) + ($68)|0);
-  $146 = ((($145)) + 4|0);
-  $147 = HEAP32[$146>>2]|0;
-  $148 = $147 | 1;
-  HEAP32[$146>>2] = $148;
-  _dispose_chunk($139,$70);
-  $$2 = $0;
-  return ($$2|0);
- }
- return (0)|0;
-}
-function _dispose_chunk($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$03649 = 0, $$0365$lcssa = 0, $$03658 = 0, $$0376 = 0, $$0383 = 0, $$1 = 
0, $$1363 = 0, $$1371 = 0, $$1371$be = 0, $$1371$ph = 0, $$1374 = 0, $$1374$be 
= 0, $$1374$ph = 0, $$1378 = 0, $$1378$be = 0, $$1378$ph = 0, $$1382 = 0, 
$$1382$be = 0, $$1382$ph = 0, $$2 = 0;
- var $$3 = 0, $$3380 = 0, $$pre = 0, $$pre$phiZ2D = 0, $$sink = 0, $$sink24 = 
0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 
0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0;
- var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, 
$119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0;
- var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, 
$137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, 
$144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0;
- var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 
= 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0;
- var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 
= 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0;
- var $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 
= 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 
= 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0;
- var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, 
$209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, 
$216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0;
- var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, 
$227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, 
$234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0;
- var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 
= 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $26 = 0, $27 = 
0, $28 = 0, $29 = 0, $3 = 0, $30 = 0;
- var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, 
$39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0;
- var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, 
$57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0;
- var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, 
$75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0;
- var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, 
$93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cond = 0, 
$cond4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (($0) + ($1)|0);
- $3 = ((($0)) + 4|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = $4 & 1;
- $6 = ($5|0)==(0);
- do {
-  if ($6) {
-   $7 = HEAP32[$0>>2]|0;
-   $8 = $4 & 3;
-   $9 = ($8|0)==(0);
-   if ($9) {
-    return;
-   }
-   $10 = (0 - ($7))|0;
-   $11 = (($0) + ($10)|0);
-   $12 = (($7) + ($1))|0;
-   $13 = HEAP32[(72732)>>2]|0;
-   $14 = ($13|0)==($11|0);
-   if ($14) {
-    $75 = ((($2)) + 4|0);
-    $76 = HEAP32[$75>>2]|0;
-    $77 = $76 & 3;
-    $78 = ($77|0)==(3);
-    if (!($78)) {
-     $$1 = $11;$$1363 = $12;
-     break;
-    }
-    $79 = ((($11)) + 4|0);
-    $80 = $12 | 1;
-    $81 = $76 & -2;
-    HEAP32[(72720)>>2] = $12;
-    HEAP32[$75>>2] = $81;
-    HEAP32[$79>>2] = $80;
-    HEAP32[$2>>2] = $12;
-    return;
-   }
-   $15 = $7 >>> 3;
-   $16 = ($7>>>0)<(256);
-   if ($16) {
-    $17 = ((($11)) + 8|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ((($11)) + 12|0);
-    $20 = HEAP32[$19>>2]|0;
-    $21 = ($20|0)==($18|0);
-    if ($21) {
-     $22 = 1 << $15;
-     $23 = $22 ^ -1;
-     $24 = HEAP32[18178]|0;
-     $25 = $24 & $23;
-     HEAP32[18178] = $25;
-     $$1 = $11;$$1363 = $12;
-     break;
-    } else {
-     $26 = ((($18)) + 12|0);
-     HEAP32[$26>>2] = $20;
-     $27 = ((($20)) + 8|0);
-     HEAP32[$27>>2] = $18;
-     $$1 = $11;$$1363 = $12;
-     break;
-    }
-   }
-   $28 = ((($11)) + 24|0);
-   $29 = HEAP32[$28>>2]|0;
-   $30 = ((($11)) + 12|0);
-   $31 = HEAP32[$30>>2]|0;
-   $32 = ($31|0)==($11|0);
-   do {
-    if ($32) {
-     $37 = ((($11)) + 16|0);
-     $38 = ((($37)) + 4|0);
-     $39 = HEAP32[$38>>2]|0;
-     $40 = ($39|0)==(0|0);
-     if ($40) {
-      $41 = HEAP32[$37>>2]|0;
-      $42 = ($41|0)==(0|0);
-      if ($42) {
-       $$3 = 0;
-       break;
-      } else {
-       $$1371$ph = $41;$$1374$ph = $37;
-      }
-     } else {
-      $$1371$ph = $39;$$1374$ph = $38;
-     }
-     $$1371 = $$1371$ph;$$1374 = $$1374$ph;
-     while(1) {
-      $43 = ((($$1371)) + 20|0);
-      $44 = HEAP32[$43>>2]|0;
-      $45 = ($44|0)==(0|0);
-      if ($45) {
-       $46 = ((($$1371)) + 16|0);
-       $47 = HEAP32[$46>>2]|0;
-       $48 = ($47|0)==(0|0);
-       if ($48) {
-        break;
-       } else {
-        $$1371$be = $47;$$1374$be = $46;
-       }
-      } else {
-       $$1371$be = $44;$$1374$be = $43;
-      }
-      $$1371 = $$1371$be;$$1374 = $$1374$be;
-     }
-     HEAP32[$$1374>>2] = 0;
-     $$3 = $$1371;
-    } else {
-     $33 = ((($11)) + 8|0);
-     $34 = HEAP32[$33>>2]|0;
-     $35 = ((($34)) + 12|0);
-     HEAP32[$35>>2] = $31;
-     $36 = ((($31)) + 8|0);
-     HEAP32[$36>>2] = $34;
-     $$3 = $31;
-    }
-   } while(0);
-   $49 = ($29|0)==(0|0);
-   if ($49) {
-    $$1 = $11;$$1363 = $12;
-   } else {
-    $50 = ((($11)) + 28|0);
-    $51 = HEAP32[$50>>2]|0;
-    $52 = (73016 + ($51<<2)|0);
-    $53 = HEAP32[$52>>2]|0;
-    $54 = ($53|0)==($11|0);
-    if ($54) {
-     HEAP32[$52>>2] = $$3;
-     $cond = ($$3|0)==(0|0);
-     if ($cond) {
-      $55 = 1 << $51;
-      $56 = $55 ^ -1;
-      $57 = HEAP32[(72716)>>2]|0;
-      $58 = $57 & $56;
-      HEAP32[(72716)>>2] = $58;
-      $$1 = $11;$$1363 = $12;
-      break;
-     }
-    } else {
-     $59 = ((($29)) + 16|0);
-     $60 = HEAP32[$59>>2]|0;
-     $61 = ($60|0)==($11|0);
-     $62 = ((($29)) + 20|0);
-     $$sink = $61 ? $59 : $62;
-     HEAP32[$$sink>>2] = $$3;
-     $63 = ($$3|0)==(0|0);
-     if ($63) {
-      $$1 = $11;$$1363 = $12;
-      break;
-     }
-    }
-    $64 = ((($$3)) + 24|0);
-    HEAP32[$64>>2] = $29;
-    $65 = ((($11)) + 16|0);
-    $66 = HEAP32[$65>>2]|0;
-    $67 = ($66|0)==(0|0);
-    if (!($67)) {
-     $68 = ((($$3)) + 16|0);
-     HEAP32[$68>>2] = $66;
-     $69 = ((($66)) + 24|0);
-     HEAP32[$69>>2] = $$3;
-    }
-    $70 = ((($65)) + 4|0);
-    $71 = HEAP32[$70>>2]|0;
-    $72 = ($71|0)==(0|0);
-    if ($72) {
-     $$1 = $11;$$1363 = $12;
-    } else {
-     $73 = ((($$3)) + 20|0);
-     HEAP32[$73>>2] = $71;
-     $74 = ((($71)) + 24|0);
-     HEAP32[$74>>2] = $$3;
-     $$1 = $11;$$1363 = $12;
-    }
-   }
-  } else {
-   $$1 = $0;$$1363 = $1;
-  }
- } while(0);
- $82 = ((($2)) + 4|0);
- $83 = HEAP32[$82>>2]|0;
- $84 = $83 & 2;
- $85 = ($84|0)==(0);
- if ($85) {
-  $86 = HEAP32[(72736)>>2]|0;
-  $87 = ($86|0)==($2|0);
-  if ($87) {
-   $88 = HEAP32[(72724)>>2]|0;
-   $89 = (($88) + ($$1363))|0;
-   HEAP32[(72724)>>2] = $89;
-   HEAP32[(72736)>>2] = $$1;
-   $90 = $89 | 1;
-   $91 = ((($$1)) + 4|0);
-   HEAP32[$91>>2] = $90;
-   $92 = HEAP32[(72732)>>2]|0;
-   $93 = ($$1|0)==($92|0);
-   if (!($93)) {
-    return;
-   }
-   HEAP32[(72732)>>2] = 0;
-   HEAP32[(72720)>>2] = 0;
-   return;
-  }
-  $94 = HEAP32[(72732)>>2]|0;
-  $95 = ($94|0)==($2|0);
-  if ($95) {
-   $96 = HEAP32[(72720)>>2]|0;
-   $97 = (($96) + ($$1363))|0;
-   HEAP32[(72720)>>2] = $97;
-   HEAP32[(72732)>>2] = $$1;
-   $98 = $97 | 1;
-   $99 = ((($$1)) + 4|0);
-   HEAP32[$99>>2] = $98;
-   $100 = (($$1) + ($97)|0);
-   HEAP32[$100>>2] = $97;
-   return;
-  }
-  $101 = $83 & -8;
-  $102 = (($101) + ($$1363))|0;
-  $103 = $83 >>> 3;
-  $104 = ($83>>>0)<(256);
-  do {
-   if ($104) {
-    $105 = ((($2)) + 8|0);
-    $106 = HEAP32[$105>>2]|0;
-    $107 = ((($2)) + 12|0);
-    $108 = HEAP32[$107>>2]|0;
-    $109 = ($108|0)==($106|0);
-    if ($109) {
-     $110 = 1 << $103;
-     $111 = $110 ^ -1;
-     $112 = HEAP32[18178]|0;
-     $113 = $112 & $111;
-     HEAP32[18178] = $113;
-     break;
-    } else {
-     $114 = ((($106)) + 12|0);
-     HEAP32[$114>>2] = $108;
-     $115 = ((($108)) + 8|0);
-     HEAP32[$115>>2] = $106;
-     break;
-    }
-   } else {
-    $116 = ((($2)) + 24|0);
-    $117 = HEAP32[$116>>2]|0;
-    $118 = ((($2)) + 12|0);
-    $119 = HEAP32[$118>>2]|0;
-    $120 = ($119|0)==($2|0);
-    do {
-     if ($120) {
-      $125 = ((($2)) + 16|0);
-      $126 = ((($125)) + 4|0);
-      $127 = HEAP32[$126>>2]|0;
-      $128 = ($127|0)==(0|0);
-      if ($128) {
-       $129 = HEAP32[$125>>2]|0;
-       $130 = ($129|0)==(0|0);
-       if ($130) {
-        $$3380 = 0;
-        break;
-       } else {
-        $$1378$ph = $129;$$1382$ph = $125;
-       }
-      } else {
-       $$1378$ph = $127;$$1382$ph = $126;
-      }
-      $$1378 = $$1378$ph;$$1382 = $$1382$ph;
-      while(1) {
-       $131 = ((($$1378)) + 20|0);
-       $132 = HEAP32[$131>>2]|0;
-       $133 = ($132|0)==(0|0);
-       if ($133) {
-        $134 = ((($$1378)) + 16|0);
-        $135 = HEAP32[$134>>2]|0;
-        $136 = ($135|0)==(0|0);
-        if ($136) {
-         break;
-        } else {
-         $$1378$be = $135;$$1382$be = $134;
-        }
-       } else {
-        $$1378$be = $132;$$1382$be = $131;
-       }
-       $$1378 = $$1378$be;$$1382 = $$1382$be;
-      }
-      HEAP32[$$1382>>2] = 0;
-      $$3380 = $$1378;
-     } else {
-      $121 = ((($2)) + 8|0);
-      $122 = HEAP32[$121>>2]|0;
-      $123 = ((($122)) + 12|0);
-      HEAP32[$123>>2] = $119;
-      $124 = ((($119)) + 8|0);
-      HEAP32[$124>>2] = $122;
-      $$3380 = $119;
-     }
-    } while(0);
-    $137 = ($117|0)==(0|0);
-    if (!($137)) {
-     $138 = ((($2)) + 28|0);
-     $139 = HEAP32[$138>>2]|0;
-     $140 = (73016 + ($139<<2)|0);
-     $141 = HEAP32[$140>>2]|0;
-     $142 = ($141|0)==($2|0);
-     if ($142) {
-      HEAP32[$140>>2] = $$3380;
-      $cond4 = ($$3380|0)==(0|0);
-      if ($cond4) {
-       $143 = 1 << $139;
-       $144 = $143 ^ -1;
-       $145 = HEAP32[(72716)>>2]|0;
-       $146 = $145 & $144;
-       HEAP32[(72716)>>2] = $146;
-       break;
-      }
-     } else {
-      $147 = ((($117)) + 16|0);
-      $148 = HEAP32[$147>>2]|0;
-      $149 = ($148|0)==($2|0);
-      $150 = ((($117)) + 20|0);
-      $$sink24 = $149 ? $147 : $150;
-      HEAP32[$$sink24>>2] = $$3380;
-      $151 = ($$3380|0)==(0|0);
-      if ($151) {
-       break;
-      }
-     }
-     $152 = ((($$3380)) + 24|0);
-     HEAP32[$152>>2] = $117;
-     $153 = ((($2)) + 16|0);
-     $154 = HEAP32[$153>>2]|0;
-     $155 = ($154|0)==(0|0);
-     if (!($155)) {
-      $156 = ((($$3380)) + 16|0);
-      HEAP32[$156>>2] = $154;
-      $157 = ((($154)) + 24|0);
-      HEAP32[$157>>2] = $$3380;
-     }
-     $158 = ((($153)) + 4|0);
-     $159 = HEAP32[$158>>2]|0;
-     $160 = ($159|0)==(0|0);
-     if (!($160)) {
-      $161 = ((($$3380)) + 20|0);
-      HEAP32[$161>>2] = $159;
-      $162 = ((($159)) + 24|0);
-      HEAP32[$162>>2] = $$3380;
-     }
-    }
-   }
-  } while(0);
-  $163 = $102 | 1;
-  $164 = ((($$1)) + 4|0);
-  HEAP32[$164>>2] = $163;
-  $165 = (($$1) + ($102)|0);
-  HEAP32[$165>>2] = $102;
-  $166 = HEAP32[(72732)>>2]|0;
-  $167 = ($$1|0)==($166|0);
-  if ($167) {
-   HEAP32[(72720)>>2] = $102;
-   return;
-  } else {
-   $$2 = $102;
-  }
- } else {
-  $168 = $83 & -2;
-  HEAP32[$82>>2] = $168;
-  $169 = $$1363 | 1;
-  $170 = ((($$1)) + 4|0);
-  HEAP32[$170>>2] = $169;
-  $171 = (($$1) + ($$1363)|0);
-  HEAP32[$171>>2] = $$1363;
-  $$2 = $$1363;
- }
- $172 = $$2 >>> 3;
- $173 = ($$2>>>0)<(256);
- if ($173) {
-  $174 = $172 << 1;
-  $175 = (72752 + ($174<<2)|0);
-  $176 = HEAP32[18178]|0;
-  $177 = 1 << $172;
-  $178 = $176 & $177;
-  $179 = ($178|0)==(0);
-  if ($179) {
-   $180 = $176 | $177;
-   HEAP32[18178] = $180;
-   $$pre = ((($175)) + 8|0);
-   $$0383 = $175;$$pre$phiZ2D = $$pre;
-  } else {
-   $181 = ((($175)) + 8|0);
-   $182 = HEAP32[$181>>2]|0;
-   $$0383 = $182;$$pre$phiZ2D = $181;
-  }
-  HEAP32[$$pre$phiZ2D>>2] = $$1;
-  $183 = ((($$0383)) + 12|0);
-  HEAP32[$183>>2] = $$1;
-  $184 = ((($$1)) + 8|0);
-  HEAP32[$184>>2] = $$0383;
-  $185 = ((($$1)) + 12|0);
-  HEAP32[$185>>2] = $175;
-  return;
- }
- $186 = $$2 >>> 8;
- $187 = ($186|0)==(0);
- if ($187) {
-  $$0376 = 0;
- } else {
-  $188 = ($$2>>>0)>(16777215);
-  if ($188) {
-   $$0376 = 31;
-  } else {
-   $189 = (($186) + 1048320)|0;
-   $190 = $189 >>> 16;
-   $191 = $190 & 8;
-   $192 = $186 << $191;
-   $193 = (($192) + 520192)|0;
-   $194 = $193 >>> 16;
-   $195 = $194 & 4;
-   $196 = $195 | $191;
-   $197 = $192 << $195;
-   $198 = (($197) + 245760)|0;
-   $199 = $198 >>> 16;
-   $200 = $199 & 2;
-   $201 = $196 | $200;
-   $202 = (14 - ($201))|0;
-   $203 = $197 << $200;
-   $204 = $203 >>> 15;
-   $205 = (($202) + ($204))|0;
-   $206 = $205 << 1;
-   $207 = (($205) + 7)|0;
-   $208 = $$2 >>> $207;
-   $209 = $208 & 1;
-   $210 = $209 | $206;
-   $$0376 = $210;
-  }
- }
- $211 = (73016 + ($$0376<<2)|0);
- $212 = ((($$1)) + 28|0);
- HEAP32[$212>>2] = $$0376;
- $213 = ((($$1)) + 16|0);
- $214 = ((($$1)) + 20|0);
- HEAP32[$214>>2] = 0;
- HEAP32[$213>>2] = 0;
- $215 = HEAP32[(72716)>>2]|0;
- $216 = 1 << $$0376;
- $217 = $215 & $216;
- $218 = ($217|0)==(0);
- if ($218) {
-  $219 = $215 | $216;
-  HEAP32[(72716)>>2] = $219;
-  HEAP32[$211>>2] = $$1;
-  $220 = ((($$1)) + 24|0);
-  HEAP32[$220>>2] = $211;
-  $221 = ((($$1)) + 12|0);
-  HEAP32[$221>>2] = $$1;
-  $222 = ((($$1)) + 8|0);
-  HEAP32[$222>>2] = $$1;
-  return;
- }
- $223 = HEAP32[$211>>2]|0;
- $224 = ((($223)) + 4|0);
- $225 = HEAP32[$224>>2]|0;
- $226 = $225 & -8;
- $227 = ($226|0)==($$2|0);
- L104: do {
-  if ($227) {
-   $$0365$lcssa = $223;
-  } else {
-   $228 = ($$0376|0)==(31);
-   $229 = $$0376 >>> 1;
-   $230 = (25 - ($229))|0;
-   $231 = $228 ? 0 : $230;
-   $232 = $$2 << $231;
-   $$03649 = $232;$$03658 = $223;
-   while(1) {
-    $239 = $$03649 >>> 31;
-    $240 = (((($$03658)) + 16|0) + ($239<<2)|0);
-    $235 = HEAP32[$240>>2]|0;
-    $241 = ($235|0)==(0|0);
-    if ($241) {
-     break;
-    }
-    $233 = $$03649 << 1;
-    $234 = ((($235)) + 4|0);
-    $236 = HEAP32[$234>>2]|0;
-    $237 = $236 & -8;
-    $238 = ($237|0)==($$2|0);
-    if ($238) {
-     $$0365$lcssa = $235;
-     break L104;
-    } else {
-     $$03649 = $233;$$03658 = $235;
-    }
-   }
-   HEAP32[$240>>2] = $$1;
-   $242 = ((($$1)) + 24|0);
-   HEAP32[$242>>2] = $$03658;
-   $243 = ((($$1)) + 12|0);
-   HEAP32[$243>>2] = $$1;
-   $244 = ((($$1)) + 8|0);
-   HEAP32[$244>>2] = $$1;
-   return;
-  }
- } while(0);
- $245 = ((($$0365$lcssa)) + 8|0);
- $246 = HEAP32[$245>>2]|0;
- $247 = ((($246)) + 12|0);
- HEAP32[$247>>2] = $$1;
- HEAP32[$245>>2] = $$1;
- $248 = ((($$1)) + 8|0);
- HEAP32[$248>>2] = $246;
- $249 = ((($$1)) + 12|0);
- HEAP32[$249>>2] = $$0365$lcssa;
- $250 = ((($$1)) + 24|0);
- HEAP32[$250>>2] = 0;
- return;
-}
-function _memalign($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0>>>0)<(9);
- if ($2) {
-  $3 = (_malloc($1)|0);
-  $$0 = $3;
-  return ($$0|0);
- } else {
-  $4 = (_internal_memalign($0,$1)|0);
-  $$0 = $4;
-  return ($$0|0);
- }
- return (0)|0;
-}
-function _internal_memalign($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0100 = 0, $$099 = 0, $$1 = 0, $$198 = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 
= 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, 
$69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, 
$77 = 0, $78 = 0, $79 = 0;
- var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $9 = 0, $spec$select = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $2 = ($0>>>0)>(16);
- $spec$select = $2 ? $0 : 16;
- $3 = (($spec$select) + -1)|0;
- $4 = $3 & $spec$select;
- $5 = ($4|0)==(0);
- if ($5) {
-  $$1 = $spec$select;
- } else {
-  $$099 = 16;
-  while(1) {
-   $6 = ($$099>>>0)<($spec$select>>>0);
-   $7 = $$099 << 1;
-   if ($6) {
-    $$099 = $7;
-   } else {
-    $$1 = $$099;
-    break;
-   }
-  }
- }
- $8 = (-64 - ($$1))|0;
- $9 = ($8>>>0)>($1>>>0);
- if (!($9)) {
-  $10 = (___errno_location()|0);
-  HEAP32[$10>>2] = 12;
-  $$198 = 0;
-  return ($$198|0);
- }
- $11 = ($1>>>0)<(11);
- $12 = (($1) + 11)|0;
- $13 = $12 & -8;
- $14 = $11 ? 16 : $13;
- $15 = (($14) + 12)|0;
- $16 = (($15) + ($$1))|0;
- $17 = (_malloc($16)|0);
- $18 = ($17|0)==(0|0);
- if ($18) {
-  $$198 = 0;
-  return ($$198|0);
- }
- $19 = ((($17)) + -8|0);
- $20 = $17;
- $21 = (($$1) + -1)|0;
- $22 = $21 & $20;
- $23 = ($22|0)==(0);
- do {
-  if ($23) {
-   $$0100 = $19;$72 = $19;
-  } else {
-   $24 = (($17) + ($$1)|0);
-   $25 = ((($24)) + -1|0);
-   $26 = $25;
-   $27 = (0 - ($$1))|0;
-   $28 = $26 & $27;
-   $29 = $28;
-   $30 = ((($29)) + -8|0);
-   $31 = $30;
-   $32 = $19;
-   $33 = (($31) - ($32))|0;
-   $34 = ($33>>>0)>(15);
-   $35 = (($30) + ($$1)|0);
-   $36 = $34 ? $30 : $35;
-   $37 = $36;
-   $38 = (($37) - ($32))|0;
-   $39 = ((($17)) + -4|0);
-   $40 = HEAP32[$39>>2]|0;
-   $41 = $40 & -8;
-   $42 = (($41) - ($38))|0;
-   $43 = $40 & 3;
-   $44 = ($43|0)==(0);
-   if ($44) {
-    $45 = HEAP32[$19>>2]|0;
-    $46 = (($45) + ($38))|0;
-    HEAP32[$36>>2] = $46;
-    $47 = ((($36)) + 4|0);
-    HEAP32[$47>>2] = $42;
-    $$0100 = $36;$72 = $36;
-    break;
-   } else {
-    $48 = ((($36)) + 4|0);
-    $49 = HEAP32[$48>>2]|0;
-    $50 = $49 & 1;
-    $51 = $42 | $50;
-    $52 = $51 | 2;
-    HEAP32[$48>>2] = $52;
-    $53 = (($36) + ($42)|0);
-    $54 = ((($53)) + 4|0);
-    $55 = HEAP32[$54>>2]|0;
-    $56 = $55 | 1;
-    HEAP32[$54>>2] = $56;
-    $57 = HEAP32[$39>>2]|0;
-    $58 = $57 & 1;
-    $59 = $38 | $58;
-    $60 = $59 | 2;
-    HEAP32[$39>>2] = $60;
-    $61 = HEAP32[$48>>2]|0;
-    $62 = $61 | 1;
-    HEAP32[$48>>2] = $62;
-    _dispose_chunk($19,$38);
-    $$0100 = $36;$72 = $36;
-    break;
-   }
-  }
- } while(0);
- $63 = ((($$0100)) + 4|0);
- $64 = HEAP32[$63>>2]|0;
- $65 = $64 & 3;
- $66 = ($65|0)==(0);
- if (!($66)) {
-  $67 = $64 & -8;
-  $68 = (($14) + 16)|0;
-  $69 = ($67>>>0)>($68>>>0);
-  if ($69) {
-   $70 = (($67) - ($14))|0;
-   $71 = (($72) + ($14)|0);
-   $73 = $64 & 1;
-   $74 = $14 | $73;
-   $75 = $74 | 2;
-   HEAP32[$63>>2] = $75;
-   $76 = ((($71)) + 4|0);
-   $77 = $70 | 3;
-   HEAP32[$76>>2] = $77;
-   $78 = (($72) + ($67)|0);
-   $79 = ((($78)) + 4|0);
-   $80 = HEAP32[$79>>2]|0;
-   $81 = $80 | 1;
-   HEAP32[$79>>2] = $81;
-   _dispose_chunk($71,$70);
-  }
- }
- $82 = ((($72)) + 8|0);
- $$198 = $82;
- return ($$198|0);
-}
-function ___stdio_close($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = ((($0)) + 60|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = (_dummy_33($2)|0);
- HEAP32[$vararg_buffer>>2] = $3;
- $4 = (___syscall6(6,($vararg_buffer|0))|0);
- $5 = (___syscall_ret($4)|0);
- STACKTOP = sp;return ($5|0);
-}
-function ___stdio_read($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$cast = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp + 16|0;
- $3 = sp;
- HEAP32[$3>>2] = $1;
- $4 = ((($3)) + 4|0);
- $5 = ((($0)) + 48|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)!=(0);
- $8 = $7&1;
- $9 = (($2) - ($8))|0;
- HEAP32[$4>>2] = $9;
- $10 = ((($3)) + 8|0);
- $11 = ((($0)) + 44|0);
- $12 = HEAP32[$11>>2]|0;
- HEAP32[$10>>2] = $12;
- $13 = ((($3)) + 12|0);
- HEAP32[$13>>2] = $6;
- $14 = ((($0)) + 60|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = $3;
- HEAP32[$vararg_buffer>>2] = $15;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $16;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = 2;
- $17 = (___syscall145(145,($vararg_buffer|0))|0);
- $18 = (___syscall_ret($17)|0);
- $19 = ($18|0)<(1);
- if ($19) {
-  $20 = $18 & 48;
-  $21 = $20 ^ 16;
-  $22 = HEAP32[$0>>2]|0;
-  $23 = $22 | $21;
-  HEAP32[$0>>2] = $23;
-  $$0 = $18;
- } else {
-  $24 = HEAP32[$4>>2]|0;
-  $25 = ($18>>>0)>($24>>>0);
-  if ($25) {
-   $26 = (($18) - ($24))|0;
-   $27 = HEAP32[$11>>2]|0;
-   $28 = ((($0)) + 4|0);
-   HEAP32[$28>>2] = $27;
-   $$cast = $27;
-   $29 = (($$cast) + ($26)|0);
-   $30 = ((($0)) + 8|0);
-   HEAP32[$30>>2] = $29;
-   $31 = HEAP32[$5>>2]|0;
-   $32 = ($31|0)==(0);
-   if ($32) {
-    $$0 = $2;
-   } else {
-    $33 = ((($$cast)) + 1|0);
-    HEAP32[$28>>2] = $33;
-    $34 = HEAP8[$$cast>>0]|0;
-    $35 = (($2) + -1)|0;
-    $36 = (($1) + ($35)|0);
-    HEAP8[$36>>0] = $34;
-    $$0 = $2;
-   }
-  } else {
-   $$0 = $18;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function ___stdio_seek($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$pre = 0, $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, 
$vararg_ptr4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $3 = sp + 20|0;
- $4 = ((($0)) + 60|0);
- $5 = HEAP32[$4>>2]|0;
- $6 = $3;
- HEAP32[$vararg_buffer>>2] = $5;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 0;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $1;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $6;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $2;
- $7 = (___syscall140(140,($vararg_buffer|0))|0);
- $8 = (___syscall_ret($7)|0);
- $9 = ($8|0)<(0);
- if ($9) {
-  HEAP32[$3>>2] = -1;
-  $10 = -1;
- } else {
-  $$pre = HEAP32[$3>>2]|0;
-  $10 = $$pre;
- }
- STACKTOP = sp;return ($10|0);
-}
-function ___syscall_ret($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0>>>0)>(4294963200);
- if ($1) {
-  $2 = (0 - ($0))|0;
-  $3 = (___errno_location()|0);
-  HEAP32[$3>>2] = $2;
-  $$0 = -1;
- } else {
-  $$0 = $0;
- }
- return ($$0|0);
-}
-function ___errno_location() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (73208|0);
-}
-function _dummy_33($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return ($0|0);
-}
-function ___stdout_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $3 = sp + 16|0;
- $4 = ((($0)) + 36|0);
- HEAP32[$4>>2] = 52;
- $5 = HEAP32[$0>>2]|0;
- $6 = $5 & 64;
- $7 = ($6|0)==(0);
- if ($7) {
-  $8 = ((($0)) + 60|0);
-  $9 = HEAP32[$8>>2]|0;
-  $10 = $3;
-  HEAP32[$vararg_buffer>>2] = $9;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = 21523;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = $10;
-  $11 = (___syscall54(54,($vararg_buffer|0))|0);
-  $12 = ($11|0)==(0);
-  if (!($12)) {
-   $13 = ((($0)) + 75|0);
-   HEAP8[$13>>0] = -1;
-  }
- }
- $14 = (___stdio_write($0,$1,$2)|0);
- STACKTOP = sp;return ($14|0);
-}
-function ___stdio_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$04756 = 0, $$04855 = 0, $$04954 = 0, $$051 = 0, $$1 = 0, $$150 
= 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, 
$49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0;
- var $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer3 = sp + 32|0;
- $vararg_buffer = sp + 16|0;
- $3 = sp;
- $4 = ((($0)) + 28|0);
- $5 = HEAP32[$4>>2]|0;
- HEAP32[$3>>2] = $5;
- $6 = ((($3)) + 4|0);
- $7 = ((($0)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = (($8) - ($5))|0;
- HEAP32[$6>>2] = $9;
- $10 = ((($3)) + 8|0);
- HEAP32[$10>>2] = $1;
- $11 = ((($3)) + 12|0);
- HEAP32[$11>>2] = $2;
- $12 = (($9) + ($2))|0;
- $13 = ((($0)) + 60|0);
- $14 = HEAP32[$13>>2]|0;
- $15 = $3;
- HEAP32[$vararg_buffer>>2] = $14;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $15;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = 2;
- $16 = (___syscall146(146,($vararg_buffer|0))|0);
- $17 = (___syscall_ret($16)|0);
- $18 = ($12|0)==($17|0);
- L1: do {
-  if ($18) {
-   label = 3;
-  } else {
-   $$04756 = 2;$$04855 = $12;$$04954 = $3;$27 = $17;
-   while(1) {
-    $26 = ($27|0)<(0);
-    if ($26) {
-     break;
-    }
-    $35 = (($$04855) - ($27))|0;
-    $36 = ((($$04954)) + 4|0);
-    $37 = HEAP32[$36>>2]|0;
-    $38 = ($27>>>0)>($37>>>0);
-    $39 = ((($$04954)) + 8|0);
-    $$150 = $38 ? $39 : $$04954;
-    $40 = $38 << 31 >> 31;
-    $$1 = (($$04756) + ($40))|0;
-    $41 = $38 ? $37 : 0;
-    $$0 = (($27) - ($41))|0;
-    $42 = HEAP32[$$150>>2]|0;
-    $43 = (($42) + ($$0)|0);
-    HEAP32[$$150>>2] = $43;
-    $44 = ((($$150)) + 4|0);
-    $45 = HEAP32[$44>>2]|0;
-    $46 = (($45) - ($$0))|0;
-    HEAP32[$44>>2] = $46;
-    $47 = HEAP32[$13>>2]|0;
-    $48 = $$150;
-    HEAP32[$vararg_buffer3>>2] = $47;
-    $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-    HEAP32[$vararg_ptr6>>2] = $48;
-    $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
-    HEAP32[$vararg_ptr7>>2] = $$1;
-    $49 = (___syscall146(146,($vararg_buffer3|0))|0);
-    $50 = (___syscall_ret($49)|0);
-    $51 = ($35|0)==($50|0);
-    if ($51) {
-     label = 3;
-     break L1;
-    } else {
-     $$04756 = $$1;$$04855 = $35;$$04954 = $$150;$27 = $50;
-    }
-   }
-   $28 = ((($0)) + 16|0);
-   HEAP32[$28>>2] = 0;
-   HEAP32[$4>>2] = 0;
-   HEAP32[$7>>2] = 0;
-   $29 = HEAP32[$0>>2]|0;
-   $30 = $29 | 32;
-   HEAP32[$0>>2] = $30;
-   $31 = ($$04756|0)==(2);
-   if ($31) {
-    $$051 = 0;
-   } else {
-    $32 = ((($$04954)) + 4|0);
-    $33 = HEAP32[$32>>2]|0;
-    $34 = (($2) - ($33))|0;
-    $$051 = $34;
-   }
-  }
- } while(0);
- if ((label|0) == 3) {
-  $19 = ((($0)) + 44|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ((($0)) + 48|0);
-  $22 = HEAP32[$21>>2]|0;
-  $23 = (($20) + ($22)|0);
-  $24 = ((($0)) + 16|0);
-  HEAP32[$24>>2] = $23;
-  $25 = $20;
-  HEAP32[$4>>2] = $25;
-  HEAP32[$7>>2] = $25;
-  $$051 = $2;
- }
- STACKTOP = sp;return ($$051|0);
-}
-function _select($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $10 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, 
$vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $5 = $1;
- $6 = $2;
- $7 = $3;
- $8 = $4;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $5;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $6;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $7;
- $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
- HEAP32[$vararg_ptr4>>2] = $8;
- $9 = (___syscall142(142,($vararg_buffer|0))|0);
- $10 = (___syscall_ret($9)|0);
- STACKTOP = sp;return ($10|0);
-}
-function ___fwritex($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$03846 = 0, $$042 = 0, $$1 = 0, $$139 = 0, $$141 = 0, $$143 = 0, $$pre = 
0, $$pre48 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($2)) + 16|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $7 = (___towrite($2)|0);
-  $8 = ($7|0)==(0);
-  if ($8) {
-   $$pre = HEAP32[$3>>2]|0;
-   $12 = $$pre;
-   label = 5;
-  } else {
-   $$1 = 0;
-  }
- } else {
-  $6 = $4;
-  $12 = $6;
-  label = 5;
- }
- L5: do {
-  if ((label|0) == 5) {
-   $9 = ((($2)) + 20|0);
-   $10 = HEAP32[$9>>2]|0;
-   $11 = (($12) - ($10))|0;
-   $13 = ($11>>>0)<($1>>>0);
-   $14 = $10;
-   if ($13) {
-    $15 = ((($2)) + 36|0);
-    $16 = HEAP32[$15>>2]|0;
-    $17 = (FUNCTION_TABLE_iiii[$16 & 127]($2,$0,$1)|0);
-    $$1 = $17;
-    break;
-   }
-   $18 = ((($2)) + 75|0);
-   $19 = HEAP8[$18>>0]|0;
-   $20 = ($19<<24>>24)<(0);
-   $21 = ($1|0)==(0);
-   $or$cond = $20 | $21;
-   L10: do {
-    if ($or$cond) {
-     $$139 = 0;$$141 = $0;$$143 = $1;$32 = $14;
-    } else {
-     $$03846 = $1;
-     while(1) {
-      $23 = (($$03846) + -1)|0;
-      $24 = (($0) + ($23)|0);
-      $25 = HEAP8[$24>>0]|0;
-      $26 = ($25<<24>>24)==(10);
-      if ($26) {
-       break;
-      }
-      $22 = ($23|0)==(0);
-      if ($22) {
-       $$139 = 0;$$141 = $0;$$143 = $1;$32 = $14;
-       break L10;
-      } else {
-       $$03846 = $23;
-      }
-     }
-     $27 = ((($2)) + 36|0);
-     $28 = HEAP32[$27>>2]|0;
-     $29 = (FUNCTION_TABLE_iiii[$28 & 127]($2,$0,$$03846)|0);
-     $30 = ($29>>>0)<($$03846>>>0);
-     if ($30) {
-      $$1 = $29;
-      break L5;
-     }
-     $31 = (($0) + ($$03846)|0);
-     $$042 = (($1) - ($$03846))|0;
-     $$pre48 = HEAP32[$9>>2]|0;
-     $$139 = $$03846;$$141 = $31;$$143 = $$042;$32 = $$pre48;
-    }
-   } while(0);
-   (_memcpy(($32|0),($$141|0),($$143|0))|0);
-   $33 = HEAP32[$9>>2]|0;
-   $34 = (($33) + ($$143)|0);
-   HEAP32[$9>>2] = $34;
-   $35 = (($$139) + ($$143))|0;
-   $$1 = $35;
-  }
- } while(0);
- return ($$1|0);
-}
-function ___towrite($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 74|0);
- $2 = HEAP8[$1>>0]|0;
- $3 = $2 << 24 >> 24;
- $4 = (($3) + 255)|0;
- $5 = $4 | $3;
- $6 = $5&255;
- HEAP8[$1>>0] = $6;
- $7 = HEAP32[$0>>2]|0;
- $8 = $7 & 8;
- $9 = ($8|0)==(0);
- if ($9) {
-  $11 = ((($0)) + 8|0);
-  HEAP32[$11>>2] = 0;
-  $12 = ((($0)) + 4|0);
-  HEAP32[$12>>2] = 0;
-  $13 = ((($0)) + 44|0);
-  $14 = HEAP32[$13>>2]|0;
-  $15 = ((($0)) + 28|0);
-  HEAP32[$15>>2] = $14;
-  $16 = ((($0)) + 20|0);
-  HEAP32[$16>>2] = $14;
-  $17 = $14;
-  $18 = ((($0)) + 48|0);
-  $19 = HEAP32[$18>>2]|0;
-  $20 = (($17) + ($19)|0);
-  $21 = ((($0)) + 16|0);
-  HEAP32[$21>>2] = $20;
-  $$0 = 0;
- } else {
-  $10 = $7 | 32;
-  HEAP32[$0>>2] = $10;
-  $$0 = -1;
- }
- return ($$0|0);
-}
-function _fwrite($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, $phitmp = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $4 = Math_imul($2, $1)|0;
- $5 = ($1|0)==(0);
- $spec$select = $5 ? 0 : $2;
- $6 = ((($3)) + 76|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ($7|0)>(-1);
- if ($8) {
-  $10 = (___lockfile($3)|0);
-  $phitmp = ($10|0)==(0);
-  $11 = (___fwritex($0,$4,$3)|0);
-  if ($phitmp) {
-   $13 = $11;
-  } else {
-   ___unlockfile($3);
-   $13 = $11;
-  }
- } else {
-  $9 = (___fwritex($0,$4,$3)|0);
-  $13 = $9;
- }
- $12 = ($13|0)==($4|0);
- if ($12) {
-  $15 = $spec$select;
- } else {
-  $14 = (($13>>>0) / ($1>>>0))&-1;
-  $15 = $14;
- }
- return ($15|0);
-}
-function ___lockfile($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return 0;
-}
-function ___unlockfile($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function ___toread($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $sext = 0, label 
= 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 74|0);
- $2 = HEAP8[$1>>0]|0;
- $3 = $2 << 24 >> 24;
- $4 = (($3) + 255)|0;
- $5 = $4 | $3;
- $6 = $5&255;
- HEAP8[$1>>0] = $6;
- $7 = ((($0)) + 20|0);
- $8 = HEAP32[$7>>2]|0;
- $9 = ((($0)) + 28|0);
- $10 = HEAP32[$9>>2]|0;
- $11 = ($8>>>0)>($10>>>0);
- if ($11) {
-  $12 = ((($0)) + 36|0);
-  $13 = HEAP32[$12>>2]|0;
-  (FUNCTION_TABLE_iiii[$13 & 127]($0,0,0)|0);
- }
- $14 = ((($0)) + 16|0);
- HEAP32[$14>>2] = 0;
- HEAP32[$9>>2] = 0;
- HEAP32[$7>>2] = 0;
- $15 = HEAP32[$0>>2]|0;
- $16 = $15 & 4;
- $17 = ($16|0)==(0);
- if ($17) {
-  $19 = ((($0)) + 44|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ((($0)) + 48|0);
-  $22 = HEAP32[$21>>2]|0;
-  $23 = (($20) + ($22)|0);
-  $24 = ((($0)) + 8|0);
-  HEAP32[$24>>2] = $23;
-  $25 = ((($0)) + 4|0);
-  HEAP32[$25>>2] = $23;
-  $26 = $15 << 27;
-  $sext = $26 >> 31;
-  $$0 = $sext;
- } else {
-  $18 = $15 | 32;
-  HEAP32[$0>>2] = $18;
-  $$0 = -1;
- }
- return ($$0|0);
-}
-function _isspace($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $narrow = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(32);
- $2 = (($0) + -9)|0;
- $3 = ($2>>>0)<(5);
- $narrow = $1 | $3;
- $4 = $narrow&1;
- return ($4|0);
-}
-function ___shlim($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ((($0)) + 104|0);
- HEAP32[$2>>2] = $1;
- $3 = ((($0)) + 8|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($0)) + 4|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = (($4) - ($6))|0;
- $8 = ((($0)) + 108|0);
- HEAP32[$8>>2] = $7;
- $9 = ($1|0)!=(0);
- $10 = ($7|0)>($1|0);
- $or$cond = $9 & $10;
- if ($or$cond) {
-  $11 = $6;
-  $12 = (($11) + ($1)|0);
-  $13 = ((($0)) + 100|0);
-  HEAP32[$13>>2] = $12;
- } else {
-  $14 = ((($0)) + 100|0);
-  HEAP32[$14>>2] = $4;
- }
- return;
-}
-function ___shgetc($0) {
- $0 = $0|0;
- var $$0 = 0, $$phi$trans$insert = 0, $$phi$trans$insert28 = 0, $$pre = 0, 
$$pre29 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 
= 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = ((($0)) + 104|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)==(0);
- if ($3) {
-  label = 3;
- } else {
-  $4 = ((($0)) + 108|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = ($5|0)<($2|0);
-  if ($6) {
-   label = 3;
-  } else {
-   label = 4;
-  }
- }
- if ((label|0) == 3) {
-  $7 = (___uflow($0)|0);
-  $8 = ($7|0)<(0);
-  if ($8) {
-   label = 4;
-  } else {
-   $10 = HEAP32[$1>>2]|0;
-   $11 = ($10|0)==(0);
-   $$phi$trans$insert = ((($0)) + 8|0);
-   $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-   if ($11) {
-    $12 = $$pre;
-    $42 = $12;
-    label = 9;
-   } else {
-    $13 = ((($0)) + 4|0);
-    $14 = HEAP32[$13>>2]|0;
-    $15 = $14;
-    $16 = (($$pre) - ($15))|0;
-    $17 = ((($0)) + 108|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = (($10) - ($18))|0;
-    $20 = ($16|0)<($19|0);
-    $21 = $$pre;
-    if ($20) {
-     $42 = $21;
-     label = 9;
-    } else {
-     $22 = (($19) + -1)|0;
-     $23 = (($14) + ($22)|0);
-     $24 = ((($0)) + 100|0);
-     HEAP32[$24>>2] = $23;
-     $27 = $21;
-    }
-   }
-   if ((label|0) == 9) {
-    $25 = ((($0)) + 100|0);
-    HEAP32[$25>>2] = $$pre;
-    $27 = $42;
-   }
-   $26 = ($27|0)==(0|0);
-   $$phi$trans$insert28 = ((($0)) + 4|0);
-   if ($26) {
-    $$pre29 = HEAP32[$$phi$trans$insert28>>2]|0;
-    $37 = $$pre29;
-   } else {
-    $28 = HEAP32[$$phi$trans$insert28>>2]|0;
-    $29 = $27;
-    $30 = ((($0)) + 108|0);
-    $31 = HEAP32[$30>>2]|0;
-    $32 = (($29) + 1)|0;
-    $33 = (($32) - ($28))|0;
-    $34 = (($33) + ($31))|0;
-    HEAP32[$30>>2] = $34;
-    $35 = $28;
-    $37 = $35;
-   }
-   $36 = ((($37)) + -1|0);
-   $38 = HEAP8[$36>>0]|0;
-   $39 = $38&255;
-   $40 = ($7|0)==($39|0);
-   if ($40) {
-    $$0 = $7;
-   } else {
-    $41 = $7&255;
-    HEAP8[$36>>0] = $41;
-    $$0 = $7;
-   }
-  }
- }
- if ((label|0) == 4) {
-  $9 = ((($0)) + 100|0);
-  HEAP32[$9>>2] = 0;
-  $$0 = -1;
- }
- return ($$0|0);
-}
-function _isdigit($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + -48)|0;
- $2 = ($1>>>0)<(10);
- $3 = $2&1;
- return ($3|0);
-}
-function ___intscan($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0154215 = 0, $$0157 = 0, $$0159 = 0, $$1155184 = 0, $$1158 = 0, $$1160 
= 0, $$1160170 = 0, $$1165 = 0, $$1165168 = 0, $$1165169 = 0, $$2156202 = 0, 
$$3162208 = 0, $$4163$lcssa = 0, $$6$lcssa = 0, $$7190 = 0, $$8 = 0, 
$$pre$phi237Z2D = 0, $$pre$phi239Z2D = 0, $10 = 0, $100 = 0;
- var $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, 
$115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0;
- var $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 
= 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 
= 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0;
- var $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 
= 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 
= 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0;
- var $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0;
- var $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 
= 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0;
- var $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, 
$199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, 
$206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0;
- var $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, 
$217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, 
$224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0;
- var $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 
= 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0;
- var $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 
= 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 
= 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0;
- var $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 
= 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 
= 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0;
- var $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 
= 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 
= 0, $298 = 0, $30 = 0, $31 = 0, $32 = 0;
- var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, 
$41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 
0, $5 = 0, $50 = 0, $51 = 0;
- var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, 
$6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, 
$68 = 0, $69 = 0, $7 = 0;
- var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, 
$78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, 
$86 = 0, $87 = 0, $88 = 0;
- var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, 
$96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond12 = 0, $or$cond179 = 
0, $or$cond5 = 0, $or$cond7 = 0, $spec$select166 = 0, $spec$select167 = 0, 
label = 0;
- var sp = 0;
- sp = STACKTOP;
- $5 = ($1>>>0)>(36);
- L1: do {
-  if ($5) {
-   $6 = (___errno_location()|0);
-   HEAP32[$6>>2] = 22;
-   $291 = 0;$292 = 0;
-  } else {
-   $7 = ((($0)) + 4|0);
-   $8 = ((($0)) + 100|0);
-   while(1) {
-    $9 = HEAP32[$7>>2]|0;
-    $10 = HEAP32[$8>>2]|0;
-    $11 = ($9>>>0)<($10>>>0);
-    if ($11) {
-     $12 = ((($9)) + 1|0);
-     HEAP32[$7>>2] = $12;
-     $13 = HEAP8[$9>>0]|0;
-     $14 = $13&255;
-     $16 = $14;
-    } else {
-     $15 = (___shgetc($0)|0);
-     $16 = $15;
-    }
-    $17 = (_isspace($16)|0);
-    $18 = ($17|0)==(0);
-    if ($18) {
-     break;
-    }
-   }
-   L11: do {
-    switch ($16|0) {
-    case 43: case 45:  {
-     $19 = ($16|0)==(45);
-     $20 = $19 << 31 >> 31;
-     $21 = HEAP32[$7>>2]|0;
-     $22 = HEAP32[$8>>2]|0;
-     $23 = ($21>>>0)<($22>>>0);
-     if ($23) {
-      $24 = ((($21)) + 1|0);
-      HEAP32[$7>>2] = $24;
-      $25 = HEAP8[$21>>0]|0;
-      $26 = $25&255;
-      $$0157 = $20;$$0159 = $26;
-      break L11;
-     } else {
-      $27 = (___shgetc($0)|0);
-      $$0157 = $20;$$0159 = $27;
-      break L11;
-     }
-     break;
-    }
-    default: {
-     $$0157 = 0;$$0159 = $16;
-    }
-    }
-   } while(0);
-   $28 = ($1|0)==(0);
-   $29 = $1 | 16;
-   $30 = ($29|0)==(16);
-   $31 = ($$0159|0)==(48);
-   $or$cond5 = $30 & $31;
-   do {
-    if ($or$cond5) {
-     $32 = HEAP32[$7>>2]|0;
-     $33 = HEAP32[$8>>2]|0;
-     $34 = ($32>>>0)<($33>>>0);
-     if ($34) {
-      $35 = ((($32)) + 1|0);
-      HEAP32[$7>>2] = $35;
-      $36 = HEAP8[$32>>0]|0;
-      $37 = $36&255;
-      $40 = $37;
-     } else {
-      $38 = (___shgetc($0)|0);
-      $40 = $38;
-     }
-     $39 = $40 | 32;
-     $41 = ($39|0)==(120);
-     if (!($41)) {
-      if ($28) {
-       $$1160170 = $40;$$1165168 = 8;
-       label = 47;
-       break;
-      } else {
-       $$1160 = $40;$$1165 = $1;
-       label = 32;
-       break;
-      }
-     }
-     $42 = HEAP32[$7>>2]|0;
-     $43 = HEAP32[$8>>2]|0;
-     $44 = ($42>>>0)<($43>>>0);
-     if ($44) {
-      $45 = ((($42)) + 1|0);
-      HEAP32[$7>>2] = $45;
-      $46 = HEAP8[$42>>0]|0;
-      $47 = $46&255;
-      $50 = $47;
-     } else {
-      $48 = (___shgetc($0)|0);
-      $50 = $48;
-     }
-     $49 = ((27681) + ($50)|0);
-     $51 = HEAP8[$49>>0]|0;
-     $52 = ($51&255)>(15);
-     if ($52) {
-      $53 = HEAP32[$8>>2]|0;
-      $54 = ($53|0)==(0|0);
-      if (!($54)) {
-       $55 = HEAP32[$7>>2]|0;
-       $56 = ((($55)) + -1|0);
-       HEAP32[$7>>2] = $56;
-      }
-      $57 = ($2|0)==(0);
-      if ($57) {
-       ___shlim($0,0);
-       $291 = 0;$292 = 0;
-       break L1;
-      }
-      if ($54) {
-       $291 = 0;$292 = 0;
-       break L1;
-      }
-      $58 = HEAP32[$7>>2]|0;
-      $59 = ((($58)) + -1|0);
-      HEAP32[$7>>2] = $59;
-      $291 = 0;$292 = 0;
-      break L1;
-     } else {
-      $$1160170 = $50;$$1165168 = 16;
-      label = 47;
-     }
-    } else {
-     $spec$select166 = $28 ? 10 : $1;
-     $60 = ((27681) + ($$0159)|0);
-     $61 = HEAP8[$60>>0]|0;
-     $62 = $61&255;
-     $63 = ($spec$select166>>>0)>($62>>>0);
-     if ($63) {
-      $$1160 = $$0159;$$1165 = $spec$select166;
-      label = 32;
-     } else {
-      $64 = HEAP32[$8>>2]|0;
-      $65 = ($64|0)==(0|0);
-      if (!($65)) {
-       $66 = HEAP32[$7>>2]|0;
-       $67 = ((($66)) + -1|0);
-       HEAP32[$7>>2] = $67;
-      }
-      ___shlim($0,0);
-      $68 = (___errno_location()|0);
-      HEAP32[$68>>2] = 22;
-      $291 = 0;$292 = 0;
-      break L1;
-     }
-    }
-   } while(0);
-   L43: do {
-    if ((label|0) == 32) {
-     $69 = ($$1165|0)==(10);
-     if ($69) {
-      $70 = (($$1160) + -48)|0;
-      $71 = ($70>>>0)<(10);
-      if ($71) {
-       $$0154215 = 0;$74 = $70;
-       while(1) {
-        $72 = ($$0154215*10)|0;
-        $73 = (($72) + ($74))|0;
-        $75 = HEAP32[$7>>2]|0;
-        $76 = HEAP32[$8>>2]|0;
-        $77 = ($75>>>0)<($76>>>0);
-        if ($77) {
-         $78 = ((($75)) + 1|0);
-         HEAP32[$7>>2] = $78;
-         $79 = HEAP8[$75>>0]|0;
-         $80 = $79&255;
-         $83 = $80;
-        } else {
-         $81 = (___shgetc($0)|0);
-         $83 = $81;
-        }
-        $82 = (($83) + -48)|0;
-        $84 = ($82>>>0)<(10);
-        $85 = ($73>>>0)<(429496729);
-        $86 = $84 & $85;
-        if ($86) {
-         $$0154215 = $73;$74 = $82;
-        } else {
-         break;
-        }
-       }
-       $87 = ($82>>>0)<(10);
-       if ($87) {
-        $$3162208 = $83;$88 = $73;$89 = 0;$93 = $82;
-        while(1) {
-         $90 = (___muldi3(($88|0),($89|0),10,0)|0);
-         $91 = tempRet0;
-         $92 = ($93|0)<(0);
-         $94 = $92 << 31 >> 31;
-         $95 = $93 ^ -1;
-         $96 = $94 ^ -1;
-         $97 = ($91>>>0)>($96>>>0);
-         $98 = ($90>>>0)>($95>>>0);
-         $99 = ($91|0)==($96|0);
-         $100 = $99 & $98;
-         $101 = $97 | $100;
-         if ($101) {
-          $$1165169 = 10;$$8 = $$3162208;$293 = $88;$294 = $89;
-          label = 76;
-          break L43;
-         }
-         $102 = (_i64Add(($90|0),($91|0),($93|0),($94|0))|0);
-         $103 = tempRet0;
-         $104 = HEAP32[$7>>2]|0;
-         $105 = HEAP32[$8>>2]|0;
-         $106 = ($104>>>0)<($105>>>0);
-         if ($106) {
-          $107 = ((($104)) + 1|0);
-          HEAP32[$7>>2] = $107;
-          $108 = HEAP8[$104>>0]|0;
-          $109 = $108&255;
-          $112 = $109;
-         } else {
-          $110 = (___shgetc($0)|0);
-          $112 = $110;
-         }
-         $111 = (($112) + -48)|0;
-         $113 = ($111>>>0)<(10);
-         $114 = ($103>>>0)<(429496729);
-         $115 = ($102>>>0)<(2576980378);
-         $116 = ($103|0)==(429496729);
-         $117 = $116 & $115;
-         $118 = $114 | $117;
-         $or$cond7 = $113 & $118;
-         if ($or$cond7) {
-          $$3162208 = $112;$88 = $102;$89 = $103;$93 = $111;
-         } else {
-          break;
-         }
-        }
-        $119 = ($111>>>0)>(9);
-        if ($119) {
-         $$1158 = $$0157;$265 = $103;$267 = $102;
-        } else {
-         $$1165169 = 10;$$8 = $112;$293 = $102;$294 = $103;
-         label = 76;
-        }
-       } else {
-        $$1158 = $$0157;$265 = 0;$267 = $73;
-       }
-      } else {
-       $$1158 = $$0157;$265 = 0;$267 = 0;
-      }
-     } else {
-      $$1160170 = $$1160;$$1165168 = $$1165;
-      label = 47;
-     }
-    }
-   } while(0);
-   L63: do {
-    if ((label|0) == 47) {
-     $120 = (($$1165168) + -1)|0;
-     $121 = $120 & $$1165168;
-     $122 = ($121|0)==(0);
-     if ($122) {
-      $123 = ($$1165168*23)|0;
-      $124 = $123 >>> 5;
-      $125 = $124 & 7;
-      $126 = (70604 + ($125)|0);
-      $127 = HEAP8[$126>>0]|0;
-      $128 = $127 << 24 >> 24;
-      $129 = ((27681) + ($$1160170)|0);
-      $130 = HEAP8[$129>>0]|0;
-      $131 = $130&255;
-      $132 = ($$1165168>>>0)>($131>>>0);
-      if ($132) {
-       $$1155184 = 0;$135 = $131;
-       while(1) {
-        $133 = $$1155184 << $128;
-        $134 = $135 | $133;
-        $136 = HEAP32[$7>>2]|0;
-        $137 = HEAP32[$8>>2]|0;
-        $138 = ($136>>>0)<($137>>>0);
-        if ($138) {
-         $139 = ((($136)) + 1|0);
-         HEAP32[$7>>2] = $139;
-         $140 = HEAP8[$136>>0]|0;
-         $141 = $140&255;
-         $144 = $141;
-        } else {
-         $142 = (___shgetc($0)|0);
-         $144 = $142;
-        }
-        $143 = ((27681) + ($144)|0);
-        $145 = HEAP8[$143>>0]|0;
-        $146 = $145&255;
-        $147 = ($$1165168>>>0)>($146>>>0);
-        $148 = ($134>>>0)<(134217728);
-        $149 = $148 & $147;
-        if ($149) {
-         $$1155184 = $134;$135 = $146;
-        } else {
-         break;
-        }
-       }
-       $$4163$lcssa = $144;$$pre$phi237Z2D = $146;$154 = 0;$156 = $134;$295 = 
$145;
-      } else {
-       $$4163$lcssa = $$1160170;$$pre$phi237Z2D = $131;$154 = 0;$156 = 0;$295 
= $130;
-      }
-      $150 = (_bitshift64Lshr(-1,-1,($128|0))|0);
-      $151 = tempRet0;
-      $152 = ($$1165168>>>0)<=($$pre$phi237Z2D>>>0);
-      $153 = ($151>>>0)<($154>>>0);
-      $155 = ($150>>>0)<($156>>>0);
-      $157 = ($151|0)==($154|0);
-      $158 = $157 & $155;
-      $159 = $153 | $158;
-      $or$cond179 = $152 | $159;
-      if ($or$cond179) {
-       $$1165169 = $$1165168;$$8 = $$4163$lcssa;$293 = $156;$294 = $154;
-       label = 76;
-       break;
-      }
-      $160 = $156;$161 = $154;$165 = $295;
-      while(1) {
-       $162 = (_bitshift64Shl(($160|0),($161|0),($128|0))|0);
-       $163 = tempRet0;
-       $164 = $165&255;
-       $166 = $162 | $164;
-       $167 = HEAP32[$7>>2]|0;
-       $168 = HEAP32[$8>>2]|0;
-       $169 = ($167>>>0)<($168>>>0);
-       if ($169) {
-        $170 = ((($167)) + 1|0);
-        HEAP32[$7>>2] = $170;
-        $171 = HEAP8[$167>>0]|0;
-        $172 = $171&255;
-        $175 = $172;
-       } else {
-        $173 = (___shgetc($0)|0);
-        $175 = $173;
-       }
-       $174 = ((27681) + ($175)|0);
-       $176 = HEAP8[$174>>0]|0;
-       $177 = $176&255;
-       $178 = ($$1165168>>>0)<=($177>>>0);
-       $179 = ($163>>>0)>($151>>>0);
-       $180 = ($166>>>0)>($150>>>0);
-       $181 = ($163|0)==($151|0);
-       $182 = $181 & $180;
-       $183 = $179 | $182;
-       $or$cond = $178 | $183;
-       if ($or$cond) {
-        $$1165169 = $$1165168;$$8 = $175;$293 = $166;$294 = $163;
-        label = 76;
-        break L63;
-       } else {
-        $160 = $166;$161 = $163;$165 = $176;
-       }
-      }
-     }
-     $184 = ((27681) + ($$1160170)|0);
-     $185 = HEAP8[$184>>0]|0;
-     $186 = $185&255;
-     $187 = ($$1165168>>>0)>($186>>>0);
-     if ($187) {
-      $$2156202 = 0;$190 = $186;
-      while(1) {
-       $188 = Math_imul($$2156202, $$1165168)|0;
-       $189 = (($190) + ($188))|0;
-       $191 = HEAP32[$7>>2]|0;
-       $192 = HEAP32[$8>>2]|0;
-       $193 = ($191>>>0)<($192>>>0);
-       if ($193) {
-        $194 = ((($191)) + 1|0);
-        HEAP32[$7>>2] = $194;
-        $195 = HEAP8[$191>>0]|0;
-        $196 = $195&255;
-        $199 = $196;
-       } else {
-        $197 = (___shgetc($0)|0);
-        $199 = $197;
-       }
-       $198 = ((27681) + ($199)|0);
-       $200 = HEAP8[$198>>0]|0;
-       $201 = $200&255;
-       $202 = ($$1165168>>>0)>($201>>>0);
-       $203 = ($189>>>0)<(119304647);
-       $204 = $203 & $202;
-       if ($204) {
-        $$2156202 = $189;$190 = $201;
-       } else {
-        break;
-       }
-      }
-      $$6$lcssa = $199;$$pre$phi239Z2D = $201;$296 = $200;$297 = $189;$298 = 0;
-     } else {
-      $$6$lcssa = $$1160170;$$pre$phi239Z2D = $186;$296 = $185;$297 = 0;$298 = 
0;
-     }
-     $205 = ($$1165168>>>0)>($$pre$phi239Z2D>>>0);
-     if ($205) {
-      $206 = (___udivdi3(-1,-1,($$1165168|0),0)|0);
-      $207 = tempRet0;
-      $$7190 = $$6$lcssa;$209 = $298;$211 = $297;$218 = $296;
-      while(1) {
-       $208 = ($209>>>0)>($207>>>0);
-       $210 = ($211>>>0)>($206>>>0);
-       $212 = ($209|0)==($207|0);
-       $213 = $212 & $210;
-       $214 = $208 | $213;
-       if ($214) {
-        $$1165169 = $$1165168;$$8 = $$7190;$293 = $211;$294 = $209;
-        label = 76;
-        break L63;
-       }
-       $215 = (___muldi3(($211|0),($209|0),($$1165168|0),0)|0);
-       $216 = tempRet0;
-       $217 = $218&255;
-       $219 = $217 ^ -1;
-       $220 = ($216>>>0)>(4294967295);
-       $221 = ($215>>>0)>($219>>>0);
-       $222 = ($216|0)==(-1);
-       $223 = $222 & $221;
-       $224 = $220 | $223;
-       if ($224) {
-        $$1165169 = $$1165168;$$8 = $$7190;$293 = $211;$294 = $209;
-        label = 76;
-        break L63;
-       }
-       $225 = (_i64Add(($215|0),($216|0),($217|0),0)|0);
-       $226 = tempRet0;
-       $227 = HEAP32[$7>>2]|0;
-       $228 = HEAP32[$8>>2]|0;
-       $229 = ($227>>>0)<($228>>>0);
-       if ($229) {
-        $230 = ((($227)) + 1|0);
-        HEAP32[$7>>2] = $230;
-        $231 = HEAP8[$227>>0]|0;
-        $232 = $231&255;
-        $235 = $232;
-       } else {
-        $233 = (___shgetc($0)|0);
-        $235 = $233;
-       }
-       $234 = ((27681) + ($235)|0);
-       $236 = HEAP8[$234>>0]|0;
-       $237 = $236&255;
-       $238 = ($$1165168>>>0)>($237>>>0);
-       if ($238) {
-        $$7190 = $235;$209 = $226;$211 = $225;$218 = $236;
-       } else {
-        $$1165169 = $$1165168;$$8 = $235;$293 = $225;$294 = $226;
-        label = 76;
-        break;
-       }
-      }
-     } else {
-      $$1165169 = $$1165168;$$8 = $$6$lcssa;$293 = $297;$294 = $298;
-      label = 76;
-     }
-    }
-   } while(0);
-   if ((label|0) == 76) {
-    $239 = ((27681) + ($$8)|0);
-    $240 = HEAP8[$239>>0]|0;
-    $241 = $240&255;
-    $242 = ($$1165169>>>0)>($241>>>0);
-    if ($242) {
-     while(1) {
-      $243 = HEAP32[$7>>2]|0;
-      $244 = HEAP32[$8>>2]|0;
-      $245 = ($243>>>0)<($244>>>0);
-      if ($245) {
-       $246 = ((($243)) + 1|0);
-       HEAP32[$7>>2] = $246;
-       $247 = HEAP8[$243>>0]|0;
-       $248 = $247&255;
-       $251 = $248;
-      } else {
-       $249 = (___shgetc($0)|0);
-       $251 = $249;
-      }
-      $250 = ((27681) + ($251)|0);
-      $252 = HEAP8[$250>>0]|0;
-      $253 = $252&255;
-      $254 = ($$1165169>>>0)>($253>>>0);
-      if (!($254)) {
-       break;
-      }
-     }
-     $255 = (___errno_location()|0);
-     HEAP32[$255>>2] = 34;
-     $256 = $3 & 1;
-     $257 = ($256|0)==(0);
-     $258 = (0)==(0);
-     $259 = $257 & $258;
-     $spec$select167 = $259 ? $$0157 : 0;
-     $$1158 = $spec$select167;$265 = $4;$267 = $3;
-    } else {
-     $$1158 = $$0157;$265 = $294;$267 = $293;
-    }
-   }
-   $260 = HEAP32[$8>>2]|0;
-   $261 = ($260|0)==(0|0);
-   if (!($261)) {
-    $262 = HEAP32[$7>>2]|0;
-    $263 = ((($262)) + -1|0);
-    HEAP32[$7>>2] = $263;
-   }
-   $264 = ($265>>>0)<($4>>>0);
-   $266 = ($267>>>0)<($3>>>0);
-   $268 = ($265|0)==($4|0);
-   $269 = $268 & $266;
-   $270 = $264 | $269;
-   if (!($270)) {
-    $271 = $3 & 1;
-    $272 = ($271|0)!=(0);
-    $273 = (0)!=(0);
-    $274 = $272 | $273;
-    $275 = ($$1158|0)!=(0);
-    $or$cond12 = $274 | $275;
-    if (!($or$cond12)) {
-     $276 = (___errno_location()|0);
-     HEAP32[$276>>2] = 34;
-     $277 = (_i64Add(($3|0),($4|0),-1,-1)|0);
-     $278 = tempRet0;
-     $291 = $278;$292 = $277;
-     break;
-    }
-    $279 = ($265>>>0)>($4>>>0);
-    $280 = ($267>>>0)>($3>>>0);
-    $281 = ($265|0)==($4|0);
-    $282 = $281 & $280;
-    $283 = $279 | $282;
-    if ($283) {
-     $284 = (___errno_location()|0);
-     HEAP32[$284>>2] = 34;
-     $291 = $4;$292 = $3;
-     break;
-    }
-   }
-   $285 = ($$1158|0)<(0);
-   $286 = $285 << 31 >> 31;
-   $287 = $267 ^ $$1158;
-   $288 = $265 ^ $286;
-   $289 = (_i64Subtract(($287|0),($288|0),($$1158|0),($286|0))|0);
-   $290 = tempRet0;
-   $291 = $290;$292 = $289;
-  }
- } while(0);
- tempRet0 = ($291);
- return ($292|0);
-}
-function _pthread_self() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (40680|0);
-}
-function ___uflow($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $1 = sp;
- $2 = (___toread($0)|0);
- $3 = ($2|0)==(0);
- if ($3) {
-  $4 = ((($0)) + 32|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = (FUNCTION_TABLE_iiii[$5 & 127]($0,$1,1)|0);
-  $7 = ($6|0)==(1);
-  if ($7) {
-   $8 = HEAP8[$1>>0]|0;
-   $9 = $8&255;
-   $$0 = $9;
-  } else {
-   $$0 = -1;
-  }
- } else {
-  $$0 = -1;
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _fclose($0) {
- $0 = $0|0;
- var $$pre = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 76|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)>(-1);
- if ($3) {
-  $4 = (___lockfile($0)|0);
-  $30 = $4;
- } else {
-  $30 = 0;
- }
- ___unlist_locked_file($0);
- $5 = HEAP32[$0>>2]|0;
- $6 = $5 & 1;
- $7 = ($6|0)!=(0);
- if (!($7)) {
-  $8 = (___ofl_lock()|0);
-  $9 = ((($0)) + 52|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)==(0|0);
-  $12 = $10;
-  $$pre = ((($0)) + 56|0);
-  if (!($11)) {
-   $13 = HEAP32[$$pre>>2]|0;
-   $14 = ((($10)) + 56|0);
-   HEAP32[$14>>2] = $13;
-  }
-  $15 = HEAP32[$$pre>>2]|0;
-  $16 = ($15|0)==(0|0);
-  $17 = $15;
-  if (!($16)) {
-   $18 = ((($15)) + 52|0);
-   HEAP32[$18>>2] = $12;
-  }
-  $19 = HEAP32[$8>>2]|0;
-  $20 = ($19|0)==($0|0);
-  if ($20) {
-   HEAP32[$8>>2] = $17;
-  }
-  ___ofl_unlock();
- }
- $21 = (_fflush($0)|0);
- $22 = ((($0)) + 12|0);
- $23 = HEAP32[$22>>2]|0;
- $24 = (FUNCTION_TABLE_ii[$23 & 63]($0)|0);
- $25 = $24 | $21;
- $26 = ((($0)) + 92|0);
- $27 = HEAP32[$26>>2]|0;
- $28 = ($27|0)==(0|0);
- if (!($28)) {
-  _free($27);
- }
- if ($7) {
-  $29 = ($30|0)==(0);
-  if (!($29)) {
-   ___unlockfile($0);
-  }
- } else {
-  _free($0);
- }
- return ($25|0);
-}
-function ___unlist_locked_file($0) {
- $0 = $0|0;
- var $$pre = 0, $$sink = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 68|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)==(0);
- if (!($3)) {
-  $4 = ((($0)) + 116|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = ($5|0)==(0|0);
-  $7 = $5;
-  $$pre = ((($0)) + 112|0);
-  if (!($6)) {
-   $8 = HEAP32[$$pre>>2]|0;
-   $9 = ((($5)) + 112|0);
-   HEAP32[$9>>2] = $8;
-  }
-  $10 = HEAP32[$$pre>>2]|0;
-  $11 = ($10|0)==(0|0);
-  if ($11) {
-   $13 = (___pthread_self_41()|0);
-   $14 = ((($13)) + 232|0);
-   $$sink = $14;
-  } else {
-   $12 = ((($10)) + 116|0);
-   $$sink = $12;
-  }
-  HEAP32[$$sink>>2] = $7;
- }
- return;
-}
-function ___ofl_lock() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- ___lock((73276|0));
- return (73284|0);
-}
-function ___ofl_unlock() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- ___unlock((73276|0));
- return;
-}
-function _fflush($0) {
- $0 = $0|0;
- var $$0 = 0, $$023 = 0, $$02325 = 0, $$02327 = 0, $$024$lcssa = 0, $$02426 = 
0, $$1 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 
0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0;
- var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, 
$29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $phitmp = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0|0);
- do {
-  if ($1) {
-   $8 = HEAP32[10137]|0;
-   $9 = ($8|0)==(0|0);
-   if ($9) {
-    $29 = 0;
-   } else {
-    $10 = HEAP32[10137]|0;
-    $11 = (_fflush($10)|0);
-    $29 = $11;
-   }
-   $12 = (___ofl_lock()|0);
-   $$02325 = HEAP32[$12>>2]|0;
-   $13 = ($$02325|0)==(0|0);
-   if ($13) {
-    $$024$lcssa = $29;
-   } else {
-    $$02327 = $$02325;$$02426 = $29;
-    while(1) {
-     $14 = ((($$02327)) + 76|0);
-     $15 = HEAP32[$14>>2]|0;
-     $16 = ($15|0)>(-1);
-     if ($16) {
-      $17 = (___lockfile($$02327)|0);
-      $26 = $17;
-     } else {
-      $26 = 0;
-     }
-     $18 = ((($$02327)) + 20|0);
-     $19 = HEAP32[$18>>2]|0;
-     $20 = ((($$02327)) + 28|0);
-     $21 = HEAP32[$20>>2]|0;
-     $22 = ($19>>>0)>($21>>>0);
-     if ($22) {
-      $23 = (___fflush_unlocked($$02327)|0);
-      $24 = $23 | $$02426;
-      $$1 = $24;
-     } else {
-      $$1 = $$02426;
-     }
-     $25 = ($26|0)==(0);
-     if (!($25)) {
-      ___unlockfile($$02327);
-     }
-     $27 = ((($$02327)) + 56|0);
-     $$023 = HEAP32[$27>>2]|0;
-     $28 = ($$023|0)==(0|0);
-     if ($28) {
-      $$024$lcssa = $$1;
-      break;
-     } else {
-      $$02327 = $$023;$$02426 = $$1;
-     }
-    }
-   }
-   ___ofl_unlock();
-   $$0 = $$024$lcssa;
-  } else {
-   $2 = ((($0)) + 76|0);
-   $3 = HEAP32[$2>>2]|0;
-   $4 = ($3|0)>(-1);
-   if (!($4)) {
-    $5 = (___fflush_unlocked($0)|0);
-    $$0 = $5;
-    break;
-   }
-   $6 = (___lockfile($0)|0);
-   $phitmp = ($6|0)==(0);
-   $7 = (___fflush_unlocked($0)|0);
-   if ($phitmp) {
-    $$0 = $7;
-   } else {
-    ___unlockfile($0);
-    $$0 = $7;
-   }
-  }
- } while(0);
- return ($$0|0);
-}
-function ___fflush_unlocked($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 20|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ((($0)) + 28|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($2>>>0)>($4>>>0);
- if ($5) {
-  $6 = ((($0)) + 36|0);
-  $7 = HEAP32[$6>>2]|0;
-  (FUNCTION_TABLE_iiii[$7 & 127]($0,0,0)|0);
-  $8 = HEAP32[$1>>2]|0;
-  $9 = ($8|0)==(0|0);
-  if ($9) {
-   $$0 = -1;
-  } else {
-   label = 3;
-  }
- } else {
-  label = 3;
- }
- if ((label|0) == 3) {
-  $10 = ((($0)) + 4|0);
-  $11 = HEAP32[$10>>2]|0;
-  $12 = ((($0)) + 8|0);
-  $13 = HEAP32[$12>>2]|0;
-  $14 = ($11>>>0)<($13>>>0);
-  if ($14) {
-   $15 = $11;
-   $16 = $13;
-   $17 = (($15) - ($16))|0;
-   $18 = ((($0)) + 40|0);
-   $19 = HEAP32[$18>>2]|0;
-   (FUNCTION_TABLE_iiii[$19 & 127]($0,$17,1)|0);
-  }
-  $20 = ((($0)) + 16|0);
-  HEAP32[$20>>2] = 0;
-  HEAP32[$3>>2] = 0;
-  HEAP32[$1>>2] = 0;
-  HEAP32[$12>>2] = 0;
-  HEAP32[$10>>2] = 0;
-  $$0 = 0;
- }
- return ($$0|0);
-}
-function ___pthread_self_41() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (_pthread_self()|0);
- return ($0|0);
-}
-function _wctomb($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0|0);
- if ($2) {
-  $$0 = 0;
- } else {
-  $3 = (_wcrtomb($0,$1,0)|0);
-  $$0 = $3;
- }
- return ($$0|0);
-}
-function _wcrtomb($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($0|0)==(0|0);
- do {
-  if ($3) {
-   $$0 = 1;
-  } else {
-   $4 = ($1>>>0)<(128);
-   if ($4) {
-    $5 = $1&255;
-    HEAP8[$0>>0] = $5;
-    $$0 = 1;
-    break;
-   }
-   $6 = (___pthread_self_436()|0);
-   $7 = ((($6)) + 188|0);
-   $8 = HEAP32[$7>>2]|0;
-   $9 = HEAP32[$8>>2]|0;
-   $10 = ($9|0)==(0|0);
-   if ($10) {
-    $11 = $1 & -128;
-    $12 = ($11|0)==(57216);
-    if ($12) {
-     $14 = $1&255;
-     HEAP8[$0>>0] = $14;
-     $$0 = 1;
-     break;
-    } else {
-     $13 = (___errno_location()|0);
-     HEAP32[$13>>2] = 84;
-     $$0 = -1;
-     break;
-    }
-   }
-   $15 = ($1>>>0)<(2048);
-   if ($15) {
-    $16 = $1 >>> 6;
-    $17 = $16 | 192;
-    $18 = $17&255;
-    $19 = ((($0)) + 1|0);
-    HEAP8[$0>>0] = $18;
-    $20 = $1 & 63;
-    $21 = $20 | 128;
-    $22 = $21&255;
-    HEAP8[$19>>0] = $22;
-    $$0 = 2;
-    break;
-   }
-   $23 = ($1>>>0)<(55296);
-   $24 = $1 & -8192;
-   $25 = ($24|0)==(57344);
-   $or$cond = $23 | $25;
-   if ($or$cond) {
-    $26 = $1 >>> 12;
-    $27 = $26 | 224;
-    $28 = $27&255;
-    $29 = ((($0)) + 1|0);
-    HEAP8[$0>>0] = $28;
-    $30 = $1 >>> 6;
-    $31 = $30 & 63;
-    $32 = $31 | 128;
-    $33 = $32&255;
-    $34 = ((($0)) + 2|0);
-    HEAP8[$29>>0] = $33;
-    $35 = $1 & 63;
-    $36 = $35 | 128;
-    $37 = $36&255;
-    HEAP8[$34>>0] = $37;
-    $$0 = 3;
-    break;
-   }
-   $38 = (($1) + -65536)|0;
-   $39 = ($38>>>0)<(1048576);
-   if ($39) {
-    $40 = $1 >>> 18;
-    $41 = $40 | 240;
-    $42 = $41&255;
-    $43 = ((($0)) + 1|0);
-    HEAP8[$0>>0] = $42;
-    $44 = $1 >>> 12;
-    $45 = $44 & 63;
-    $46 = $45 | 128;
-    $47 = $46&255;
-    $48 = ((($0)) + 2|0);
-    HEAP8[$43>>0] = $47;
-    $49 = $1 >>> 6;
-    $50 = $49 & 63;
-    $51 = $50 | 128;
-    $52 = $51&255;
-    $53 = ((($0)) + 3|0);
-    HEAP8[$48>>0] = $52;
-    $54 = $1 & 63;
-    $55 = $54 | 128;
-    $56 = $55&255;
-    HEAP8[$53>>0] = $56;
-    $$0 = 4;
-    break;
-   } else {
-    $57 = (___errno_location()|0);
-    HEAP32[$57>>2] = 84;
-    $$0 = -1;
-    break;
-   }
-  }
- } while(0);
- return ($$0|0);
-}
-function ___pthread_self_436() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (_pthread_self()|0);
- return ($0|0);
-}
-function _memchr($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa = 0, $$035$lcssa = 0, $$035$lcssa65 = 0, $$03555 = 0, 
$$036$lcssa = 0, $$036$lcssa64 = 0, $$03654 = 0, $$046 = 0, $$137$lcssa = 0, 
$$137$lcssa66 = 0, $$13745 = 0, $$140 = 0, $$23839 = 0, $$in = 0, $$lcssa = 0, 
$10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0;
- var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, 
$23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $32 = 0, $33 = 0;
- var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond53 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = $1 & 255;
- $4 = $0;
- $5 = $4 & 3;
- $6 = ($5|0)!=(0);
- $7 = ($2|0)!=(0);
- $or$cond53 = $7 & $6;
- L1: do {
-  if ($or$cond53) {
-   $8 = $1&255;
-   $$03555 = $0;$$03654 = $2;
-   while(1) {
-    $9 = HEAP8[$$03555>>0]|0;
-    $10 = ($9<<24>>24)==($8<<24>>24);
-    if ($10) {
-     $$035$lcssa65 = $$03555;$$036$lcssa64 = $$03654;
-     label = 6;
-     break L1;
-    }
-    $11 = ((($$03555)) + 1|0);
-    $12 = (($$03654) + -1)|0;
-    $13 = $11;
-    $14 = $13 & 3;
-    $15 = ($14|0)!=(0);
-    $16 = ($12|0)!=(0);
-    $or$cond = $16 & $15;
-    if ($or$cond) {
-     $$03555 = $11;$$03654 = $12;
-    } else {
-     $$035$lcssa = $11;$$036$lcssa = $12;$$lcssa = $16;
-     label = 5;
-     break;
-    }
-   }
-  } else {
-   $$035$lcssa = $0;$$036$lcssa = $2;$$lcssa = $7;
-   label = 5;
-  }
- } while(0);
- if ((label|0) == 5) {
-  if ($$lcssa) {
-   $$035$lcssa65 = $$035$lcssa;$$036$lcssa64 = $$036$lcssa;
-   label = 6;
-  } else {
-   label = 16;
-  }
- }
- L8: do {
-  if ((label|0) == 6) {
-   $17 = HEAP8[$$035$lcssa65>>0]|0;
-   $18 = $1&255;
-   $19 = ($17<<24>>24)==($18<<24>>24);
-   if ($19) {
-    $38 = ($$036$lcssa64|0)==(0);
-    if ($38) {
-     label = 16;
-     break;
-    } else {
-     $39 = $$035$lcssa65;
-     break;
-    }
-   }
-   $20 = Math_imul($3, 16843009)|0;
-   $21 = ($$036$lcssa64>>>0)>(3);
-   L13: do {
-    if ($21) {
-     $$046 = $$035$lcssa65;$$13745 = $$036$lcssa64;
-     while(1) {
-      $22 = HEAP32[$$046>>2]|0;
-      $23 = $22 ^ $20;
-      $24 = (($23) + -16843009)|0;
-      $25 = $23 & -2139062144;
-      $26 = $25 ^ -2139062144;
-      $27 = $26 & $24;
-      $28 = ($27|0)==(0);
-      if (!($28)) {
-       $$137$lcssa66 = $$13745;$$in = $$046;
-       break L13;
-      }
-      $29 = ((($$046)) + 4|0);
-      $30 = (($$13745) + -4)|0;
-      $31 = ($30>>>0)>(3);
-      if ($31) {
-       $$046 = $29;$$13745 = $30;
-      } else {
-       $$0$lcssa = $29;$$137$lcssa = $30;
-       label = 11;
-       break;
-      }
-     }
-    } else {
-     $$0$lcssa = $$035$lcssa65;$$137$lcssa = $$036$lcssa64;
-     label = 11;
-    }
-   } while(0);
-   if ((label|0) == 11) {
-    $32 = ($$137$lcssa|0)==(0);
-    if ($32) {
-     label = 16;
-     break;
-    } else {
-     $$137$lcssa66 = $$137$lcssa;$$in = $$0$lcssa;
-    }
-   }
-   $$140 = $$in;$$23839 = $$137$lcssa66;
-   while(1) {
-    $33 = HEAP8[$$140>>0]|0;
-    $34 = ($33<<24>>24)==($18<<24>>24);
-    if ($34) {
-     $39 = $$140;
-     break L8;
-    }
-    $35 = ((($$140)) + 1|0);
-    $36 = (($$23839) + -1)|0;
-    $37 = ($36|0)==(0);
-    if ($37) {
-     label = 16;
-     break;
-    } else {
-     $$140 = $35;$$23839 = $36;
-    }
-   }
-  }
- } while(0);
- if ((label|0) == 16) {
-  $39 = 0;
- }
- return ($39|0);
-}
-function _iswspace($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $phitmp = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(0);
- if ($1) {
-  $4 = 0;
- } else {
-  $2 = (_wcschr(30336,$0)|0);
-  $3 = ($2|0)!=(0|0);
-  $phitmp = $3&1;
-  $4 = $phitmp;
- }
- return ($4|0);
-}
-function _iswdigit($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + -48)|0;
- $2 = ($1>>>0)<(10);
- $3 = $2&1;
- return ($3|0);
-}
-function _snprintf($0,$1,$2,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $varargs = $varargs|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- HEAP32[$3>>2] = $varargs;
- $4 = (_vsnprintf($0,$1,$2,$3)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _vsnprintf($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $$014 = 0, $$015 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0, $4 = 0;
- var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$select = 0, dest = 0, label 
= 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $4 = sp + 124|0;
- $5 = sp;
- dest=$5; src=40924; stop=dest+124|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; 
dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));
- $6 = (($1) + -1)|0;
- $7 = ($6>>>0)>(2147483646);
- if ($7) {
-  $8 = ($1|0)==(0);
-  if ($8) {
-   $$014 = $4;$$015 = 1;
-   label = 4;
-  } else {
-   $9 = (___errno_location()|0);
-   HEAP32[$9>>2] = 75;
-   $$0 = -1;
-  }
- } else {
-  $$014 = $0;$$015 = $1;
-  label = 4;
- }
- if ((label|0) == 4) {
-  $10 = $$014;
-  $11 = (-2 - ($10))|0;
-  $12 = ($$015>>>0)>($11>>>0);
-  $spec$select = $12 ? $11 : $$015;
-  $13 = ((($5)) + 48|0);
-  HEAP32[$13>>2] = $spec$select;
-  $14 = ((($5)) + 20|0);
-  HEAP32[$14>>2] = $$014;
-  $15 = ((($5)) + 44|0);
-  HEAP32[$15>>2] = $$014;
-  $16 = (($$014) + ($spec$select)|0);
-  $17 = ((($5)) + 16|0);
-  HEAP32[$17>>2] = $16;
-  $18 = ((($5)) + 28|0);
-  HEAP32[$18>>2] = $16;
-  $19 = (_vfprintf($5,$2,$3)|0);
-  $20 = ($spec$select|0)==(0);
-  if ($20) {
-   $$0 = $19;
-  } else {
-   $21 = HEAP32[$14>>2]|0;
-   $22 = HEAP32[$17>>2]|0;
-   $23 = ($21|0)==($22|0);
-   $24 = $23 << 31 >> 31;
-   $25 = (($21) + ($24)|0);
-   HEAP8[$25>>0] = 0;
-   $$0 = $19;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _vfprintf($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 
0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var $spec$select = 0, $spec$select41 = 0, $vacopy_currentptr = 0, dest = 0, 
label = 0, sp = 0, stop = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(224|0);
- $3 = sp + 208|0;
- $4 = sp + 160|0;
- $5 = sp + 80|0;
- $6 = sp;
- dest=$4; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while 
((dest|0) < (stop|0));
- $vacopy_currentptr = HEAP32[$2>>2]|0;
- HEAP32[$3>>2] = $vacopy_currentptr;
- $7 = (_printf_core(0,$1,$3,$5,$4)|0);
- $8 = ($7|0)<(0);
- if ($8) {
-  $$0 = -1;
- } else {
-  $9 = ((($0)) + 76|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ($10|0)>(-1);
-  if ($11) {
-   $12 = (___lockfile($0)|0);
-   $40 = $12;
-  } else {
-   $40 = 0;
-  }
-  $13 = HEAP32[$0>>2]|0;
-  $14 = $13 & 32;
-  $15 = ((($0)) + 74|0);
-  $16 = HEAP8[$15>>0]|0;
-  $17 = ($16<<24>>24)<(1);
-  if ($17) {
-   $18 = $13 & -33;
-   HEAP32[$0>>2] = $18;
-  }
-  $19 = ((($0)) + 48|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   $23 = ((($0)) + 44|0);
-   $24 = HEAP32[$23>>2]|0;
-   HEAP32[$23>>2] = $6;
-   $25 = ((($0)) + 28|0);
-   HEAP32[$25>>2] = $6;
-   $26 = ((($0)) + 20|0);
-   HEAP32[$26>>2] = $6;
-   HEAP32[$19>>2] = 80;
-   $27 = ((($6)) + 80|0);
-   $28 = ((($0)) + 16|0);
-   HEAP32[$28>>2] = $27;
-   $29 = (_printf_core($0,$1,$3,$5,$4)|0);
-   $30 = ($24|0)==(0|0);
-   if ($30) {
-    $$1 = $29;
-   } else {
-    $31 = ((($0)) + 36|0);
-    $32 = HEAP32[$31>>2]|0;
-    (FUNCTION_TABLE_iiii[$32 & 127]($0,0,0)|0);
-    $33 = HEAP32[$26>>2]|0;
-    $34 = ($33|0)==(0|0);
-    $spec$select = $34 ? -1 : $29;
-    HEAP32[$23>>2] = $24;
-    HEAP32[$19>>2] = 0;
-    HEAP32[$28>>2] = 0;
-    HEAP32[$25>>2] = 0;
-    HEAP32[$26>>2] = 0;
-    $$1 = $spec$select;
-   }
-  } else {
-   $22 = (_printf_core($0,$1,$3,$5,$4)|0);
-   $$1 = $22;
-  }
-  $35 = HEAP32[$0>>2]|0;
-  $36 = $35 & 32;
-  $37 = ($36|0)==(0);
-  $spec$select41 = $37 ? $$1 : -1;
-  $38 = $35 | $14;
-  HEAP32[$0>>2] = $38;
-  $39 = ($40|0)==(0);
-  if (!($39)) {
-   ___unlockfile($0);
-  }
-  $$0 = $spec$select41;
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _printf_core($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$0 = 0, $$0228 = 0, $$0229334 = 0, $$0232 = 0, $$0235 = 0, 
$$0237 = 0, $$0240313 = 0, $$0240313371 = 0, $$0240333 = 0, $$0243 = 0, 
$$0243$ph = 0, $$0243$ph$be = 0, $$0247 = 0, $$0247$ph = 0, $$0249$lcssa = 0, 
$$0249321 = 0, $$0252 = 0, $$0253 = 0, $$0254 = 0;
- var $$0259 = 0, $$0262$lcssa = 0, $$0262328 = 0, $$0269$ph = 0, $$1 = 0, 
$$1230340 = 0, $$1233 = 0, $$1236 = 0, $$1238 = 0, $$1241339 = 0, $$1248 = 0, 
$$1250 = 0, $$1255 = 0, $$1260 = 0, $$1263 = 0, $$1270 = 0, $$2 = 0, $$2234 = 
0, $$2239 = 0, $$2242320 = 0;
- var $$2256 = 0, $$2256$ = 0, $$2261 = 0, $$2271 = 0, $$3257 = 0, $$3265 = 0, 
$$3272 = 0, $$3317 = 0, $$4258370 = 0, $$4266 = 0, $$5 = 0, $$6268 = 0, 
$$lcssa308 = 0, $$pre = 0, $$pre$phiZ2D = 0, $$pre360 = 0, $$pre362 = 0, 
$$pre363 = 0, $$pre363$pre = 0, $$pre364 = 0;
- var $$pre368 = 0, $$sink = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 
0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 
0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 
= 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 
= 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0;
- var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 
= 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 
= 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0;
- var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, 
$159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, 
$166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0;
- var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, 
$177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, 
$184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0;
- var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 
= 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 
= 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0;
- var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 
= 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 
= 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0;
- var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 
= 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 
= 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0;
- var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 
= 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 
= 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0;
- var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, 
$268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, 
$275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0;
- var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 
= 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 
= 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0;
- var $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 
= 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 
= 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0;
- var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 
= 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 
= 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0;
- var $334 = 0, $335 = 0, $336 = 0.0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, 
$340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, 
$348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0;
- var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, 
$359 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 
0, $44 = 0, $45 = 0, $46 = 0, $47 = 0;
- var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, 
$63 = 0, $64 = 0, $65 = 0;
- var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, 
$81 = 0, $82 = 0, $83 = 0;
- var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 
0, $arglist_current = 0, $arglist_current2 = 0, $arglist_next = 0;
- var $arglist_next3 = 0, $brmerge = 0, $brmerge326 = 0, $expanded = 0, 
$expanded10 = 0, $expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 
= 0, $expanded4 = 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $or$cond = 
0, $or$cond276 = 0, $or$cond278 = 0, $or$cond283 = 0, $spec$select = 0, 
$spec$select281 = 0, $spec$select284 = 0;
- var $spec$select291 = 0, $spec$select292 = 0, $spec$select293 = 0, 
$spec$select294 = 0, $spec$select295 = 0, $spec$select296 = 0, $spec$select297 
= 0, $spec$select298 = 0, $spec$select299 = 0, $storemerge273$lcssa = 0, 
$storemerge273327 = 0, $storemerge274 = 0, $trunc = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $5 = sp + 56|0;
- $6 = sp + 40|0;
- $7 = sp;
- $8 = sp + 48|0;
- $9 = sp + 60|0;
- HEAP32[$5>>2] = $1;
- $10 = ($0|0)!=(0|0);
- $11 = ((($7)) + 40|0);
- $12 = $11;
- $13 = ((($7)) + 39|0);
- $14 = ((($8)) + 4|0);
- $$0243$ph = 0;$$0247$ph = 0;$$0269$ph = 0;
- L1: while(1) {
-  $$0243 = $$0243$ph;$$0247 = $$0247$ph;
-  while(1) {
-   $15 = ($$0247|0)>(-1);
-   do {
-    if ($15) {
-     $16 = (2147483647 - ($$0247))|0;
-     $17 = ($$0243|0)>($16|0);
-     if ($17) {
-      $18 = (___errno_location()|0);
-      HEAP32[$18>>2] = 75;
-      $$1248 = -1;
-      break;
-     } else {
-      $19 = (($$0243) + ($$0247))|0;
-      $$1248 = $19;
-      break;
-     }
-    } else {
-     $$1248 = $$0247;
-    }
-   } while(0);
-   $20 = HEAP32[$5>>2]|0;
-   $21 = HEAP8[$20>>0]|0;
-   $22 = ($21<<24>>24)==(0);
-   if ($22) {
-    label = 94;
-    break L1;
-   }
-   $23 = $21;$25 = $20;
-   L12: while(1) {
-    switch ($23<<24>>24) {
-    case 37:  {
-     label = 10;
-     break L12;
-     break;
-    }
-    case 0:  {
-     $$0249$lcssa = $25;
-     break L12;
-     break;
-    }
-    default: {
-    }
-    }
-    $24 = ((($25)) + 1|0);
-    HEAP32[$5>>2] = $24;
-    $$pre = HEAP8[$24>>0]|0;
-    $23 = $$pre;$25 = $24;
-   }
-   L15: do {
-    if ((label|0) == 10) {
-     label = 0;
-     $$0249321 = $25;$27 = $25;
-     while(1) {
-      $26 = ((($27)) + 1|0);
-      $28 = HEAP8[$26>>0]|0;
-      $29 = ($28<<24>>24)==(37);
-      if (!($29)) {
-       $$0249$lcssa = $$0249321;
-       break L15;
-      }
-      $30 = ((($$0249321)) + 1|0);
-      $31 = ((($27)) + 2|0);
-      HEAP32[$5>>2] = $31;
-      $32 = HEAP8[$31>>0]|0;
-      $33 = ($32<<24>>24)==(37);
-      if ($33) {
-       $$0249321 = $30;$27 = $31;
-      } else {
-       $$0249$lcssa = $30;
-       break;
-      }
-     }
-    }
-   } while(0);
-   $34 = $$0249$lcssa;
-   $35 = $20;
-   $36 = (($34) - ($35))|0;
-   if ($10) {
-    _out($0,$20,$36);
-   }
-   $37 = ($36|0)==(0);
-   if ($37) {
-    break;
-   } else {
-    $$0243 = $36;$$0247 = $$1248;
-   }
-  }
-  $38 = HEAP32[$5>>2]|0;
-  $39 = ((($38)) + 1|0);
-  $40 = HEAP8[$39>>0]|0;
-  $41 = $40 << 24 >> 24;
-  $42 = (_isdigit($41)|0);
-  $43 = ($42|0)==(0);
-  $$pre360 = HEAP32[$5>>2]|0;
-  if ($43) {
-   $$0253 = -1;$$1270 = $$0269$ph;$$sink = 1;
-  } else {
-   $44 = ((($$pre360)) + 2|0);
-   $45 = HEAP8[$44>>0]|0;
-   $46 = ($45<<24>>24)==(36);
-   if ($46) {
-    $47 = ((($$pre360)) + 1|0);
-    $48 = HEAP8[$47>>0]|0;
-    $49 = $48 << 24 >> 24;
-    $50 = (($49) + -48)|0;
-    $$0253 = $50;$$1270 = 1;$$sink = 3;
-   } else {
-    $$0253 = -1;$$1270 = $$0269$ph;$$sink = 1;
-   }
-  }
-  $51 = (($$pre360) + ($$sink)|0);
-  HEAP32[$5>>2] = $51;
-  $52 = HEAP8[$51>>0]|0;
-  $53 = $52 << 24 >> 24;
-  $54 = (($53) + -32)|0;
-  $55 = ($54>>>0)>(31);
-  $56 = 1 << $54;
-  $57 = $56 & 75913;
-  $58 = ($57|0)==(0);
-  $brmerge326 = $55 | $58;
-  if ($brmerge326) {
-   $$0262$lcssa = 0;$$lcssa308 = $52;$storemerge273$lcssa = $51;
-  } else {
-   $$0262328 = 0;$60 = $54;$storemerge273327 = $51;
-   while(1) {
-    $59 = 1 << $60;
-    $61 = $59 | $$0262328;
-    $62 = ((($storemerge273327)) + 1|0);
-    HEAP32[$5>>2] = $62;
-    $63 = HEAP8[$62>>0]|0;
-    $64 = $63 << 24 >> 24;
-    $65 = (($64) + -32)|0;
-    $66 = ($65>>>0)>(31);
-    $67 = 1 << $65;
-    $68 = $67 & 75913;
-    $69 = ($68|0)==(0);
-    $brmerge = $66 | $69;
-    if ($brmerge) {
-     $$0262$lcssa = $61;$$lcssa308 = $63;$storemerge273$lcssa = $62;
-     break;
-    } else {
-     $$0262328 = $61;$60 = $65;$storemerge273327 = $62;
-    }
-   }
-  }
-  $70 = ($$lcssa308<<24>>24)==(42);
-  if ($70) {
-   $71 = ((($storemerge273$lcssa)) + 1|0);
-   $72 = HEAP8[$71>>0]|0;
-   $73 = $72 << 24 >> 24;
-   $74 = (_isdigit($73)|0);
-   $75 = ($74|0)==(0);
-   if ($75) {
-    label = 27;
-   } else {
-    $76 = HEAP32[$5>>2]|0;
-    $77 = ((($76)) + 2|0);
-    $78 = HEAP8[$77>>0]|0;
-    $79 = ($78<<24>>24)==(36);
-    if ($79) {
-     $80 = ((($76)) + 1|0);
-     $81 = HEAP8[$80>>0]|0;
-     $82 = $81 << 24 >> 24;
-     $83 = (($82) + -48)|0;
-     $84 = (($4) + ($83<<2)|0);
-     HEAP32[$84>>2] = 10;
-     $85 = HEAP8[$80>>0]|0;
-     $86 = $85 << 24 >> 24;
-     $87 = (($86) + -48)|0;
-     $88 = (($3) + ($87<<3)|0);
-     $89 = $88;
-     $90 = $89;
-     $91 = HEAP32[$90>>2]|0;
-     $92 = (($89) + 4)|0;
-     $93 = $92;
-     $94 = HEAP32[$93>>2]|0;
-     $95 = ((($76)) + 3|0);
-     $$0259 = $91;$$2271 = 1;$storemerge274 = $95;
-    } else {
-     label = 27;
-    }
-   }
-   if ((label|0) == 27) {
-    label = 0;
-    $96 = ($$1270|0)==(0);
-    if (!($96)) {
-     $$0 = -1;
-     break;
-    }
-    if ($10) {
-     $arglist_current = HEAP32[$2>>2]|0;
-     $97 = $arglist_current;
-     $98 = ((0) + 4|0);
-     $expanded4 = $98;
-     $expanded = (($expanded4) - 1)|0;
-     $99 = (($97) + ($expanded))|0;
-     $100 = ((0) + 4|0);
-     $expanded8 = $100;
-     $expanded7 = (($expanded8) - 1)|0;
-     $expanded6 = $expanded7 ^ -1;
-     $101 = $99 & $expanded6;
-     $102 = $101;
-     $103 = HEAP32[$102>>2]|0;
-     $arglist_next = ((($102)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next;
-     $358 = $103;
-    } else {
-     $358 = 0;
-    }
-    $104 = HEAP32[$5>>2]|0;
-    $105 = ((($104)) + 1|0);
-    $$0259 = $358;$$2271 = 0;$storemerge274 = $105;
-   }
-   HEAP32[$5>>2] = $storemerge274;
-   $106 = ($$0259|0)<(0);
-   $107 = $$0262$lcssa | 8192;
-   $108 = (0 - ($$0259))|0;
-   $spec$select291 = $106 ? $107 : $$0262$lcssa;
-   $spec$select292 = $106 ? $108 : $$0259;
-   $$1260 = $spec$select292;$$1263 = $spec$select291;$$3272 = $$2271;$112 = 
$storemerge274;
-  } else {
-   $109 = (_getint($5)|0);
-   $110 = ($109|0)<(0);
-   if ($110) {
-    $$0 = -1;
-    break;
-   }
-   $$pre362 = HEAP32[$5>>2]|0;
-   $$1260 = $109;$$1263 = $$0262$lcssa;$$3272 = $$1270;$112 = $$pre362;
-  }
-  $111 = HEAP8[$112>>0]|0;
-  $113 = ($111<<24>>24)==(46);
-  do {
-   if ($113) {
-    $114 = ((($112)) + 1|0);
-    $115 = HEAP8[$114>>0]|0;
-    $116 = ($115<<24>>24)==(42);
-    if (!($116)) {
-     HEAP32[$5>>2] = $114;
-     $152 = (_getint($5)|0);
-     $$pre363$pre = HEAP32[$5>>2]|0;
-     $$0254 = $152;$$pre363 = $$pre363$pre;
-     break;
-    }
-    $117 = ((($112)) + 2|0);
-    $118 = HEAP8[$117>>0]|0;
-    $119 = $118 << 24 >> 24;
-    $120 = (_isdigit($119)|0);
-    $121 = ($120|0)==(0);
-    if (!($121)) {
-     $122 = HEAP32[$5>>2]|0;
-     $123 = ((($122)) + 3|0);
-     $124 = HEAP8[$123>>0]|0;
-     $125 = ($124<<24>>24)==(36);
-     if ($125) {
-      $126 = ((($122)) + 2|0);
-      $127 = HEAP8[$126>>0]|0;
-      $128 = $127 << 24 >> 24;
-      $129 = (($128) + -48)|0;
-      $130 = (($4) + ($129<<2)|0);
-      HEAP32[$130>>2] = 10;
-      $131 = HEAP8[$126>>0]|0;
-      $132 = $131 << 24 >> 24;
-      $133 = (($132) + -48)|0;
-      $134 = (($3) + ($133<<3)|0);
-      $135 = $134;
-      $136 = $135;
-      $137 = HEAP32[$136>>2]|0;
-      $138 = (($135) + 4)|0;
-      $139 = $138;
-      $140 = HEAP32[$139>>2]|0;
-      $141 = ((($122)) + 4|0);
-      HEAP32[$5>>2] = $141;
-      $$0254 = $137;$$pre363 = $141;
-      break;
-     }
-    }
-    $142 = ($$3272|0)==(0);
-    if (!($142)) {
-     $$0 = -1;
-     break L1;
-    }
-    if ($10) {
-     $arglist_current2 = HEAP32[$2>>2]|0;
-     $143 = $arglist_current2;
-     $144 = ((0) + 4|0);
-     $expanded11 = $144;
-     $expanded10 = (($expanded11) - 1)|0;
-     $145 = (($143) + ($expanded10))|0;
-     $146 = ((0) + 4|0);
-     $expanded15 = $146;
-     $expanded14 = (($expanded15) - 1)|0;
-     $expanded13 = $expanded14 ^ -1;
-     $147 = $145 & $expanded13;
-     $148 = $147;
-     $149 = HEAP32[$148>>2]|0;
-     $arglist_next3 = ((($148)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next3;
-     $359 = $149;
-    } else {
-     $359 = 0;
-    }
-    $150 = HEAP32[$5>>2]|0;
-    $151 = ((($150)) + 2|0);
-    HEAP32[$5>>2] = $151;
-    $$0254 = $359;$$pre363 = $151;
-   } else {
-    $$0254 = -1;$$pre363 = $112;
-   }
-  } while(0);
-  $$0252 = 0;$154 = $$pre363;
-  while(1) {
-   $153 = HEAP8[$154>>0]|0;
-   $155 = $153 << 24 >> 24;
-   $156 = (($155) + -65)|0;
-   $157 = ($156>>>0)>(57);
-   if ($157) {
-    $$0 = -1;
-    break L1;
-   }
-   $158 = ((($154)) + 1|0);
-   HEAP32[$5>>2] = $158;
-   $159 = HEAP8[$154>>0]|0;
-   $160 = $159 << 24 >> 24;
-   $161 = (($160) + -65)|0;
-   $162 = ((27952 + (($$0252*58)|0)|0) + ($161)|0);
-   $163 = HEAP8[$162>>0]|0;
-   $164 = $163&255;
-   $165 = (($164) + -1)|0;
-   $166 = ($165>>>0)<(8);
-   if ($166) {
-    $$0252 = $164;$154 = $158;
-   } else {
-    break;
-   }
-  }
-  $167 = ($163<<24>>24)==(0);
-  if ($167) {
-   $$0 = -1;
-   break;
-  }
-  $168 = ($163<<24>>24)==(19);
-  $169 = ($$0253|0)>(-1);
-  do {
-   if ($168) {
-    if ($169) {
-     $$0 = -1;
-     break L1;
-    } else {
-     label = 54;
-    }
-   } else {
-    if ($169) {
-     $170 = (($4) + ($$0253<<2)|0);
-     HEAP32[$170>>2] = $164;
-     $171 = (($3) + ($$0253<<3)|0);
-     $172 = $171;
-     $173 = $172;
-     $174 = HEAP32[$173>>2]|0;
-     $175 = (($172) + 4)|0;
-     $176 = $175;
-     $177 = HEAP32[$176>>2]|0;
-     $178 = $6;
-     $179 = $178;
-     HEAP32[$179>>2] = $174;
-     $180 = (($178) + 4)|0;
-     $181 = $180;
-     HEAP32[$181>>2] = $177;
-     label = 54;
-     break;
-    }
-    if (!($10)) {
-     $$0 = 0;
-     break L1;
-    }
-    _pop_arg($6,$164,$2);
-    $$pre364 = HEAP32[$5>>2]|0;
-    $183 = $$pre364;
-    label = 55;
-   }
-  } while(0);
-  if ((label|0) == 54) {
-   label = 0;
-   if ($10) {
-    $183 = $158;
-    label = 55;
-   } else {
-    $$0243$ph$be = 0;
-   }
-  }
-  L77: do {
-   if ((label|0) == 55) {
-    label = 0;
-    $182 = ((($183)) + -1|0);
-    $184 = HEAP8[$182>>0]|0;
-    $185 = $184 << 24 >> 24;
-    $186 = ($$0252|0)!=(0);
-    $187 = $185 & 15;
-    $188 = ($187|0)==(3);
-    $or$cond276 = $186 & $188;
-    $189 = $185 & -33;
-    $$0235 = $or$cond276 ? $189 : $185;
-    $190 = $$1263 & 8192;
-    $191 = ($190|0)==(0);
-    $192 = $$1263 & -65537;
-    $spec$select = $191 ? $$1263 : $192;
-    L79: do {
-     switch ($$0235|0) {
-     case 110:  {
-      $trunc = $$0252&255;
-      switch ($trunc<<24>>24) {
-      case 0:  {
-       $199 = HEAP32[$6>>2]|0;
-       HEAP32[$199>>2] = $$1248;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 1:  {
-       $200 = HEAP32[$6>>2]|0;
-       HEAP32[$200>>2] = $$1248;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 2:  {
-       $201 = ($$1248|0)<(0);
-       $202 = $201 << 31 >> 31;
-       $203 = HEAP32[$6>>2]|0;
-       $204 = $203;
-       $205 = $204;
-       HEAP32[$205>>2] = $$1248;
-       $206 = (($204) + 4)|0;
-       $207 = $206;
-       HEAP32[$207>>2] = $202;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 3:  {
-       $208 = $$1248&65535;
-       $209 = HEAP32[$6>>2]|0;
-       HEAP16[$209>>1] = $208;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 4:  {
-       $210 = $$1248&255;
-       $211 = HEAP32[$6>>2]|0;
-       HEAP8[$211>>0] = $210;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 6:  {
-       $212 = HEAP32[$6>>2]|0;
-       HEAP32[$212>>2] = $$1248;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      case 7:  {
-       $213 = ($$1248|0)<(0);
-       $214 = $213 << 31 >> 31;
-       $215 = HEAP32[$6>>2]|0;
-       $216 = $215;
-       $217 = $216;
-       HEAP32[$217>>2] = $$1248;
-       $218 = (($216) + 4)|0;
-       $219 = $218;
-       HEAP32[$219>>2] = $214;
-       $$0243$ph$be = 0;
-       break L77;
-       break;
-      }
-      default: {
-       $$0243$ph$be = 0;
-       break L77;
-      }
-      }
-      break;
-     }
-     case 112:  {
-      $220 = ($$0254>>>0)>(8);
-      $221 = $220 ? $$0254 : 8;
-      $222 = $spec$select | 8;
-      $$1236 = 120;$$1255 = $221;$$3265 = $222;
-      label = 67;
-      break;
-     }
-     case 88: case 120:  {
-      $$1236 = $$0235;$$1255 = $$0254;$$3265 = $spec$select;
-      label = 67;
-      break;
-     }
-     case 111:  {
-      $238 = $6;
-      $239 = $238;
-      $240 = HEAP32[$239>>2]|0;
-      $241 = (($238) + 4)|0;
-      $242 = $241;
-      $243 = HEAP32[$242>>2]|0;
-      $244 = (_fmt_o($240,$243,$11)|0);
-      $245 = $spec$select & 8;
-      $246 = ($245|0)==(0);
-      $247 = $244;
-      $248 = (($12) - ($247))|0;
-      $249 = ($$0254|0)>($248|0);
-      $250 = (($248) + 1)|0;
-      $251 = $246 | $249;
-      $spec$select295 = $251 ? $$0254 : $250;
-      $$0228 = $244;$$1233 = 0;$$1238 = 70613;$$2256 = $spec$select295;$$4266 
= $spec$select;$277 = $240;$279 = $243;
-      label = 73;
-      break;
-     }
-     case 105: case 100:  {
-      $252 = $6;
-      $253 = $252;
-      $254 = HEAP32[$253>>2]|0;
-      $255 = (($252) + 4)|0;
-      $256 = $255;
-      $257 = HEAP32[$256>>2]|0;
-      $258 = ($257|0)<(0);
-      if ($258) {
-       $259 = (_i64Subtract(0,0,($254|0),($257|0))|0);
-       $260 = tempRet0;
-       $261 = $6;
-       $262 = $261;
-       HEAP32[$262>>2] = $259;
-       $263 = (($261) + 4)|0;
-       $264 = $263;
-       HEAP32[$264>>2] = $260;
-       $$0232 = 1;$$0237 = 70613;$271 = $259;$272 = $260;
-       label = 72;
-       break L79;
-      } else {
-       $265 = $spec$select & 2048;
-       $266 = ($265|0)==(0);
-       $267 = $spec$select & 1;
-       $268 = ($267|0)==(0);
-       $$ = $268 ? 70613 : (70615);
-       $spec$select296 = $266 ? $$ : (70614);
-       $269 = $spec$select & 2049;
-       $270 = ($269|0)!=(0);
-       $spec$select297 = $270&1;
-       $$0232 = $spec$select297;$$0237 = $spec$select296;$271 = $254;$272 = 
$257;
-       label = 72;
-       break L79;
-      }
-      break;
-     }
-     case 117:  {
-      $193 = $6;
-      $194 = $193;
-      $195 = HEAP32[$194>>2]|0;
-      $196 = (($193) + 4)|0;
-      $197 = $196;
-      $198 = HEAP32[$197>>2]|0;
-      $$0232 = 0;$$0237 = 70613;$271 = $195;$272 = $198;
-      label = 72;
-      break;
-     }
-     case 99:  {
-      $288 = $6;
-      $289 = $288;
-      $290 = HEAP32[$289>>2]|0;
-      $291 = (($288) + 4)|0;
-      $292 = $291;
-      $293 = HEAP32[$292>>2]|0;
-      $294 = $290&255;
-      HEAP8[$13>>0] = $294;
-      $$2 = $13;$$2234 = 0;$$2239 = 70613;$$5 = 1;$$6268 = $192;$$pre$phiZ2D = 
$12;
-      break;
-     }
-     case 109:  {
-      $295 = (___errno_location()|0);
-      $296 = HEAP32[$295>>2]|0;
-      $297 = (_strerror($296)|0);
-      $$1 = $297;
-      label = 77;
-      break;
-     }
-     case 115:  {
-      $298 = HEAP32[$6>>2]|0;
-      $299 = ($298|0)==(0|0);
-      $300 = $299 ? 70623 : $298;
-      $$1 = $300;
-      label = 77;
-      break;
-     }
-     case 67:  {
-      $307 = $6;
-      $308 = $307;
-      $309 = HEAP32[$308>>2]|0;
-      $310 = (($307) + 4)|0;
-      $311 = $310;
-      $312 = HEAP32[$311>>2]|0;
-      HEAP32[$8>>2] = $309;
-      HEAP32[$14>>2] = 0;
-      HEAP32[$6>>2] = $8;
-      $$4258370 = -1;
-      label = 81;
-      break;
-     }
-     case 83:  {
-      $313 = ($$0254|0)==(0);
-      if ($313) {
-       _pad($0,32,$$1260,0,$spec$select);
-       $$0240313371 = 0;
-       label = 91;
-      } else {
-       $$4258370 = $$0254;
-       label = 81;
-      }
-      break;
-     }
-     case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 
101:  {
-      $336 = +HEAPF64[$6>>3];
-      $337 = (_fmt_fp($0,$336,$$1260,$$0254,$spec$select,$$0235)|0);
-      $$0243$ph$be = $337;
-      break L77;
-      break;
-     }
-     default: {
-      $$2 = $20;$$2234 = 0;$$2239 = 70613;$$5 = $$0254;$$6268 = 
$spec$select;$$pre$phiZ2D = $12;
-     }
-     }
-    } while(0);
-    L103: do {
-     if ((label|0) == 67) {
-      label = 0;
-      $223 = $6;
-      $224 = $223;
-      $225 = HEAP32[$224>>2]|0;
-      $226 = (($223) + 4)|0;
-      $227 = $226;
-      $228 = HEAP32[$227>>2]|0;
-      $229 = $$1236 & 32;
-      $230 = (_fmt_x($225,$228,$11,$229)|0);
-      $231 = ($225|0)==(0);
-      $232 = ($228|0)==(0);
-      $233 = $231 & $232;
-      $234 = $$3265 & 8;
-      $235 = ($234|0)==(0);
-      $or$cond278 = $235 | $233;
-      $236 = $$1236 >>> 4;
-      $237 = (70613 + ($236)|0);
-      $spec$select293 = $or$cond278 ? 70613 : $237;
-      $spec$select294 = $or$cond278 ? 0 : 2;
-      $$0228 = $230;$$1233 = $spec$select294;$$1238 = $spec$select293;$$2256 = 
$$1255;$$4266 = $$3265;$277 = $225;$279 = $228;
-      label = 73;
-     }
-     else if ((label|0) == 72) {
-      label = 0;
-      $273 = (_fmt_u($271,$272,$11)|0);
-      $$0228 = $273;$$1233 = $$0232;$$1238 = $$0237;$$2256 = $$0254;$$4266 = 
$spec$select;$277 = $271;$279 = $272;
-      label = 73;
-     }
-     else if ((label|0) == 77) {
-      label = 0;
-      $301 = (_memchr($$1,0,$$0254)|0);
-      $302 = ($301|0)==(0|0);
-      $303 = $301;
-      $304 = $$1;
-      $305 = (($303) - ($304))|0;
-      $306 = (($$1) + ($$0254)|0);
-      $$3257 = $302 ? $$0254 : $305;
-      $$1250 = $302 ? $306 : $301;
-      $$pre368 = $$1250;
-      $$2 = $$1;$$2234 = 0;$$2239 = 70613;$$5 = $$3257;$$6268 = 
$192;$$pre$phiZ2D = $$pre368;
-     }
-     else if ((label|0) == 81) {
-      label = 0;
-      $314 = HEAP32[$6>>2]|0;
-      $$0229334 = $314;$$0240333 = 0;
-      while(1) {
-       $315 = HEAP32[$$0229334>>2]|0;
-       $316 = ($315|0)==(0);
-       if ($316) {
-        $$0240313 = $$0240333;
-        break;
-       }
-       $317 = (_wctomb($9,$315)|0);
-       $318 = ($317|0)<(0);
-       $319 = (($$4258370) - ($$0240333))|0;
-       $320 = ($317>>>0)>($319>>>0);
-       $or$cond283 = $318 | $320;
-       if ($or$cond283) {
-        label = 85;
-        break;
-       }
-       $321 = ((($$0229334)) + 4|0);
-       $322 = (($317) + ($$0240333))|0;
-       $323 = ($$4258370>>>0)>($322>>>0);
-       if ($323) {
-        $$0229334 = $321;$$0240333 = $322;
-       } else {
-        $$0240313 = $322;
-        break;
-       }
-      }
-      if ((label|0) == 85) {
-       label = 0;
-       if ($318) {
-        $$0 = -1;
-        break L1;
-       } else {
-        $$0240313 = $$0240333;
-       }
-      }
-      _pad($0,32,$$1260,$$0240313,$spec$select);
-      $324 = ($$0240313|0)==(0);
-      if ($324) {
-       $$0240313371 = 0;
-       label = 91;
-      } else {
-       $325 = HEAP32[$6>>2]|0;
-       $$1230340 = $325;$$1241339 = 0;
-       while(1) {
-        $326 = HEAP32[$$1230340>>2]|0;
-        $327 = ($326|0)==(0);
-        if ($327) {
-         $$0240313371 = $$0240313;
-         label = 91;
-         break L103;
-        }
-        $328 = (_wctomb($9,$326)|0);
-        $329 = (($328) + ($$1241339))|0;
-        $330 = ($329|0)>($$0240313|0);
-        if ($330) {
-         $$0240313371 = $$0240313;
-         label = 91;
-         break L103;
-        }
-        $331 = ((($$1230340)) + 4|0);
-        _out($0,$9,$328);
-        $332 = ($329>>>0)<($$0240313>>>0);
-        if ($332) {
-         $$1230340 = $331;$$1241339 = $329;
-        } else {
-         $$0240313371 = $$0240313;
-         label = 91;
-         break;
-        }
-       }
-      }
-     }
-    } while(0);
-    if ((label|0) == 73) {
-     label = 0;
-     $274 = ($$2256|0)>(-1);
-     $275 = $$4266 & -65537;
-     $spec$select281 = $274 ? $275 : $$4266;
-     $276 = ($277|0)!=(0);
-     $278 = ($279|0)!=(0);
-     $280 = $276 | $278;
-     $281 = ($$2256|0)!=(0);
-     $or$cond = $281 | $280;
-     $282 = $$0228;
-     $283 = (($12) - ($282))|0;
-     $284 = $280 ^ 1;
-     $285 = $284&1;
-     $286 = (($283) + ($285))|0;
-     $287 = ($$2256|0)>($286|0);
-     $$2256$ = $287 ? $$2256 : $286;
-     $spec$select298 = $or$cond ? $$2256$ : 0;
-     $spec$select299 = $or$cond ? $$0228 : $11;
-     $$2 = $spec$select299;$$2234 = $$1233;$$2239 = $$1238;$$5 = 
$spec$select298;$$6268 = $spec$select281;$$pre$phiZ2D = $12;
-    }
-    else if ((label|0) == 91) {
-     label = 0;
-     $333 = $spec$select ^ 8192;
-     _pad($0,32,$$1260,$$0240313371,$333);
-     $334 = ($$1260|0)>($$0240313371|0);
-     $335 = $334 ? $$1260 : $$0240313371;
-     $$0243$ph$be = $335;
-     break;
-    }
-    $338 = $$2;
-    $339 = (($$pre$phiZ2D) - ($338))|0;
-    $340 = ($$5|0)<($339|0);
-    $spec$select284 = $340 ? $339 : $$5;
-    $341 = (($spec$select284) + ($$2234))|0;
-    $342 = ($$1260|0)<($341|0);
-    $$2261 = $342 ? $341 : $$1260;
-    _pad($0,32,$$2261,$341,$$6268);
-    _out($0,$$2239,$$2234);
-    $343 = $$6268 ^ 65536;
-    _pad($0,48,$$2261,$341,$343);
-    _pad($0,48,$spec$select284,$339,0);
-    _out($0,$$2,$339);
-    $344 = $$6268 ^ 8192;
-    _pad($0,32,$$2261,$341,$344);
-    $$0243$ph$be = $$2261;
-   }
-  } while(0);
-  $$0243$ph = $$0243$ph$be;$$0247$ph = $$1248;$$0269$ph = $$3272;
- }
- L125: do {
-  if ((label|0) == 94) {
-   $345 = ($0|0)==(0|0);
-   if ($345) {
-    $346 = ($$0269$ph|0)==(0);
-    if ($346) {
-     $$0 = 0;
-    } else {
-     $$2242320 = 1;
-     while(1) {
-      $347 = (($4) + ($$2242320<<2)|0);
-      $348 = HEAP32[$347>>2]|0;
-      $349 = ($348|0)==(0);
-      if ($349) {
-       break;
-      }
-      $350 = (($3) + ($$2242320<<3)|0);
-      _pop_arg($350,$348,$2);
-      $351 = (($$2242320) + 1)|0;
-      $352 = ($351>>>0)<(10);
-      if ($352) {
-       $$2242320 = $351;
-      } else {
-       $$0 = 1;
-       break L125;
-      }
-     }
-     $$3317 = $$2242320;
-     while(1) {
-      $355 = (($4) + ($$3317<<2)|0);
-      $356 = HEAP32[$355>>2]|0;
-      $357 = ($356|0)==(0);
-      $354 = (($$3317) + 1)|0;
-      if (!($357)) {
-       $$0 = -1;
-       break L125;
-      }
-      $353 = ($354>>>0)<(10);
-      if ($353) {
-       $$3317 = $354;
-      } else {
-       $$0 = 1;
-       break;
-      }
-     }
-    }
-   } else {
-    $$0 = $$1248;
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$0|0);
-}
-function _out($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$0>>2]|0;
- $4 = $3 & 32;
- $5 = ($4|0)==(0);
- if ($5) {
-  (___fwritex($1,$2,$0)|0);
- }
- return;
-}
-function _getint($0) {
- $0 = $0|0;
- var $$0$lcssa = 0, $$04 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 
= 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = HEAP8[$1>>0]|0;
- $3 = $2 << 24 >> 24;
- $4 = (_isdigit($3)|0);
- $5 = ($4|0)==(0);
- if ($5) {
-  $$0$lcssa = 0;
- } else {
-  $$04 = 0;
-  while(1) {
-   $6 = ($$04*10)|0;
-   $7 = HEAP32[$0>>2]|0;
-   $8 = HEAP8[$7>>0]|0;
-   $9 = $8 << 24 >> 24;
-   $10 = (($6) + -48)|0;
-   $11 = (($10) + ($9))|0;
-   $12 = ((($7)) + 1|0);
-   HEAP32[$0>>2] = $12;
-   $13 = HEAP8[$12>>0]|0;
-   $14 = $13 << 24 >> 24;
-   $15 = (_isdigit($14)|0);
-   $16 = ($15|0)==(0);
-   if ($16) {
-    $$0$lcssa = $11;
-    break;
-   } else {
-    $$04 = $11;
-   }
-  }
- }
- return ($$0$lcssa|0);
-}
-function _pop_arg($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$mask = 0, $$mask31 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 
0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0.0, $11 = 0, $110 
= 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0;
- var $116 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 
0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 
= 0, $28 = 0, $29 = 0, $3 = 0;
- var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, 
$46 = 0, $47 = 0, $48 = 0;
- var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, 
$64 = 0, $65 = 0, $66 = 0;
- var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, 
$74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, 
$82 = 0, $83 = 0, $84 = 0;
- var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, 
$92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, 
$arglist_current = 0, $arglist_current11 = 0, $arglist_current14 = 0, 
$arglist_current17 = 0;
- var $arglist_current2 = 0, $arglist_current20 = 0, $arglist_current23 = 0, 
$arglist_current26 = 0, $arglist_current5 = 0, $arglist_current8 = 0, 
$arglist_next = 0, $arglist_next12 = 0, $arglist_next15 = 0, $arglist_next18 = 
0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next27 = 0, 
$arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0, $expanded = 0, 
$expanded28 = 0, $expanded30 = 0, $expanded31 = 0;
- var $expanded32 = 0, $expanded34 = 0, $expanded35 = 0, $expanded37 = 0, 
$expanded38 = 0, $expanded39 = 0, $expanded41 = 0, $expanded42 = 0, $expanded44 
= 0, $expanded45 = 0, $expanded46 = 0, $expanded48 = 0, $expanded49 = 0, 
$expanded51 = 0, $expanded52 = 0, $expanded53 = 0, $expanded55 = 0, $expanded56 
= 0, $expanded58 = 0, $expanded59 = 0;
- var $expanded60 = 0, $expanded62 = 0, $expanded63 = 0, $expanded65 = 0, 
$expanded66 = 0, $expanded67 = 0, $expanded69 = 0, $expanded70 = 0, $expanded72 
= 0, $expanded73 = 0, $expanded74 = 0, $expanded76 = 0, $expanded77 = 0, 
$expanded79 = 0, $expanded80 = 0, $expanded81 = 0, $expanded83 = 0, $expanded84 
= 0, $expanded86 = 0, $expanded87 = 0;
- var $expanded88 = 0, $expanded90 = 0, $expanded91 = 0, $expanded93 = 0, 
$expanded94 = 0, $expanded95 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($1>>>0)>(20);
- L1: do {
-  if (!($3)) {
-   do {
-    switch ($1|0) {
-    case 9:  {
-     $arglist_current = HEAP32[$2>>2]|0;
-     $4 = $arglist_current;
-     $5 = ((0) + 4|0);
-     $expanded28 = $5;
-     $expanded = (($expanded28) - 1)|0;
-     $6 = (($4) + ($expanded))|0;
-     $7 = ((0) + 4|0);
-     $expanded32 = $7;
-     $expanded31 = (($expanded32) - 1)|0;
-     $expanded30 = $expanded31 ^ -1;
-     $8 = $6 & $expanded30;
-     $9 = $8;
-     $10 = HEAP32[$9>>2]|0;
-     $arglist_next = ((($9)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next;
-     HEAP32[$0>>2] = $10;
-     break L1;
-     break;
-    }
-    case 10:  {
-     $arglist_current2 = HEAP32[$2>>2]|0;
-     $11 = $arglist_current2;
-     $12 = ((0) + 4|0);
-     $expanded35 = $12;
-     $expanded34 = (($expanded35) - 1)|0;
-     $13 = (($11) + ($expanded34))|0;
-     $14 = ((0) + 4|0);
-     $expanded39 = $14;
-     $expanded38 = (($expanded39) - 1)|0;
-     $expanded37 = $expanded38 ^ -1;
-     $15 = $13 & $expanded37;
-     $16 = $15;
-     $17 = HEAP32[$16>>2]|0;
-     $arglist_next3 = ((($16)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next3;
-     $18 = ($17|0)<(0);
-     $19 = $18 << 31 >> 31;
-     $20 = $0;
-     $21 = $20;
-     HEAP32[$21>>2] = $17;
-     $22 = (($20) + 4)|0;
-     $23 = $22;
-     HEAP32[$23>>2] = $19;
-     break L1;
-     break;
-    }
-    case 11:  {
-     $arglist_current5 = HEAP32[$2>>2]|0;
-     $24 = $arglist_current5;
-     $25 = ((0) + 4|0);
-     $expanded42 = $25;
-     $expanded41 = (($expanded42) - 1)|0;
-     $26 = (($24) + ($expanded41))|0;
-     $27 = ((0) + 4|0);
-     $expanded46 = $27;
-     $expanded45 = (($expanded46) - 1)|0;
-     $expanded44 = $expanded45 ^ -1;
-     $28 = $26 & $expanded44;
-     $29 = $28;
-     $30 = HEAP32[$29>>2]|0;
-     $arglist_next6 = ((($29)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next6;
-     $31 = $0;
-     $32 = $31;
-     HEAP32[$32>>2] = $30;
-     $33 = (($31) + 4)|0;
-     $34 = $33;
-     HEAP32[$34>>2] = 0;
-     break L1;
-     break;
-    }
-    case 12:  {
-     $arglist_current8 = HEAP32[$2>>2]|0;
-     $35 = $arglist_current8;
-     $36 = ((0) + 8|0);
-     $expanded49 = $36;
-     $expanded48 = (($expanded49) - 1)|0;
-     $37 = (($35) + ($expanded48))|0;
-     $38 = ((0) + 8|0);
-     $expanded53 = $38;
-     $expanded52 = (($expanded53) - 1)|0;
-     $expanded51 = $expanded52 ^ -1;
-     $39 = $37 & $expanded51;
-     $40 = $39;
-     $41 = $40;
-     $42 = $41;
-     $43 = HEAP32[$42>>2]|0;
-     $44 = (($41) + 4)|0;
-     $45 = $44;
-     $46 = HEAP32[$45>>2]|0;
-     $arglist_next9 = ((($40)) + 8|0);
-     HEAP32[$2>>2] = $arglist_next9;
-     $47 = $0;
-     $48 = $47;
-     HEAP32[$48>>2] = $43;
-     $49 = (($47) + 4)|0;
-     $50 = $49;
-     HEAP32[$50>>2] = $46;
-     break L1;
-     break;
-    }
-    case 13:  {
-     $arglist_current11 = HEAP32[$2>>2]|0;
-     $51 = $arglist_current11;
-     $52 = ((0) + 4|0);
-     $expanded56 = $52;
-     $expanded55 = (($expanded56) - 1)|0;
-     $53 = (($51) + ($expanded55))|0;
-     $54 = ((0) + 4|0);
-     $expanded60 = $54;
-     $expanded59 = (($expanded60) - 1)|0;
-     $expanded58 = $expanded59 ^ -1;
-     $55 = $53 & $expanded58;
-     $56 = $55;
-     $57 = HEAP32[$56>>2]|0;
-     $arglist_next12 = ((($56)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next12;
-     $58 = $57&65535;
-     $59 = $58 << 16 >> 16;
-     $60 = ($59|0)<(0);
-     $61 = $60 << 31 >> 31;
-     $62 = $0;
-     $63 = $62;
-     HEAP32[$63>>2] = $59;
-     $64 = (($62) + 4)|0;
-     $65 = $64;
-     HEAP32[$65>>2] = $61;
-     break L1;
-     break;
-    }
-    case 14:  {
-     $arglist_current14 = HEAP32[$2>>2]|0;
-     $66 = $arglist_current14;
-     $67 = ((0) + 4|0);
-     $expanded63 = $67;
-     $expanded62 = (($expanded63) - 1)|0;
-     $68 = (($66) + ($expanded62))|0;
-     $69 = ((0) + 4|0);
-     $expanded67 = $69;
-     $expanded66 = (($expanded67) - 1)|0;
-     $expanded65 = $expanded66 ^ -1;
-     $70 = $68 & $expanded65;
-     $71 = $70;
-     $72 = HEAP32[$71>>2]|0;
-     $arglist_next15 = ((($71)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next15;
-     $$mask31 = $72 & 65535;
-     $73 = $0;
-     $74 = $73;
-     HEAP32[$74>>2] = $$mask31;
-     $75 = (($73) + 4)|0;
-     $76 = $75;
-     HEAP32[$76>>2] = 0;
-     break L1;
-     break;
-    }
-    case 15:  {
-     $arglist_current17 = HEAP32[$2>>2]|0;
-     $77 = $arglist_current17;
-     $78 = ((0) + 4|0);
-     $expanded70 = $78;
-     $expanded69 = (($expanded70) - 1)|0;
-     $79 = (($77) + ($expanded69))|0;
-     $80 = ((0) + 4|0);
-     $expanded74 = $80;
-     $expanded73 = (($expanded74) - 1)|0;
-     $expanded72 = $expanded73 ^ -1;
-     $81 = $79 & $expanded72;
-     $82 = $81;
-     $83 = HEAP32[$82>>2]|0;
-     $arglist_next18 = ((($82)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next18;
-     $84 = $83&255;
-     $85 = $84 << 24 >> 24;
-     $86 = ($85|0)<(0);
-     $87 = $86 << 31 >> 31;
-     $88 = $0;
-     $89 = $88;
-     HEAP32[$89>>2] = $85;
-     $90 = (($88) + 4)|0;
-     $91 = $90;
-     HEAP32[$91>>2] = $87;
-     break L1;
-     break;
-    }
-    case 16:  {
-     $arglist_current20 = HEAP32[$2>>2]|0;
-     $92 = $arglist_current20;
-     $93 = ((0) + 4|0);
-     $expanded77 = $93;
-     $expanded76 = (($expanded77) - 1)|0;
-     $94 = (($92) + ($expanded76))|0;
-     $95 = ((0) + 4|0);
-     $expanded81 = $95;
-     $expanded80 = (($expanded81) - 1)|0;
-     $expanded79 = $expanded80 ^ -1;
-     $96 = $94 & $expanded79;
-     $97 = $96;
-     $98 = HEAP32[$97>>2]|0;
-     $arglist_next21 = ((($97)) + 4|0);
-     HEAP32[$2>>2] = $arglist_next21;
-     $$mask = $98 & 255;
-     $99 = $0;
-     $100 = $99;
-     HEAP32[$100>>2] = $$mask;
-     $101 = (($99) + 4)|0;
-     $102 = $101;
-     HEAP32[$102>>2] = 0;
-     break L1;
-     break;
-    }
-    case 17:  {
-     $arglist_current23 = HEAP32[$2>>2]|0;
-     $103 = $arglist_current23;
-     $104 = ((0) + 8|0);
-     $expanded84 = $104;
-     $expanded83 = (($expanded84) - 1)|0;
-     $105 = (($103) + ($expanded83))|0;
-     $106 = ((0) + 8|0);
-     $expanded88 = $106;
-     $expanded87 = (($expanded88) - 1)|0;
-     $expanded86 = $expanded87 ^ -1;
-     $107 = $105 & $expanded86;
-     $108 = $107;
-     $109 = +HEAPF64[$108>>3];
-     $arglist_next24 = ((($108)) + 8|0);
-     HEAP32[$2>>2] = $arglist_next24;
-     HEAPF64[$0>>3] = $109;
-     break L1;
-     break;
-    }
-    case 18:  {
-     $arglist_current26 = HEAP32[$2>>2]|0;
-     $110 = $arglist_current26;
-     $111 = ((0) + 8|0);
-     $expanded91 = $111;
-     $expanded90 = (($expanded91) - 1)|0;
-     $112 = (($110) + ($expanded90))|0;
-     $113 = ((0) + 8|0);
-     $expanded95 = $113;
-     $expanded94 = (($expanded95) - 1)|0;
-     $expanded93 = $expanded94 ^ -1;
-     $114 = $112 & $expanded93;
-     $115 = $114;
-     $116 = +HEAPF64[$115>>3];
-     $arglist_next27 = ((($115)) + 8|0);
-     HEAP32[$2>>2] = $arglist_next27;
-     HEAPF64[$0>>3] = $116;
-     break L1;
-     break;
-    }
-    default: {
-     break L1;
-    }
-    }
-   } while(0);
-  }
- } while(0);
- return;
-}
-function _fmt_x($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$05$lcssa = 0, $$056 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $4 = ($0|0)==(0);
- $5 = ($1|0)==(0);
- $6 = $4 & $5;
- if ($6) {
-  $$05$lcssa = $2;
- } else {
-  $$056 = $2;$15 = $1;$8 = $0;
-  while(1) {
-   $7 = $8 & 15;
-   $9 = (28416 + ($7)|0);
-   $10 = HEAP8[$9>>0]|0;
-   $11 = $10&255;
-   $12 = $11 | $3;
-   $13 = $12&255;
-   $14 = ((($$056)) + -1|0);
-   HEAP8[$14>>0] = $13;
-   $16 = (_bitshift64Lshr(($8|0),($15|0),4)|0);
-   $17 = tempRet0;
-   $18 = ($16|0)==(0);
-   $19 = ($17|0)==(0);
-   $20 = $18 & $19;
-   if ($20) {
-    $$05$lcssa = $14;
-    break;
-   } else {
-    $$056 = $14;$15 = $17;$8 = $16;
-   }
-  }
- }
- return ($$05$lcssa|0);
-}
-function _fmt_o($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa = 0, $$06 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $3 = ($0|0)==(0);
- $4 = ($1|0)==(0);
- $5 = $3 & $4;
- if ($5) {
-  $$0$lcssa = $2;
- } else {
-  $$06 = $2;$11 = $1;$7 = $0;
-  while(1) {
-   $6 = $7&255;
-   $8 = $6 & 7;
-   $9 = $8 | 48;
-   $10 = ((($$06)) + -1|0);
-   HEAP8[$10>>0] = $9;
-   $12 = (_bitshift64Lshr(($7|0),($11|0),3)|0);
-   $13 = tempRet0;
-   $14 = ($12|0)==(0);
-   $15 = ($13|0)==(0);
-   $16 = $14 & $15;
-   if ($16) {
-    $$0$lcssa = $10;
-    break;
-   } else {
-    $$06 = $10;$11 = $13;$7 = $12;
-   }
-  }
- }
- return ($$0$lcssa|0);
-}
-function _fmt_u($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$010$lcssa$off0 = 0, $$012 = 0, $$09$lcssa = 0, $$0914 = 0, $$1$lcssa = 
0, $$111 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0;
- var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, 
$31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($1>>>0)>(0);
- $4 = ($0>>>0)>(4294967295);
- $5 = ($1|0)==(0);
- $6 = $5 & $4;
- $7 = $3 | $6;
- if ($7) {
-  $$0914 = $2;$8 = $0;$9 = $1;
-  while(1) {
-   $10 = (___udivdi3(($8|0),($9|0),10,0)|0);
-   $11 = tempRet0;
-   $12 = (___muldi3(($10|0),($11|0),10,0)|0);
-   $13 = tempRet0;
-   $14 = (_i64Subtract(($8|0),($9|0),($12|0),($13|0))|0);
-   $15 = tempRet0;
-   $16 = $14&255;
-   $17 = $16 | 48;
-   $18 = ((($$0914)) + -1|0);
-   HEAP8[$18>>0] = $17;
-   $19 = ($9>>>0)>(9);
-   $20 = ($8>>>0)>(4294967295);
-   $21 = ($9|0)==(9);
-   $22 = $21 & $20;
-   $23 = $19 | $22;
-   if ($23) {
-    $$0914 = $18;$8 = $10;$9 = $11;
-   } else {
-    break;
-   }
-  }
-  $$010$lcssa$off0 = $10;$$09$lcssa = $18;
- } else {
-  $$010$lcssa$off0 = $0;$$09$lcssa = $2;
- }
- $24 = ($$010$lcssa$off0|0)==(0);
- if ($24) {
-  $$1$lcssa = $$09$lcssa;
- } else {
-  $$012 = $$010$lcssa$off0;$$111 = $$09$lcssa;
-  while(1) {
-   $25 = (($$012>>>0) / 10)&-1;
-   $26 = ($25*10)|0;
-   $27 = (($$012) - ($26))|0;
-   $28 = $27 | 48;
-   $29 = $28&255;
-   $30 = ((($$111)) + -1|0);
-   HEAP8[$30>>0] = $29;
-   $31 = ($$012>>>0)<(10);
-   if ($31) {
-    $$1$lcssa = $30;
-    break;
-   } else {
-    $$012 = $25;$$111 = $30;
-   }
-  }
- }
- return ($$1$lcssa|0);
-}
-function _strerror($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___pthread_self_568()|0);
- $2 = ((($1)) + 188|0);
- $3 = HEAP32[$2>>2]|0;
- $4 = (___strerror_l($0,$3)|0);
- return ($4|0);
-}
-function _pad($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0$lcssa = 0, $$011 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(256|0);
- $5 = sp;
- $6 = $4 & 73728;
- $7 = ($6|0)==(0);
- $8 = ($2|0)>($3|0);
- $or$cond = $8 & $7;
- if ($or$cond) {
-  $9 = (($2) - ($3))|0;
-  $10 = $1 << 24 >> 24;
-  $11 = ($9>>>0)<(256);
-  $12 = $11 ? $9 : 256;
-  (_memset(($5|0),($10|0),($12|0))|0);
-  $13 = ($9>>>0)>(255);
-  if ($13) {
-   $14 = (($2) - ($3))|0;
-   $$011 = $9;
-   while(1) {
-    _out($0,$5,256);
-    $15 = (($$011) + -256)|0;
-    $16 = ($15>>>0)>(255);
-    if ($16) {
-     $$011 = $15;
-    } else {
-     break;
-    }
-   }
-   $17 = $14 & 255;
-   $$0$lcssa = $17;
-  } else {
-   $$0$lcssa = $9;
-  }
-  _out($0,$5,$$0$lcssa);
- }
- STACKTOP = sp;return;
-}
-function _fmt_fp($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = +$1;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$ = 0, $$0 = 0, $$0463$lcssa = 0, $$0463588 = 0, $$0464599 = 0, $$0471 = 
0.0, $$0479 = 0, $$0487657 = 0, $$0488 = 0, $$0488669 = 0, $$0488671 = 0, 
$$0497670 = 0, $$0498 = 0, $$0511586 = 0.0, $$0512 = 0, $$0513 = 0, $$0516652 = 
0, $$0522 = 0, $$0523 = 0, $$0525 = 0;
- var $$0527 = 0, $$0529 = 0, $$0529$in646 = 0, $$0532651 = 0, $$1465 = 0, 
$$1467 = 0.0, $$1469 = 0.0, $$1472 = 0.0, $$1480 = 0, $$1482$lcssa = 0, 
$$1482683 = 0, $$1489656 = 0, $$1499 = 0, $$1510587 = 0, $$1514$lcssa = 0, 
$$1514614 = 0, $$1517 = 0, $$1526 = 0, $$1528 = 0, $$1530621 = 0;
- var $$1533$lcssa = 0, $$1533645 = 0, $$1604 = 0, $$2 = 0, $$2473 = 0.0, 
$$2476 = 0, $$2483 = 0, $$2490$lcssa = 0, $$2490638 = 0, $$2500$lcssa = 0, 
$$2500682 = 0, $$2515 = 0, $$2518634 = 0, $$2531 = 0, $$2534633 = 0, $$3 = 0.0, 
$$3477 = 0, $$3484$lcssa = 0, $$3484663 = 0, $$3501$lcssa = 0;
- var $$3501676 = 0, $$3535620 = 0, $$4 = 0.0, $$4478$lcssa = 0, $$4478594 = 0, 
$$4492 = 0, $$4502$lcssa = 0, $$4502662 = 0, $$4520 = 0, $$5$lcssa = 0, 
$$5486$lcssa = 0, $$5486639 = 0, $$5493603 = 0, $$5503 = 0, $$5521 = 0, $$560 = 
0, $$5609 = 0, $$6 = 0, $$6494593 = 0, $$7495608 = 0;
- var $$8 = 0, $$8506 = 0, $$9 = 0, $$9507$lcssa = 0, $$9507625 = 0, $$lcssa583 
= 0, $$lobit = 0, $$neg = 0, $$neg571 = 0, $$not = 0, $$pn = 0, $$pr = 0, 
$$pr564 = 0, $$pre = 0, $$pre$phi717Z2D = 0, $$pre$phi718Z2D = 0, $$pre720 = 0, 
$$sink757 = 0, $10 = 0, $100 = 0;
- var $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, 
$108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, 
$115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0;
- var $12 = 0, $120 = 0, $121 = 0.0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, 
$126 = 0, $127 = 0, $128 = 0.0, $129 = 0.0, $13 = 0, $130 = 0.0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0;
- var $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 
= 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0.0, $150 = 0, 
$151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0;
- var $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 
= 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 
= 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0;
- var $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 
= 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 
= 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0;
- var $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, 
$199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, 
$206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0;
- var $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, 
$217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, 
$224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0;
- var $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 
= 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 
= 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0.0;
- var $247 = 0.0, $248 = 0, $249 = 0.0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, 
$253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, 
$260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0;
- var $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 
= 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 
= 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0;
- var $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 
= 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 
= 0, $298 = 0, $299 = 0, $30 = 0, $300 = 0;
- var $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, 
$308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, 
$315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0;
- var $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 
= 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 
= 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0;
- var $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 
= 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 
= 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0;
- var $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 
= 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 
= 0.0, $370 = 0, $371 = 0, $372 = 0, $373 = 0;
- var $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0.0, 
$380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, 
$388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0;
- var $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, 
$399 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, 
$406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0;
- var $410 = 0, $411 = 0, $412 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 
0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0.0, $58 = 0.0;
- var $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0, $62 = 0.0, $63 = 0, $64 = 0, $65 
= 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 
= 0, $74 = 0, $75 = 0, $76 = 0;
- var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, 
$84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 
0.0, $92 = 0.0, $93 = 0, $94 = 0;
- var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $not$ = 0, $or$cond = 0, 
$or$cond3$not = 0, $or$cond543 = 0, $or$cond546 = 0, $or$cond556 = 0, 
$or$cond559 = 0, $or$cond6 = 0, $scevgep711 = 0, $scevgep711712 = 0, 
$spec$select = 0, $spec$select539 = 0, $spec$select540 = 0, $spec$select540722 
= 0, $spec$select540723 = 0;
- var $spec$select541 = 0, $spec$select544 = 0.0, $spec$select547 = 0, 
$spec$select548 = 0, $spec$select549 = 0, $spec$select551 = 0, $spec$select554 
= 0, $spec$select557 = 0, $spec$select561 = 0.0, $spec$select562 = 0, 
$spec$select563 = 0, $spec$select565 = 0, $spec$select566 = 0, $spec$select567 
= 0.0, $spec$select568 = 0.0, $spec$select569 = 0.0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 560|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(560|0);
- $6 = sp + 32|0;
- $7 = sp + 536|0;
- $8 = sp;
- $9 = $8;
- $10 = sp + 540|0;
- HEAP32[$7>>2] = 0;
- $11 = ((($10)) + 12|0);
- $12 = (___DOUBLE_BITS($1)|0);
- $13 = tempRet0;
- $14 = ($13|0)<(0);
- if ($14) {
-  $15 = - $1;
-  $16 = (___DOUBLE_BITS($15)|0);
-  $17 = tempRet0;
-  $$0471 = $15;$$0522 = 1;$$0523 = 70630;$25 = $17;$412 = $16;
- } else {
-  $18 = $4 & 2048;
-  $19 = ($18|0)==(0);
-  $20 = $4 & 1;
-  $21 = ($20|0)==(0);
-  $$ = $21 ? (70631) : (70636);
-  $spec$select565 = $19 ? $$ : (70633);
-  $22 = $4 & 2049;
-  $23 = ($22|0)!=(0);
-  $spec$select566 = $23&1;
-  $$0471 = $1;$$0522 = $spec$select566;$$0523 = $spec$select565;$25 = $13;$412 
= $12;
- }
- $24 = $25 & 2146435072;
- $26 = (0)==(0);
- $27 = ($24|0)==(2146435072);
- $28 = $26 & $27;
- do {
-  if ($28) {
-   $29 = $5 & 32;
-   $30 = ($29|0)!=(0);
-   $31 = $30 ? 70649 : 70653;
-   $32 = ($$0471 != $$0471) | (0.0 != 0.0);
-   $33 = $30 ? 70657 : 70661;
-   $$0512 = $32 ? $33 : $31;
-   $34 = (($$0522) + 3)|0;
-   $35 = $4 & -65537;
-   _pad($0,32,$2,$34,$35);
-   _out($0,$$0523,$$0522);
-   _out($0,$$0512,3);
-   $36 = $4 ^ 8192;
-   _pad($0,32,$2,$34,$36);
-   $$sink757 = $34;
-  } else {
-   $37 = (+_frexpl($$0471,$7));
-   $38 = $37 * 2.0;
-   $39 = $38 != 0.0;
-   if ($39) {
-    $40 = HEAP32[$7>>2]|0;
-    $41 = (($40) + -1)|0;
-    HEAP32[$7>>2] = $41;
-   }
-   $42 = $5 | 32;
-   $43 = ($42|0)==(97);
-   if ($43) {
-    $44 = $5 & 32;
-    $45 = ($44|0)==(0);
-    $46 = ((($$0523)) + 9|0);
-    $spec$select = $45 ? $$0523 : $46;
-    $47 = $$0522 | 2;
-    $48 = ($3>>>0)>(11);
-    $49 = (12 - ($3))|0;
-    $50 = ($49|0)==(0);
-    $51 = $48 | $50;
-    do {
-     if ($51) {
-      $$1472 = $38;
-     } else {
-      $$0511586 = 8.0;$$1510587 = $49;
-      while(1) {
-       $52 = (($$1510587) + -1)|0;
-       $53 = $$0511586 * 16.0;
-       $54 = ($52|0)==(0);
-       if ($54) {
-        break;
-       } else {
-        $$0511586 = $53;$$1510587 = $52;
-       }
-      }
-      $55 = HEAP8[$spec$select>>0]|0;
-      $56 = ($55<<24>>24)==(45);
-      if ($56) {
-       $57 = - $38;
-       $58 = $57 - $53;
-       $59 = $53 + $58;
-       $60 = - $59;
-       $$1472 = $60;
-       break;
-      } else {
-       $61 = $38 + $53;
-       $62 = $61 - $53;
-       $$1472 = $62;
-       break;
-      }
-     }
-    } while(0);
-    $63 = HEAP32[$7>>2]|0;
-    $64 = ($63|0)<(0);
-    $65 = (0 - ($63))|0;
-    $66 = $64 ? $65 : $63;
-    $67 = ($66|0)<(0);
-    $68 = $67 << 31 >> 31;
-    $69 = (_fmt_u($66,$68,$11)|0);
-    $70 = ($69|0)==($11|0);
-    if ($70) {
-     $71 = ((($10)) + 11|0);
-     HEAP8[$71>>0] = 48;
-     $$0513 = $71;
-    } else {
-     $$0513 = $69;
-    }
-    $72 = $63 >> 31;
-    $73 = $72 & 2;
-    $74 = (($73) + 43)|0;
-    $75 = $74&255;
-    $76 = ((($$0513)) + -1|0);
-    HEAP8[$76>>0] = $75;
-    $77 = (($5) + 15)|0;
-    $78 = $77&255;
-    $79 = ((($$0513)) + -2|0);
-    HEAP8[$79>>0] = $78;
-    $80 = ($3|0)<(1);
-    $81 = $4 & 8;
-    $82 = ($81|0)==(0);
-    $$0525 = $8;$$2473 = $$1472;
-    while(1) {
-     $83 = (~~(($$2473)));
-     $84 = (28416 + ($83)|0);
-     $85 = HEAP8[$84>>0]|0;
-     $86 = $85&255;
-     $87 = $44 | $86;
-     $88 = $87&255;
-     $89 = ((($$0525)) + 1|0);
-     HEAP8[$$0525>>0] = $88;
-     $90 = (+($83|0));
-     $91 = $$2473 - $90;
-     $92 = $91 * 16.0;
-     $93 = $89;
-     $94 = (($93) - ($9))|0;
-     $95 = ($94|0)==(1);
-     if ($95) {
-      $96 = $92 == 0.0;
-      $or$cond3$not = $80 & $96;
-      $or$cond = $82 & $or$cond3$not;
-      if ($or$cond) {
-       $$1526 = $89;
-      } else {
-       $97 = ((($$0525)) + 2|0);
-       HEAP8[$89>>0] = 46;
-       $$1526 = $97;
-      }
-     } else {
-      $$1526 = $89;
-     }
-     $98 = $92 != 0.0;
-     if ($98) {
-      $$0525 = $$1526;$$2473 = $92;
-     } else {
-      break;
-     }
-    }
-    $99 = ($3|0)==(0);
-    $$pre720 = $$1526;
-    if ($99) {
-     label = 25;
-    } else {
-     $100 = (-2 - ($9))|0;
-     $101 = (($100) + ($$pre720))|0;
-     $102 = ($101|0)<($3|0);
-     if ($102) {
-      $103 = $11;
-      $104 = $79;
-      $105 = (($3) + 2)|0;
-      $106 = (($105) + ($103))|0;
-      $107 = (($106) - ($104))|0;
-      $$0527 = $107;$$pre$phi717Z2D = $103;$$pre$phi718Z2D = $104;
-     } else {
-      label = 25;
-     }
-    }
-    if ((label|0) == 25) {
-     $108 = $11;
-     $109 = $79;
-     $110 = (($108) - ($9))|0;
-     $111 = (($110) - ($109))|0;
-     $112 = (($111) + ($$pre720))|0;
-     $$0527 = $112;$$pre$phi717Z2D = $108;$$pre$phi718Z2D = $109;
-    }
-    $113 = (($$0527) + ($47))|0;
-    _pad($0,32,$2,$113,$4);
-    _out($0,$spec$select,$47);
-    $114 = $4 ^ 65536;
-    _pad($0,48,$2,$113,$114);
-    $115 = (($$pre720) - ($9))|0;
-    _out($0,$8,$115);
-    $116 = (($$pre$phi717Z2D) - ($$pre$phi718Z2D))|0;
-    $117 = (($115) + ($116))|0;
-    $118 = (($$0527) - ($117))|0;
-    _pad($0,48,$118,0,0);
-    _out($0,$79,$116);
-    $119 = $4 ^ 8192;
-    _pad($0,32,$2,$113,$119);
-    $$sink757 = $113;
-    break;
-   }
-   $120 = ($3|0)<(0);
-   $spec$select539 = $120 ? 6 : $3;
-   if ($39) {
-    $121 = $38 * 268435456.0;
-    $122 = HEAP32[$7>>2]|0;
-    $123 = (($122) + -28)|0;
-    HEAP32[$7>>2] = $123;
-    $$3 = $121;$$pr = $123;
-   } else {
-    $$pre = HEAP32[$7>>2]|0;
-    $$3 = $38;$$pr = $$pre;
-   }
-   $124 = ($$pr|0)<(0);
-   $125 = ((($6)) + 288|0);
-   $$0498 = $124 ? $6 : $125;
-   $$1499 = $$0498;$$4 = $$3;
-   while(1) {
-    $126 = (~~(($$4))>>>0);
-    HEAP32[$$1499>>2] = $126;
-    $127 = ((($$1499)) + 4|0);
-    $128 = (+($126>>>0));
-    $129 = $$4 - $128;
-    $130 = $129 * 1.0E+9;
-    $131 = $130 != 0.0;
-    if ($131) {
-     $$1499 = $127;$$4 = $130;
-    } else {
-     break;
-    }
-   }
-   $132 = $$0498;
-   $133 = ($$pr|0)>(0);
-   if ($133) {
-    $$1482683 = $$0498;$$2500682 = $127;$135 = $$pr;
-    while(1) {
-     $134 = ($135|0)<(29);
-     $136 = $134 ? $135 : 29;
-     $$0488669 = ((($$2500682)) + -4|0);
-     $137 = ($$0488669>>>0)<($$1482683>>>0);
-     if ($137) {
-      $$2483 = $$1482683;
-     } else {
-      $$0488671 = $$0488669;$$0497670 = 0;
-      while(1) {
-       $138 = HEAP32[$$0488671>>2]|0;
-       $139 = (_bitshift64Shl(($138|0),0,($136|0))|0);
-       $140 = tempRet0;
-       $141 = (_i64Add(($139|0),($140|0),($$0497670|0),0)|0);
-       $142 = tempRet0;
-       $143 = (___udivdi3(($141|0),($142|0),1000000000,0)|0);
-       $144 = tempRet0;
-       $145 = (___muldi3(($143|0),($144|0),1000000000,0)|0);
-       $146 = tempRet0;
-       $147 = (_i64Subtract(($141|0),($142|0),($145|0),($146|0))|0);
-       $148 = tempRet0;
-       HEAP32[$$0488671>>2] = $147;
-       $$0488 = ((($$0488671)) + -4|0);
-       $149 = ($$0488>>>0)<($$1482683>>>0);
-       if ($149) {
-        break;
-       } else {
-        $$0488671 = $$0488;$$0497670 = $143;
-       }
-      }
-      $150 = ($143|0)==(0);
-      if ($150) {
-       $$2483 = $$1482683;
-      } else {
-       $151 = ((($$1482683)) + -4|0);
-       HEAP32[$151>>2] = $143;
-       $$2483 = $151;
-      }
-     }
-     $152 = ($$2500682>>>0)>($$2483>>>0);
-     L57: do {
-      if ($152) {
-       $$3501676 = $$2500682;
-       while(1) {
-        $154 = ((($$3501676)) + -4|0);
-        $155 = HEAP32[$154>>2]|0;
-        $156 = ($155|0)==(0);
-        if (!($156)) {
-         $$3501$lcssa = $$3501676;
-         break L57;
-        }
-        $153 = ($154>>>0)>($$2483>>>0);
-        if ($153) {
-         $$3501676 = $154;
-        } else {
-         $$3501$lcssa = $154;
-         break;
-        }
-       }
-      } else {
-       $$3501$lcssa = $$2500682;
-      }
-     } while(0);
-     $157 = HEAP32[$7>>2]|0;
-     $158 = (($157) - ($136))|0;
-     HEAP32[$7>>2] = $158;
-     $159 = ($158|0)>(0);
-     if ($159) {
-      $$1482683 = $$2483;$$2500682 = $$3501$lcssa;$135 = $158;
-     } else {
-      $$1482$lcssa = $$2483;$$2500$lcssa = $$3501$lcssa;$$pr564 = $158;
-      break;
-     }
-    }
-   } else {
-    $$1482$lcssa = $$0498;$$2500$lcssa = $127;$$pr564 = $$pr;
-   }
-   $160 = ($$pr564|0)<(0);
-   if ($160) {
-    $161 = (($spec$select539) + 25)|0;
-    $162 = (($161|0) / 9)&-1;
-    $163 = (($162) + 1)|0;
-    $164 = ($42|0)==(102);
-    $$3484663 = $$1482$lcssa;$$4502662 = $$2500$lcssa;$166 = $$pr564;
-    while(1) {
-     $165 = (0 - ($166))|0;
-     $167 = ($165|0)<(9);
-     $168 = $167 ? $165 : 9;
-     $169 = ($$3484663>>>0)<($$4502662>>>0);
-     if ($169) {
-      $173 = 1 << $168;
-      $174 = (($173) + -1)|0;
-      $175 = 1000000000 >>> $168;
-      $$0487657 = 0;$$1489656 = $$3484663;
-      while(1) {
-       $176 = HEAP32[$$1489656>>2]|0;
-       $177 = $176 & $174;
-       $178 = $176 >>> $168;
-       $179 = (($178) + ($$0487657))|0;
-       HEAP32[$$1489656>>2] = $179;
-       $180 = Math_imul($177, $175)|0;
-       $181 = ((($$1489656)) + 4|0);
-       $182 = ($181>>>0)<($$4502662>>>0);
-       if ($182) {
-        $$0487657 = $180;$$1489656 = $181;
-       } else {
-        break;
-       }
-      }
-      $183 = HEAP32[$$3484663>>2]|0;
-      $184 = ($183|0)==(0);
-      $185 = ((($$3484663)) + 4|0);
-      $spec$select540 = $184 ? $185 : $$3484663;
-      $186 = ($180|0)==(0);
-      if ($186) {
-       $$5503 = $$4502662;$spec$select540723 = $spec$select540;
-      } else {
-       $187 = ((($$4502662)) + 4|0);
-       HEAP32[$$4502662>>2] = $180;
-       $$5503 = $187;$spec$select540723 = $spec$select540;
-      }
-     } else {
-      $170 = HEAP32[$$3484663>>2]|0;
-      $171 = ($170|0)==(0);
-      $172 = ((($$3484663)) + 4|0);
-      $spec$select540722 = $171 ? $172 : $$3484663;
-      $$5503 = $$4502662;$spec$select540723 = $spec$select540722;
-     }
-     $188 = $164 ? $$0498 : $spec$select540723;
-     $189 = $$5503;
-     $190 = $188;
-     $191 = (($189) - ($190))|0;
-     $192 = $191 >> 2;
-     $193 = ($192|0)>($163|0);
-     $194 = (($188) + ($163<<2)|0);
-     $spec$select541 = $193 ? $194 : $$5503;
-     $195 = HEAP32[$7>>2]|0;
-     $196 = (($195) + ($168))|0;
-     HEAP32[$7>>2] = $196;
-     $197 = ($196|0)<(0);
-     if ($197) {
-      $$3484663 = $spec$select540723;$$4502662 = $spec$select541;$166 = $196;
-     } else {
-      $$3484$lcssa = $spec$select540723;$$4502$lcssa = $spec$select541;
-      break;
-     }
-    }
-   } else {
-    $$3484$lcssa = $$1482$lcssa;$$4502$lcssa = $$2500$lcssa;
-   }
-   $198 = ($$3484$lcssa>>>0)<($$4502$lcssa>>>0);
-   if ($198) {
-    $199 = $$3484$lcssa;
-    $200 = (($132) - ($199))|0;
-    $201 = $200 >> 2;
-    $202 = ($201*9)|0;
-    $203 = HEAP32[$$3484$lcssa>>2]|0;
-    $204 = ($203>>>0)<(10);
-    if ($204) {
-     $$1517 = $202;
-    } else {
-     $$0516652 = $202;$$0532651 = 10;
-     while(1) {
-      $205 = ($$0532651*10)|0;
-      $206 = (($$0516652) + 1)|0;
-      $207 = ($203>>>0)<($205>>>0);
-      if ($207) {
-       $$1517 = $206;
-       break;
-      } else {
-       $$0516652 = $206;$$0532651 = $205;
-      }
-     }
-    }
-   } else {
-    $$1517 = 0;
-   }
-   $208 = ($42|0)==(102);
-   $209 = $208 ? 0 : $$1517;
-   $210 = (($spec$select539) - ($209))|0;
-   $211 = ($42|0)==(103);
-   $212 = ($spec$select539|0)!=(0);
-   $213 = $212 & $211;
-   $$neg = $213 << 31 >> 31;
-   $214 = (($210) + ($$neg))|0;
-   $215 = $$4502$lcssa;
-   $216 = (($215) - ($132))|0;
-   $217 = $216 >> 2;
-   $218 = ($217*9)|0;
-   $219 = (($218) + -9)|0;
-   $220 = ($214|0)<($219|0);
-   if ($220) {
-    $221 = ((($$0498)) + 4|0);
-    $222 = (($214) + 9216)|0;
-    $223 = (($222|0) / 9)&-1;
-    $224 = (($223) + -1024)|0;
-    $225 = (($221) + ($224<<2)|0);
-    $226 = ($223*9)|0;
-    $227 = (($222) - ($226))|0;
-    $228 = ($227|0)<(8);
-    if ($228) {
-     $$0529$in646 = $227;$$1533645 = 10;
-     while(1) {
-      $$0529 = (($$0529$in646) + 1)|0;
-      $229 = ($$1533645*10)|0;
-      $230 = ($$0529$in646|0)<(7);
-      if ($230) {
-       $$0529$in646 = $$0529;$$1533645 = $229;
-      } else {
-       $$1533$lcssa = $229;
-       break;
-      }
-     }
-    } else {
-     $$1533$lcssa = 10;
-    }
-    $231 = HEAP32[$225>>2]|0;
-    $232 = (($231>>>0) / ($$1533$lcssa>>>0))&-1;
-    $233 = Math_imul($232, $$1533$lcssa)|0;
-    $234 = (($231) - ($233))|0;
-    $235 = ($234|0)==(0);
-    $236 = ((($225)) + 4|0);
-    $237 = ($236|0)==($$4502$lcssa|0);
-    $or$cond543 = $237 & $235;
-    if ($or$cond543) {
-     $$4492 = $225;$$4520 = $$1517;$$8 = $$3484$lcssa;
-    } else {
-     $238 = $232 & 1;
-     $239 = ($238|0)==(0);
-     $spec$select544 = $239 ? 9007199254740992.0 : 9007199254740994.0;
-     $240 = $$1533$lcssa >>> 1;
-     $241 = ($234>>>0)<($240>>>0);
-     $242 = ($234|0)==($240|0);
-     $or$cond546 = $237 & $242;
-     $spec$select561 = $or$cond546 ? 1.0 : 1.5;
-     $spec$select567 = $241 ? 0.5 : $spec$select561;
-     $243 = ($$0522|0)==(0);
-     if ($243) {
-      $$1467 = $spec$select567;$$1469 = $spec$select544;
-     } else {
-      $244 = HEAP8[$$0523>>0]|0;
-      $245 = ($244<<24>>24)==(45);
-      $246 = - $spec$select544;
-      $247 = - $spec$select567;
-      $spec$select568 = $245 ? $246 : $spec$select544;
-      $spec$select569 = $245 ? $247 : $spec$select567;
-      $$1467 = $spec$select569;$$1469 = $spec$select568;
-     }
-     $248 = (($231) - ($234))|0;
-     HEAP32[$225>>2] = $248;
-     $249 = $$1469 + $$1467;
-     $250 = $249 != $$1469;
-     if ($250) {
-      $251 = (($248) + ($$1533$lcssa))|0;
-      HEAP32[$225>>2] = $251;
-      $252 = ($251>>>0)>(999999999);
-      if ($252) {
-       $$2490638 = $225;$$5486639 = $$3484$lcssa;
-       while(1) {
-        $253 = ((($$2490638)) + -4|0);
-        HEAP32[$$2490638>>2] = 0;
-        $254 = ($253>>>0)<($$5486639>>>0);
-        if ($254) {
-         $255 = ((($$5486639)) + -4|0);
-         HEAP32[$255>>2] = 0;
-         $$6 = $255;
-        } else {
-         $$6 = $$5486639;
-        }
-        $256 = HEAP32[$253>>2]|0;
-        $257 = (($256) + 1)|0;
-        HEAP32[$253>>2] = $257;
-        $258 = ($257>>>0)>(999999999);
-        if ($258) {
-         $$2490638 = $253;$$5486639 = $$6;
-        } else {
-         $$2490$lcssa = $253;$$5486$lcssa = $$6;
-         break;
-        }
-       }
-      } else {
-       $$2490$lcssa = $225;$$5486$lcssa = $$3484$lcssa;
-      }
-      $259 = $$5486$lcssa;
-      $260 = (($132) - ($259))|0;
-      $261 = $260 >> 2;
-      $262 = ($261*9)|0;
-      $263 = HEAP32[$$5486$lcssa>>2]|0;
-      $264 = ($263>>>0)<(10);
-      if ($264) {
-       $$4492 = $$2490$lcssa;$$4520 = $262;$$8 = $$5486$lcssa;
-      } else {
-       $$2518634 = $262;$$2534633 = 10;
-       while(1) {
-        $265 = ($$2534633*10)|0;
-        $266 = (($$2518634) + 1)|0;
-        $267 = ($263>>>0)<($265>>>0);
-        if ($267) {
-         $$4492 = $$2490$lcssa;$$4520 = $266;$$8 = $$5486$lcssa;
-         break;
-        } else {
-         $$2518634 = $266;$$2534633 = $265;
-        }
-       }
-      }
-     } else {
-      $$4492 = $225;$$4520 = $$1517;$$8 = $$3484$lcssa;
-     }
-    }
-    $268 = ((($$4492)) + 4|0);
-    $269 = ($$4502$lcssa>>>0)>($268>>>0);
-    $spec$select547 = $269 ? $268 : $$4502$lcssa;
-    $$5521 = $$4520;$$8506 = $spec$select547;$$9 = $$8;
-   } else {
-    $$5521 = $$1517;$$8506 = $$4502$lcssa;$$9 = $$3484$lcssa;
-   }
-   $270 = (0 - ($$5521))|0;
-   $271 = ($$8506>>>0)>($$9>>>0);
-   L109: do {
-    if ($271) {
-     $$9507625 = $$8506;
-     while(1) {
-      $273 = ((($$9507625)) + -4|0);
-      $274 = HEAP32[$273>>2]|0;
-      $275 = ($274|0)==(0);
-      if (!($275)) {
-       $$9507$lcssa = $$9507625;$$lcssa583 = 1;
-       break L109;
-      }
-      $272 = ($273>>>0)>($$9>>>0);
-      if ($272) {
-       $$9507625 = $273;
-      } else {
-       $$9507$lcssa = $273;$$lcssa583 = 0;
-       break;
-      }
-     }
-    } else {
-     $$9507$lcssa = $$8506;$$lcssa583 = 0;
-    }
-   } while(0);
-   do {
-    if ($211) {
-     $not$ = $212 ^ 1;
-     $276 = $not$&1;
-     $spec$select548 = (($spec$select539) + ($276))|0;
-     $277 = ($spec$select548|0)>($$5521|0);
-     $278 = ($$5521|0)>(-5);
-     $or$cond6 = $277 & $278;
-     if ($or$cond6) {
-      $279 = (($5) + -1)|0;
-      $$neg571 = (($spec$select548) + -1)|0;
-      $280 = (($$neg571) - ($$5521))|0;
-      $$0479 = $279;$$2476 = $280;
-     } else {
-      $281 = (($5) + -2)|0;
-      $282 = (($spec$select548) + -1)|0;
-      $$0479 = $281;$$2476 = $282;
-     }
-     $283 = $4 & 8;
-     $284 = ($283|0)==(0);
-     if ($284) {
-      if ($$lcssa583) {
-       $285 = ((($$9507$lcssa)) + -4|0);
-       $286 = HEAP32[$285>>2]|0;
-       $287 = ($286|0)==(0);
-       if ($287) {
-        $$2531 = 9;
-       } else {
-        $288 = (($286>>>0) % 10)&-1;
-        $289 = ($288|0)==(0);
-        if ($289) {
-         $$1530621 = 0;$$3535620 = 10;
-         while(1) {
-          $290 = ($$3535620*10)|0;
-          $291 = (($$1530621) + 1)|0;
-          $292 = (($286>>>0) % ($290>>>0))&-1;
-          $293 = ($292|0)==(0);
-          if ($293) {
-           $$1530621 = $291;$$3535620 = $290;
-          } else {
-           $$2531 = $291;
-           break;
-          }
-         }
-        } else {
-         $$2531 = 0;
-        }
-       }
-      } else {
-       $$2531 = 9;
-      }
-      $294 = $$0479 | 32;
-      $295 = ($294|0)==(102);
-      $296 = $$9507$lcssa;
-      $297 = (($296) - ($132))|0;
-      $298 = $297 >> 2;
-      $299 = ($298*9)|0;
-      $300 = (($299) + -9)|0;
-      if ($295) {
-       $301 = (($300) - ($$2531))|0;
-       $302 = ($301|0)>(0);
-       $spec$select549 = $302 ? $301 : 0;
-       $303 = ($$2476|0)<($spec$select549|0);
-       $spec$select562 = $303 ? $$2476 : $spec$select549;
-       $$1480 = $$0479;$$3477 = $spec$select562;
-       break;
-      } else {
-       $304 = (($300) + ($$5521))|0;
-       $305 = (($304) - ($$2531))|0;
-       $306 = ($305|0)>(0);
-       $spec$select551 = $306 ? $305 : 0;
-       $307 = ($$2476|0)<($spec$select551|0);
-       $spec$select563 = $307 ? $$2476 : $spec$select551;
-       $$1480 = $$0479;$$3477 = $spec$select563;
-       break;
-      }
-     } else {
-      $$1480 = $$0479;$$3477 = $$2476;
-     }
-    } else {
-     $$1480 = $5;$$3477 = $spec$select539;
-    }
-   } while(0);
-   $308 = ($$3477|0)!=(0);
-   $309 = $4 >>> 3;
-   $$lobit = $309 & 1;
-   $310 = $308 ? 1 : $$lobit;
-   $311 = $$1480 | 32;
-   $312 = ($311|0)==(102);
-   if ($312) {
-    $313 = ($$5521|0)>(0);
-    $314 = $313 ? $$5521 : 0;
-    $$2515 = 0;$$pn = $314;
-   } else {
-    $315 = ($$5521|0)<(0);
-    $316 = $315 ? $270 : $$5521;
-    $317 = ($316|0)<(0);
-    $318 = $317 << 31 >> 31;
-    $319 = (_fmt_u($316,$318,$11)|0);
-    $320 = $11;
-    $321 = $319;
-    $322 = (($320) - ($321))|0;
-    $323 = ($322|0)<(2);
-    if ($323) {
-     $$1514614 = $319;
-     while(1) {
-      $324 = ((($$1514614)) + -1|0);
-      HEAP8[$324>>0] = 48;
-      $325 = $324;
-      $326 = (($320) - ($325))|0;
-      $327 = ($326|0)<(2);
-      if ($327) {
-       $$1514614 = $324;
-      } else {
-       $$1514$lcssa = $324;
-       break;
-      }
-     }
-    } else {
-     $$1514$lcssa = $319;
-    }
-    $328 = $$5521 >> 31;
-    $329 = $328 & 2;
-    $330 = (($329) + 43)|0;
-    $331 = $330&255;
-    $332 = ((($$1514$lcssa)) + -1|0);
-    HEAP8[$332>>0] = $331;
-    $333 = $$1480&255;
-    $334 = ((($$1514$lcssa)) + -2|0);
-    HEAP8[$334>>0] = $333;
-    $335 = $334;
-    $336 = (($320) - ($335))|0;
-    $$2515 = $334;$$pn = $336;
-   }
-   $337 = (($$0522) + 1)|0;
-   $338 = (($337) + ($$3477))|0;
-   $$1528 = (($338) + ($310))|0;
-   $339 = (($$1528) + ($$pn))|0;
-   _pad($0,32,$2,$339,$4);
-   _out($0,$$0523,$$0522);
-   $340 = $4 ^ 65536;
-   _pad($0,48,$2,$339,$340);
-   if ($312) {
-    $341 = ($$9>>>0)>($$0498>>>0);
-    $spec$select554 = $341 ? $$0498 : $$9;
-    $342 = ((($8)) + 9|0);
-    $343 = $342;
-    $344 = ((($8)) + 8|0);
-    $$5493603 = $spec$select554;
-    while(1) {
-     $345 = HEAP32[$$5493603>>2]|0;
-     $346 = (_fmt_u($345,0,$342)|0);
-     $347 = ($$5493603|0)==($spec$select554|0);
-     if ($347) {
-      $353 = ($346|0)==($342|0);
-      if ($353) {
-       HEAP8[$344>>0] = 48;
-       $$1465 = $344;
-      } else {
-       $$1465 = $346;
-      }
-     } else {
-      $348 = ($346>>>0)>($8>>>0);
-      if ($348) {
-       $349 = $346;
-       $350 = (($349) - ($9))|0;
-       _memset(($8|0),48,($350|0))|0;
-       $$0464599 = $346;
-       while(1) {
-        $351 = ((($$0464599)) + -1|0);
-        $352 = ($351>>>0)>($8>>>0);
-        if ($352) {
-         $$0464599 = $351;
-        } else {
-         $$1465 = $351;
-         break;
-        }
-       }
-      } else {
-       $$1465 = $346;
-      }
-     }
-     $354 = $$1465;
-     $355 = (($343) - ($354))|0;
-     _out($0,$$1465,$355);
-     $356 = ((($$5493603)) + 4|0);
-     $357 = ($356>>>0)>($$0498>>>0);
-     if ($357) {
-      break;
-     } else {
-      $$5493603 = $356;
-     }
-    }
-    $$not = $308 ^ 1;
-    $358 = $4 & 8;
-    $359 = ($358|0)==(0);
-    $or$cond556 = $359 & $$not;
-    if (!($or$cond556)) {
-     _out($0,70665,1);
-    }
-    $360 = ($356>>>0)<($$9507$lcssa>>>0);
-    $361 = ($$3477|0)>(0);
-    $362 = $360 & $361;
-    if ($362) {
-     $$4478594 = $$3477;$$6494593 = $356;
-     while(1) {
-      $363 = HEAP32[$$6494593>>2]|0;
-      $364 = (_fmt_u($363,0,$342)|0);
-      $365 = ($364>>>0)>($8>>>0);
-      if ($365) {
-       $366 = $364;
-       $367 = (($366) - ($9))|0;
-       _memset(($8|0),48,($367|0))|0;
-       $$0463588 = $364;
-       while(1) {
-        $368 = ((($$0463588)) + -1|0);
-        $369 = ($368>>>0)>($8>>>0);
-        if ($369) {
-         $$0463588 = $368;
-        } else {
-         $$0463$lcssa = $368;
-         break;
-        }
-       }
-      } else {
-       $$0463$lcssa = $364;
-      }
-      $370 = ($$4478594|0)<(9);
-      $371 = $370 ? $$4478594 : 9;
-      _out($0,$$0463$lcssa,$371);
-      $372 = ((($$6494593)) + 4|0);
-      $373 = (($$4478594) + -9)|0;
-      $374 = ($372>>>0)<($$9507$lcssa>>>0);
-      $375 = ($$4478594|0)>(9);
-      $376 = $374 & $375;
-      if ($376) {
-       $$4478594 = $373;$$6494593 = $372;
-      } else {
-       $$4478$lcssa = $373;
-       break;
-      }
-     }
-    } else {
-     $$4478$lcssa = $$3477;
-    }
-    $377 = (($$4478$lcssa) + 9)|0;
-    _pad($0,48,$377,9,0);
-   } else {
-    $378 = ((($$9)) + 4|0);
-    $spec$select557 = $$lcssa583 ? $$9507$lcssa : $378;
-    $379 = ($$9>>>0)<($spec$select557>>>0);
-    $380 = ($$3477|0)>(-1);
-    $381 = $379 & $380;
-    if ($381) {
-     $382 = ((($8)) + 9|0);
-     $383 = $4 & 8;
-     $384 = ($383|0)==(0);
-     $385 = $382;
-     $386 = (0 - ($9))|0;
-     $387 = ((($8)) + 8|0);
-     $$5609 = $$3477;$$7495608 = $$9;
-     while(1) {
-      $388 = HEAP32[$$7495608>>2]|0;
-      $389 = (_fmt_u($388,0,$382)|0);
-      $390 = ($389|0)==($382|0);
-      if ($390) {
-       HEAP8[$387>>0] = 48;
-       $$0 = $387;
-      } else {
-       $$0 = $389;
-      }
-      $391 = ($$7495608|0)==($$9|0);
-      do {
-       if ($391) {
-        $395 = ((($$0)) + 1|0);
-        _out($0,$$0,1);
-        $396 = ($$5609|0)<(1);
-        $or$cond559 = $384 & $396;
-        if ($or$cond559) {
-         $$2 = $395;
-         break;
-        }
-        _out($0,70665,1);
-        $$2 = $395;
-       } else {
-        $392 = ($$0>>>0)>($8>>>0);
-        if (!($392)) {
-         $$2 = $$0;
-         break;
-        }
-        $scevgep711 = (($$0) + ($386)|0);
-        $scevgep711712 = $scevgep711;
-        _memset(($8|0),48,($scevgep711712|0))|0;
-        $$1604 = $$0;
-        while(1) {
-         $393 = ((($$1604)) + -1|0);
-         $394 = ($393>>>0)>($8>>>0);
-         if ($394) {
-          $$1604 = $393;
-         } else {
-          $$2 = $393;
-          break;
-         }
-        }
-       }
-      } while(0);
-      $397 = $$2;
-      $398 = (($385) - ($397))|0;
-      $399 = ($$5609|0)>($398|0);
-      $400 = $399 ? $398 : $$5609;
-      _out($0,$$2,$400);
-      $401 = (($$5609) - ($398))|0;
-      $402 = ((($$7495608)) + 4|0);
-      $403 = ($402>>>0)<($spec$select557>>>0);
-      $404 = ($401|0)>(-1);
-      $405 = $403 & $404;
-      if ($405) {
-       $$5609 = $401;$$7495608 = $402;
-      } else {
-       $$5$lcssa = $401;
-       break;
-      }
-     }
-    } else {
-     $$5$lcssa = $$3477;
-    }
-    $406 = (($$5$lcssa) + 18)|0;
-    _pad($0,48,$406,18,0);
-    $407 = $11;
-    $408 = $$2515;
-    $409 = (($407) - ($408))|0;
-    _out($0,$$2515,$409);
-   }
-   $410 = $4 ^ 8192;
-   _pad($0,32,$2,$339,$410);
-   $$sink757 = $339;
-  }
- } while(0);
- $411 = ($$sink757|0)<($2|0);
- $$560 = $411 ? $2 : $$sink757;
- STACKTOP = sp;return ($$560|0);
-}
-function ___DOUBLE_BITS($0) {
- $0 = +$0;
- var $1 = 0, $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- HEAPF64[tempDoublePtr>>3] = $0;$1 = HEAP32[tempDoublePtr>>2]|0;
- $2 = HEAP32[tempDoublePtr+4>>2]|0;
- tempRet0 = ($2);
- return ($1|0);
-}
-function _frexpl($0,$1) {
- $0 = +$0;
- $1 = $1|0;
- var $2 = 0.0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (+_frexp($0,$1));
- return (+$2);
-}
-function _frexp($0,$1) {
- $0 = +$0;
- $1 = $1|0;
- var $$0 = 0.0, $$016 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 
0.0, $storemerge = 0, $trunc$clear = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- HEAPF64[tempDoublePtr>>3] = $0;$2 = HEAP32[tempDoublePtr>>2]|0;
- $3 = HEAP32[tempDoublePtr+4>>2]|0;
- $4 = (_bitshift64Lshr(($2|0),($3|0),52)|0);
- $5 = tempRet0;
- $6 = $4&65535;
- $trunc$clear = $6 & 2047;
- switch ($trunc$clear<<16>>16) {
- case 0:  {
-  $7 = $0 != 0.0;
-  if ($7) {
-   $8 = $0 * 1.8446744073709552E+19;
-   $9 = (+_frexp($8,$1));
-   $10 = HEAP32[$1>>2]|0;
-   $11 = (($10) + -64)|0;
-   $$016 = $9;$storemerge = $11;
-  } else {
-   $$016 = $0;$storemerge = 0;
-  }
-  HEAP32[$1>>2] = $storemerge;
-  $$0 = $$016;
-  break;
- }
- case 2047:  {
-  $$0 = $0;
-  break;
- }
- default: {
-  $12 = $4 & 2047;
-  $13 = (($12) + -1022)|0;
-  HEAP32[$1>>2] = $13;
-  $14 = $3 & -2146435073;
-  $15 = $14 | 1071644672;
-  HEAP32[tempDoublePtr>>2] = $2;HEAP32[tempDoublePtr+4>>2] = $15;$16 = 
+HEAPF64[tempDoublePtr>>3];
-  $$0 = $16;
- }
- }
- return (+$$0);
-}
-function ___pthread_self_568() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (_pthread_self()|0);
- return ($0|0);
-}
-function ___strerror_l($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$012$lcssa = 0, $$01214 = 0, $$016 = 0, $$113 = 0, $$115 = 0, $$115$ph = 
0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 
0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0;
- var $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $$016 = 0;
- while(1) {
-  $2 = (28432 + ($$016)|0);
-  $3 = HEAP8[$2>>0]|0;
-  $4 = $3&255;
-  $5 = ($4|0)==($0|0);
-  if ($5) {
-   label = 4;
-   break;
-  }
-  $6 = (($$016) + 1)|0;
-  $7 = ($6|0)==(87);
-  if ($7) {
-   $$115$ph = 87;
-   label = 5;
-   break;
-  } else {
-   $$016 = $6;
-  }
- }
- if ((label|0) == 4) {
-  $8 = ($$016|0)==(0);
-  if ($8) {
-   $$012$lcssa = 28528;
-  } else {
-   $$115$ph = $$016;
-   label = 5;
-  }
- }
- if ((label|0) == 5) {
-  $$01214 = 28528;$$115 = $$115$ph;
-  while(1) {
-   $$113 = $$01214;
-   while(1) {
-    $9 = HEAP8[$$113>>0]|0;
-    $10 = ($9<<24>>24)==(0);
-    $11 = ((($$113)) + 1|0);
-    if ($10) {
-     break;
-    } else {
-     $$113 = $11;
-    }
-   }
-   $12 = (($$115) + -1)|0;
-   $13 = ($12|0)==(0);
-   if ($13) {
-    $$012$lcssa = $11;
-    break;
-   } else {
-    $$01214 = $11;$$115 = $12;
-   }
-  }
- }
- $14 = ((($1)) + 20|0);
- $15 = HEAP32[$14>>2]|0;
- $16 = (___lctrans($$012$lcssa,$15)|0);
- return ($16|0);
-}
-function ___lctrans($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (___lctrans_impl($0,$1)|0);
- return ($2|0);
-}
-function ___lctrans_impl($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = ($1|0)==(0|0);
- if ($2) {
-  $$0 = 0;
- } else {
-  $3 = HEAP32[$1>>2]|0;
-  $4 = ((($1)) + 4|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = (___mo_lookup($3,$5,$0)|0);
-  $$0 = $6;
- }
- $7 = ($$0|0)==(0|0);
- $8 = $7 ? $0 : $$0;
- return ($8|0);
-}
-function ___mo_lookup($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$090 = 0, $$094 = 0, $$191 = 0, $$195 = 0, $$4 = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $6 = 0, $60 = 0;
- var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond102 = 0, $or$cond104 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$0>>2]|0;
- $4 = (($3) + 1794895138)|0;
- $5 = ((($0)) + 8|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = (_swapc($6,$4)|0);
- $8 = ((($0)) + 12|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = (_swapc($9,$4)|0);
- $11 = ((($0)) + 16|0);
- $12 = HEAP32[$11>>2]|0;
- $13 = (_swapc($12,$4)|0);
- $14 = $1 >>> 2;
- $15 = ($7>>>0)<($14>>>0);
- L1: do {
-  if ($15) {
-   $16 = $7 << 2;
-   $17 = (($1) - ($16))|0;
-   $18 = ($10>>>0)<($17>>>0);
-   $19 = ($13>>>0)<($17>>>0);
-   $or$cond = $18 & $19;
-   if ($or$cond) {
-    $20 = $13 | $10;
-    $21 = $20 & 3;
-    $22 = ($21|0)==(0);
-    if ($22) {
-     $23 = $10 >>> 2;
-     $24 = $13 >>> 2;
-     $$090 = 0;$$094 = $7;
-     while(1) {
-      $25 = $$094 >>> 1;
-      $26 = (($$090) + ($25))|0;
-      $27 = $26 << 1;
-      $28 = (($27) + ($23))|0;
-      $29 = (($0) + ($28<<2)|0);
-      $30 = HEAP32[$29>>2]|0;
-      $31 = (_swapc($30,$4)|0);
-      $32 = (($28) + 1)|0;
-      $33 = (($0) + ($32<<2)|0);
-      $34 = HEAP32[$33>>2]|0;
-      $35 = (_swapc($34,$4)|0);
-      $36 = ($35>>>0)<($1>>>0);
-      $37 = (($1) - ($35))|0;
-      $38 = ($31>>>0)<($37>>>0);
-      $or$cond102 = $36 & $38;
-      if (!($or$cond102)) {
-       $$4 = 0;
-       break L1;
-      }
-      $39 = (($35) + ($31))|0;
-      $40 = (($0) + ($39)|0);
-      $41 = HEAP8[$40>>0]|0;
-      $42 = ($41<<24>>24)==(0);
-      if (!($42)) {
-       $$4 = 0;
-       break L1;
-      }
-      $43 = (($0) + ($35)|0);
-      $44 = (_strcmp($2,$43)|0);
-      $45 = ($44|0)==(0);
-      if ($45) {
-       break;
-      }
-      $62 = ($$094|0)==(1);
-      $63 = ($44|0)<(0);
-      if ($62) {
-       $$4 = 0;
-       break L1;
-      }
-      $$191 = $63 ? $$090 : $26;
-      $64 = (($$094) - ($25))|0;
-      $$195 = $63 ? $25 : $64;
-      $$090 = $$191;$$094 = $$195;
-     }
-     $46 = (($27) + ($24))|0;
-     $47 = (($0) + ($46<<2)|0);
-     $48 = HEAP32[$47>>2]|0;
-     $49 = (_swapc($48,$4)|0);
-     $50 = (($46) + 1)|0;
-     $51 = (($0) + ($50<<2)|0);
-     $52 = HEAP32[$51>>2]|0;
-     $53 = (_swapc($52,$4)|0);
-     $54 = ($53>>>0)<($1>>>0);
-     $55 = (($1) - ($53))|0;
-     $56 = ($49>>>0)<($55>>>0);
-     $or$cond104 = $54 & $56;
-     if ($or$cond104) {
-      $57 = (($0) + ($53)|0);
-      $58 = (($53) + ($49))|0;
-      $59 = (($0) + ($58)|0);
-      $60 = HEAP8[$59>>0]|0;
-      $61 = ($60<<24>>24)==(0);
-      $spec$select = $61 ? $57 : 0;
-      $$4 = $spec$select;
-     } else {
-      $$4 = 0;
-     }
-    } else {
-     $$4 = 0;
-    }
-   } else {
-    $$4 = 0;
-   }
-  } else {
-   $$4 = 0;
-  }
- } while(0);
- return ($$4|0);
-}
-function _swapc($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($1|0)==(0);
- $3 = (_llvm_bswap_i32(($0|0))|0);
- $spec$select = $2 ? $0 : $3;
- return ($spec$select|0);
-}
-function _strcmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$011 = 0, $$0710 = 0, $$lcssa = 0, $$lcssa8 = 0, $10 = 0, $11 = 0, $12 = 
0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, $or$cond = 0, $or$cond9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $2 = HEAP8[$0>>0]|0;
- $3 = HEAP8[$1>>0]|0;
- $4 = ($2<<24>>24)!=($3<<24>>24);
- $5 = ($2<<24>>24)==(0);
- $or$cond9 = $5 | $4;
- if ($or$cond9) {
-  $$lcssa = $3;$$lcssa8 = $2;
- } else {
-  $$011 = $1;$$0710 = $0;
-  while(1) {
-   $6 = ((($$0710)) + 1|0);
-   $7 = ((($$011)) + 1|0);
-   $8 = HEAP8[$6>>0]|0;
-   $9 = HEAP8[$7>>0]|0;
-   $10 = ($8<<24>>24)!=($9<<24>>24);
-   $11 = ($8<<24>>24)==(0);
-   $or$cond = $11 | $10;
-   if ($or$cond) {
-    $$lcssa = $9;$$lcssa8 = $8;
-    break;
-   } else {
-    $$011 = $7;$$0710 = $6;
-   }
-  }
- }
- $12 = $$lcssa8&255;
- $13 = $$lcssa&255;
- $14 = (($12) - ($13))|0;
- return ($14|0);
-}
-function _sn_write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$cast = 0, $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($0)) + 16|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ((($0)) + 20|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = (($4) - ($6))|0;
- $8 = ($7>>>0)>($2>>>0);
- $spec$select = $8 ? $2 : $7;
- $$cast = $6;
- (_memcpy(($$cast|0),($1|0),($spec$select|0))|0);
- $9 = HEAP32[$5>>2]|0;
- $10 = (($9) + ($spec$select)|0);
- HEAP32[$5>>2] = $10;
- return ($2|0);
-}
-function _wcschr($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$09 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($1|0)==(0);
- if ($2) {
-  $3 = (_wcslen($0)|0);
-  $4 = (($0) + ($3<<2)|0);
-  $$0 = $4;
- } else {
-  $$09 = $0;
-  while(1) {
-   $5 = HEAP32[$$09>>2]|0;
-   $6 = ($5|0)==(0);
-   $7 = ($5|0)==($1|0);
-   $or$cond = $6 | $7;
-   $8 = ((($$09)) + 4|0);
-   if ($or$cond) {
-    break;
-   } else {
-    $$09 = $8;
-   }
-  }
-  $9 = $6 ? 0 : $$09;
-  $$0 = $9;
- }
- return ($$0|0);
-}
-function _wcslen($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $$0 = $0;
- while(1) {
-  $1 = HEAP32[$$0>>2]|0;
-  $2 = ($1|0)==(0);
-  $3 = ((($$0)) + 4|0);
-  if ($2) {
-   break;
-  } else {
-   $$0 = $3;
-  }
- }
- $4 = $$0;
- $5 = $0;
- $6 = (($4) - ($5))|0;
- $7 = $6 >> 2;
- return ($7|0);
-}
-function ___fdopen($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, 
$42 = 0, $43 = 0, $5 = 0;
- var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer12 = 0, 
$vararg_buffer3 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, 
$vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr2 = 0, 
$vararg_ptr6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer12 = sp + 40|0;
- $vararg_buffer7 = sp + 24|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer = sp;
- $2 = sp + 56|0;
- $3 = HEAP8[$1>>0]|0;
- $4 = $3 << 24 >> 24;
- $5 = (_strchr(70667,$4)|0);
- $6 = ($5|0)==(0|0);
- if ($6) {
-  $7 = (___errno_location()|0);
-  HEAP32[$7>>2] = 22;
-  $$0 = 0;
- } else {
-  $8 = (_malloc(1156)|0);
-  $9 = ($8|0)==(0|0);
-  if ($9) {
-   $$0 = 0;
-  } else {
-   (_memset(($8|0),0,124)|0);
-   $10 = (_strchr($1,43)|0);
-   $11 = ($10|0)==(0|0);
-   if ($11) {
-    $12 = HEAP8[$1>>0]|0;
-    $13 = ($12<<24>>24)==(114);
-    $14 = $13 ? 8 : 4;
-    HEAP32[$8>>2] = $14;
-   }
-   $15 = (_strchr($1,101)|0);
-   $16 = ($15|0)==(0|0);
-   if (!($16)) {
-    HEAP32[$vararg_buffer>>2] = $0;
-    $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-    HEAP32[$vararg_ptr1>>2] = 2;
-    $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-    HEAP32[$vararg_ptr2>>2] = 1;
-    (___syscall221(221,($vararg_buffer|0))|0);
-   }
-   $17 = HEAP8[$1>>0]|0;
-   $18 = ($17<<24>>24)==(97);
-   if ($18) {
-    HEAP32[$vararg_buffer3>>2] = $0;
-    $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-    HEAP32[$vararg_ptr6>>2] = 3;
-    $19 = (___syscall221(221,($vararg_buffer3|0))|0);
-    $20 = $19 & 1024;
-    $21 = ($20|0)==(0);
-    if ($21) {
-     $22 = $19 | 1024;
-     HEAP32[$vararg_buffer7>>2] = $0;
-     $vararg_ptr10 = ((($vararg_buffer7)) + 4|0);
-     HEAP32[$vararg_ptr10>>2] = 4;
-     $vararg_ptr11 = ((($vararg_buffer7)) + 8|0);
-     HEAP32[$vararg_ptr11>>2] = $22;
-     (___syscall221(221,($vararg_buffer7|0))|0);
-    }
-    $23 = HEAP32[$8>>2]|0;
-    $24 = $23 | 128;
-    HEAP32[$8>>2] = $24;
-    $31 = $24;
-   } else {
-    $$pre = HEAP32[$8>>2]|0;
-    $31 = $$pre;
-   }
-   $25 = ((($8)) + 60|0);
-   HEAP32[$25>>2] = $0;
-   $26 = ((($8)) + 132|0);
-   $27 = ((($8)) + 44|0);
-   HEAP32[$27>>2] = $26;
-   $28 = ((($8)) + 48|0);
-   HEAP32[$28>>2] = 1024;
-   $29 = ((($8)) + 75|0);
-   HEAP8[$29>>0] = -1;
-   $30 = $31 & 8;
-   $32 = ($30|0)==(0);
-   if ($32) {
-    $33 = $2;
-    HEAP32[$vararg_buffer12>>2] = $0;
-    $vararg_ptr15 = ((($vararg_buffer12)) + 4|0);
-    HEAP32[$vararg_ptr15>>2] = 21523;
-    $vararg_ptr16 = ((($vararg_buffer12)) + 8|0);
-    HEAP32[$vararg_ptr16>>2] = $33;
-    $34 = (___syscall54(54,($vararg_buffer12|0))|0);
-    $35 = ($34|0)==(0);
-    if ($35) {
-     HEAP8[$29>>0] = 10;
-    }
-   }
-   $36 = ((($8)) + 32|0);
-   HEAP32[$36>>2] = 89;
-   $37 = ((($8)) + 36|0);
-   HEAP32[$37>>2] = 52;
-   $38 = ((($8)) + 40|0);
-   HEAP32[$38>>2] = 51;
-   $39 = ((($8)) + 12|0);
-   HEAP32[$39>>2] = 49;
-   $40 = HEAP32[(73216)>>2]|0;
-   $41 = ($40|0)==(0);
-   if ($41) {
-    $42 = ((($8)) + 76|0);
-    HEAP32[$42>>2] = -1;
-   }
-   $43 = (___ofl_add($8)|0);
-   $$0 = $8;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _strchr($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (___strchrnul($0,$1)|0);
- $3 = HEAP8[$2>>0]|0;
- $4 = $1&255;
- $5 = ($3<<24>>24)==($4<<24>>24);
- $6 = $5 ? $2 : 0;
- return ($6|0);
-}
-function ___ofl_add($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___ofl_lock()|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ((($0)) + 56|0);
- HEAP32[$3>>2] = $2;
- $4 = HEAP32[$1>>2]|0;
- $5 = ($4|0)==(0|0);
- if (!($5)) {
-  $6 = ((($4)) + 52|0);
-  HEAP32[$6>>2] = $0;
- }
- HEAP32[$1>>2] = $0;
- ___ofl_unlock();
- return ($0|0);
-}
-function ___strchrnul($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $$029$lcssa = 0, $$02936 = 0, $$030$lcssa = 0, $$03039 = 0, $$1 
= 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0;
- var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, 
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 
0, $39 = 0, $4 = 0, $40 = 0;
- var $41 = 0, $42 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond33 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = $1 & 255;
- $3 = ($2|0)==(0);
- L1: do {
-  if ($3) {
-   $4 = (_strlen($0)|0);
-   $5 = (($0) + ($4)|0);
-   $$0 = $5;
-  } else {
-   $6 = $0;
-   $7 = $6 & 3;
-   $8 = ($7|0)==(0);
-   if ($8) {
-    $$030$lcssa = $0;
-   } else {
-    $9 = $1&255;
-    $$03039 = $0;
-    while(1) {
-     $10 = HEAP8[$$03039>>0]|0;
-     $11 = ($10<<24>>24)==(0);
-     $12 = ($10<<24>>24)==($9<<24>>24);
-     $or$cond = $11 | $12;
-     if ($or$cond) {
-      $$0 = $$03039;
-      break L1;
-     }
-     $13 = ((($$03039)) + 1|0);
-     $14 = $13;
-     $15 = $14 & 3;
-     $16 = ($15|0)==(0);
-     if ($16) {
-      $$030$lcssa = $13;
-      break;
-     } else {
-      $$03039 = $13;
-     }
-    }
-   }
-   $17 = Math_imul($2, 16843009)|0;
-   $18 = HEAP32[$$030$lcssa>>2]|0;
-   $19 = (($18) + -16843009)|0;
-   $20 = $18 & -2139062144;
-   $21 = $20 ^ -2139062144;
-   $22 = $21 & $19;
-   $23 = ($22|0)==(0);
-   L10: do {
-    if ($23) {
-     $$02936 = $$030$lcssa;$25 = $18;
-     while(1) {
-      $24 = $25 ^ $17;
-      $26 = (($24) + -16843009)|0;
-      $27 = $24 & -2139062144;
-      $28 = $27 ^ -2139062144;
-      $29 = $28 & $26;
-      $30 = ($29|0)==(0);
-      if (!($30)) {
-       $$029$lcssa = $$02936;
-       break L10;
-      }
-      $31 = ((($$02936)) + 4|0);
-      $32 = HEAP32[$31>>2]|0;
-      $33 = (($32) + -16843009)|0;
-      $34 = $32 & -2139062144;
-      $35 = $34 ^ -2139062144;
-      $36 = $35 & $33;
-      $37 = ($36|0)==(0);
-      if ($37) {
-       $$02936 = $31;$25 = $32;
-      } else {
-       $$029$lcssa = $31;
-       break;
-      }
-     }
-    } else {
-     $$029$lcssa = $$030$lcssa;
-    }
-   } while(0);
-   $38 = $1&255;
-   $$1 = $$029$lcssa;
-   while(1) {
-    $39 = HEAP8[$$1>>0]|0;
-    $40 = ($39<<24>>24)==(0);
-    $41 = ($39<<24>>24)==($38<<24>>24);
-    $or$cond33 = $40 | $41;
-    $42 = ((($$1)) + 1|0);
-    if ($or$cond33) {
-     $$0 = $$1;
-     break;
-    } else {
-     $$1 = $42;
-    }
-   }
-  }
- } while(0);
- return ($$0|0);
-}
-function _strlen($0) {
- $0 = $0|0;
- var $$0 = 0, $$014 = 0, $$015$lcssa = 0, $$01518 = 0, $$1$lcssa = 0, $$pn = 
0, $$pn29 = 0, $$pre = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, 
$15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0;
- var $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = $0;
- $2 = $1 & 3;
- $3 = ($2|0)==(0);
- L1: do {
-  if ($3) {
-   $$015$lcssa = $0;
-   label = 5;
-  } else {
-   $$01518 = $0;$22 = $1;
-   while(1) {
-    $4 = HEAP8[$$01518>>0]|0;
-    $5 = ($4<<24>>24)==(0);
-    if ($5) {
-     $$pn = $22;
-     break L1;
-    }
-    $6 = ((($$01518)) + 1|0);
-    $7 = $6;
-    $8 = $7 & 3;
-    $9 = ($8|0)==(0);
-    if ($9) {
-     $$015$lcssa = $6;
-     label = 5;
-     break;
-    } else {
-     $$01518 = $6;$22 = $7;
-    }
-   }
-  }
- } while(0);
- if ((label|0) == 5) {
-  $$0 = $$015$lcssa;
-  while(1) {
-   $10 = HEAP32[$$0>>2]|0;
-   $11 = (($10) + -16843009)|0;
-   $12 = $10 & -2139062144;
-   $13 = $12 ^ -2139062144;
-   $14 = $13 & $11;
-   $15 = ($14|0)==(0);
-   $16 = ((($$0)) + 4|0);
-   if ($15) {
-    $$0 = $16;
-   } else {
-    break;
-   }
-  }
-  $17 = $10&255;
-  $18 = ($17<<24>>24)==(0);
-  if ($18) {
-   $$1$lcssa = $$0;
-  } else {
-   $$pn29 = $$0;
-   while(1) {
-    $19 = ((($$pn29)) + 1|0);
-    $$pre = HEAP8[$19>>0]|0;
-    $20 = ($$pre<<24>>24)==(0);
-    if ($20) {
-     $$1$lcssa = $19;
-     break;
-    } else {
-     $$pn29 = $19;
-    }
-   }
-  }
-  $21 = $$1$lcssa;
-  $$pn = $21;
- }
- $$014 = (($$pn) - ($1))|0;
- return ($$014|0);
-}
-function _fprintf($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- HEAP32[$2>>2] = $varargs;
- $3 = (_vfprintf($0,$1,$2)|0);
- STACKTOP = sp;return ($3|0);
-}
-function _vsprintf($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (_vsnprintf($0,2147483647,$1,$2)|0);
- return ($3|0);
-}
-function _mbtowc($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 
0, $26 = 0, $27 = 0, $28 = 0;
- var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, 
$44 = 0, $45 = 0, $46 = 0;
- var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $spec$select = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $3 = sp;
- $4 = ($1|0)==(0|0);
- L1: do {
-  if ($4) {
-   $$0 = 0;
-  } else {
-   $5 = ($2|0)==(0);
-   do {
-    if (!($5)) {
-     $6 = ($0|0)==(0|0);
-     $spec$select = $6 ? $3 : $0;
-     $7 = HEAP8[$1>>0]|0;
-     $8 = ($7<<24>>24)>(-1);
-     if ($8) {
-      $9 = $7&255;
-      HEAP32[$spec$select>>2] = $9;
-      $10 = ($7<<24>>24)!=(0);
-      $11 = $10&1;
-      $$0 = $11;
-      break L1;
-     }
-     $12 = (___pthread_self_423()|0);
-     $13 = ((($12)) + 188|0);
-     $14 = HEAP32[$13>>2]|0;
-     $15 = HEAP32[$14>>2]|0;
-     $16 = ($15|0)==(0|0);
-     $17 = HEAP8[$1>>0]|0;
-     if ($16) {
-      $18 = $17 << 24 >> 24;
-      $19 = $18 & 57343;
-      HEAP32[$spec$select>>2] = $19;
-      $$0 = 1;
-      break L1;
-     }
-     $20 = $17&255;
-     $21 = (($20) + -194)|0;
-     $22 = ($21>>>0)>(50);
-     if (!($22)) {
-      $23 = ((($1)) + 1|0);
-      $24 = (27472 + ($21<<2)|0);
-      $25 = HEAP32[$24>>2]|0;
-      $26 = ($2>>>0)<(4);
-      if ($26) {
-       $27 = ($2*6)|0;
-       $28 = (($27) + -6)|0;
-       $29 = -2147483648 >>> $28;
-       $30 = $25 & $29;
-       $31 = ($30|0)==(0);
-       if (!($31)) {
-        break;
-       }
-      }
-      $32 = HEAP8[$23>>0]|0;
-      $33 = $32&255;
-      $34 = $33 >>> 3;
-      $35 = (($34) + -16)|0;
-      $36 = $25 >> 26;
-      $37 = (($34) + ($36))|0;
-      $38 = $35 | $37;
-      $39 = ($38>>>0)>(7);
-      if (!($39)) {
-       $40 = $25 << 6;
-       $41 = (($33) + -128)|0;
-       $42 = $41 | $40;
-       $43 = ($42|0)<(0);
-       if (!($43)) {
-        HEAP32[$spec$select>>2] = $42;
-        $$0 = 2;
-        break L1;
-       }
-       $44 = ((($1)) + 2|0);
-       $45 = HEAP8[$44>>0]|0;
-       $46 = $45&255;
-       $47 = (($46) + -128)|0;
-       $48 = ($47>>>0)>(63);
-       if (!($48)) {
-        $49 = $42 << 6;
-        $50 = $47 | $49;
-        $51 = ($50|0)<(0);
-        if (!($51)) {
-         HEAP32[$spec$select>>2] = $50;
-         $$0 = 3;
-         break L1;
-        }
-        $52 = ((($1)) + 3|0);
-        $53 = HEAP8[$52>>0]|0;
-        $54 = $53&255;
-        $55 = (($54) + -128)|0;
-        $56 = ($55>>>0)>(63);
-        if (!($56)) {
-         $57 = $50 << 6;
-         $58 = $55 | $57;
-         HEAP32[$spec$select>>2] = $58;
-         $$0 = 4;
-         break L1;
-        }
-       }
-      }
-     }
-    }
-   } while(0);
-   $59 = (___errno_location()|0);
-   HEAP32[$59>>2] = 84;
-   $$0 = -1;
-  }
- } while(0);
- STACKTOP = sp;return ($$0|0);
-}
-function ___pthread_self_423() {
- var $0 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $0 = (_pthread_self()|0);
- return ($0|0);
-}
-function _fopen($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer 
= 0, $vararg_buffer3 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0;
- var $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer8 = sp + 32|0;
- $vararg_buffer3 = sp + 16|0;
- $vararg_buffer = sp;
- $2 = HEAP8[$1>>0]|0;
- $3 = $2 << 24 >> 24;
- $4 = (_strchr(70667,$3)|0);
- $5 = ($4|0)==(0|0);
- if ($5) {
-  $6 = (___errno_location()|0);
-  HEAP32[$6>>2] = 22;
-  $$0 = 0;
- } else {
-  $7 = (___fmodeflags($1)|0);
-  $8 = $0;
-  $9 = $7 | 32768;
-  HEAP32[$vararg_buffer>>2] = $8;
-  $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-  HEAP32[$vararg_ptr1>>2] = $9;
-  $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-  HEAP32[$vararg_ptr2>>2] = 438;
-  $10 = (___syscall5(5,($vararg_buffer|0))|0);
-  $11 = (___syscall_ret($10)|0);
-  $12 = ($11|0)<(0);
-  if ($12) {
-   $$0 = 0;
-  } else {
-   $13 = $7 & 524288;
-   $14 = ($13|0)==(0);
-   if (!($14)) {
-    HEAP32[$vararg_buffer3>>2] = $11;
-    $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-    HEAP32[$vararg_ptr6>>2] = 2;
-    $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
-    HEAP32[$vararg_ptr7>>2] = 1;
-    (___syscall221(221,($vararg_buffer3|0))|0);
-   }
-   $15 = (___fdopen($11,$1)|0);
-   $16 = ($15|0)==(0|0);
-   if ($16) {
-    HEAP32[$vararg_buffer8>>2] = $11;
-    (___syscall6(6,($vararg_buffer8|0))|0);
-    $$0 = 0;
-   } else {
-    $$0 = $15;
-   }
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function ___fmodeflags($0) {
- $0 = $0|0;
- var $$ = 0, $$0 = 0, $$2 = 0, $$4 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 
= 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0;
- var $spec$select = 0, $spec$select13 = 0, $spec$select14 = 0, label = 0, sp = 
0;
- sp = STACKTOP;
- $1 = (_strchr($0,43)|0);
- $2 = ($1|0)==(0|0);
- $3 = HEAP8[$0>>0]|0;
- $4 = ($3<<24>>24)!=(114);
- $$ = $4&1;
- $$0 = $2 ? $$ : 2;
- $5 = (_strchr($0,120)|0);
- $6 = ($5|0)==(0|0);
- $7 = $$0 | 128;
- $spec$select = $6 ? $$0 : $7;
- $8 = (_strchr($0,101)|0);
- $9 = ($8|0)==(0|0);
- $10 = $spec$select | 524288;
- $$2 = $9 ? $spec$select : $10;
- $11 = ($3<<24>>24)==(114);
- $12 = $$2 | 64;
- $spec$select13 = $11 ? $$2 : $12;
- $13 = ($3<<24>>24)==(119);
- $14 = $spec$select13 | 512;
- $$4 = $13 ? $14 : $spec$select13;
- $15 = ($3<<24>>24)==(97);
- $16 = $$4 | 1024;
- $spec$select14 = $15 ? $16 : $$4;
- return ($spec$select14|0);
-}
-function _fgets($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$05963 = 0, $$06065 = 0, $$06164 = 0, $$1 = 0, $10 = 0, $11 = 
0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 
= 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, 
$40 = 0, $41 = 0, $42 = 0;
- var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $or$cond = 0;
- var $or$cond72 = 0, $sext$mask = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ((($2)) + 76|0);
- $4 = HEAP32[$3>>2]|0;
- $5 = ($4|0)>(-1);
- if ($5) {
-  $6 = (___lockfile($2)|0);
-  $16 = $6;
- } else {
-  $16 = 0;
- }
- $7 = (($1) + -1)|0;
- $8 = ($1|0)<(2);
- if ($8) {
-  $9 = ((($2)) + 74|0);
-  $10 = HEAP8[$9>>0]|0;
-  $11 = $10 << 24 >> 24;
-  $12 = (($11) + 255)|0;
-  $13 = $12 | $11;
-  $14 = $13&255;
-  HEAP8[$9>>0] = $14;
-  $15 = ($16|0)==(0);
-  if (!($15)) {
-   ___unlockfile($2);
-  }
-  $17 = ($7|0)==(0);
-  if ($17) {
-   HEAP8[$0>>0] = 0;
-   $$0 = $0;
-  } else {
-   $$0 = 0;
-  }
- } else {
-  $18 = ($7|0)==(0);
-  L11: do {
-   if ($18) {
-    $$1 = $0;
-    label = 17;
-   } else {
-    $19 = ((($2)) + 4|0);
-    $20 = ((($2)) + 8|0);
-    $$06065 = $7;$$06164 = $0;
-    while(1) {
-     $21 = HEAP32[$19>>2]|0;
-     $22 = HEAP32[$20>>2]|0;
-     $23 = $21;
-     $24 = (($22) - ($23))|0;
-     $25 = (_memchr($21,10,$24)|0);
-     $26 = ($25|0)==(0|0);
-     $27 = $25;
-     $28 = (1 - ($23))|0;
-     $29 = (($28) + ($27))|0;
-     $30 = $26 ? $24 : $29;
-     $31 = ($30>>>0)<($$06065>>>0);
-     $32 = $31 ? $30 : $$06065;
-     (_memcpy(($$06164|0),($21|0),($32|0))|0);
-     $33 = HEAP32[$19>>2]|0;
-     $34 = (($33) + ($32)|0);
-     HEAP32[$19>>2] = $34;
-     $35 = (($$06164) + ($32)|0);
-     $36 = (($$06065) - ($32))|0;
-     $37 = ($36|0)!=(0);
-     $or$cond = $26 & $37;
-     if (!($or$cond)) {
-      $$1 = $35;
-      label = 17;
-      break L11;
-     }
-     $38 = HEAP32[$20>>2]|0;
-     $39 = ($34>>>0)<($38>>>0);
-     if ($39) {
-      $40 = ((($34)) + 1|0);
-      HEAP32[$19>>2] = $40;
-      $41 = HEAP8[$34>>0]|0;
-      $42 = $41&255;
-      $50 = $42;
-     } else {
-      $43 = (___uflow($2)|0);
-      $44 = ($43|0)<(0);
-      if ($44) {
-       break;
-      } else {
-       $50 = $43;
-      }
-     }
-     $49 = $50&255;
-     $51 = ((($35)) + 1|0);
-     HEAP8[$35>>0] = $49;
-     $sext$mask = $50 & 255;
-     $52 = ($sext$mask|0)==(10);
-     $53 = (($36) + -1)|0;
-     $54 = ($53|0)==(0);
-     $or$cond72 = $52 | $54;
-     if ($or$cond72) {
-      $$1 = $51;
-      label = 17;
-      break L11;
-     } else {
-      $$06065 = $53;$$06164 = $51;
-     }
-    }
-    $45 = ($35|0)==($0|0);
-    if ($45) {
-     $$05963 = 0;
-    } else {
-     $46 = HEAP32[$2>>2]|0;
-     $47 = $46 & 16;
-     $48 = ($47|0)==(0);
-     if ($48) {
-      $$05963 = 0;
-     } else {
-      $$1 = $35;
-      label = 17;
-     }
-    }
-   }
-  } while(0);
-  if ((label|0) == 17) {
-   $55 = ($0|0)==(0|0);
-   if ($55) {
-    $$05963 = 0;
-   } else {
-    HEAP8[$$1>>0] = 0;
-    $$05963 = $0;
-   }
-  }
-  $56 = ($16|0)==(0);
-  if ($56) {
-   $$0 = $$05963;
-  } else {
-   ___unlockfile($2);
-   $$0 = $$05963;
-  }
- }
- return ($$0|0);
-}
-function _strcpy($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- (___stpcpy($0,$1)|0);
- return ($0|0);
-}
-function ___stpcpy($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$lcssa = 0, $$025$lcssa = 0, $$02536 = 0, $$026$lcssa = 0, $$02642 = 
0, $$027$lcssa = 0, $$02741 = 0, $$030 = 0, $$037 = 0, $$1 = 0, $$128 = 0, 
$$22934 = 0, $$235 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0;
- var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, 
$32 = 0, $33 = 0, $34 = 0;
- var $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
- sp = STACKTOP;
- $2 = $1;
- $3 = $0;
- $4 = $2 ^ $3;
- $5 = $4 & 3;
- $6 = ($5|0)==(0);
- L1: do {
-  if ($6) {
-   $7 = $2 & 3;
-   $8 = ($7|0)==(0);
-   if ($8) {
-    $$026$lcssa = $1;$$027$lcssa = $0;
-   } else {
-    $$02642 = $1;$$02741 = $0;
-    while(1) {
-     $9 = HEAP8[$$02642>>0]|0;
-     HEAP8[$$02741>>0] = $9;
-     $10 = ($9<<24>>24)==(0);
-     if ($10) {
-      $$030 = $$02741;
-      break L1;
-     }
-     $11 = ((($$02642)) + 1|0);
-     $12 = ((($$02741)) + 1|0);
-     $13 = $11;
-     $14 = $13 & 3;
-     $15 = ($14|0)==(0);
-     if ($15) {
-      $$026$lcssa = $11;$$027$lcssa = $12;
-      break;
-     } else {
-      $$02642 = $11;$$02741 = $12;
-     }
-    }
-   }
-   $16 = HEAP32[$$026$lcssa>>2]|0;
-   $17 = (($16) + -16843009)|0;
-   $18 = $16 & -2139062144;
-   $19 = $18 ^ -2139062144;
-   $20 = $19 & $17;
-   $21 = ($20|0)==(0);
-   if ($21) {
-    $$02536 = $$027$lcssa;$$037 = $$026$lcssa;$24 = $16;
-    while(1) {
-     $22 = ((($$037)) + 4|0);
-     $23 = ((($$02536)) + 4|0);
-     HEAP32[$$02536>>2] = $24;
-     $25 = HEAP32[$22>>2]|0;
-     $26 = (($25) + -16843009)|0;
-     $27 = $25 & -2139062144;
-     $28 = $27 ^ -2139062144;
-     $29 = $28 & $26;
-     $30 = ($29|0)==(0);
-     if ($30) {
-      $$02536 = $23;$$037 = $22;$24 = $25;
-     } else {
-      $$0$lcssa = $22;$$025$lcssa = $23;
-      break;
-     }
-    }
-   } else {
-    $$0$lcssa = $$026$lcssa;$$025$lcssa = $$027$lcssa;
-   }
-   $$1 = $$0$lcssa;$$128 = $$025$lcssa;
-   label = 10;
-  } else {
-   $$1 = $1;$$128 = $0;
-   label = 10;
-  }
- } while(0);
- if ((label|0) == 10) {
-  $31 = HEAP8[$$1>>0]|0;
-  HEAP8[$$128>>0] = $31;
-  $32 = ($31<<24>>24)==(0);
-  if ($32) {
-   $$030 = $$128;
-  } else {
-   $$22934 = $$128;$$235 = $$1;
-   while(1) {
-    $33 = ((($$235)) + 1|0);
-    $34 = ((($$22934)) + 1|0);
-    $35 = HEAP8[$33>>0]|0;
-    HEAP8[$34>>0] = $35;
-    $36 = ($35<<24>>24)==(0);
-    if ($36) {
-     $$030 = $34;
-     break;
-    } else {
-     $$22934 = $34;$$235 = $33;
-    }
-   }
-  }
- }
- return ($$030|0);
-}
-function _feof($0) {
- $0 = $0|0;
- var $$lobit = 0, $$lobit8 = 0, $$lobit9 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0, $phitmp = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 76|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)>(-1);
- if ($3) {
-  $6 = (___lockfile($0)|0);
-  $phitmp = ($6|0)==(0);
-  $7 = HEAP32[$0>>2]|0;
-  $8 = $7 >>> 4;
-  $$lobit = $8 & 1;
-  if ($phitmp) {
-   $$lobit9 = $$lobit;
-  } else {
-   ___unlockfile($0);
-   $$lobit9 = $$lobit;
-  }
- } else {
-  $4 = HEAP32[$0>>2]|0;
-  $5 = $4 >>> 4;
-  $$lobit8 = $5 & 1;
-  $$lobit9 = $$lobit8;
- }
- return ($$lobit9|0);
-}
-function _sprintf($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $2 = sp;
- HEAP32[$2>>2] = $varargs;
- $3 = (_vsprintf($0,$1,$2)|0);
- STACKTOP = sp;return ($3|0);
-}
-function _strncmp($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa = 0, $$01823 = 0, $$01925 = 0, $$01925$in = 0, $$020 = 0, $$024 
= 0, $$lcssa = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 
0, $17 = 0, $18 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0;
- var $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond21 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = ($2|0)==(0);
- if ($3) {
-  $$020 = 0;
- } else {
-  $4 = HEAP8[$0>>0]|0;
-  $5 = ($4<<24>>24)==(0);
-  L3: do {
-   if ($5) {
-    $$0$lcssa = $1;$$lcssa = 0;
-   } else {
-    $$01823 = $0;$$01925$in = $2;$$024 = $1;$10 = $4;
-    while(1) {
-     $$01925 = (($$01925$in) + -1)|0;
-     $6 = HEAP8[$$024>>0]|0;
-     $7 = ($6<<24>>24)!=(0);
-     $8 = ($$01925|0)!=(0);
-     $or$cond = $8 & $7;
-     $9 = ($10<<24>>24)==($6<<24>>24);
-     $or$cond21 = $9 & $or$cond;
-     if (!($or$cond21)) {
-      $$0$lcssa = $$024;$$lcssa = $10;
-      break L3;
-     }
-     $11 = ((($$01823)) + 1|0);
-     $12 = ((($$024)) + 1|0);
-     $13 = HEAP8[$11>>0]|0;
-     $14 = ($13<<24>>24)==(0);
-     if ($14) {
-      $$0$lcssa = $12;$$lcssa = 0;
-      break;
-     } else {
-      $$01823 = $11;$$01925$in = $$01925;$$024 = $12;$10 = $13;
-     }
-    }
-   }
-  } while(0);
-  $15 = $$lcssa&255;
-  $16 = HEAP8[$$0$lcssa>>0]|0;
-  $17 = $16&255;
-  $18 = (($15) - ($17))|0;
-  $$020 = $18;
- }
- return ($$020|0);
-}
-function _close($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $spec$store$select = 0, $vararg_buffer = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $1 = (_dummy_33($0)|0);
- HEAP32[$vararg_buffer>>2] = $1;
- $2 = (___syscall6(6,($vararg_buffer|0))|0);
- $3 = ($2|0)==(-4);
- $spec$store$select = $3 ? 0 : $2;
- $4 = (___syscall_ret($spec$store$select)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _fcntl($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $$0 = 0, $$2 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, 
$24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, 
$34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
- var $arglist_current = 0, $arglist_next = 0, $expanded = 0, $expanded2 = 0, 
$expanded4 = 0, $expanded5 = 0, $expanded6 = 0, $spec$select = 0, 
$vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer18 = 0, 
$vararg_buffer23 = 0, $vararg_buffer28 = 0, $vararg_buffer3 = 0, 
$vararg_buffer31 = 0, $vararg_buffer36 = 0, $vararg_buffer41 = 0, 
$vararg_buffer46 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0;
- var $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 
0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr26 = 0, 
$vararg_ptr27 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr39 = 0, 
$vararg_ptr40 = 0, $vararg_ptr44 = 0, $vararg_ptr45 = 0, $vararg_ptr49 = 0, 
$vararg_ptr50 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(192|0);
- $vararg_buffer46 = sp + 168|0;
- $vararg_buffer41 = sp + 152|0;
- $vararg_buffer36 = sp + 136|0;
- $vararg_buffer31 = sp + 120|0;
- $vararg_buffer28 = sp + 112|0;
- $vararg_buffer23 = sp + 96|0;
- $vararg_buffer18 = sp + 80|0;
- $vararg_buffer13 = sp + 64|0;
- $vararg_buffer8 = sp + 48|0;
- $vararg_buffer3 = sp + 32|0;
- $vararg_buffer = sp + 16|0;
- $2 = sp;
- $3 = sp + 184|0;
- HEAP32[$2>>2] = $varargs;
- $arglist_current = HEAP32[$2>>2]|0;
- $4 = $arglist_current;
- $5 = ((0) + 4|0);
- $expanded2 = $5;
- $expanded = (($expanded2) - 1)|0;
- $6 = (($4) + ($expanded))|0;
- $7 = ((0) + 4|0);
- $expanded6 = $7;
- $expanded5 = (($expanded6) - 1)|0;
- $expanded4 = $expanded5 ^ -1;
- $8 = $6 & $expanded4;
- $9 = $8;
- $10 = HEAP32[$9>>2]|0;
- $arglist_next = ((($9)) + 4|0);
- HEAP32[$2>>2] = $arglist_next;
- $11 = ($1|0)==(4);
- $12 = $10 | 32768;
- $spec$select = $11 ? $12 : $10;
- L1: do {
-  switch ($1|0) {
-  case 14:  {
-   HEAP32[$vararg_buffer>>2] = $0;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = 14;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = $spec$select;
-   $13 = (___syscall221(221,($vararg_buffer|0))|0);
-   $14 = (___syscall_ret($13)|0);
-   $$2 = $14;
-   break;
-  }
-  case 9:  {
-   $15 = $3;
-   HEAP32[$vararg_buffer3>>2] = $0;
-   $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-   HEAP32[$vararg_ptr6>>2] = 16;
-   $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
-   HEAP32[$vararg_ptr7>>2] = $15;
-   $16 = (___syscall221(221,($vararg_buffer3|0))|0);
-   switch ($16|0) {
-   case -22:  {
-    HEAP32[$vararg_buffer8>>2] = $0;
-    $vararg_ptr11 = ((($vararg_buffer8)) + 4|0);
-    HEAP32[$vararg_ptr11>>2] = 9;
-    $vararg_ptr12 = ((($vararg_buffer8)) + 8|0);
-    HEAP32[$vararg_ptr12>>2] = $spec$select;
-    $17 = (___syscall221(221,($vararg_buffer8|0))|0);
-    $$0 = $17;
-    break;
-   }
-   case 0:  {
-    $19 = HEAP32[$3>>2]|0;
-    $20 = ($19|0)==(2);
-    $21 = ((($3)) + 4|0);
-    $22 = HEAP32[$21>>2]|0;
-    $23 = (0 - ($22))|0;
-    $24 = $20 ? $23 : $22;
-    $$0 = $24;
-    break;
-   }
-   default: {
-    $18 = (___syscall_ret($16)|0);
-    $$0 = $18;
-   }
-   }
-   $$2 = $$0;
-   break;
-  }
-  case 1030:  {
-   HEAP32[$vararg_buffer13>>2] = $0;
-   $vararg_ptr16 = ((($vararg_buffer13)) + 4|0);
-   HEAP32[$vararg_ptr16>>2] = 1030;
-   $vararg_ptr17 = ((($vararg_buffer13)) + 8|0);
-   HEAP32[$vararg_ptr17>>2] = $spec$select;
-   $25 = (___syscall221(221,($vararg_buffer13|0))|0);
-   $26 = ($25|0)==(-22);
-   if (!($26)) {
-    $27 = ($25|0)>(-1);
-    if ($27) {
-     HEAP32[$vararg_buffer18>>2] = $25;
-     $vararg_ptr21 = ((($vararg_buffer18)) + 4|0);
-     HEAP32[$vararg_ptr21>>2] = 2;
-     $vararg_ptr22 = ((($vararg_buffer18)) + 8|0);
-     HEAP32[$vararg_ptr22>>2] = 1;
-     (___syscall221(221,($vararg_buffer18|0))|0);
-    }
-    $28 = (___syscall_ret($25)|0);
-    $$2 = $28;
-    break L1;
-   }
-   HEAP32[$vararg_buffer23>>2] = $0;
-   $vararg_ptr26 = ((($vararg_buffer23)) + 4|0);
-   HEAP32[$vararg_ptr26>>2] = 1030;
-   $vararg_ptr27 = ((($vararg_buffer23)) + 8|0);
-   HEAP32[$vararg_ptr27>>2] = 0;
-   $29 = (___syscall221(221,($vararg_buffer23|0))|0);
-   $30 = ($29|0)==(-22);
-   if ($30) {
-    HEAP32[$vararg_buffer31>>2] = $0;
-    $vararg_ptr34 = ((($vararg_buffer31)) + 4|0);
-    HEAP32[$vararg_ptr34>>2] = 0;
-    $vararg_ptr35 = ((($vararg_buffer31)) + 8|0);
-    HEAP32[$vararg_ptr35>>2] = $spec$select;
-    $33 = (___syscall221(221,($vararg_buffer31|0))|0);
-    $34 = ($33|0)>(-1);
-    if ($34) {
-     HEAP32[$vararg_buffer36>>2] = $33;
-     $vararg_ptr39 = ((($vararg_buffer36)) + 4|0);
-     HEAP32[$vararg_ptr39>>2] = 2;
-     $vararg_ptr40 = ((($vararg_buffer36)) + 8|0);
-     HEAP32[$vararg_ptr40>>2] = 1;
-     (___syscall221(221,($vararg_buffer36|0))|0);
-    }
-    $35 = (___syscall_ret($33)|0);
-    $$2 = $35;
-    break L1;
-   } else {
-    $31 = ($29|0)>(-1);
-    if ($31) {
-     HEAP32[$vararg_buffer28>>2] = $29;
-     (___syscall6(6,($vararg_buffer28|0))|0);
-    }
-    $32 = (___syscall_ret(-22)|0);
-    $$2 = $32;
-    break L1;
-   }
-   break;
-  }
-  case 15: case 16: case 12: case 13:  {
-   HEAP32[$vararg_buffer41>>2] = $0;
-   $vararg_ptr44 = ((($vararg_buffer41)) + 4|0);
-   HEAP32[$vararg_ptr44>>2] = $1;
-   $vararg_ptr45 = ((($vararg_buffer41)) + 8|0);
-   HEAP32[$vararg_ptr45>>2] = $spec$select;
-   $36 = (___syscall221(221,($vararg_buffer41|0))|0);
-   $37 = (___syscall_ret($36)|0);
-   $$2 = $37;
-   break;
-  }
-  default: {
-   HEAP32[$vararg_buffer46>>2] = $0;
-   $vararg_ptr49 = ((($vararg_buffer46)) + 4|0);
-   HEAP32[$vararg_ptr49>>2] = $1;
-   $vararg_ptr50 = ((($vararg_buffer46)) + 8|0);
-   HEAP32[$vararg_ptr50>>2] = $spec$select;
-   $38 = (___syscall221(221,($vararg_buffer46|0))|0);
-   $39 = (___syscall_ret($38)|0);
-   $$2 = $39;
-  }
-  }
- } while(0);
- STACKTOP = sp;return ($$2|0);
-}
-function _open($0,$1,$varargs) {
- $0 = $0|0;
- $1 = $1|0;
- $varargs = $varargs|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $arglist_current = 0, $arglist_next = 0;
- var $expanded = 0, $expanded2 = 0, $expanded4 = 0, $expanded5 = 0, $expanded6 
= 0, $or$cond14 = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(48|0);
- $vararg_buffer3 = sp + 32|0;
- $vararg_buffer = sp + 16|0;
- $2 = sp;
- $3 = $1 & 4194368;
- $4 = ($3|0)==(0);
- if ($4) {
-  $$0 = 0;
- } else {
-  HEAP32[$2>>2] = $varargs;
-  $arglist_current = HEAP32[$2>>2]|0;
-  $5 = $arglist_current;
-  $6 = ((0) + 4|0);
-  $expanded2 = $6;
-  $expanded = (($expanded2) - 1)|0;
-  $7 = (($5) + ($expanded))|0;
-  $8 = ((0) + 4|0);
-  $expanded6 = $8;
-  $expanded5 = (($expanded6) - 1)|0;
-  $expanded4 = $expanded5 ^ -1;
-  $9 = $7 & $expanded4;
-  $10 = $9;
-  $11 = HEAP32[$10>>2]|0;
-  $arglist_next = ((($10)) + 4|0);
-  HEAP32[$2>>2] = $arglist_next;
-  $$0 = $11;
- }
- $12 = $0;
- $13 = $1 | 32768;
- HEAP32[$vararg_buffer>>2] = $12;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $13;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $$0;
- $14 = (___syscall5(5,($vararg_buffer|0))|0);
- $15 = ($14|0)<(0);
- $16 = $1 & 524288;
- $17 = ($16|0)==(0);
- $or$cond14 = $17 | $15;
- if (!($or$cond14)) {
-  HEAP32[$vararg_buffer3>>2] = $14;
-  $vararg_ptr6 = ((($vararg_buffer3)) + 4|0);
-  HEAP32[$vararg_ptr6>>2] = 2;
-  $vararg_ptr7 = ((($vararg_buffer3)) + 8|0);
-  HEAP32[$vararg_ptr7>>2] = 1;
-  (___syscall221(221,($vararg_buffer3|0))|0);
- }
- $18 = (___syscall_ret($14)|0);
- STACKTOP = sp;return ($18|0);
-}
-function ___synccall($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- FUNCTION_TABLE_vi[$0 & 127]($1);
- return;
-}
-function _memcmp($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$01318 = 0, $$01417 = 0, $$019 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, 
$14 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $3 = ($2|0)==(0);
- L1: do {
-  if ($3) {
-   $14 = 0;
-  } else {
-   $$01318 = $0;$$01417 = $2;$$019 = $1;
-   while(1) {
-    $4 = HEAP8[$$01318>>0]|0;
-    $5 = HEAP8[$$019>>0]|0;
-    $6 = ($4<<24>>24)==($5<<24>>24);
-    if (!($6)) {
-     break;
-    }
-    $7 = (($$01417) + -1)|0;
-    $8 = ((($$01318)) + 1|0);
-    $9 = ((($$019)) + 1|0);
-    $10 = ($7|0)==(0);
-    if ($10) {
-     $14 = 0;
-     break L1;
-    } else {
-     $$01318 = $8;$$01417 = $7;$$019 = $9;
-    }
-   }
-   $11 = $4&255;
-   $12 = $5&255;
-   $13 = (($11) - ($12))|0;
-   $14 = $13;
-  }
- } while(0);
- return ($14|0);
-}
-function ___procfdname($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$02324 = 0, $$027 = 0, $$126 = 0, $$225 = 0, $10 = 0, $11 = 0, $12 = 0, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, dest = 0;
- var label = 0, sp = 0, src = 0, stop = 0;
- sp = STACKTOP;
- dest=$0; src=70671; stop=dest+15|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; 
dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0));
- $2 = ($1|0)==(0);
- if ($2) {
-  $3 = ((($0)) + 14|0);
-  HEAP8[$3>>0] = 48;
-  $4 = ((($0)) + 15|0);
-  HEAP8[$4>>0] = 0;
- } else {
-  $$027 = $1;$$126 = 14;
-  while(1) {
-   $5 = (($$027>>>0) / 10)&-1;
-   $6 = (($$126) + 1)|0;
-   $7 = ($$027>>>0)<(10);
-   if ($7) {
-    break;
-   } else {
-    $$027 = $5;$$126 = $6;
-   }
-  }
-  $8 = (($0) + ($6)|0);
-  HEAP8[$8>>0] = 0;
-  $$02324 = $1;$$225 = $6;
-  while(1) {
-   $9 = (($$02324>>>0) / 10)&-1;
-   $10 = ($9*10)|0;
-   $11 = (($$02324) - ($10))|0;
-   $12 = $11 | 48;
-   $13 = $12&255;
-   $14 = (($$225) + -1)|0;
-   $15 = (($0) + ($14)|0);
-   HEAP8[$15>>0] = $13;
-   $16 = ($$02324>>>0)<(10);
-   if ($16) {
-    break;
-   } else {
-    $$02324 = $9;$$225 = $14;
-   }
-  }
- }
- return;
-}
-function _fstat($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 
0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(64|0);
- $vararg_buffer6 = sp + 48|0;
- $vararg_buffer2 = sp + 40|0;
- $vararg_buffer = sp + 32|0;
- $2 = sp;
- $3 = $1;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $3;
- $4 = (___syscall197(197,($vararg_buffer|0))|0);
- $5 = ($4|0)==(-9);
- if ($5) {
-  HEAP32[$vararg_buffer2>>2] = $0;
-  $vararg_ptr5 = ((($vararg_buffer2)) + 4|0);
-  HEAP32[$vararg_ptr5>>2] = 1;
-  $6 = (___syscall221(221,($vararg_buffer2|0))|0);
-  $7 = ($6|0)<(0);
-  if ($7) {
-   label = 3;
-  } else {
-   ___procfdname($2,$0);
-   $9 = $2;
-   HEAP32[$vararg_buffer6>>2] = $9;
-   $vararg_ptr9 = ((($vararg_buffer6)) + 4|0);
-   HEAP32[$vararg_ptr9>>2] = $3;
-   $10 = (___syscall195(195,($vararg_buffer6|0))|0);
-   $11 = (___syscall_ret($10)|0);
-   $$0 = $11;
-  }
- } else {
-  label = 3;
- }
- if ((label|0) == 3) {
-  $8 = (___syscall_ret($4)|0);
-  $$0 = $8;
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _getpid() {
- var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = (___syscall20(20,($vararg_buffer|0))|0);
- STACKTOP = sp;return ($0|0);
-}
-function _write($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = $1;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $3;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $2;
- $4 = (___syscall4(4,($vararg_buffer|0))|0);
- $5 = (___syscall_ret($4)|0);
- STACKTOP = sp;return ($5|0);
-}
-function _read($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $3 = $1;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $3;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $2;
- $4 = (___syscall3(3,($vararg_buffer|0))|0);
- $5 = (___syscall_ret($4)|0);
- STACKTOP = sp;return ($5|0);
-}
-function _access($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = $0;
- HEAP32[$vararg_buffer>>2] = $2;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $3 = (___syscall33(33,($vararg_buffer|0))|0);
- $4 = (___syscall_ret($3)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _getrusage($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = $1;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $2;
- $3 = (___syscall77(77,($vararg_buffer|0))|0);
- $4 = (___syscall_ret($3)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _strtoul($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $3 = (_strtox_765($0,$1,$2,-1,0)|0);
- $4 = tempRet0;
- return ($3|0);
-}
-function _strncpy($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- (___stpncpy($0,$1,$2)|0);
- return ($0|0);
-}
-function ___stpncpy($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0$lcssa = 0, $$037$lcssa = 0, $$03754 = 0, $$038$lcssa = 0, $$03867 = 
0, $$039$lcssa = 0, $$03966 = 0, $$042$lcssa = 0, $$04265 = 0, $$055 = 0, 
$$1$lcssa = 0, $$140 = 0, $$143 = 0, $$153 = 0, $$2 = 0, $$24147 = 0, $$24446 = 
0, $$345 = 0, $$348 = 0, $$4 = 0;
- var $$lcssa = 0, $$pr = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 
= 0, $25 = 0, $26 = 0, $27 = 0;
- var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, 
$35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 0, $or$cond = 0, $or$cond64 = 0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- $3 = $1;
- $4 = $0;
- $5 = $3 ^ $4;
- $6 = $5 & 3;
- $7 = ($6|0)==(0);
- L1: do {
-  if ($7) {
-   $8 = $3 & 3;
-   $9 = ($8|0)!=(0);
-   $10 = ($2|0)!=(0);
-   $or$cond64 = $10 & $9;
-   if ($or$cond64) {
-    $$03867 = $2;$$03966 = $1;$$04265 = $0;
-    while(1) {
-     $11 = HEAP8[$$03966>>0]|0;
-     HEAP8[$$04265>>0] = $11;
-     $12 = ($11<<24>>24)==(0);
-     if ($12) {
-      $$345 = $$04265;$$4 = $$03867;
-      break L1;
-     }
-     $13 = (($$03867) + -1)|0;
-     $14 = ((($$03966)) + 1|0);
-     $15 = ((($$04265)) + 1|0);
-     $16 = $14;
-     $17 = $16 & 3;
-     $18 = ($17|0)!=(0);
-     $19 = ($13|0)!=(0);
-     $or$cond = $19 & $18;
-     if ($or$cond) {
-      $$03867 = $13;$$03966 = $14;$$04265 = $15;
-     } else {
-      $$038$lcssa = $13;$$039$lcssa = $14;$$042$lcssa = $15;$$lcssa = $19;
-      break;
-     }
-    }
-   } else {
-    $$038$lcssa = $2;$$039$lcssa = $1;$$042$lcssa = $0;$$lcssa = $10;
-   }
-   if ($$lcssa) {
-    $$pr = HEAP8[$$039$lcssa>>0]|0;
-    $20 = ($$pr<<24>>24)==(0);
-    if ($20) {
-     $$345 = $$042$lcssa;$$4 = $$038$lcssa;
-    } else {
-     $21 = ($$038$lcssa>>>0)>(3);
-     L11: do {
-      if ($21) {
-       $$03754 = $$042$lcssa;$$055 = $$039$lcssa;$$153 = $$038$lcssa;
-       while(1) {
-        $22 = HEAP32[$$055>>2]|0;
-        $23 = (($22) + -16843009)|0;
-        $24 = $22 & -2139062144;
-        $25 = $24 ^ -2139062144;
-        $26 = $25 & $23;
-        $27 = ($26|0)==(0);
-        if (!($27)) {
-         $$0$lcssa = $$055;$$037$lcssa = $$03754;$$1$lcssa = $$153;
-         break L11;
-        }
-        HEAP32[$$03754>>2] = $22;
-        $28 = (($$153) + -4)|0;
-        $29 = ((($$055)) + 4|0);
-        $30 = ((($$03754)) + 4|0);
-        $31 = ($28>>>0)>(3);
-        if ($31) {
-         $$03754 = $30;$$055 = $29;$$153 = $28;
-        } else {
-         $$0$lcssa = $29;$$037$lcssa = $30;$$1$lcssa = $28;
-         break;
-        }
-       }
-      } else {
-       $$0$lcssa = $$039$lcssa;$$037$lcssa = $$042$lcssa;$$1$lcssa = 
$$038$lcssa;
-      }
-     } while(0);
-     $$140 = $$0$lcssa;$$143 = $$037$lcssa;$$2 = $$1$lcssa;
-     label = 13;
-    }
-   } else {
-    $$345 = $$042$lcssa;$$4 = 0;
-   }
-  } else {
-   $$140 = $1;$$143 = $0;$$2 = $2;
-   label = 13;
-  }
- } while(0);
- L17: do {
-  if ((label|0) == 13) {
-   $32 = ($$2|0)==(0);
-   if ($32) {
-    $$345 = $$143;$$4 = 0;
-   } else {
-    $$24147 = $$140;$$24446 = $$143;$$348 = $$2;
-    while(1) {
-     $33 = HEAP8[$$24147>>0]|0;
-     HEAP8[$$24446>>0] = $33;
-     $34 = ($33<<24>>24)==(0);
-     if ($34) {
-      $$345 = $$24446;$$4 = $$348;
-      break L17;
-     }
-     $35 = (($$348) + -1)|0;
-     $36 = ((($$24147)) + 1|0);
-     $37 = ((($$24446)) + 1|0);
-     $38 = ($35|0)==(0);
-     if ($38) {
-      $$345 = $37;$$4 = 0;
-      break;
-     } else {
-      $$24147 = $36;$$24446 = $37;$$348 = $35;
-     }
-    }
-   }
-  }
- } while(0);
- (_memset(($$345|0),0,($$4|0))|0);
- return ($$345|0);
-}
-function _strtox_765($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 
0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(128|0);
- $5 = sp;
- HEAP32[$5>>2] = 0;
- $6 = ((($5)) + 4|0);
- HEAP32[$6>>2] = $0;
- $7 = ((($5)) + 44|0);
- HEAP32[$7>>2] = $0;
- $8 = ($0|0)<(0|0);
- $9 = ((($0)) + 2147483647|0);
- $$sink = $8 ? (-1) : $9;
- $10 = ((($5)) + 8|0);
- HEAP32[$10>>2] = $$sink;
- $11 = ((($5)) + 76|0);
- HEAP32[$11>>2] = -1;
- ___shlim($5,0);
- $12 = (___intscan($5,$2,1,$3,$4)|0);
- $13 = tempRet0;
- $14 = ($1|0)==(0|0);
- if (!($14)) {
-  $15 = ((($5)) + 108|0);
-  $16 = HEAP32[$15>>2]|0;
-  $17 = HEAP32[$6>>2]|0;
-  $18 = HEAP32[$10>>2]|0;
-  $19 = (($17) + ($16))|0;
-  $20 = (($19) - ($18))|0;
-  $21 = (($0) + ($20)|0);
-  HEAP32[$1>>2] = $21;
- }
- tempRet0 = ($13);
- STACKTOP = sp;return ($12|0);
-}
-function _htonl($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___bswap_32($0)|0);
- return ($1|0);
-}
-function ___bswap_32($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_llvm_bswap_i32(($0|0))|0);
- return ($1|0);
-}
-function _ntohl($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___bswap_32_187($0)|0);
- return ($1|0);
-}
-function ___bswap_32_187($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_llvm_bswap_i32(($0|0))|0);
- return ($1|0);
-}
-function ___tre_mem_new_impl($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$in = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = ($0|0)==(0);
- if ($2) {
-  $3 = (_calloc(1,24)|0);
-  $$0$in = $3;
- } else {
-  (_memset(($1|0),0,24)|0);
-  $$0$in = $1;
- }
- return ($$0$in|0);
-}
-function ___tre_mem_destroy($0) {
- $0 = $0|0;
- var $$in1011 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $1 = HEAP32[$0>>2]|0;
- $2 = ($1|0)==(0|0);
- if (!($2)) {
-  $$in1011 = $1;
-  while(1) {
-   $3 = HEAP32[$$in1011>>2]|0;
-   _free($3);
-   $4 = ((($$in1011)) + 4|0);
-   $5 = HEAP32[$4>>2]|0;
-   _free($$in1011);
-   $6 = ($5|0)==(0|0);
-   if ($6) {
-    break;
-   } else {
-    $$in1011 = $5;
-   }
-  }
- }
- _free($0);
- return;
-}
-function ___tre_mem_alloc_impl($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$ = 0, $$3 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$phiZ2D = 0, $10 
= 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, 
$19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $5 = 0, $6 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $5 = ((($0)) + 16|0);
- $6 = HEAP32[$5>>2]|0;
- $7 = ($6|0)==(0);
- L1: do {
-  if ($7) {
-   $8 = ((($0)) + 12|0);
-   $9 = HEAP32[$8>>2]|0;
-   $10 = ($9>>>0)<($4>>>0);
-   do {
-    if ($10) {
-     $12 = ($1|0)==(0);
-     if (!($12)) {
-      $13 = ($2|0)==(0|0);
-      if ($13) {
-       HEAP32[$5>>2] = 1;
-       $$3 = 0;
-       break L1;
-      } else {
-       $14 = ((($0)) + 8|0);
-       HEAP32[$14>>2] = $2;
-       HEAP32[$8>>2] = 1024;
-       $15 = $2;
-       $$pre$phiZ2D = $14;$32 = $15;$38 = $2;$40 = 1024;
-       break;
-      }
-     }
-     $16 = $4 << 3;
-     $17 = ($16>>>0)>(1024);
-     $$ = $17 ? $16 : 1024;
-     $18 = (_malloc(8)|0);
-     $19 = ($18|0)==(0|0);
-     if ($19) {
-      HEAP32[$5>>2] = 1;
-      $$3 = 0;
-      break L1;
-     }
-     $20 = (_malloc($$)|0);
-     HEAP32[$18>>2] = $20;
-     $21 = ($20|0)==(0|0);
-     $22 = $20;
-     if ($21) {
-      _free($18);
-      HEAP32[$5>>2] = 1;
-      $$3 = 0;
-      break L1;
-     }
-     $23 = ((($18)) + 4|0);
-     HEAP32[$23>>2] = 0;
-     $24 = ((($0)) + 4|0);
-     $25 = HEAP32[$24>>2]|0;
-     $26 = ($25|0)==(0|0);
-     if (!($26)) {
-      $27 = ((($25)) + 4|0);
-      HEAP32[$27>>2] = $18;
-     }
-     $28 = HEAP32[$0>>2]|0;
-     $29 = ($28|0)==(0|0);
-     if ($29) {
-      HEAP32[$0>>2] = $18;
-     }
-     HEAP32[$24>>2] = $18;
-     $30 = ((($0)) + 8|0);
-     HEAP32[$30>>2] = $22;
-     HEAP32[$8>>2] = $$;
-     $$pre$phiZ2D = $30;$32 = $22;$38 = $20;$40 = $$;
-    } else {
-     $$phi$trans$insert = ((($0)) + 8|0);
-     $$pre = HEAP32[$$phi$trans$insert>>2]|0;
-     $11 = $$pre;
-     $$pre$phiZ2D = $$phi$trans$insert;$32 = $$pre;$38 = $11;$40 = $9;
-    }
-   } while(0);
-   $31 = (($32) + ($4))|0;
-   $33 = $31 & 3;
-   $34 = ($33|0)==(0);
-   $35 = (4 - ($33))|0;
-   $spec$select = $34 ? 0 : $35;
-   $36 = (($spec$select) + ($4))|0;
-   $37 = (($38) + ($36)|0);
-   HEAP32[$$pre$phiZ2D>>2] = $37;
-   $39 = (($40) - ($36))|0;
-   HEAP32[$8>>2] = $39;
-   $41 = ($3|0)==(0);
-   if ($41) {
-    $$3 = $38;
-   } else {
-    (_memset(($38|0),0,($36|0))|0);
-    $$3 = $38;
-   }
-  } else {
-   $$3 = 0;
-  }
- } while(0);
- return ($$3|0);
-}
-function _iswupper($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_towlower($0)|0);
- $2 = ($1|0)!=($0|0);
- $3 = $2&1;
- return ($3|0);
-}
-function _iswlower($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_towupper($0)|0);
- $2 = ($1|0)!=($0|0);
- $3 = $2&1;
- return ($3|0);
-}
-function _towupper($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___towcase($0,0)|0);
- return ($1|0);
-}
-function _towlower($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___towcase($0,1)|0);
- return ($1|0);
-}
-function ___towcase($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$06283 = 0, $$16382 = 0, $$2 = 0, $$neg75 = 0, $$neg77 = 0, $$neg78 = 0, 
$$not = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 
0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0;
- var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, 
$3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, 
$38 = 0, $39 = 0, $4 = 0;
- var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, 
$48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, 
$56 = 0, $57 = 0, $58 = 0;
- var $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond65 = 0, 
$or$cond67 = 0, $or$cond69 = 0, $or$cond71 = 0, $spec$select = 0, label = 0, sp 
= 0;
- sp = STACKTOP;
- $2 = $1 << 1;
- $3 = (($2) + -1)|0;
- $4 = (($1) + -1)|0;
- $5 = (_iswalpha($0)|0);
- $6 = ($5|0)==(0);
- $7 = (($0) + -1536)|0;
- $8 = ($7>>>0)<(2560);
- $or$cond65 = $8 | $6;
- $9 = (($0) + -11776)|0;
- $10 = ($9>>>0)<(30784);
- $or$cond67 = $10 | $or$cond65;
- $11 = (($0) + -43008)|0;
- $12 = ($11>>>0)<(22272);
- $or$cond69 = $12 | $or$cond67;
- L1: do {
-  if ($or$cond69) {
-   $$2 = $0;
-  } else {
-   $13 = ($1|0)!=(0);
-   $14 = (($0) + -4256)|0;
-   $15 = ($14>>>0)<(46);
-   $or$cond71 = $13 & $15;
-   if ($or$cond71) {
-    $16 = ($0|0)>(4293);
-    if ($16) {
-     switch ($0|0) {
-     case 4295: case 4301:  {
-      break;
-     }
-     default: {
-      $$2 = $0;
-      break L1;
-     }
-     }
-    }
-    $17 = (($0) + 7264)|0;
-    $$2 = $17;
-    break;
-   }
-   $$not = $13 ^ 1;
-   $18 = (($0) + -11520)|0;
-   $19 = ($18>>>0)<(38);
-   $or$cond = $19 & $$not;
-   if ($or$cond) {
-    $20 = (($0) + -7264)|0;
-    $$2 = $20;
-    break;
-   }
-   $$06283 = 0;
-   while(1) {
-    $23 = (((30432 + ($$06283<<2)|0)) + 3|0);
-    $24 = HEAP8[$23>>0]|0;
-    $25 = (30432 + ($$06283<<2)|0);
-    $26 = HEAP16[$25>>1]|0;
-    $27 = $26&65535;
-    $28 = (((30432 + ($$06283<<2)|0)) + 2|0);
-    $29 = HEAP8[$28>>0]|0;
-    $30 = $29 << 24 >> 24;
-    $31 = $4 & $30;
-    $$neg75 = (($0) - ($27))|0;
-    $32 = (($$neg75) - ($31))|0;
-    $33 = $24&255;
-    $34 = ($32>>>0)<($33>>>0);
-    $22 = (($$06283) + 1)|0;
-    if ($34) {
-     label = 11;
-     break;
-    }
-    $21 = ($22|0)==(61);
-    if ($21) {
-     break;
-    } else {
-     $$06283 = $22;
-    }
-   }
-   if ((label|0) == 11) {
-    $35 = ($29<<24>>24)==(1);
-    if ($35) {
-     $36 = (($1) + ($0))|0;
-     $37 = $$neg75 & 1;
-     $38 = (($36) - ($37))|0;
-     $$2 = $38;
-     break;
-    } else {
-     $39 = Math_imul($3, $30)|0;
-     $40 = (($39) + ($0))|0;
-     $$2 = $40;
-     break;
-    }
-   }
-   $41 = (1 - ($1))|0;
-   $42 = (30688 + ($41<<1)|0);
-   $43 = HEAP16[$42>>1]|0;
-   $44 = ($43<<16>>16)==(0);
-   L21: do {
-    if (!($44)) {
-     $$16382 = 0;$46 = $43;
-     while(1) {
-      $45 = $46&65535;
-      $47 = ($45|0)==($0|0);
-      if ($47) {
-       break;
-      }
-      $51 = (($$16382) + 1)|0;
-      $52 = ((30688 + ($51<<2)|0) + ($41<<1)|0);
-      $53 = HEAP16[$52>>1]|0;
-      $54 = ($53<<16>>16)==(0);
-      if ($54) {
-       break L21;
-      } else {
-       $$16382 = $51;$46 = $53;
-      }
-     }
-     $48 = ((30688 + ($$16382<<2)|0) + ($1<<1)|0);
-     $49 = HEAP16[$48>>1]|0;
-     $50 = $49&65535;
-     $$2 = $50;
-     break L1;
-    }
-   } while(0);
-   $$neg77 = ($1*40)|0;
-   $$neg78 = (($0) + -66600)|0;
-   $55 = (($$neg78) + ($$neg77))|0;
-   $56 = ($55>>>0)<(40);
-   $57 = (($0) + -40)|0;
-   $58 = ($1*80)|0;
-   $59 = (($57) + ($58))|0;
-   $spec$select = $56 ? $59 : $0;
-   return ($spec$select|0);
-  }
- } while(0);
- return ($$2|0);
-}
-function _iswalpha($0) {
- $0 = $0|0;
- var $$ = 0, $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 
= 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0>>>0)<(131072);
- if ($1) {
-  $2 = $0 >>> 8;
-  $3 = (31184 + ($2)|0);
-  $4 = HEAP8[$3>>0]|0;
-  $5 = $4&255;
-  $6 = $5 << 5;
-  $7 = $0 >>> 3;
-  $8 = $7 & 31;
-  $9 = $6 | $8;
-  $10 = (31184 + ($9)|0);
-  $11 = HEAP8[$10>>0]|0;
-  $12 = $11&255;
-  $13 = $0 & 7;
-  $14 = $12 >>> $13;
-  $15 = $14 & 1;
-  $$0 = $15;
- } else {
-  $16 = ($0>>>0)<(196606);
-  $$ = $16&1;
-  $$0 = $$;
- }
- return ($$0|0);
-}
-function _iswctype($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 
0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- do {
-  switch ($1|0) {
-  case 1:  {
-   $2 = (_iswalnum($0)|0);
-   $$0 = $2;
-   break;
-  }
-  case 2:  {
-   $3 = (_iswalpha($0)|0);
-   $$0 = $3;
-   break;
-  }
-  case 3:  {
-   $4 = (_iswblank($0)|0);
-   $$0 = $4;
-   break;
-  }
-  case 4:  {
-   $5 = (_iswcntrl($0)|0);
-   $$0 = $5;
-   break;
-  }
-  case 5:  {
-   $6 = (_iswdigit($0)|0);
-   $$0 = $6;
-   break;
-  }
-  case 6:  {
-   $7 = (_iswgraph($0)|0);
-   $$0 = $7;
-   break;
-  }
-  case 7:  {
-   $8 = (_iswlower($0)|0);
-   $$0 = $8;
-   break;
-  }
-  case 8:  {
-   $9 = (_iswprint($0)|0);
-   $$0 = $9;
-   break;
-  }
-  case 9:  {
-   $10 = (_iswpunct($0)|0);
-   $$0 = $10;
-   break;
-  }
-  case 10:  {
-   $11 = (_iswspace($0)|0);
-   $$0 = $11;
-   break;
-  }
-  case 11:  {
-   $12 = (_iswupper($0)|0);
-   $$0 = $12;
-   break;
-  }
-  case 12:  {
-   $13 = (_iswxdigit($0)|0);
-   $$0 = $13;
-   break;
-  }
-  default: {
-   $$0 = 0;
-  }
-  }
- } while(0);
- return ($$0|0);
-}
-function _iswalnum($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $phitmp = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_iswdigit($0)|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  $3 = (_iswalpha($0)|0);
-  $4 = ($3|0)!=(0);
-  $phitmp = $4&1;
-  $5 = $phitmp;
- } else {
-  $5 = 1;
- }
- return ($5|0);
-}
-function _iswblank($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_isblank($0)|0);
- return ($1|0);
-}
-function _iswcntrl($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $narrow = 
0, $or$cond = 0, $or$cond6 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0>>>0)<(32);
- $2 = (($0) + -127)|0;
- $3 = ($2>>>0)<(33);
- $or$cond = $1 | $3;
- $4 = $0 & -2;
- $5 = ($4|0)==(8232);
- $or$cond6 = $5 | $or$cond;
- $6 = (($0) + -65529)|0;
- $7 = ($6>>>0)<(3);
- $narrow = $7 | $or$cond6;
- $8 = $narrow&1;
- return ($8|0);
-}
-function _iswgraph($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $phitmp = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_iswspace($0)|0);
- $2 = ($1|0)==(0);
- if ($2) {
-  $3 = (_iswprint($0)|0);
-  $4 = ($3|0)!=(0);
-  $phitmp = $4&1;
-  $5 = $phitmp;
- } else {
-  $5 = 0;
- }
- return ($5|0);
-}
-function _iswprint($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 
= 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $not$or$cond11 = 0, 
$or$cond = 0, $or$cond9 = 0, $spec$select = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $1 = ($0>>>0)<(255);
- if ($1) {
-  $2 = (($0) + 1)|0;
-  $3 = $2 & 127;
-  $4 = ($3>>>0)>(32);
-  $5 = $4&1;
-  $$0 = $5;
- } else {
-  $6 = ($0>>>0)<(8232);
-  $7 = (($0) + -8234)|0;
-  $8 = ($7>>>0)<(47062);
-  $or$cond = $6 | $8;
-  $9 = (($0) + -57344)|0;
-  $10 = ($9>>>0)<(8185);
-  $or$cond9 = $10 | $or$cond;
-  if ($or$cond9) {
-   $$0 = 1;
-  } else {
-   $11 = (($0) + -65532)|0;
-   $12 = ($11>>>0)<(1048580);
-   $13 = $0 & 65534;
-   $14 = ($13|0)!=(65534);
-   $not$or$cond11 = $14 & $12;
-   $spec$select = $not$or$cond11&1;
-   return ($spec$select|0);
-  }
- }
- return ($$0|0);
-}
-function _iswpunct($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 
= 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0>>>0)<(131072);
- if ($1) {
-  $2 = $0 >>> 8;
-  $3 = (34160 + ($2)|0);
-  $4 = HEAP8[$3>>0]|0;
-  $5 = $4&255;
-  $6 = $5 << 5;
-  $7 = $0 >>> 3;
-  $8 = $7 & 31;
-  $9 = $6 | $8;
-  $10 = (34160 + ($9)|0);
-  $11 = HEAP8[$10>>0]|0;
-  $12 = $11&255;
-  $13 = $0 & 7;
-  $14 = $12 >>> $13;
-  $15 = $14 & 1;
-  $$0 = $15;
- } else {
-  $$0 = 0;
- }
- return ($$0|0);
-}
-function _iswxdigit($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $narrow = 0, $spec$select = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + -48)|0;
- $2 = ($1>>>0)<(10);
- $3 = $0 | 32;
- $4 = (($3) + -97)|0;
- $5 = ($4>>>0)<(6);
- $narrow = $2 | $5;
- $spec$select = $narrow&1;
- return ($spec$select|0);
-}
-function _isblank($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ($0|0)==(32);
- $2 = ($0|0)==(9);
- $3 = $1 | $2;
- $4 = $3&1;
- return ($4|0);
-}
-function _regexec($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0 = 0, $$026 = 0, $$027 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 
0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 
= 0, $24 = 0, $25 = 0, $26 = 0;
- var $27 = 0, $28 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- $6 = ((($0)) + 4|0);
- $7 = HEAP32[$6>>2]|0;
- $8 = ((($7)) + 56|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = $9 & 8;
- $11 = ($10|0)==(0);
- $spec$select = $11 ? $2 : 0;
- $12 = ((($7)) + 40|0);
- $13 = HEAP32[$12>>2]|0;
- $14 = ($13|0)>(0);
- $15 = ($spec$select|0)!=(0);
- $or$cond = $14 & $15;
- if ($or$cond) {
-  $16 = $13 << 2;
-  $17 = (_malloc($16)|0);
-  $18 = ($17|0)==(0|0);
-  if ($18) {
-   $$027 = 12;
-  } else {
-   $$0 = $17;$28 = $17;
-   label = 3;
-  }
- } else {
-  $$0 = 0;$28 = 0;
-  label = 3;
- }
- if ((label|0) == 3) {
-  $19 = ((($7)) + 60|0);
-  $20 = HEAP32[$19>>2]|0;
-  $21 = ($20|0)==(0);
-  if ($21) {
-   $23 = (_tre_tnfa_run_parallel($7,$1,$$0,$4,$5)|0);
-   $$026 = $23;
-  } else {
-   $22 = (_tre_tnfa_run_backtrack($7,$1,$$0,$4,$5)|0);
-   $$026 = $22;
-  }
-  $24 = ($$026|0)==(0);
-  if ($24) {
-   $25 = HEAP32[$8>>2]|0;
-   $26 = HEAP32[$5>>2]|0;
-   _tre_fill_pmatch($spec$select,$3,$25,$7,$$0,$26);
-  }
-  $27 = ($$0|0)==(0|0);
-  if ($27) {
-   $$027 = $$026;
-  } else {
-   _free($28);
-   $$027 = $$026;
-  }
- }
- STACKTOP = sp;return ($$027|0);
-}
-function _tre_tnfa_run_backtrack($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0450616675 = 0, $$0452612 = 0, $$0453 = 0, $$0453$ph = 0, $$0458 = 0, 
$$0463 = 0, $$0463$ph = 0, $$0467 = 0, $$0476 = 0, $$0477638 = 0, $$0479627 = 
0, $$0481590 = 0, $$0482 = 0, $$0487586 = 0, $$0488579 = 0, $$0502 = 0, 
$$0504597 = 0, $$0506 = 0, $$0520594 = 0, $$0531 = 0;
- var $$0533593 = 0, $$0537 = 0, $$0608 = 0, $$11517 = 0, $$12518 = 0, 
$$12518$ph = 0, $$14 = 0, $$1454 = 0, $$1459 = 0, $$1459$ph = 0, $$1464 = 0, 
$$1468 = 0, $$1480 = 0, $$1483$ph = 0, $$1503 = 0, $$1505624 = 0, $$1507595 = 
0, $$1521 = 0, $$1532 = 0, $$1534 = 0;
- var $$1538 = 0, $$2455 = 0, $$2460 = 0, $$2465 = 0, $$2469 = 0, $$2469$ph = 
0, $$2492 = 0, $$2492$clear = 0, $$2522604 = 0, $$2535 = 0, $$2535$ph = 0, 
$$3456 = 0, $$3456$ph = 0, $$3461 = 0, $$3470 = 0, $$3485 = 0, $$3509 = 0, 
$$3523 = 0, $$4471 = 0, $$4524 = 0;
- var $$4524$be = 0, $$4524$ph = 0, $$5472 = 0, $$5511 = 0, $$5525620 = 0, 
$$6473 = 0, $$6501 = 0, $$6512 = 0, $$6512$ph = 0, $$6526 = 0, $$7474 = 0, 
$$7474$ph = 0, $$7513621 = 0, $$7527634 = 0, $$9515 = 0, $$9529 = 0, $$9529$ph 
= 0, $$old = 0, $$old11 = 0, $$old37 = 0;
- var $$old38 = 0, $$pr = 0, $$pr539 = 0, $$pr545 = 0, $$pr547 = 0, $$pre = 0, 
$$pre651 = 0, $$pre655 = 0, $$pre657 = 0, $$pre658 = 0, $$pre659 = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0;
- var $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 
= 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 
= 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0;
- var $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 
= 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 
= 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0;
- var $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 
= 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 
= 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0;
- var $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, 
$169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, 
$176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0;
- var $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, 
$187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, 
$194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0;
- var $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 
= 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 
= 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0;
- var $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 
= 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 
= 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0;
- var $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 
= 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 
= 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0;
- var $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 
= 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 
= 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0;
- var $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, 
$278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, 
$285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0;
- var $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 
= 0, $297 = 0, $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 
= 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0;
- var $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 
= 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 
= 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0;
- var $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 
= 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 
= 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0;
- var $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 
= 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 
= 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0;
- var $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, 
$369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, 
$376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0;
- var $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, 
$387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, 
$394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0;
- var $399 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 
= 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 
= 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0;
- var $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 
= 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 
= 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0;
- var $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 
= 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 
= 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0;
- var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $63 = 0;
- var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $80 = 0, $81 = 0;
- var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, 
$9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $brmerge = 0;
- var $brmerge640 = 0, $brmerge643 = 0, $brmerge644 = 0, $not$ = 0, 
$or$cond$not = 0, $or$cond10 = 0, $or$cond12 = 0, $or$cond15 = 0, $or$cond18 = 
0, $or$cond21 = 0, $or$cond24 = 0, $or$cond27$not = 0, $or$cond30 = 0, 
$or$cond36 = 0, $or$cond39 = 0, $or$cond42 = 0, $or$cond45 = 0, $or$cond48 = 0, 
$or$cond51 = 0, $or$cond6 = 0;
- var $or$cond642 = 0, $or$cond646 = 0, $spec$select = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- HEAP32[$5>>2] = 0;
- $6 = $3 & 1;
- $7 = $3 & 2;
- $8 = ((($0)) + 56|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = $9 & 4;
- $11 = (___tre_mem_new_impl(0,0)|0);
- $12 = ($11|0)==(0|0);
- L1: do {
-  if ($12) {
-   $$14 = 12;
-  } else {
-   $13 = (___tre_mem_alloc_impl($11,0,0,0,32)|0);
-   $14 = ($13|0)==(0|0);
-   if ($14) {
-    ___tre_mem_destroy($11);
-    $$14 = 12;
-    break;
-   }
-   $15 = ((($13)) + 24|0);
-   HEAP32[$15>>2] = 0;
-   $16 = ((($13)) + 28|0);
-   HEAP32[$16>>2] = 0;
-   $17 = ((($0)) + 40|0);
-   $18 = HEAP32[$17>>2]|0;
-   $19 = ($18|0)==(0);
-   if ($19) {
-    $$0537 = 0;$135 = 0;
-    label = 6;
-   } else {
-    $20 = $18 << 2;
-    $21 = (_malloc($20)|0);
-    $22 = ($21|0)==(0|0);
-    if ($22) {
-     $$1503 = 0;$$1532 = 0;$$1538 = $21;$$6501 = 12;$447 = 0;$449 = 0;$451 = 0;
-    } else {
-     $$0537 = $21;$135 = $21;
-     label = 6;
-    }
-   }
-   L8: do {
-    if ((label|0) == 6) {
-     $23 = ((($0)) + 28|0);
-     $24 = HEAP32[$23>>2]|0;
-     $25 = ($24|0)==(0);
-     if ($25) {
-      $$0502 = 0;$137 = 0;
-     } else {
-      $26 = $24 << 3;
-      $27 = (_malloc($26)|0);
-      $28 = ($27|0)==(0|0);
-      if ($28) {
-       $$1503 = $27;$$1532 = 0;$$1538 = $$0537;$$6501 = 12;$447 = $135;$449 = 
0;$451 = 0;
-       break;
-      } else {
-       $$0502 = $27;$137 = $27;
-      }
-     }
-     $29 = ((($0)) + 52|0);
-     $30 = HEAP32[$29>>2]|0;
-     $31 = ($30|0)==(0);
-     if ($31) {
-      $$0531 = 0;$52 = 0;
-     } else {
-      $32 = $30 << 2;
-      $33 = (_malloc($32)|0);
-      $34 = ($33|0)==(0|0);
-      if ($34) {
-       $$1503 = $$0502;$$1532 = $33;$$1538 = $$0537;$$6501 = 12;$447 = 
$135;$449 = $137;$451 = 0;
-       break;
-      } else {
-       $$0531 = $33;$52 = $33;
-      }
-     }
-     $35 = ($2|0)==(0|0);
-     $36 = ((($0)) + 8|0);
-     $37 = ($6|0)==(0);
-     $38 = ($10|0)!=(0);
-     $39 = ((($0)) + 12|0);
-     $40 = ($2|0)!=(0|0);
-     $41 = ((($0)) + 32|0);
-     $$0458 = $1;$$0467 = 1;$$0476 = -1;$$0482 = -1;$$0506 = $13;$65 = 0;
-     L16: while(1) {
-      $42 = HEAP32[$17>>2]|0;
-      $43 = ($42|0)>(0);
-      if ($43) {
-       $$0488579 = 0;$452 = $42;
-       while(1) {
-        $44 = (($$0537) + ($$0488579<<2)|0);
-        HEAP32[$44>>2] = -1;
-        if ($35) {
-         $48 = $452;
-        } else {
-         $45 = (($2) + ($$0488579<<2)|0);
-         HEAP32[$45>>2] = -1;
-         $$pre = HEAP32[$17>>2]|0;
-         $48 = $$pre;
-        }
-        $46 = (($$0488579) + 1)|0;
-        $47 = ($46|0)<($48|0);
-        if ($47) {
-         $$0488579 = $46;$452 = $48;
-        } else {
-         break;
-        }
-       }
-      }
-      $49 = HEAP32[$29>>2]|0;
-      $50 = ($49|0)>(0);
-      if ($50) {
-       $51 = $49 << 2;
-       _memset(($52|0),0,($51|0))|0;
-      }
-      $53 = (($$0467) + ($$0476))|0;
-      $54 = (_mbtowc($5,$$0458,4)|0);
-      $55 = ($54|0)<(1);
-      if ($55) {
-       $56 = ($54|0)<(0);
-       if ($56) {
-        $$1503 = $$0502;$$1532 = $$0531;$$1538 = $$0537;$$6501 = 1;$447 = 
$135;$449 = $137;$451 = $52;
-        break L8;
-       } else {
-        $$1468 = 1;
-       }
-      } else {
-       $$1468 = $54;
-      }
-      $57 = (($$0458) + ($$1468)|0);
-      $58 = HEAP32[$5>>2]|0;
-      $59 = HEAP32[$36>>2]|0;
-      $60 = ((($59)) + 8|0);
-      $61 = HEAP32[$60>>2]|0;
-      $62 = ($61|0)==(0|0);
-      if ($62) {
-       $$12518 = $$0506;$$3456 = $65;$$3485 = $$0482;$$7474 = $$1468;$$9529 = 
0;
-       label = 179;
-      } else {
-       $63 = ($53|0)<(1);
-       $64 = ($65|0)==(10);
-       $or$cond6 = $38 & $64;
-       $66 = ($65|0)==(95);
-       $67 = ($53|0)!=(0);
-       $68 = ($53|0)==(0);
-       $or$cond$not = $63 & $37;
-       $$0504597 = $59;$$0520594 = 0;$$0533593 = 0;$$1507595 = $$0506;$126 = 
$60;
-       while(1) {
-        $69 = ((($$0504597)) + 20|0);
-        $70 = HEAP32[$69>>2]|0;
-        $71 = ($70|0)==(0);
-        L36: do {
-         if ($71) {
-          label = 50;
-         } else {
-          $72 = $70 & 1;
-          $73 = ($72|0)==(0);
-          $brmerge = $73 | $or$cond$not;
-          $brmerge640 = $brmerge | $or$cond6;
-          if ($brmerge640) {
-           $74 = $70 & 2;
-           $75 = ($74|0)==(0);
-           if (!($75)) {
-            $76 = HEAP32[$5>>2]|0;
-            $77 = $76 | $7;
-            $78 = ($77|0)==(0);
-            $79 = ($76|0)==(10);
-            $or$cond10 = $38 & $79;
-            $or$cond642 = $78 | $or$cond10;
-            if (!($or$cond642)) {
-             $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-             break;
-            }
-           }
-           $80 = $70 & 16;
-           $81 = ($80|0)==(0);
-           do {
-            if (!($81)) {
-             if ($66) {
-              $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-              break L36;
-             }
-             $82 = (_iswalnum($65)|0);
-             $83 = ($82|0)==(0);
-             if (!($83)) {
-              $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-              break L36;
-             }
-             $84 = HEAP32[$5>>2]|0;
-             $85 = ($84|0)==(95);
-             if ($85) {
-              break;
-             }
-             $86 = (_iswalnum($84)|0);
-             $87 = ($86|0)==(0);
-             if ($87) {
-              $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-              break L36;
-             }
-            }
-           } while(0);
-           $88 = HEAP32[$69>>2]|0;
-           $89 = $88 & 32;
-           $90 = ($89|0)==(0);
-           if ($90) {
-            $99 = $88;
-           } else {
-            if ($66) {
-             $$old = HEAP32[$5>>2]|0;
-             $$old11 = ($$old|0)==(95);
-             if ($$old11) {
-              $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-              break;
-             } else {
-              $95 = $$old;
-             }
-            } else {
-             $91 = (_iswalnum($65)|0);
-             $92 = ($91|0)==(0);
-             $93 = HEAP32[$5>>2]|0;
-             $94 = ($93|0)==(95);
-             $or$cond12 = $92 | $94;
-             if ($or$cond12) {
-              $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-              break;
-             } else {
-              $95 = $93;
-             }
-            }
-            $96 = (_iswalnum($95)|0);
-            $97 = ($96|0)==(0);
-            if (!($97)) {
-             $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-             break;
-            }
-            $$pre651 = HEAP32[$69>>2]|0;
-            $99 = $$pre651;
-           }
-           $98 = $99 & 64;
-           $100 = ($98|0)!=(0);
-           $or$cond15 = $67 & $100;
-           $101 = HEAP32[$5>>2]|0;
-           $102 = ($101|0)!=(0);
-           $or$cond18 = $102 & $or$cond15;
-           do {
-            if ($or$cond18) {
-             if ($66) {
-              $106 = $101;$110 = 1;
-             } else {
-              $103 = (_iswalnum($65)|0);
-              $104 = ($103|0)!=(0);
-              $$pr = HEAP32[$5>>2]|0;
-              $106 = $$pr;$110 = $104;
-             }
-             $105 = ($106|0)==(95);
-             if ($105) {
-              if ($110) {
-               $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-               break L36;
-              } else {
-               break;
-              }
-             } else {
-              $107 = (_iswalnum($106)|0);
-              $108 = ($107|0)!=(0);
-              $109 = $110 ^ $108;
-              if ($109) {
-               break;
-              } else {
-               $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-               break L36;
-              }
-             }
-            }
-           } while(0);
-           $111 = HEAP32[$69>>2]|0;
-           $112 = $111 & 128;
-           $113 = ($112|0)==(0);
-           if ($113) {
-            label = 50;
-            break;
-           }
-           $114 = HEAP32[$5>>2]|0;
-           $115 = ($114|0)==(0);
-           $or$cond21 = $68 | $115;
-           if ($or$cond21) {
-            $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-            break;
-           }
-           if ($66) {
-            $119 = $114;$123 = 1;
-           } else {
-            $116 = (_iswalnum($65)|0);
-            $117 = ($116|0)!=(0);
-            $$pr539 = HEAP32[$5>>2]|0;
-            $119 = $$pr539;$123 = $117;
-           }
-           $118 = ($119|0)==(95);
-           if ($118) {
-            if ($123) {
-             label = 50;
-             break;
-            } else {
-             $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-             break;
-            }
-           } else {
-            $120 = (_iswalnum($119)|0);
-            $121 = ($120|0)!=(0);
-            $122 = $123 ^ $121;
-            if ($122) {
-             $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-             break;
-            } else {
-             label = 50;
-             break;
-            }
-           }
-          } else {
-           $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$1507595;
-          }
-         }
-        } while(0);
-        do {
-         if ((label|0) == 50) {
-          label = 0;
-          $124 = ($$0533593|0)==(0|0);
-          if ($124) {
-           $125 = HEAP32[$126>>2]|0;
-           $127 = ((($$0504597)) + 16|0);
-           $128 = HEAP32[$127>>2]|0;
-           $$1521 = $128;$$1534 = $125;$$5511 = $$1507595;
-           break;
-          }
-          $129 = ((($$1507595)) + 28|0);
-          $130 = HEAP32[$129>>2]|0;
-          $131 = ($130|0)==(0|0);
-          if ($131) {
-           $132 = (___tre_mem_alloc_impl($11,0,0,0,32)|0);
-           $133 = ($132|0)==(0|0);
-           if ($133) {
-            label = 54;
-            break L16;
-           }
-           $139 = ((($132)) + 24|0);
-           HEAP32[$139>>2] = $$1507595;
-           $140 = ((($132)) + 28|0);
-           HEAP32[$140>>2] = 0;
-           $141 = HEAP32[$17>>2]|0;
-           $142 = $141 << 2;
-           $143 = (___tre_mem_alloc_impl($11,0,0,0,$142)|0);
-           $144 = ((($132)) + 20|0);
-           HEAP32[$144>>2] = $143;
-           $145 = ($143|0)==(0|0);
-           if ($145) {
-            label = 61;
-            break L16;
-           }
-           HEAP32[$129>>2] = $132;
-           $$3509 = $132;
-          } else {
-           $$3509 = $130;
-          }
-          HEAP32[$$3509>>2] = $53;
-          $149 = ((($$3509)) + 4|0);
-          HEAP32[$149>>2] = $57;
-          $150 = HEAP32[$126>>2]|0;
-          $151 = ((($$3509)) + 8|0);
-          HEAP32[$151>>2] = $150;
-          $152 = ((($$0504597)) + 12|0);
-          $153 = HEAP32[$152>>2]|0;
-          $154 = ((($$3509)) + 12|0);
-          HEAP32[$154>>2] = $153;
-          $155 = HEAP32[$5>>2]|0;
-          $156 = ((($$3509)) + 16|0);
-          HEAP32[$156>>2] = $155;
-          $157 = HEAP32[$17>>2]|0;
-          $158 = ($157|0)>(0);
-          if ($158) {
-           $159 = ((($$3509)) + 20|0);
-           $160 = HEAP32[$159>>2]|0;
-           $$0487586 = 0;
-           while(1) {
-            $161 = (($$0537) + ($$0487586<<2)|0);
-            $162 = HEAP32[$161>>2]|0;
-            $163 = (($160) + ($$0487586<<2)|0);
-            HEAP32[$163>>2] = $162;
-            $164 = (($$0487586) + 1)|0;
-            $165 = HEAP32[$17>>2]|0;
-            $166 = ($164|0)<($165|0);
-            if ($166) {
-             $$0487586 = $164;
-            } else {
-             break;
-            }
-           }
-          }
-          $167 = ((($$0504597)) + 16|0);
-          $168 = HEAP32[$167>>2]|0;
-          $169 = ($168|0)==(0|0);
-          if ($169) {
-           $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$3509;
-          } else {
-           $170 = HEAP32[$168>>2]|0;
-           $171 = ($170|0)>(-1);
-           if (!($171)) {
-            $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$3509;
-            break;
-           }
-           $172 = ((($$3509)) + 20|0);
-           $173 = HEAP32[$172>>2]|0;
-           $$0481590 = $168;$176 = $170;
-           while(1) {
-            $174 = ((($$0481590)) + 4|0);
-            $175 = (($173) + ($176<<2)|0);
-            HEAP32[$175>>2] = $53;
-            $177 = HEAP32[$174>>2]|0;
-            $178 = ($177|0)>(-1);
-            if ($178) {
-             $$0481590 = $174;$176 = $177;
-            } else {
-             $$1521 = $$0520594;$$1534 = $$0533593;$$5511 = $$3509;
-             break;
-            }
-           }
-          }
-         }
-        } while(0);
-        $179 = ((($$0504597)) + 32|0);
-        $180 = ((($$0504597)) + 40|0);
-        $181 = HEAP32[$180>>2]|0;
-        $182 = ($181|0)==(0|0);
-        if ($182) {
-         break;
-        } else {
-         $$0504597 = $179;$$0520594 = $$1521;$$0533593 = $$1534;$$1507595 = 
$$5511;$126 = $180;
-        }
-       }
-       $183 = ($$1521|0)==(0|0);
-       if ($183) {
-        $$3523 = 0;
-       } else {
-        $184 = HEAP32[$$1521>>2]|0;
-        $185 = ($184|0)>(-1);
-        if ($185) {
-         $$2522604 = $$1521;$187 = $184;
-         while(1) {
-          $186 = (($$0537) + ($187<<2)|0);
-          HEAP32[$186>>2] = $53;
-          $188 = ((($$2522604)) + 4|0);
-          $189 = HEAP32[$188>>2]|0;
-          $190 = ($189|0)>(-1);
-          if ($190) {
-           $$2522604 = $188;$187 = $189;
-          } else {
-           $$3523 = $188;
-           break;
-          }
-         }
-        } else {
-         $$3523 = $$1521;
-        }
-       }
-       $191 = ($$1534|0)==(0|0);
-       if ($191) {
-        $$12518 = $$5511;$$3456 = $65;$$3485 = $$0482;$$7474 = $$1468;$$9529 = 
$$3523;
-        label = 179;
-       } else {
-        $$0453$ph = $65;$$0463$ph = $53;$$1459$ph = $57;$$1483$ph = 
$$0482;$$2469$ph = $$1468;$$2535$ph = $$1534;$$4524$ph = $$3523;$$6512$ph = 
$$5511;
-       }
-      }
-      L100: while(1) {
-       if ((label|0) == 179) {
-        label = 0;
-        $416 = ((($$12518)) + 24|0);
-        $417 = HEAP32[$416>>2]|0;
-        $418 = ($417|0)==(0|0);
-        if ($418) {
-         break;
-        }
-        $419 = ((($$12518)) + 8|0);
-        $420 = HEAP32[$419>>2]|0;
-        $421 = ((($420)) + 20|0);
-        $422 = HEAP32[$421>>2]|0;
-        $423 = $422 & 256;
-        $424 = ($423|0)==(0);
-        if (!($424)) {
-         $425 = ((($$12518)) + 12|0);
-         $426 = HEAP32[$425>>2]|0;
-         $427 = (($$0531) + ($426<<2)|0);
-         HEAP32[$427>>2] = 0;
-        }
-        $428 = HEAP32[$$12518>>2]|0;
-        $429 = ((($$12518)) + 4|0);
-        $430 = HEAP32[$429>>2]|0;
-        $431 = ((($$12518)) + 16|0);
-        $432 = HEAP32[$431>>2]|0;
-        HEAP32[$5>>2] = $432;
-        $433 = HEAP32[$17>>2]|0;
-        $434 = ($433|0)>(0);
-        if (!($434)) {
-         $$0453$ph = $$3456;$$0463$ph = $428;$$1459$ph = $430;$$1483$ph = 
$$3485;$$2469$ph = $$7474;$$2535$ph = $420;$$4524$ph = $$9529;$$6512$ph = $417;
-         continue;
-        }
-        $435 = ((($$12518)) + 20|0);
-        $436 = HEAP32[$435>>2]|0;
-        $$0608 = 0;
-        while(1) {
-         $437 = (($436) + ($$0608<<2)|0);
-         $438 = HEAP32[$437>>2]|0;
-         $439 = (($$0537) + ($$0608<<2)|0);
-         HEAP32[$439>>2] = $438;
-         $440 = (($$0608) + 1)|0;
-         $441 = ($440|0)<($433|0);
-         if ($441) {
-          $$0608 = $440;
-         } else {
-          $$0453$ph = $$3456;$$0463$ph = $428;$$1459$ph = $430;$$1483$ph = 
$$3485;$$2469$ph = $$7474;$$2535$ph = $420;$$4524$ph = $$9529;$$6512$ph = $417;
-          continue L100;
-         }
-        }
-       }
-       $$0453 = $$0453$ph;$$0463 = $$0463$ph;$$1459 = $$1459$ph;$$2469 = 
$$2469$ph;$$2535 = $$2535$ph;$$4524 = $$4524$ph;$$6512 = $$6512$ph;
-       L111: while(1) {
-        $192 = HEAP32[$39>>2]|0;
-        $193 = ($$2535|0)==($192|0);
-        if ($193) {
-         break;
-        }
-        $208 = ((($$2535)) + 8|0);
-        $209 = HEAP32[$208>>2]|0;
-        $210 = ($209|0)==(0|0);
-        if ($210) {
-         label = 100;
-        } else {
-         $211 = ((($$2535)) + 20|0);
-         $212 = HEAP32[$211>>2]|0;
-         $213 = $212 & 256;
-         $214 = ($213|0)==(0);
-         if ($214) {
-          label = 100;
-         } else {
-          $215 = ((($$2535)) + 24|0);
-          $216 = HEAP32[$215>>2]|0;
-          $217 = (($216) + 1)|0;
-          $218 = HEAP32[$8>>2]|0;
-          $219 = $218 & -9;
-          _tre_fill_pmatch($217,$$0502,$219,$0,$$0537,$$0463);
-          $220 = (($$0502) + ($216<<3)|0);
-          $221 = HEAP32[$220>>2]|0;
-          $222 = (((($$0502) + ($216<<3)|0)) + 4|0);
-          $223 = HEAP32[$222>>2]|0;
-          $224 = (($223) - ($221))|0;
-          $225 = (($1) + ($221)|0);
-          $226 = ((($$1459)) + -1|0);
-          $227 = (_strncmp($225,$226,$224)|0);
-          $228 = ($227|0)==(0);
-          do {
-           if ($228) {
-            $229 = ($224|0)==(0);
-            $spec$select = $229&1;
-            $230 = ((($$2535)) + 12|0);
-            $231 = HEAP32[$230>>2]|0;
-            $232 = (($$0531) + ($231<<2)|0);
-            if ($229) {
-             $233 = HEAP32[$232>>2]|0;
-             $234 = ($233|0)==(0);
-             if (!($234)) {
-              $$1454 = $$0453;$$1464 = $$0463;$$2460 = $$1459;$$2492 = 
25;$$4471 = $$2469;
-              break;
-             }
-            }
-            HEAP32[$232>>2] = $spec$select;
-            $235 = (($224) + -1)|0;
-            $236 = (($$1459) + ($235)|0);
-            $237 = HEAP32[$5>>2]|0;
-            $238 = (($$0463) + ($$2469))|0;
-            $239 = (($238) + ($235))|0;
-            $240 = (_mbtowc($5,$236,4)|0);
-            $241 = ($240|0)<(1);
-            if ($241) {
-             $242 = ($240|0)<(0);
-             if ($242) {
-              $$1454 = $237;$$1464 = $239;$$2460 = $236;$$2492 = 2;$$4471 = 
$240;
-              break;
-             } else {
-              $$3470 = 1;
-             }
-            } else {
-             $$3470 = $240;
-            }
-            $243 = (($236) + ($$3470)|0);
-            $$1454 = $237;$$1464 = $239;$$2460 = $243;$$2492 = 0;$$4471 = 
$$3470;
-           } else {
-            $$1454 = $$0453;$$1464 = $$0463;$$2460 = $$1459;$$2492 = 25;$$4471 
= $$2469;
-           }
-          } while(0);
-          $$2492$clear = $$2492 & 31;
-          switch ($$2492$clear<<24>>24) {
-          case 2:  {
-           $$1503 = $$0502;$$1532 = $$0531;$$1538 = $$0537;$$6501 = 1;$447 = 
$135;$449 = $137;$451 = $52;
-           break L8;
-           break;
-          }
-          case 25:  {
-           $$12518$ph = $$6512;$$3456$ph = $$1454;$$7474$ph = $$4471;$$9529$ph 
= $$4524;
-           label = 178;
-           break L111;
-           break;
-          }
-          case 0:  {
-           $$2455 = $$1454;$$2465 = $$1464;$$3461 = $$2460;$$6473 = $$4471;
-           break;
-          }
-          default: {
-           $$14 = 12;
-           break L1;
-          }
-          }
-         }
-        }
-        if ((label|0) == 100) {
-         label = 0;
-         $244 = HEAP32[$5>>2]|0;
-         $245 = ($244|0)==(0);
-         if ($245) {
-          $$12518$ph = $$6512;$$3456$ph = $$0453;$$7474$ph = $$2469;$$9529$ph 
= $$4524;
-          label = 178;
-          break;
-         }
-         $246 = (($$0463) + ($$2469))|0;
-         $247 = (_mbtowc($5,$$1459,4)|0);
-         $248 = ($247|0)<(1);
-         if ($248) {
-          $249 = ($247|0)<(0);
-          if ($249) {
-           $$1503 = $$0502;$$1532 = $$0531;$$1538 = $$0537;$$6501 = 1;$447 = 
$135;$449 = $137;$451 = $52;
-           break L8;
-          } else {
-           $$5472 = 1;
-          }
-         } else {
-          $$5472 = $247;
-         }
-         $250 = (($$1459) + ($$5472)|0);
-         $$2455 = $244;$$2465 = $246;$$3461 = $250;$$6473 = $$5472;
-        }
-        $251 = HEAP32[$208>>2]|0;
-        $252 = ($251|0)==(0|0);
-        if ($252) {
-         $$12518$ph = $$6512;$$3456$ph = $$2455;$$7474$ph = $$6473;$$9529$ph = 
$$4524;
-         label = 178;
-         break;
-        }
-        $253 = ($$2465|0)<(1);
-        $254 = ($$2455|0)==(10);
-        $or$cond30 = $38 & $254;
-        $255 = ($$2455|0)==(95);
-        $256 = ($$2465|0)!=(0);
-        $257 = ($$2465|0)==(0);
-        $or$cond27$not = $253 & $37;
-        $$0479627 = 0;$$1505624 = $$2535;$$5525620 = $$4524;$$7513621 = 
$$6512;$352 = $208;
-        while(1) {
-         $258 = HEAP32[$$1505624>>2]|0;
-         $259 = ($258>>>0)>($$2455>>>0);
-         L136: do {
-          if ($259) {
-           $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-          } else {
-           $260 = ((($$1505624)) + 4|0);
-           $261 = HEAP32[$260>>2]|0;
-           $262 = ($261>>>0)<($$2455>>>0);
-           if ($262) {
-            $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-            break;
-           }
-           $263 = ((($$1505624)) + 20|0);
-           $264 = HEAP32[$263>>2]|0;
-           $265 = ($264|0)==(0);
-           do {
-            if (!($265)) {
-             $266 = $264 & 1;
-             $267 = ($266|0)==(0);
-             $brmerge643 = $267 | $or$cond27$not;
-             $brmerge644 = $brmerge643 | $or$cond30;
-             if (!($brmerge644)) {
-              $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-              break L136;
-             }
-             $268 = $264 & 2;
-             $269 = ($268|0)==(0);
-             if (!($269)) {
-              $270 = HEAP32[$5>>2]|0;
-              $271 = $270 | $7;
-              $272 = ($271|0)==(0);
-              $273 = ($270|0)==(10);
-              $or$cond36 = $38 & $273;
-              $or$cond646 = $272 | $or$cond36;
-              if (!($or$cond646)) {
-               $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-               break L136;
-              }
-             }
-             $274 = $264 & 16;
-             $275 = ($274|0)==(0);
-             do {
-              if (!($275)) {
-               if ($255) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               }
-               $276 = (_iswalnum($$2455)|0);
-               $277 = ($276|0)==(0);
-               if (!($277)) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               }
-               $278 = HEAP32[$5>>2]|0;
-               $279 = ($278|0)==(95);
-               if ($279) {
-                break;
-               }
-               $280 = (_iswalnum($278)|0);
-               $281 = ($280|0)==(0);
-               if ($281) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               }
-              }
-             } while(0);
-             $282 = HEAP32[$263>>2]|0;
-             $283 = $282 & 32;
-             $284 = ($283|0)==(0);
-             if ($284) {
-              $293 = $282;
-             } else {
-              if ($255) {
-               $$old37 = HEAP32[$5>>2]|0;
-               $$old38 = ($$old37|0)==(95);
-               if ($$old38) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               } else {
-                $289 = $$old37;
-               }
-              } else {
-               $285 = (_iswalnum($$2455)|0);
-               $286 = ($285|0)==(0);
-               $287 = HEAP32[$5>>2]|0;
-               $288 = ($287|0)==(95);
-               $or$cond39 = $286 | $288;
-               if ($or$cond39) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               } else {
-                $289 = $287;
-               }
-              }
-              $290 = (_iswalnum($289)|0);
-              $291 = ($290|0)==(0);
-              if (!($291)) {
-               $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-               break L136;
-              }
-              $$pre655 = HEAP32[$263>>2]|0;
-              $293 = $$pre655;
-             }
-             $292 = $293 & 64;
-             $294 = ($292|0)!=(0);
-             $or$cond42 = $256 & $294;
-             $295 = HEAP32[$5>>2]|0;
-             $296 = ($295|0)!=(0);
-             $or$cond45 = $296 & $or$cond42;
-             do {
-              if ($or$cond45) {
-               if ($255) {
-                $300 = $295;$304 = 1;
-               } else {
-                $297 = (_iswalnum($$2455)|0);
-                $298 = ($297|0)!=(0);
-                $$pr545 = HEAP32[$5>>2]|0;
-                $300 = $$pr545;$304 = $298;
-               }
-               $299 = ($300|0)==(95);
-               if ($299) {
-                if ($304) {
-                 $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                 break L136;
-                } else {
-                 break;
-                }
-               } else {
-                $301 = (_iswalnum($300)|0);
-                $302 = ($301|0)!=(0);
-                $303 = $304 ^ $302;
-                if ($303) {
-                 break;
-                } else {
-                 $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                 break L136;
-                }
-               }
-              }
-             } while(0);
-             $305 = HEAP32[$263>>2]|0;
-             $306 = $305 & 128;
-             $307 = ($306|0)==(0);
-             do {
-              if (!($307)) {
-               $308 = HEAP32[$5>>2]|0;
-               $309 = ($308|0)==(0);
-               $or$cond48 = $257 | $309;
-               if ($or$cond48) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               }
-               if ($255) {
-                $313 = $308;$317 = 1;
-               } else {
-                $310 = (_iswalnum($$2455)|0);
-                $311 = ($310|0)!=(0);
-                $$pr547 = HEAP32[$5>>2]|0;
-                $313 = $$pr547;$317 = $311;
-               }
-               $312 = ($313|0)==(95);
-               if ($312) {
-                if ($317) {
-                 break;
-                } else {
-                 $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                 break L136;
-                }
-               } else {
-                $314 = (_iswalnum($313)|0);
-                $315 = ($314|0)!=(0);
-                $316 = $317 ^ $315;
-                if ($316) {
-                 $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                 break L136;
-                } else {
-                 break;
-                }
-               }
-              }
-             } while(0);
-             $318 = HEAP32[$263>>2]|0;
-             $319 = $318 & 4;
-             $320 = ($319|0)==(0);
-             do {
-              if (!($320)) {
-               $321 = HEAP32[$8>>2]|0;
-               $322 = $321 & 2;
-               $323 = ($322|0)==(0);
-               if ($323) {
-                $324 = ((($$1505624)) + 24|0);
-                $325 = HEAP32[$324>>2]|0;
-                $326 = (_iswctype($$2455,$325)|0);
-                $327 = ($326|0)==(0);
-                if ($327) {
-                 $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                 break L136;
-                }
-                $$pre657 = HEAP32[$263>>2]|0;
-                $$pre659 = $$pre657 & 4;
-                $328 = ($$pre659|0)==(0);
-                if ($328) {
-                 break;
-                }
-               }
-               $329 = HEAP32[$8>>2]|0;
-               $330 = $329 & 2;
-               $331 = ($330|0)==(0);
-               if ($331) {
-                break;
-               }
-               $332 = (_towlower($$2455)|0);
-               $333 = ((($$1505624)) + 24|0);
-               $334 = HEAP32[$333>>2]|0;
-               $335 = (_iswctype($332,$334)|0);
-               $336 = ($335|0)==(0);
-               if (!($336)) {
-                break;
-               }
-               $337 = (_towupper($$2455)|0);
-               $338 = HEAP32[$333>>2]|0;
-               $339 = (_iswctype($337,$338)|0);
-               $340 = ($339|0)==(0);
-               if ($340) {
-                $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-                break L136;
-               }
-              }
-             } while(0);
-             $341 = HEAP32[$263>>2]|0;
-             $342 = $341 & 8;
-             $343 = ($342|0)==(0);
-             if ($343) {
-              break;
-             }
-             $344 = ((($$1505624)) + 28|0);
-             $345 = HEAP32[$344>>2]|0;
-             $346 = HEAP32[$8>>2]|0;
-             $347 = $346 & 2;
-             $348 = (_tre_neg_char_classes_match($345,$$2455,$347)|0);
-             $349 = ($348|0)==(0);
-             if (!($349)) {
-              $$11517 = $$7513621;$$1480 = $$0479627;$$6526 = $$5525620;
-              break L136;
-             }
-            }
-           } while(0);
-           $350 = ($$0479627|0)==(0|0);
-           if ($350) {
-            $351 = HEAP32[$352>>2]|0;
-            $353 = ((($$1505624)) + 16|0);
-            $354 = HEAP32[$353>>2]|0;
-            $$11517 = $$7513621;$$1480 = $351;$$6526 = $354;
-            break;
-           }
-           $355 = ((($$7513621)) + 28|0);
-           $356 = HEAP32[$355>>2]|0;
-           $357 = ($356|0)==(0|0);
-           if ($357) {
-            $358 = (___tre_mem_alloc_impl($11,0,0,0,32)|0);
-            $359 = ($358|0)==(0|0);
-            if ($359) {
-             label = 149;
-             break L16;
-            }
-            $363 = ((($358)) + 24|0);
-            HEAP32[$363>>2] = $$7513621;
-            $364 = ((($358)) + 28|0);
-            HEAP32[$364>>2] = 0;
-            $365 = HEAP32[$17>>2]|0;
-            $366 = $365 << 2;
-            $367 = (___tre_mem_alloc_impl($11,0,0,0,$366)|0);
-            $368 = ((($358)) + 20|0);
-            HEAP32[$368>>2] = $367;
-            $369 = ($367|0)==(0|0);
-            if ($369) {
-             label = 156;
-             break L16;
-            }
-            HEAP32[$355>>2] = $358;
-            $$9515 = $358;
-           } else {
-            $$9515 = $356;
-           }
-           HEAP32[$$9515>>2] = $$2465;
-           $373 = ((($$9515)) + 4|0);
-           HEAP32[$373>>2] = $$3461;
-           $374 = HEAP32[$352>>2]|0;
-           $375 = ((($$9515)) + 8|0);
-           HEAP32[$375>>2] = $374;
-           $376 = ((($$1505624)) + 12|0);
-           $377 = HEAP32[$376>>2]|0;
-           $378 = ((($$9515)) + 12|0);
-           HEAP32[$378>>2] = $377;
-           $379 = HEAP32[$5>>2]|0;
-           $380 = ((($$9515)) + 16|0);
-           HEAP32[$380>>2] = $379;
-           $381 = HEAP32[$17>>2]|0;
-           $382 = ($381|0)>(0);
-           if ($382) {
-            $383 = ((($$9515)) + 20|0);
-            $384 = HEAP32[$383>>2]|0;
-            $$0452612 = 0;
-            while(1) {
-             $385 = (($$0537) + ($$0452612<<2)|0);
-             $386 = HEAP32[$385>>2]|0;
-             $387 = (($384) + ($$0452612<<2)|0);
-             HEAP32[$387>>2] = $386;
-             $388 = (($$0452612) + 1)|0;
-             $389 = HEAP32[$17>>2]|0;
-             $390 = ($388|0)<($389|0);
-             if ($390) {
-              $$0452612 = $388;
-             } else {
-              break;
-             }
-            }
-           }
-           $391 = ((($$1505624)) + 16|0);
-           $392 = HEAP32[$391>>2]|0;
-           $393 = ($392|0)==(0|0);
-           if ($393) {
-            $$11517 = $$9515;$$1480 = $$0479627;$$6526 = $$5525620;
-            break;
-           }
-           $394 = ((($$9515)) + 20|0);
-           $395 = HEAP32[$392>>2]|0;
-           $396 = ($395|0)>(-1);
-           if (!($396)) {
-            $$11517 = $$9515;$$1480 = $$0479627;$$6526 = $$5525620;
-            break;
-           }
-           $397 = HEAP32[$394>>2]|0;
-           $$0450616675 = $392;$399 = $395;
-           while(1) {
-            $398 = (($397) + ($399<<2)|0);
-            HEAP32[$398>>2] = $$2465;
-            $400 = ((($$0450616675)) + 4|0);
-            $401 = HEAP32[$400>>2]|0;
-            $402 = ($401|0)>(-1);
-            if ($402) {
-             $$0450616675 = $400;$399 = $401;
-            } else {
-             $$11517 = $$9515;$$1480 = $$0479627;$$6526 = $$5525620;
-             break;
-            }
-           }
-          }
-         } while(0);
-         $403 = ((($$1505624)) + 32|0);
-         $404 = ((($$1505624)) + 40|0);
-         $405 = HEAP32[$404>>2]|0;
-         $406 = ($405|0)==(0|0);
-         if ($406) {
-          break;
-         } else {
-          $$0479627 = $$1480;$$1505624 = $403;$$5525620 = $$6526;$$7513621 = 
$$11517;$352 = $404;
-         }
-        }
-        $407 = ($$1480|0)==(0|0);
-        if ($407) {
-         $$12518$ph = $$11517;$$3456$ph = $$2455;$$7474$ph = $$6473;$$9529$ph 
= $$6526;
-         label = 178;
-         break;
-        }
-        $408 = ($$6526|0)==(0|0);
-        do {
-         if ($408) {
-          $$4524$be = 0;
-         } else {
-          $409 = HEAP32[$$6526>>2]|0;
-          $410 = ($409|0)>(-1);
-          if (!($410)) {
-           $$4524$be = $$6526;
-           break;
-          }
-          $$7527634 = $$6526;$413 = $409;
-          while(1) {
-           $411 = ((($$7527634)) + 4|0);
-           $412 = (($$0537) + ($413<<2)|0);
-           HEAP32[$412>>2] = $$2465;
-           $414 = HEAP32[$411>>2]|0;
-           $415 = ($414|0)>(-1);
-           if ($415) {
-            $$7527634 = $411;$413 = $414;
-           } else {
-            $$4524$be = $411;
-            break;
-           }
-          }
-         }
-        } while(0);
-        $$0453 = $$2455;$$0463 = $$2465;$$1459 = $$3461;$$2469 = $$6473;$$2535 
= $$1480;$$4524 = $$4524$be;$$6512 = $$11517;
-       }
-       if ((label|0) == 178) {
-        label = 0;
-        $$12518 = $$12518$ph;$$3456 = $$3456$ph;$$3485 = $$1483$ph;$$7474 = 
$$7474$ph;$$9529 = $$9529$ph;
-        label = 179;
-        continue;
-       }
-       $194 = ($$1483$ph|0)<($$0463|0);
-       if ($194) {
-        if ($35) {
-         $$12518 = $$6512;$$3456 = $$0453;$$3485 = $$0463;$$7474 = 
$$2469;$$9529 = $$4524;
-         label = 179;
-         continue;
-        }
-        $$pre658 = HEAP32[$17>>2]|0;
-        $201 = $$pre658;
-       } else {
-        $195 = ($$1483$ph|0)==($$0463|0);
-        $or$cond24 = $40 & $195;
-        if (!($or$cond24)) {
-         $$12518 = $$6512;$$3456 = $$0453;$$3485 = $$1483$ph;$$7474 = 
$$2469;$$9529 = $$4524;
-         label = 179;
-         continue;
-        }
-        $196 = HEAP32[$17>>2]|0;
-        $197 = HEAP32[$41>>2]|0;
-        $198 = (_tre_tag_order($196,$197,$$0537,$2)|0);
-        $199 = ($198|0)==(0);
-        if ($199) {
-         $$12518 = $$6512;$$3456 = $$0453;$$3485 = $$1483$ph;$$7474 = 
$$2469;$$9529 = $$4524;
-         label = 179;
-         continue;
-        } else {
-         $201 = $196;
-        }
-       }
-       $200 = ($201|0)>(0);
-       if (!($200)) {
-        $$12518 = $$6512;$$3456 = $$0453;$$3485 = $$0463;$$7474 = 
$$2469;$$9529 = $$4524;
-        label = 179;
-        continue;
-       }
-       $$0477638 = 0;
-       while(1) {
-        $202 = (($$0537) + ($$0477638<<2)|0);
-        $203 = HEAP32[$202>>2]|0;
-        $204 = (($2) + ($$0477638<<2)|0);
-        HEAP32[$204>>2] = $203;
-        $205 = (($$0477638) + 1)|0;
-        $206 = HEAP32[$17>>2]|0;
-        $207 = ($205|0)<($206|0);
-        if ($207) {
-         $$0477638 = $205;
-        } else {
-         break;
-        }
-       }
-       $$12518 = $$6512;$$3456 = $$0453;$$3485 = $$0463;$$7474 = $$2469;$$9529 
= $$4524;
-       label = 179;
-      }
-      $442 = ($$3485|0)>(-1);
-      $443 = HEAP32[$5>>2]|0;
-      $444 = ($443|0)==(0);
-      $or$cond51 = $442 | $444;
-      if ($or$cond51) {
-       label = 187;
-       break;
-      }
-      HEAP32[$5>>2] = $58;
-      $$0458 = $57;$$0467 = $$7474;$$0476 = $53;$$0482 = $$3485;$$0506 = 
$$12518;$65 = $58;
-     }
-     if ((label|0) == 54) {
-      ___tre_mem_destroy($11);
-      $134 = ($$0537|0)==(0|0);
-      if (!($134)) {
-       _free($135);
-      }
-      $136 = ($$0502|0)==(0|0);
-      if (!($136)) {
-       _free($137);
-      }
-      $138 = ($$0531|0)==(0|0);
-      if ($138) {
-       $$14 = 12;
-       break L1;
-      }
-      _free($52);
-      $$14 = 12;
-      break L1;
-     }
-     else if ((label|0) == 61) {
-      ___tre_mem_destroy($11);
-      $146 = ($$0537|0)==(0|0);
-      if (!($146)) {
-       _free($135);
-      }
-      $147 = ($$0502|0)==(0|0);
-      if (!($147)) {
-       _free($137);
-      }
-      $148 = ($$0531|0)==(0|0);
-      if ($148) {
-       $$14 = 12;
-       break L1;
-      }
-      _free($52);
-      $$14 = 12;
-      break L1;
-     }
-     else if ((label|0) == 149) {
-      ___tre_mem_destroy($11);
-      $360 = ($$0537|0)==(0|0);
-      if (!($360)) {
-       _free($135);
-      }
-      $361 = ($$0502|0)==(0|0);
-      if (!($361)) {
-       _free($137);
-      }
-      $362 = ($$0531|0)==(0|0);
-      if ($362) {
-       $$14 = 12;
-       break L1;
-      }
-      _free($52);
-      $$14 = 12;
-      break L1;
-     }
-     else if ((label|0) == 156) {
-      ___tre_mem_destroy($11);
-      $370 = ($$0537|0)==(0|0);
-      if (!($370)) {
-       _free($135);
-      }
-      $371 = ($$0502|0)==(0|0);
-      if (!($371)) {
-       _free($137);
-      }
-      $372 = ($$0531|0)==(0|0);
-      if ($372) {
-       $$14 = 12;
-       break L1;
-      }
-      _free($52);
-      $$14 = 12;
-      break L1;
-     }
-     else if ((label|0) == 187) {
-      $not$ = $442 ^ 1;
-      $445 = $not$&1;
-      HEAP32[$4>>2] = $$3485;
-      $$1503 = $$0502;$$1532 = $$0531;$$1538 = $$0537;$$6501 = $445;$447 = 
$135;$449 = $137;$451 = $52;
-      break;
-     }
-    }
-   } while(0);
-   ___tre_mem_destroy($11);
-   $446 = ($$1538|0)==(0|0);
-   if (!($446)) {
-    _free($447);
-   }
-   $448 = ($$1503|0)==(0|0);
-   if (!($448)) {
-    _free($449);
-   }
-   $450 = ($$1532|0)==(0|0);
-   if ($450) {
-    $$14 = $$6501;
-   } else {
-    _free($451);
-    $$14 = $$6501;
-   }
-  }
- } while(0);
- STACKTOP = sp;return ($$14|0);
-}
-function _tre_tnfa_run_parallel($0,$1,$2,$3,$4) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- var $$0415 = 0, $$0420592 = 0, $$0421 = 0, $$0422 = 0, $$0423 = 0, $$0426 = 
0, $$0427$ph526 = 0, $$0427502 = 0, $$0432 = 0, $$0437 = 0, $$0448591 = 0, 
$$0456 = 0, $$0457514 = 0, $$0460 = 0, $$0468534 = 0, $$1 = 0, $$10 = 0, 
$$10447 = 0, $$10447$lobit = 0, $$1424 = 0;
- var $$1428565 = 0, $$1430 = 0, $$1433$ph$lcssa = 0, $$1433$ph524 = 0, 
$$1433$ph525$mux = 0, $$1438$ph$lcssa = 0, $$1438$ph522 = 0, $$1438$ph523$mux = 
0, $$1449587 = 0, $$1458546 = 0, $$1461$ph$lcssa = 0, $$1461$ph520 = 0, 
$$1469575 = 0, $$1471 = 0, $$1474 = 0, $$2425 = 0, $$2431$lcssa = 0, $$2431579 
= 0, $$2434 = 0, $$2439 = 0;
- var $$2462 = 0, $$2472 = 0, $$2475 = 0, $$3$lcssa = 0, $$3435 = 0, $$3440 = 
0, $$3451517 = 0, $$3463$lcssa = 0, $$3463536 = 0, $$3562 = 0, $$4 = 0, $$4436 
= 0, $$4441 = 0, $$4452530 = 0, $$4464 = 0, $$5 = 0, $$5442$lcssa = 0, 
$$5442577 = 0, $$5453542 = 0, $$5465$lcssa = 0;
- var $$5465576 = 0, $$6$lcssa = 0, $$6443$lcssa = 0, $$6443556 = 0, $$6454552 
= 0, $$6466$lcssa = 0, $$6466555 = 0, $$6578 = 0, $$7$lcssa = 0, $$7444 = 0, 
$$7455549 = 0, $$7467 = 0, $$7559 = 0, $$8 = 0, $$9446 = 0, $$old = 0, $$old34 
= 0, $$old35 = 0, $$old46 = 0, $$old47 = 0;
- var $$old8 = 0, $$pr = 0, $$pr481 = 0, $$pr484 = 0, $$pr486 = 0, $$pre = 0, 
$$pre$phi629Z2D = 0, $$pre$phi631Z2D = 0, $$pre621 = 0, $$pre623 = 0, $$pre625 
= 0, $$pre626 = 0, $$pre630 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 
0, $104 = 0, $105 = 0;
- var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 
= 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 
= 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0;
- var $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 
= 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 
= 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0;
- var $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, 
$149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, 
$156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0;
- var $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, 
$167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, 
$174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0;
- var $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 
= 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 
= 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0;
- var $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 
= 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 
= 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0;
- var $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 
= 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 
= 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0;
- var $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 
= 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 
= 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0;
- var $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, 
$258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, 
$265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0;
- var $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 
= 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 
= 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0;
- var $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 
= 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $30 = 0, $300 = 0, $301 
= 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0;
- var $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 
= 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 
= 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0;
- var $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 
= 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 
= 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0;
- var $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, 
$349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, 
$356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0;
- var $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, 
$367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, 
$374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0;
- var $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 
= 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 
= 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0;
- var $397 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, 
$47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, 
$55 = 0, $56 = 0, $57 = 0;
- var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, 
$65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, 
$73 = 0, $74 = 0, $75 = 0;
- var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, 
$83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, 
$91 = 0, $92 = 0, $93 = 0;
- var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $brmerge = 0, 
$brmerge596 = 0, $brmerge599 = 0, $brmerge600 = 0, $brmerge604 = 0, $exitcond = 
0, $exitcond616 = 0, $exitcond618 = 0, $or$cond$not = 0, $or$cond12 = 0, 
$or$cond15 = 0, $or$cond18 = 0, $or$cond21 = 0, $or$cond24$not = 0;
- var $or$cond27 = 0, $or$cond3 = 0, $or$cond33 = 0, $or$cond36 = 0, $or$cond39 
= 0, $or$cond42 = 0, $or$cond45 = 0, $or$cond48 = 0, $or$cond598 = 0, 
$or$cond602 = 0, $or$cond7 = 0, $or$cond9 = 0, $spec$select = 0, 
$spec$select476 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $5 = sp;
- HEAP32[$5>>2] = 0;
- $6 = $3 & 1;
- $7 = $3 & 2;
- $8 = ((($0)) + 56|0);
- $9 = HEAP32[$8>>2]|0;
- $10 = $9 & 4;
- $11 = ($2|0)==(0|0);
- if ($11) {
-  $$0456 = 0;
- } else {
-  $12 = ((($0)) + 40|0);
-  $13 = HEAP32[$12>>2]|0;
-  $$0456 = $13;
- }
- $14 = $$0456 << 2;
- $15 = ((($0)) + 52|0);
- $16 = HEAP32[$15>>2]|0;
- $17 = $16 << 3;
- $18 = (($17) + 8)|0;
- $19 = Math_imul($14, $16)|0;
- $20 = (($18) + ($19))|0;
- $21 = $20 << 1;
- $22 = (($14) + 12)|0;
- $23 = (($22) + ($17))|0;
- $24 = (($23) + ($21))|0;
- $25 = (_malloc($24)|0);
- $26 = ($25|0)==(0|0);
- if ($26) {
-  $$1 = 12;
- } else {
-  (_memset(($25|0),0,($24|0))|0);
-  $27 = (($25) + ($14)|0);
-  $28 = $27;
-  $29 = $28 & 3;
-  $30 = ($29|0)==(0);
-  $31 = (4 - ($29))|0;
-  $spec$select = $30 ? 0 : $31;
-  $32 = (($27) + ($spec$select)|0);
-  $33 = (($32) + ($18)|0);
-  $34 = $33;
-  $35 = $34 & 3;
-  $36 = ($35|0)==(0);
-  $37 = (4 - ($35))|0;
-  $38 = $36 ? 0 : $37;
-  $39 = (($33) + ($38)|0);
-  $40 = (($39) + ($18)|0);
-  $41 = $40;
-  $42 = $41 & 3;
-  $43 = ($42|0)==(0);
-  $44 = (4 - ($42))|0;
-  $spec$select476 = $43 ? 0 : $44;
-  $45 = (($40) + ($spec$select476)|0);
-  $46 = (($45) + ($17)|0);
-  $47 = $46;
-  $48 = $47 & 3;
-  $49 = HEAP32[$15>>2]|0;
-  $50 = ($49|0)>(0);
-  if ($50) {
-   $51 = ($48|0)==(0);
-   $52 = (4 - ($48))|0;
-   $53 = $51 ? 0 : $52;
-   $54 = (($46) + ($53)|0);
-   $$0420592 = $54;$$0448591 = 0;
-   while(1) {
-    $55 = (((($39) + ($$0448591<<3)|0)) + 4|0);
-    HEAP32[$55>>2] = $$0420592;
-    $56 = (($$0420592) + ($14)|0);
-    $57 = (((($32) + ($$0448591<<3)|0)) + 4|0);
-    HEAP32[$57>>2] = $56;
-    $58 = (($56) + ($14)|0);
-    $59 = (($$0448591) + 1)|0;
-    $60 = ($59|0)<($49|0);
-    if ($60) {
-     $$0420592 = $58;$$0448591 = $59;
-    } else {
-     break;
-    }
-   }
-   if ($50) {
-    $$1449587 = 0;
-    while(1) {
-     $61 = (($45) + ($$1449587<<3)|0);
-     HEAP32[$61>>2] = -1;
-     $62 = (($$1449587) + 1)|0;
-     $63 = ($62|0)<($49|0);
-     if ($63) {
-      $$1449587 = $62;
-     } else {
-      break;
-     }
-    }
-   }
-  }
-  $64 = (_mbtowc($5,$1,4)|0);
-  $65 = ($64|0)<(1);
-  if ($65) {
-   $66 = ($64|0)<(0);
-   if ($66) {
-    $$0426 = 1;
-   } else {
-    $$0423 = 1;
-    label = 12;
-   }
-  } else {
-   $$0423 = $64;
-   label = 12;
-  }
-  L17: do {
-   if ((label|0) == 12) {
-    $67 = (($1) + ($$0423)|0);
-    $68 = ((($0)) + 8|0);
-    $69 = ($$0456|0)==(0);
-    $70 = ($6|0)==(0);
-    $71 = ($10|0)!=(0);
-    $72 = ($$0456|0)>(0);
-    $73 = ((($0)) + 12|0);
-    $74 = ($$0456|0)<(1);
-    $75 = ((($0)) + 44|0);
-    $76 = ((($0)) + 36|0);
-    $77 = ((($0)) + 32|0);
-    $$0415 = 0;$$0421 = $67;$$0422 = 0;$$0432 = 0;$$0437 = -1;$$0460 = 
$32;$$1424 = $$0423;$$1430 = $25;$$1471 = $32;$$1474 = $39;
-    while(1) {
-     $78 = ($$0437|0)<(0);
-     if ($78) {
-      $79 = HEAP32[$68>>2]|0;
-      $80 = ((($79)) + 8|0);
-      $81 = HEAP32[$80>>2]|0;
-      $82 = ($81|0)==(0|0);
-      L23: do {
-       if ($82) {
-        $$1433$ph$lcssa = $$0432;$$1438$ph$lcssa = $$0437;$$1461$ph$lcssa = 
$$0460;
-       } else {
-        $83 = ($$0422|0)<(1);
-        $84 = ($$0415|0)==(10);
-        $or$cond3 = $71 & $84;
-        $85 = ($$0415|0)==(95);
-        $86 = ($$0422|0)!=(0);
-        $87 = ($$0422|0)==(0);
-        $or$cond$not = $83 & $70;
-        $$0427$ph526 = $79;$$1433$ph524 = $$0432;$$1438$ph522 = 
$$0437;$$1461$ph520 = $$0460;$397 = $80;
-        while(1) {
-         $$0427502 = $$0427$ph526;$154 = $397;
-         L27: while(1) {
-          $88 = ((($$0427502)) + 12|0);
-          $89 = HEAP32[$88>>2]|0;
-          $90 = (($45) + ($89<<3)|0);
-          $91 = HEAP32[$90>>2]|0;
-          $92 = ($91|0)<($$0422|0);
-          if (!($92)) {
-           $$2462 = $$1461$ph520;$$3435 = $$1433$ph524;$$3440 = $$1438$ph522;
-           break;
-          }
-          $93 = ((($$0427502)) + 20|0);
-          $94 = HEAP32[$93>>2]|0;
-          $95 = ($94|0)==(0);
-          if ($95) {
-           label = 47;
-           break;
-          }
-          $96 = $94 & 1;
-          $97 = ($96|0)==(0);
-          $brmerge = $97 | $or$cond$not;
-          $brmerge596 = $brmerge | $or$cond3;
-          L31: do {
-           if ($brmerge596) {
-            $98 = $94 & 2;
-            $99 = ($98|0)==(0);
-            if (!($99)) {
-             $100 = HEAP32[$5>>2]|0;
-             $101 = $100 | $7;
-             $102 = ($101|0)==(0);
-             $103 = ($100|0)==(10);
-             $or$cond7 = $71 & $103;
-             $or$cond598 = $102 | $or$cond7;
-             if (!($or$cond598)) {
-              break;
-             }
-            }
-            $104 = $94 & 16;
-            $105 = ($104|0)==(0);
-            do {
-             if (!($105)) {
-              if ($85) {
-               break L31;
-              }
-              $106 = (_iswalnum($$0415)|0);
-              $107 = ($106|0)==(0);
-              if (!($107)) {
-               break L31;
-              }
-              $108 = HEAP32[$5>>2]|0;
-              $109 = ($108|0)==(95);
-              if ($109) {
-               break;
-              }
-              $110 = (_iswalnum($108)|0);
-              $111 = ($110|0)==(0);
-              if ($111) {
-               break L31;
-              }
-             }
-            } while(0);
-            $112 = HEAP32[$93>>2]|0;
-            $113 = $112 & 32;
-            $114 = ($113|0)==(0);
-            if ($114) {
-             $123 = $112;
-            } else {
-             if ($85) {
-              $$old = HEAP32[$5>>2]|0;
-              $$old8 = ($$old|0)==(95);
-              if ($$old8) {
-               break;
-              } else {
-               $119 = $$old;
-              }
-             } else {
-              $115 = (_iswalnum($$0415)|0);
-              $116 = ($115|0)==(0);
-              $117 = HEAP32[$5>>2]|0;
-              $118 = ($117|0)==(95);
-              $or$cond9 = $116 | $118;
-              if ($or$cond9) {
-               break;
-              } else {
-               $119 = $117;
-              }
-             }
-             $120 = (_iswalnum($119)|0);
-             $121 = ($120|0)==(0);
-             if (!($121)) {
-              break;
-             }
-             $$pre = HEAP32[$93>>2]|0;
-             $123 = $$pre;
-            }
-            $122 = $123 & 64;
-            $124 = ($122|0)!=(0);
-            $or$cond12 = $86 & $124;
-            $125 = HEAP32[$5>>2]|0;
-            $126 = ($125|0)!=(0);
-            $or$cond15 = $126 & $or$cond12;
-            do {
-             if ($or$cond15) {
-              if ($85) {
-               $130 = $125;$134 = 1;
-              } else {
-               $127 = (_iswalnum($$0415)|0);
-               $128 = ($127|0)!=(0);
-               $$pr = HEAP32[$5>>2]|0;
-               $130 = $$pr;$134 = $128;
-              }
-              $129 = ($130|0)==(95);
-              if ($129) {
-               if ($134) {
-                break L31;
-               } else {
-                break;
-               }
-              } else {
-               $131 = (_iswalnum($130)|0);
-               $132 = ($131|0)!=(0);
-               $133 = $134 ^ $132;
-               if ($133) {
-                break;
-               } else {
-                break L31;
-               }
-              }
-             }
-            } while(0);
-            $135 = HEAP32[$93>>2]|0;
-            $136 = $135 & 128;
-            $137 = ($136|0)==(0);
-            if ($137) {
-             label = 47;
-             break L27;
-            }
-            $138 = HEAP32[$5>>2]|0;
-            $139 = ($138|0)==(0);
-            $or$cond18 = $87 | $139;
-            if ($or$cond18) {
-             break;
-            }
-            if ($85) {
-             $143 = $138;$147 = 1;
-            } else {
-             $140 = (_iswalnum($$0415)|0);
-             $141 = ($140|0)!=(0);
-             $$pr481 = HEAP32[$5>>2]|0;
-             $143 = $$pr481;$147 = $141;
-            }
-            $142 = ($143|0)==(95);
-            if ($142) {
-             if ($147) {
-              label = 47;
-              break L27;
-             } else {
-              break;
-             }
-            } else {
-             $144 = (_iswalnum($143)|0);
-             $145 = ($144|0)!=(0);
-             $146 = $147 ^ $145;
-             if ($146) {
-              break;
-             } else {
-              label = 47;
-              break L27;
-             }
-            }
-           }
-          } while(0);
-          $148 = ((($$0427502)) + 32|0);
-          $149 = ((($$0427502)) + 40|0);
-          $150 = HEAP32[$149>>2]|0;
-          $151 = ($150|0)==(0|0);
-          if ($151) {
-           $$1433$ph$lcssa = $$1433$ph524;$$1438$ph$lcssa = 
$$1438$ph522;$$1461$ph$lcssa = $$1461$ph520;
-           break L23;
-          } else {
-           $$0427502 = $148;$154 = $149;
-          }
-         }
-         if ((label|0) == 47) {
-          label = 0;
-          $152 = ((($$0427502)) + 12|0);
-          $153 = HEAP32[$154>>2]|0;
-          HEAP32[$$1461$ph520>>2] = $153;
-          if ($72) {
-           $155 = ((($$1461$ph520)) + 4|0);
-           $156 = HEAP32[$155>>2]|0;
-           _memset(($156|0),-1,($14|0))|0;
-          }
-          $157 = ((($$0427502)) + 16|0);
-          $158 = HEAP32[$157>>2]|0;
-          $159 = ($158|0)==(0|0);
-          if (!($159)) {
-           $160 = HEAP32[$158>>2]|0;
-           $161 = ($160|0)>(-1);
-           if ($161) {
-            $162 = ((($$1461$ph520)) + 4|0);
-            $$0457514 = $158;$164 = $160;
-            while(1) {
-             $163 = ($164|0)<($$0456|0);
-             if ($163) {
-              $165 = HEAP32[$162>>2]|0;
-              $166 = (($165) + ($164<<2)|0);
-              HEAP32[$166>>2] = $$0422;
-             }
-             $167 = ((($$0457514)) + 4|0);
-             $168 = HEAP32[$167>>2]|0;
-             $169 = ($168|0)>(-1);
-             if ($169) {
-              $$0457514 = $167;$164 = $168;
-             } else {
-              break;
-             }
-            }
-           }
-          }
-          $170 = HEAP32[$$1461$ph520>>2]|0;
-          $171 = HEAP32[$73>>2]|0;
-          $172 = ($170|0)!=($171|0);
-          $brmerge604 = $172 | $74;
-          if ($brmerge604) {
-           $$1433$ph525$mux = $172 ? $$1433$ph524 : 1;
-           $$1438$ph523$mux = $172 ? $$1438$ph522 : $$0422;
-           $$pre630 = ((($$1461$ph520)) + 4|0);
-           $$2434 = $$1433$ph525$mux;$$2439 = $$1438$ph523$mux;$$pre$phi631Z2D 
= $$pre630;
-          } else {
-           $173 = ((($$1461$ph520)) + 4|0);
-           $174 = HEAP32[$173>>2]|0;
-           $$3451517 = 0;
-           while(1) {
-            $175 = (($174) + ($$3451517<<2)|0);
-            $176 = HEAP32[$175>>2]|0;
-            $177 = (($2) + ($$3451517<<2)|0);
-            HEAP32[$177>>2] = $176;
-            $178 = (($$3451517) + 1)|0;
-            $exitcond = ($178|0)==($$0456|0);
-            if ($exitcond) {
-             $$2434 = 1;$$2439 = $$0422;$$pre$phi631Z2D = $173;
-             break;
-            } else {
-             $$3451517 = $178;
-            }
-           }
-          }
-          $179 = HEAP32[$152>>2]|0;
-          $180 = (($45) + ($179<<3)|0);
-          HEAP32[$180>>2] = $$0422;
-          $181 = (((($45) + ($179<<3)|0)) + 4|0);
-          HEAP32[$181>>2] = $$pre$phi631Z2D;
-          $182 = ((($$1461$ph520)) + 8|0);
-          $$2462 = $182;$$3435 = $$2434;$$3440 = $$2439;
-         }
-         $183 = ((($$0427502)) + 32|0);
-         $184 = ((($$0427502)) + 40|0);
-         $185 = HEAP32[$184>>2]|0;
-         $186 = ($185|0)==(0|0);
-         if ($186) {
-          $$1433$ph$lcssa = $$3435;$$1438$ph$lcssa = $$3440;$$1461$ph$lcssa = 
$$2462;
-          break;
-         } else {
-          $$0427$ph526 = $183;$$1433$ph524 = $$3435;$$1438$ph522 = 
$$3440;$$1461$ph520 = $$2462;$397 = $184;
-         }
-        }
-       }
-      } while(0);
-      HEAP32[$$1461$ph$lcssa>>2] = 0;
-      $$old46 = HEAP32[$5>>2]|0;
-      $$old47 = ($$old46|0)==(0);
-      if ($$old47) {
-       $$10447 = $$1438$ph$lcssa;
-       break;
-      } else {
-       $$4436 = $$1433$ph$lcssa;$$4441 = $$1438$ph$lcssa;$237 = $$old46;
-      }
-     } else {
-      if ($69) {
-       $$10447 = $$0437;
-       break;
-      }
-      $187 = ($$0460|0)!=($$1471|0);
-      $188 = HEAP32[$5>>2]|0;
-      $189 = ($188|0)!=(0);
-      $or$cond48 = $187 & $189;
-      if ($or$cond48) {
-       $$4436 = $$0432;$$4441 = $$0437;$237 = $188;
-      } else {
-       $$10447 = $$0437;
-       break;
-      }
-     }
-     $190 = (($$0422) + ($$1424))|0;
-     $191 = (_mbtowc($5,$$0421,4)|0);
-     $192 = ($191|0)<(1);
-     if ($192) {
-      $193 = ($191|0)<(0);
-      if ($193) {
-       $$0426 = 1;
-       break L17;
-      } else {
-       $$2425 = 1;
-      }
-     } else {
-      $$2425 = $191;
-     }
-     $194 = (($$0421) + ($$2425)|0);
-     $195 = HEAP32[$75>>2]|0;
-     $196 = ($195|0)!=(0);
-     $197 = ($$4436|0)!=(0);
-     $or$cond21 = $197 & $196;
-     if ($or$cond21) {
-      $198 = HEAP32[$$1471>>2]|0;
-      $199 = ($198|0)==(0|0);
-      if ($199) {
-       $$3463$lcssa = $$1474;
-      } else {
-       $200 = HEAP32[$76>>2]|0;
-       $201 = HEAP32[$200>>2]|0;
-       $202 = ($201|0)>(-1);
-       $$0468534 = $$1471;$$3463536 = $$1474;
-       while(1) {
-        $203 = ((($$0468534)) + 4|0);
-        L102: do {
-         if ($202) {
-          $$4452530 = 0;$208 = $201;
-          while(1) {
-           $204 = $$4452530 | 1;
-           $205 = (($200) + ($204<<2)|0);
-           $206 = HEAP32[$205>>2]|0;
-           $207 = ($208|0)<($$0456|0);
-           if (!($207)) {
-            $$4464 = $$3463536;
-            break L102;
-           }
-           $209 = HEAP32[$203>>2]|0;
-           $210 = (($209) + ($206<<2)|0);
-           $211 = HEAP32[$210>>2]|0;
-           $212 = (($2) + ($206<<2)|0);
-           $213 = HEAP32[$212>>2]|0;
-           $214 = ($211|0)==($213|0);
-           if ($214) {
-            $215 = (($209) + ($208<<2)|0);
-            $216 = HEAP32[$215>>2]|0;
-            $217 = (($2) + ($208<<2)|0);
-            $218 = HEAP32[$217>>2]|0;
-            $219 = ($216|0)<($218|0);
-            if ($219) {
-             $$4464 = $$3463536;
-             break L102;
-            }
-           }
-           $220 = (($$4452530) + 2)|0;
-           $221 = (($200) + ($220<<2)|0);
-           $222 = HEAP32[$221>>2]|0;
-           $223 = ($222|0)>(-1);
-           if ($223) {
-            $$4452530 = $220;$208 = $222;
-           } else {
-            break;
-           }
-          }
-          $224 = $209;
-          $$pre$phi629Z2D = $203;$228 = $224;
-          label = 77;
-         } else {
-          $$pre621 = HEAP32[$203>>2]|0;
-          $$pre$phi629Z2D = $203;$228 = $$pre621;
-          label = 77;
-         }
-        } while(0);
-        if ((label|0) == 77) {
-         label = 0;
-         $225 = HEAP32[$$0468534>>2]|0;
-         HEAP32[$$3463536>>2] = $225;
-         $226 = ((($$3463536)) + 4|0);
-         $227 = HEAP32[$226>>2]|0;
-         HEAP32[$226>>2] = $228;
-         HEAP32[$$pre$phi629Z2D>>2] = $227;
-         $229 = ((($$3463536)) + 8|0);
-         $$4464 = $229;
-        }
-        $230 = ((($$0468534)) + 8|0);
-        $231 = HEAP32[$230>>2]|0;
-        $232 = ($231|0)==(0|0);
-        if ($232) {
-         $$3463$lcssa = $$4464;
-         break;
-        } else {
-         $$0468534 = $230;$$3463536 = $$4464;
-        }
-       }
-      }
-      HEAP32[$$3463$lcssa>>2] = 0;
-      $$2472 = $$1471;$$2475 = $$1474;$$5 = 0;
-     } else {
-      $$2472 = $$1474;$$2475 = $$1471;$$5 = $$4436;
-     }
-     $233 = HEAP32[$$2475>>2]|0;
-     $234 = ($233|0)==(0|0);
-     if ($234) {
-      $$2431$lcssa = $$1430;$$5442$lcssa = $$4441;$$5465$lcssa = 
$$2472;$$6$lcssa = $$5;
-     } else {
-      $235 = ($190|0)<(1);
-      $236 = ($237|0)==(10);
-      $or$cond27 = $71 & $236;
-      $238 = ($237|0)==(95);
-      $239 = ($190|0)!=(0);
-      $240 = ($190|0)==(0);
-      $or$cond24$not = $235 & $70;
-      $$1469575 = $$2475;$$2431579 = $$1430;$$5442577 = $$4441;$$5465576 = 
$$2472;$$6578 = $$5;$242 = $233;
-      while(1) {
-       $241 = ((($242)) + 8|0);
-       $243 = HEAP32[$241>>2]|0;
-       $244 = ($243|0)==(0|0);
-       if ($244) {
-        $$3$lcssa = $$2431579;$$6443$lcssa = $$5442577;$$6466$lcssa = 
$$5465576;$$7$lcssa = $$6578;
-       } else {
-        $245 = ((($$1469575)) + 4|0);
-        $$1428565 = $242;$$3562 = $$2431579;$$6443556 = $$5442577;$$6466555 = 
$$5465576;$$7559 = $$6578;$360 = $241;
-        while(1) {
-         $246 = HEAP32[$$1428565>>2]|0;
-         $247 = ($246>>>0)>($237>>>0);
-         L125: do {
-          if ($247) {
-           $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = $$6443556;
-          } else {
-           $248 = ((($$1428565)) + 4|0);
-           $249 = HEAP32[$248>>2]|0;
-           $250 = ($249>>>0)<($237>>>0);
-           if ($250) {
-            $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = $$6443556;
-           } else {
-            $251 = ((($$1428565)) + 20|0);
-            $252 = HEAP32[$251>>2]|0;
-            $253 = ($252|0)==(0);
-            do {
-             if (!($253)) {
-              $254 = $252 & 1;
-              $255 = ($254|0)==(0);
-              $brmerge599 = $255 | $or$cond24$not;
-              $brmerge600 = $brmerge599 | $or$cond27;
-              if (!($brmerge600)) {
-               $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-               break L125;
-              }
-              $256 = $252 & 2;
-              $257 = ($256|0)==(0);
-              if (!($257)) {
-               $258 = HEAP32[$5>>2]|0;
-               $259 = $258 | $7;
-               $260 = ($259|0)==(0);
-               $261 = ($258|0)==(10);
-               $or$cond33 = $71 & $261;
-               $or$cond602 = $260 | $or$cond33;
-               if (!($or$cond602)) {
-                $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                break L125;
-               }
-              }
-              $262 = $252 & 16;
-              $263 = ($262|0)==(0);
-              do {
-               if (!($263)) {
-                if ($238) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                }
-                $264 = (_iswalnum($237)|0);
-                $265 = ($264|0)==(0);
-                if (!($265)) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                }
-                $266 = HEAP32[$5>>2]|0;
-                $267 = ($266|0)==(95);
-                if ($267) {
-                 break;
-                }
-                $268 = (_iswalnum($266)|0);
-                $269 = ($268|0)==(0);
-                if ($269) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                }
-               }
-              } while(0);
-              $270 = HEAP32[$251>>2]|0;
-              $271 = $270 & 32;
-              $272 = ($271|0)==(0);
-              if ($272) {
-               $281 = $270;
-              } else {
-               if ($238) {
-                $$old34 = HEAP32[$5>>2]|0;
-                $$old35 = ($$old34|0)==(95);
-                if ($$old35) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                } else {
-                 $277 = $$old34;
-                }
-               } else {
-                $273 = (_iswalnum($237)|0);
-                $274 = ($273|0)==(0);
-                $275 = HEAP32[$5>>2]|0;
-                $276 = ($275|0)==(95);
-                $or$cond36 = $274 | $276;
-                if ($or$cond36) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                } else {
-                 $277 = $275;
-                }
-               }
-               $278 = (_iswalnum($277)|0);
-               $279 = ($278|0)==(0);
-               if (!($279)) {
-                $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                break L125;
-               }
-               $$pre623 = HEAP32[$251>>2]|0;
-               $281 = $$pre623;
-              }
-              $280 = $281 & 64;
-              $282 = ($280|0)!=(0);
-              $or$cond39 = $239 & $282;
-              $283 = HEAP32[$5>>2]|0;
-              $284 = ($283|0)!=(0);
-              $or$cond42 = $284 & $or$cond39;
-              do {
-               if ($or$cond42) {
-                if ($238) {
-                 $288 = $283;$292 = 1;
-                } else {
-                 $285 = (_iswalnum($237)|0);
-                 $286 = ($285|0)!=(0);
-                 $$pr484 = HEAP32[$5>>2]|0;
-                 $288 = $$pr484;$292 = $286;
-                }
-                $287 = ($288|0)==(95);
-                if ($287) {
-                 if ($292) {
-                  $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                  break L125;
-                 } else {
-                  break;
-                 }
-                } else {
-                 $289 = (_iswalnum($288)|0);
-                 $290 = ($289|0)!=(0);
-                 $291 = $292 ^ $290;
-                 if ($291) {
-                  break;
-                 } else {
-                  $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                  break L125;
-                 }
-                }
-               }
-              } while(0);
-              $293 = HEAP32[$251>>2]|0;
-              $294 = $293 & 128;
-              $295 = ($294|0)==(0);
-              do {
-               if (!($295)) {
-                $296 = HEAP32[$5>>2]|0;
-                $297 = ($296|0)==(0);
-                $or$cond45 = $240 | $297;
-                if ($or$cond45) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                }
-                if ($238) {
-                 $301 = $296;$305 = 1;
-                } else {
-                 $298 = (_iswalnum($237)|0);
-                 $299 = ($298|0)!=(0);
-                 $$pr486 = HEAP32[$5>>2]|0;
-                 $301 = $$pr486;$305 = $299;
-                }
-                $300 = ($301|0)==(95);
-                if ($300) {
-                 if ($305) {
-                  break;
-                 } else {
-                  $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                  break L125;
-                 }
-                } else {
-                 $302 = (_iswalnum($301)|0);
-                 $303 = ($302|0)!=(0);
-                 $304 = $305 ^ $303;
-                 if ($304) {
-                  $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                  break L125;
-                 } else {
-                  break;
-                 }
-                }
-               }
-              } while(0);
-              $306 = HEAP32[$251>>2]|0;
-              $307 = $306 & 4;
-              $308 = ($307|0)==(0);
-              do {
-               if (!($308)) {
-                $309 = HEAP32[$8>>2]|0;
-                $310 = $309 & 2;
-                $311 = ($310|0)==(0);
-                if ($311) {
-                 $312 = ((($$1428565)) + 24|0);
-                 $313 = HEAP32[$312>>2]|0;
-                 $314 = (_iswctype($237,$313)|0);
-                 $315 = ($314|0)==(0);
-                 if ($315) {
-                  $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                  break L125;
-                 }
-                 $$pre625 = HEAP32[$251>>2]|0;
-                 $$pre626 = $$pre625 & 4;
-                 $316 = ($$pre626|0)==(0);
-                 if ($316) {
-                  break;
-                 }
-                }
-                $317 = HEAP32[$8>>2]|0;
-                $318 = $317 & 2;
-                $319 = ($318|0)==(0);
-                if ($319) {
-                 break;
-                }
-                $320 = (_towlower($237)|0);
-                $321 = ((($$1428565)) + 24|0);
-                $322 = HEAP32[$321>>2]|0;
-                $323 = (_iswctype($320,$322)|0);
-                $324 = ($323|0)==(0);
-                if (!($324)) {
-                 break;
-                }
-                $325 = (_towupper($237)|0);
-                $326 = HEAP32[$321>>2]|0;
-                $327 = (_iswctype($325,$326)|0);
-                $328 = ($327|0)==(0);
-                if ($328) {
-                 $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-                 break L125;
-                }
-               }
-              } while(0);
-              $329 = HEAP32[$251>>2]|0;
-              $330 = $329 & 8;
-              $331 = ($330|0)==(0);
-              if ($331) {
-               break;
-              }
-              $332 = ((($$1428565)) + 28|0);
-              $333 = HEAP32[$332>>2]|0;
-              $334 = HEAP32[$8>>2]|0;
-              $335 = $334 & 2;
-              $336 = (_tre_neg_char_classes_match($333,$237,$335)|0);
-              $337 = ($336|0)==(0);
-              if (!($337)) {
-               $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = 
$$6443556;
-               break L125;
-              }
-             }
-            } while(0);
-            if ($72) {
-             $338 = HEAP32[$245>>2]|0;
-             $$5453542 = 0;
-             while(1) {
-              $339 = (($338) + ($$5453542<<2)|0);
-              $340 = HEAP32[$339>>2]|0;
-              $341 = (($$3562) + ($$5453542<<2)|0);
-              HEAP32[$341>>2] = $340;
-              $342 = (($$5453542) + 1)|0;
-              $exitcond616 = ($342|0)==($$0456|0);
-              if ($exitcond616) {
-               break;
-              } else {
-               $$5453542 = $342;
-              }
-             }
-            }
-            $343 = ((($$1428565)) + 16|0);
-            $344 = HEAP32[$343>>2]|0;
-            $345 = ($344|0)==(0|0);
-            do {
-             if (!($345)) {
-              $346 = HEAP32[$344>>2]|0;
-              $347 = ($346|0)>(-1);
-              if (!($347)) {
-               break;
-              }
-              $$1458546 = $344;$349 = $346;
-              while(1) {
-               $348 = ($349|0)<($$0456|0);
-               if ($348) {
-                $350 = (($$3562) + ($349<<2)|0);
-                HEAP32[$350>>2] = $190;
-               }
-               $351 = ((($$1458546)) + 4|0);
-               $352 = HEAP32[$351>>2]|0;
-               $353 = ($352|0)>(-1);
-               if ($353) {
-                $$1458546 = $351;$349 = $352;
-               } else {
-                break;
-               }
-              }
-             }
-            } while(0);
-            $354 = ((($$1428565)) + 12|0);
-            $355 = HEAP32[$354>>2]|0;
-            $356 = (($45) + ($355<<3)|0);
-            $357 = HEAP32[$356>>2]|0;
-            $358 = ($357|0)<($190|0);
-            if (!($358)) {
-             $377 = HEAP32[$77>>2]|0;
-             $378 = (((($45) + ($355<<3)|0)) + 4|0);
-             $379 = HEAP32[$378>>2]|0;
-             $380 = HEAP32[$379>>2]|0;
-             $381 = (_tre_tag_order($$0456,$377,$$3562,$380)|0);
-             $382 = ($381|0)==(0);
-             if ($382) {
-              $$10 = $$7559;$$4 = $$3562;$$7467 = $$6466555;$$9446 = $$6443556;
-              break;
-             }
-             HEAP32[$379>>2] = $$3562;
-             $383 = HEAP32[$360>>2]|0;
-             $384 = HEAP32[$73>>2]|0;
-             $385 = ($383|0)==($384|0);
-             if (!($385)) {
-              $$10 = $$7559;$$4 = $380;$$7467 = $$6466555;$$9446 = $$6443556;
-              break;
-             }
-             if (!($72)) {
-              $$10 = 1;$$4 = $380;$$7467 = $$6466555;$$9446 = $190;
-              break;
-             }
-             $$7455549 = 0;
-             while(1) {
-              $386 = (($$3562) + ($$7455549<<2)|0);
-              $387 = HEAP32[$386>>2]|0;
-              $388 = (($2) + ($$7455549<<2)|0);
-              HEAP32[$388>>2] = $387;
-              $389 = (($$7455549) + 1)|0;
-              $exitcond618 = ($389|0)==($$0456|0);
-              if ($exitcond618) {
-               $$10 = 1;$$4 = $380;$$7467 = $$6466555;$$9446 = $190;
-               break L125;
-              } else {
-               $$7455549 = $389;
-              }
-             }
-            }
-            $359 = HEAP32[$360>>2]|0;
-            HEAP32[$$6466555>>2] = $359;
-            $361 = ((($$6466555)) + 4|0);
-            $362 = HEAP32[$361>>2]|0;
-            HEAP32[$361>>2] = $$3562;
-            HEAP32[$356>>2] = $190;
-            $363 = (((($45) + ($355<<3)|0)) + 4|0);
-            HEAP32[$363>>2] = $361;
-            $364 = $359;
-            $365 = HEAP32[$73>>2]|0;
-            $366 = ($365|0)==($364|0);
-            do {
-             if ($366) {
-              $367 = ($$6443556|0)==(-1);
-              if ($367) {
-               if (!($72)) {
-                $$7444 = $190;$$8 = 1;
-                break;
-               }
-              } else {
-               if (!($72)) {
-                $$7444 = $$6443556;$$8 = $$7559;
-                break;
-               }
-               $368 = HEAP32[$$3562>>2]|0;
-               $369 = HEAP32[$2>>2]|0;
-               $370 = ($368|0)>($369|0);
-               if ($370) {
-                $$7444 = $$6443556;$$8 = $$7559;
-                break;
-               }
-              }
-              $$6454552 = 0;
-              while(1) {
-               $371 = (($$3562) + ($$6454552<<2)|0);
-               $372 = HEAP32[$371>>2]|0;
-               $373 = (($2) + ($$6454552<<2)|0);
-               HEAP32[$373>>2] = $372;
-               $374 = (($$6454552) + 1)|0;
-               $375 = ($374|0)<($$0456|0);
-               if ($375) {
-                $$6454552 = $374;
-               } else {
-                $$7444 = $190;$$8 = 1;
-                break;
-               }
-              }
-             } else {
-              $$7444 = $$6443556;$$8 = $$7559;
-             }
-            } while(0);
-            $376 = ((($$6466555)) + 8|0);
-            $$10 = $$8;$$4 = $362;$$7467 = $376;$$9446 = $$7444;
-           }
-          }
-         } while(0);
-         $390 = ((($$1428565)) + 32|0);
-         $391 = ((($$1428565)) + 40|0);
-         $392 = HEAP32[$391>>2]|0;
-         $393 = ($392|0)==(0|0);
-         if ($393) {
-          $$3$lcssa = $$4;$$6443$lcssa = $$9446;$$6466$lcssa = 
$$7467;$$7$lcssa = $$10;
-          break;
-         } else {
-          $$1428565 = $390;$$3562 = $$4;$$6443556 = $$9446;$$6466555 = 
$$7467;$$7559 = $$10;$360 = $391;
-         }
-        }
-       }
-       $394 = ((($$1469575)) + 8|0);
-       $395 = HEAP32[$394>>2]|0;
-       $396 = ($395|0)==(0|0);
-       if ($396) {
-        $$2431$lcssa = $$3$lcssa;$$5442$lcssa = $$6443$lcssa;$$5465$lcssa = 
$$6466$lcssa;$$6$lcssa = $$7$lcssa;
-        break;
-       } else {
-        $$1469575 = $394;$$2431579 = $$3$lcssa;$$5442577 = 
$$6443$lcssa;$$5465576 = $$6466$lcssa;$$6578 = $$7$lcssa;$242 = $395;
-       }
-      }
-     }
-     HEAP32[$$5465$lcssa>>2] = 0;
-     $$0415 = $237;$$0421 = $194;$$0422 = $190;$$0432 = $$6$lcssa;$$0437 = 
$$5442$lcssa;$$0460 = $$5465$lcssa;$$1424 = $$2425;$$1430 = $$2431$lcssa;$$1471 
= $$2472;$$1474 = $$2475;
-    }
-    HEAP32[$4>>2] = $$10447;
-    $$10447$lobit = $$10447 >>> 31;
-    $$0426 = $$10447$lobit;
-   }
-  } while(0);
-  _free($25);
-  $$1 = $$0426;
- }
- STACKTOP = sp;return ($$1|0);
-}
-function _tre_fill_pmatch($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$07984 = 0, $$091 = 0, $$188 = 0, $$2 = 0, $$pre = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, 
$33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 
0, $42 = 0, $43 = 0, $44 = 0;
- var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, 
$53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, 
$61 = 0, $62 = 0, $7 = 0;
- var $8 = 0, $9 = 0, $or$cond = 0, $or$cond81 = 0, $or$cond8190 = 0, 
$or$cond82 = 0, $or$cond99 = 0, $scevgep = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $6 = ($5|0)>(-1);
- $7 = $2 & 8;
- $8 = ($7|0)==(0);
- $or$cond = $8 & $6;
- if ($or$cond) {
-  $9 = ((($3)) + 16|0);
-  $10 = HEAP32[$9>>2]|0;
-  $11 = ((($3)) + 28|0);
-  $12 = HEAP32[$11>>2]|0;
-  $13 = ($12|0)!=(0);
-  $14 = ($0|0)!=(0);
-  $or$cond8190 = $14 & $13;
-  if ($or$cond8190) {
-   $15 = ((($3)) + 48|0);
-   $16 = HEAP32[$15>>2]|0;
-   $$091 = 0;
-   while(1) {
-    $17 = (($10) + (($$091*12)|0)|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ($18|0)==($16|0);
-    if ($19) {
-     $23 = $5;
-    } else {
-     $20 = (($4) + ($18<<2)|0);
-     $21 = HEAP32[$20>>2]|0;
-     $23 = $21;
-    }
-    $22 = (($1) + ($$091<<3)|0);
-    HEAP32[$22>>2] = $23;
-    $24 = (((($10) + (($$091*12)|0)|0)) + 4|0);
-    $25 = HEAP32[$24>>2]|0;
-    $26 = ($25|0)==($16|0);
-    if ($26) {
-     $30 = $5;
-    } else {
-     $27 = (($4) + ($25<<2)|0);
-     $28 = HEAP32[$27>>2]|0;
-     $30 = $28;
-    }
-    $29 = (((($1) + ($$091<<3)|0)) + 4|0);
-    HEAP32[$29>>2] = $30;
-    $31 = ($23|0)==(-1);
-    $32 = ($30|0)==(-1);
-    $or$cond99 = $31 | $32;
-    if ($or$cond99) {
-     HEAP32[$29>>2] = -1;
-     HEAP32[$22>>2] = -1;
-    }
-    $33 = (($$091) + 1)|0;
-    $34 = ($33>>>0)<($12>>>0);
-    $35 = ($33>>>0)<($0>>>0);
-    $or$cond81 = $35 & $34;
-    if ($or$cond81) {
-     $$091 = $33;
-    } else {
-     break;
-    }
-   }
-   if ($or$cond8190) {
-    $$188 = 0;
-    while(1) {
-     $36 = (((($1) + ($$188<<3)|0)) + 4|0);
-     $37 = (((($10) + (($$188*12)|0)|0)) + 8|0);
-     $38 = HEAP32[$37>>2]|0;
-     $39 = ($38|0)==(0|0);
-     if (!($39)) {
-      $40 = HEAP32[$38>>2]|0;
-      $41 = ($40|0)>(-1);
-      if ($41) {
-       $42 = (($1) + ($$188<<3)|0);
-       $$pre = HEAP32[$42>>2]|0;
-       $$07984 = 0;$44 = $40;$47 = $$pre;
-       while(1) {
-        $43 = (($1) + ($44<<3)|0);
-        $45 = HEAP32[$43>>2]|0;
-        $46 = ($47|0)<($45|0);
-        if ($46) {
-         label = 18;
-        } else {
-         $48 = HEAP32[$36>>2]|0;
-         $49 = (((($1) + ($44<<3)|0)) + 4|0);
-         $50 = HEAP32[$49>>2]|0;
-         $51 = ($48|0)>($50|0);
-         if ($51) {
-          label = 18;
-         } else {
-          $62 = $47;
-         }
-        }
-        if ((label|0) == 18) {
-         label = 0;
-         HEAP32[$36>>2] = -1;
-         HEAP32[$42>>2] = -1;
-         $62 = -1;
-        }
-        $52 = (($$07984) + 1)|0;
-        $53 = (($38) + ($52<<2)|0);
-        $54 = HEAP32[$53>>2]|0;
-        $55 = ($54|0)>(-1);
-        if ($55) {
-         $$07984 = $52;$44 = $54;$47 = $62;
-        } else {
-         break;
-        }
-       }
-      }
-     }
-     $56 = (($$188) + 1)|0;
-     $57 = ($56>>>0)<($12>>>0);
-     $58 = ($56>>>0)<($0>>>0);
-     $or$cond82 = $57 & $58;
-     if ($or$cond82) {
-      $$188 = $56;
-     } else {
-      $$2 = $56;
-      break;
-     }
-    }
-   } else {
-    $$2 = 0;
-   }
-  } else {
-   $$2 = 0;
-  }
- } else {
-  $$2 = 0;
- }
- $59 = ($$2>>>0)<($0>>>0);
- if ($59) {
-  $scevgep = (($1) + ($$2<<3)|0);
-  $60 = (($0) - ($$2))|0;
-  $61 = $60 << 3;
-  _memset(($scevgep|0),-1,($61|0))|0;
- }
- return;
-}
-function _tre_neg_char_classes_match($0,$1,$2) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- var $$0 = 0, $$01011 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, label = 0;
- var sp = 0;
- sp = STACKTOP;
- $3 = HEAP32[$0>>2]|0;
- $4 = ($3|0)==(0);
- L1: do {
-  if ($4) {
-   $$0 = 0;
-  } else {
-   $5 = ($2|0)==(0);
-   $$01011 = $0;$6 = $3;
-   while(1) {
-    if ($5) {
-     $7 = (_iswctype($1,$6)|0);
-     $8 = ($7|0)==(0);
-     if (!($8)) {
-      $$0 = 1;
-      break L1;
-     }
-    } else {
-     $9 = (_towupper($1)|0);
-     $10 = HEAP32[$$01011>>2]|0;
-     $11 = (_iswctype($9,$10)|0);
-     $12 = ($11|0)==(0);
-     if (!($12)) {
-      $$0 = 1;
-      break L1;
-     }
-     $13 = (_towlower($1)|0);
-     $14 = HEAP32[$$01011>>2]|0;
-     $15 = (_iswctype($13,$14)|0);
-     $16 = ($15|0)==(0);
-     if (!($16)) {
-      $$0 = 1;
-      break L1;
-     }
-    }
-    $17 = ((($$01011)) + 4|0);
-    $18 = HEAP32[$17>>2]|0;
-    $19 = ($18|0)==(0);
-    if ($19) {
-     $$0 = 0;
-     break;
-    } else {
-     $$01011 = $17;$6 = $18;
-    }
-   }
-  }
- } while(0);
- return ($$0|0);
-}
-function _tre_tag_order($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$018 = 0, $$019 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $16 = 0, $17 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- $4 = ($0|0)>(0);
- L1: do {
-  if ($4) {
-   $$019 = 0;
-   while(1) {
-    $5 = (($1) + ($$019<<2)|0);
-    $6 = HEAP32[$5>>2]|0;
-    $7 = ($6|0)==(0);
-    $8 = (($2) + ($$019<<2)|0);
-    $9 = HEAP32[$8>>2]|0;
-    $10 = (($3) + ($$019<<2)|0);
-    $11 = HEAP32[$10>>2]|0;
-    if ($7) {
-     $12 = ($9|0)<($11|0);
-     if ($12) {
-      $$018 = 1;
-      break L1;
-     }
-     $13 = ($9|0)>($11|0);
-     if ($13) {
-      $$018 = 0;
-      break L1;
-     }
-    } else {
-     $14 = ($9|0)>($11|0);
-     if ($14) {
-      $$018 = 1;
-      break L1;
-     }
-     $15 = ($9|0)<($11|0);
-     if ($15) {
-      $$018 = 0;
-      break L1;
-     }
-    }
-    $16 = (($$019) + 1)|0;
-    $17 = ($16|0)<($0|0);
-    if ($17) {
-     $$019 = $16;
-    } else {
-     $$018 = 0;
-     break;
-    }
-   }
-  } else {
-   $$018 = 0;
-  }
- } while(0);
- return ($$018|0);
-}
-function _isxdigit($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $narrow = 0, $spec$select = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_isdigit($0)|0);
- $2 = ($1|0)!=(0);
- $3 = $0 | 32;
- $4 = (($3) + -97)|0;
- $5 = ($4>>>0)<(6);
- $narrow = $5 | $2;
- $spec$select = $narrow&1;
- return ($spec$select|0);
-}
-function _toupper($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_islower($0)|0);
- $2 = ($1|0)==(0);
- $3 = $0 & 95;
- $$0 = $2 ? $0 : $3;
- return ($$0|0);
-}
-function _islower($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + -97)|0;
- $2 = ($1>>>0)<(26);
- $3 = $2&1;
- return ($3|0);
-}
-function _isupper($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (($0) + -65)|0;
- $2 = ($1>>>0)<(26);
- $3 = $2&1;
- return ($3|0);
-}
-function _tolower($0) {
- $0 = $0|0;
- var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (_isupper($0)|0);
- $2 = ($1|0)==(0);
- $3 = $0 | 32;
- $$0 = $2 ? $0 : $3;
- return ($$0|0);
-}
-function ___munmap($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, 
sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = $0;
- HEAP32[$vararg_buffer>>2] = $2;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = $1;
- $3 = (___syscall91(91,($vararg_buffer|0))|0);
- $4 = (___syscall_ret($3)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _dummy_735() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return;
-}
-function _strcasecmp($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $$0$lcssa = 0, $$01718 = 0, $$019 = 0, $$pre$pre = 0, $10 = 0, $11 = 0, 
$12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, 
$20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
- var $25 = 0, $26 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- $2 = HEAP8[$0>>0]|0;
- $3 = ($2<<24>>24)==(0);
- L1: do {
-  if ($3) {
-   $$0$lcssa = $1;$21 = 0;
-  } else {
-   $4 = $2&255;
-   $$01718 = $0;$$019 = $1;$8 = $2;$9 = $4;
-   while(1) {
-    $5 = HEAP8[$$019>>0]|0;
-    $6 = ($5<<24>>24)==(0);
-    if ($6) {
-     $$0$lcssa = $$019;$21 = $8;
-     break L1;
-    }
-    $7 = ($8<<24>>24)==($5<<24>>24);
-    if (!($7)) {
-     $10 = (_tolower($9)|0);
-     $11 = HEAP8[$$019>>0]|0;
-     $12 = $11&255;
-     $13 = (_tolower($12)|0);
-     $14 = ($10|0)==($13|0);
-     if (!($14)) {
-      break;
-     }
-    }
-    $15 = ((($$01718)) + 1|0);
-    $16 = ((($$019)) + 1|0);
-    $17 = HEAP8[$15>>0]|0;
-    $18 = $17&255;
-    $19 = ($17<<24>>24)==(0);
-    if ($19) {
-     $$0$lcssa = $16;$21 = 0;
-     break L1;
-    } else {
-     $$01718 = $15;$$019 = $16;$8 = $17;$9 = $18;
-    }
-   }
-   $$pre$pre = HEAP8[$$01718>>0]|0;
-   $$0$lcssa = $$019;$21 = $$pre$pre;
-  }
- } while(0);
- $20 = $21&255;
- $22 = (_tolower($20)|0);
- $23 = HEAP8[$$0$lcssa>>0]|0;
- $24 = $23&255;
- $25 = (_tolower($24)|0);
- $26 = (($22) - ($25))|0;
- return ($26|0);
-}
-function _srandom($0) {
- $0 = $0|0;
- var label = 0, sp = 0;
- sp = STACKTOP;
- ___lock((73288|0));
- ___srandom($0);
- ___unlock((73288|0));
- return;
-}
-function ___srandom($0) {
- $0 = $0|0;
- var $$01011 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 
0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 
0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (31)==(0);
- if ($1) {
-  HEAP32[(37332)>>2] = $0;
- } else {
-  $2 = (31)==(31);
-  $3 = (31)==(7);
-  $4 = $2 | $3;
-  $5 = $4 ? 3 : 1;
-  HEAP32[10262] = $5;
-  HEAP32[18324] = 0;
-  $6 = (31)>(0);
-  if ($6) {
-   $$01011 = 0;$7 = $0;$8 = 0;
-   while(1) {
-    $9 = (_lcg64($7,$8)|0);
-    $10 = tempRet0;
-    $11 = ((37332) + ($$01011<<2)|0);
-    HEAP32[$11>>2] = $10;
-    $12 = (($$01011) + 1)|0;
-    $exitcond = ($12|0)==(31);
-    if ($exitcond) {
-     $14 = (37332);
-     break;
-    } else {
-     $$01011 = $12;$7 = $9;$8 = $10;
-    }
-   }
-  } else {
-   $14 = (37332);
-  }
-  $13 = HEAP32[$14>>2]|0;
-  $15 = $13 | 1;
-  HEAP32[$14>>2] = $15;
- }
- return;
-}
-function _lcg64($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $2 = (___muldi3(($0|0),($1|0),1284865837,1481765933)|0);
- $3 = tempRet0;
- $4 = (_i64Add(($2|0),($3|0),1,0)|0);
- $5 = tempRet0;
- tempRet0 = ($5);
- return ($4|0);
-}
-function _random() {
- var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 
= 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec$store$select 
= 0, $spec$store$select1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- ___lock((73288|0));
- $0 = (31)==(0);
- if ($0) {
-  $1 = HEAP32[(37332)>>2]|0;
-  $2 = (_lcg31($1)|0);
-  HEAP32[(37332)>>2] = $2;
-  $$0 = $2;
- } else {
-  $3 = HEAP32[18324]|0;
-  $4 = ((37332) + ($3<<2)|0);
-  $5 = HEAP32[$4>>2]|0;
-  $6 = HEAP32[10262]|0;
-  $7 = ((37332) + ($6<<2)|0);
-  $8 = HEAP32[$7>>2]|0;
-  $9 = (($8) + ($5))|0;
-  HEAP32[$7>>2] = $9;
-  $10 = $9 >>> 1;
-  $11 = (($6) + 1)|0;
-  $12 = ($11|0)==(31);
-  $spec$store$select = $12 ? 0 : $11;
-  HEAP32[10262] = $spec$store$select;
-  $13 = (($3) + 1)|0;
-  $14 = ($13|0)==(31);
-  $spec$store$select1 = $14 ? 0 : $13;
-  HEAP32[18324] = $spec$store$select1;
-  $$0 = $10;
- }
- ___unlock((73288|0));
- return ($$0|0);
-}
-function _lcg31($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = Math_imul($0, 1103515245)|0;
- $2 = (($1) + 12345)|0;
- $3 = $2 & 2147483647;
- return ($3|0);
-}
-function ___mmap($0,$1,$2,$3,$4,$5) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- $4 = $4|0;
- $5 = $5|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, 
$17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0;
- var $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, 
label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $vararg_buffer = sp;
- $6 = ($5|0)<(0);
- $7 = $6 << 31 >> 31;
- $8 = $5 & 4095;
- $9 = $7 & -4096;
- $10 = ($8|0)==(0);
- $11 = ($9|0)==(0);
- $12 = $10 & $11;
- do {
-  if ($12) {
-   $14 = ($1>>>0)>(2147483646);
-   if ($14) {
-    $15 = (___errno_location()|0);
-    HEAP32[$15>>2] = 12;
-    $$0 = (-1);
-    break;
-   }
-   $16 = $3 & 16;
-   $17 = ($16|0)==(0);
-   if (!($17)) {
-   }
-   $18 = $0;
-   $19 = $5 >> 12;
-   HEAP32[$vararg_buffer>>2] = $18;
-   $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
-   HEAP32[$vararg_ptr1>>2] = $1;
-   $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
-   HEAP32[$vararg_ptr2>>2] = $2;
-   $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
-   HEAP32[$vararg_ptr3>>2] = $3;
-   $vararg_ptr4 = ((($vararg_buffer)) + 16|0);
-   HEAP32[$vararg_ptr4>>2] = $4;
-   $vararg_ptr5 = ((($vararg_buffer)) + 20|0);
-   HEAP32[$vararg_ptr5>>2] = $19;
-   $20 = (___syscall192(192,($vararg_buffer|0))|0);
-   $21 = (___syscall_ret($20)|0);
-   $22 = $21;
-   $$0 = $22;
-  } else {
-   $13 = (___errno_location()|0);
-   HEAP32[$13>>2] = 22;
-   $$0 = (-1);
-  }
- } while(0);
- STACKTOP = sp;return ($$0|0);
-}
-function _atoi($0) {
- $0 = $0|0;
- var $$0 = 0, $$010$lcssa = 0, $$01015 = 0, $$011 = 0, $$1 = 0, $$112 = 0, 
$$214 = 0, $$neg13 = 0, $$pre = 0, $$pre$phiZ2D = 0, $$pre16 = 0, $1 = 0, $10 = 
0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0;
- var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 
0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $$011 = $0;
- while(1) {
-  $1 = HEAP8[$$011>>0]|0;
-  $2 = $1 << 24 >> 24;
-  $3 = (_isspace($2)|0);
-  $4 = ($3|0)==(0);
-  $5 = ((($$011)) + 1|0);
-  if ($4) {
-   break;
-  } else {
-   $$011 = $5;
-  }
- }
- $6 = HEAP8[$$011>>0]|0;
- $7 = $6 << 24 >> 24;
- switch ($7|0) {
- case 45:  {
-  $$0 = 1;
-  label = 5;
-  break;
- }
- case 43:  {
-  $$0 = 0;
-  label = 5;
-  break;
- }
- default: {
-  $$1 = 0;$$112 = $$011;$$pre$phiZ2D = $7;
- }
- }
- if ((label|0) == 5) {
-  $$pre = HEAP8[$5>>0]|0;
-  $$pre16 = $$pre << 24 >> 24;
-  $$1 = $$0;$$112 = $5;$$pre$phiZ2D = $$pre16;
- }
- $8 = (_isdigit($$pre$phiZ2D)|0);
- $9 = ($8|0)==(0);
- if ($9) {
-  $$010$lcssa = 0;
- } else {
-  $$01015 = 0;$$214 = $$112;
-  while(1) {
-   $10 = ($$01015*10)|0;
-   $11 = ((($$214)) + 1|0);
-   $12 = HEAP8[$$214>>0]|0;
-   $13 = $12 << 24 >> 24;
-   $$neg13 = (($10) + 48)|0;
-   $14 = (($$neg13) - ($13))|0;
-   $15 = HEAP8[$11>>0]|0;
-   $16 = $15 << 24 >> 24;
-   $17 = (_isdigit($16)|0);
-   $18 = ($17|0)==(0);
-   if ($18) {
-    $$010$lcssa = $14;
-    break;
-   } else {
-    $$01015 = $14;$$214 = $11;
-   }
-  }
- }
- $19 = ($$1|0)==(0);
- $20 = (0 - ($$010$lcssa))|0;
- $21 = $19 ? $20 : $$010$lcssa;
- return ($21|0);
-}
-function ___setxid($0,$1,$2,$3) {
- $0 = $0|0;
- $1 = $1|0;
- $2 = $2|0;
- $3 = $3|0;
- var $$0 = 0, $10 = 0, $11 = 0, $12 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(32|0);
- $4 = sp;
- HEAP32[$4>>2] = $1;
- $5 = ((($4)) + 4|0);
- HEAP32[$5>>2] = $2;
- $6 = ((($4)) + 8|0);
- HEAP32[$6>>2] = $3;
- $7 = ((($4)) + 12|0);
- HEAP32[$7>>2] = $0;
- $8 = ((($4)) + 16|0);
- HEAP32[$8>>2] = -1;
- ___synccall(90,$4);
- $9 = HEAP32[$8>>2]|0;
- $10 = ($9|0)==(0);
- if ($10) {
-  $$0 = 0;
- } else {
-  $11 = ($9|0)>(0);
-  if ($11) {
-   $12 = (___errno_location()|0);
-   HEAP32[$12>>2] = $9;
-   $$0 = -1;
-  } else {
-   $$0 = -1;
-  }
- }
- STACKTOP = sp;return ($$0|0);
-}
-function _do_setxid($0) {
- $0 = $0|0;
- var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = ((($0)) + 16|0);
- $2 = HEAP32[$1>>2]|0;
- $3 = ($2|0)>(0);
- if (!($3)) {
-  HEAP32[$1>>2] = 1;
- }
- return;
-}
-function _getppid() {
- var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = (___syscall64(64,($vararg_buffer|0))|0);
- STACKTOP = sp;return ($0|0);
-}
-function _getuid() {
- var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = (___syscall199(199,($vararg_buffer|0))|0);
- STACKTOP = sp;return ($0|0);
-}
-function _geteuid() {
- var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $0 = (___syscall201(201,($vararg_buffer|0))|0);
- STACKTOP = sp;return ($0|0);
-}
-function _ftruncate($0,$1) {
- $0 = $0|0;
- $1 = $1|0;
- var $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 
$vararg_ptr2 = 0, $vararg_ptr3 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) 
abortStackOverflow(16|0);
- $vararg_buffer = sp;
- $2 = $1 >> 31;
- HEAP32[$vararg_buffer>>2] = $0;
- $vararg_ptr1 = ((($vararg_buffer)) + 4|0);
- HEAP32[$vararg_ptr1>>2] = 0;
- $vararg_ptr2 = ((($vararg_buffer)) + 8|0);
- HEAP32[$vararg_ptr2>>2] = $1;
- $vararg_ptr3 = ((($vararg_buffer)) + 12|0);
- HEAP32[$vararg_ptr3>>2] = $2;
- $3 = (___syscall194(194,($vararg_buffer|0))|0);
- $4 = (___syscall_ret($3)|0);
- STACKTOP = sp;return ($4|0);
-}
-function _setuid($0) {
- $0 = $0|0;
- var $1 = 0, label = 0, sp = 0;
- sp = STACKTOP;
- $1 = (___setxid(213,$0,0,0)|0);
- return ($1|0);
-}
-function ___emscripten_environ_constructor() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- ___buildEnvironment((73316|0));
- return;
-}
-function __get_tzname() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (73300|0);
-}
-function __get_daylight() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (73308|0);
-}
-function __get_timezone() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (73312|0);
-}
-function __get_environ() {
- var label = 0, sp = 0;
- sp = STACKTOP;
- return (73316|0);
-}
-function runPostSets() {
-}
-function _i64Add(a, b, c, d) {
-    /*
-      x = a + b*2^32
-      y = c + d*2^32
-      result = l + h*2^32
-    */
-    a = a|0; b = b|0; c = c|0; d = d|0;
-    var l = 0, h = 0;
-    l = (a + c)>>>0;
-    h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to 
high word on overflow.
-    return ((tempRet0 = h,l|0)|0);
-}
-function _i64Subtract(a, b, c, d) {
-    a = a|0; b = b|0; c = c|0; d = d|0;
-    var l = 0, h = 0;
-    l = (a - c)>>>0;
-    h = (b - d)>>>0;
-    h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to 
low word on underflow.
-    return ((tempRet0 = h,l|0)|0);
-}
-function _llvm_cttz_i32(x) { // Note: Currently doesn't take isZeroUndef()
-    x = x | 0;
-    return (x ? (31 - (Math_clz32((x ^ (x - 1))) | 0) | 0) : 32) | 0;
-}
-function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) {
-    $a$0 = $a$0 | 0;
-    $a$1 = $a$1 | 0;
-    $b$0 = $b$0 | 0;
-    $b$1 = $b$1 | 0;
-    $rem = $rem | 0;
-    var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, 
$n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, 
$d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 
0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 
= 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 
0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 
0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sro [...]
-    $n_sroa_0_0_extract_trunc = $a$0;
-    $n_sroa_1_4_extract_shift$0 = $a$1;
-    $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0;
-    $d_sroa_0_0_extract_trunc = $b$0;
-    $d_sroa_1_4_extract_shift$0 = $b$1;
-    $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0;
-    if (($n_sroa_1_4_extract_trunc | 0) == 0) {
-      $4 = ($rem | 0) != 0;
-      if (($d_sroa_1_4_extract_trunc | 0) == 0) {
-        if ($4) {
-          HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % 
($d_sroa_0_0_extract_trunc >>> 0);
-          HEAP32[$rem + 4 >> 2] = 0;
-        }
-        $_0$1 = 0;
-        $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc 
>>> 0) >>> 0;
-        return (tempRet0 = $_0$1, $_0$0) | 0;
-      } else {
-        if (!$4) {
-          $_0$1 = 0;
-          $_0$0 = 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        HEAP32[$rem >> 2] = $a$0 & -1;
-        HEAP32[$rem + 4 >> 2] = $a$1 & 0;
-        $_0$1 = 0;
-        $_0$0 = 0;
-        return (tempRet0 = $_0$1, $_0$0) | 0;
-      }
-    }
-    $17 = ($d_sroa_1_4_extract_trunc | 0) == 0;
-    do {
-      if (($d_sroa_0_0_extract_trunc | 0) == 0) {
-        if ($17) {
-          if (($rem | 0) != 0) {
-            HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % 
($d_sroa_0_0_extract_trunc >>> 0);
-            HEAP32[$rem + 4 >> 2] = 0;
-          }
-          $_0$1 = 0;
-          $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / 
($d_sroa_0_0_extract_trunc >>> 0) >>> 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        if (($n_sroa_0_0_extract_trunc | 0) == 0) {
-          if (($rem | 0) != 0) {
-            HEAP32[$rem >> 2] = 0;
-            HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % 
($d_sroa_1_4_extract_trunc >>> 0);
-          }
-          $_0$1 = 0;
-          $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / 
($d_sroa_1_4_extract_trunc >>> 0) >>> 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        $37 = $d_sroa_1_4_extract_trunc - 1 | 0;
-        if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) {
-          if (($rem | 0) != 0) {
-            HEAP32[$rem >> 2] = 0 | $a$0 & -1;
-            HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0;
-          }
-          $_0$1 = 0;
-          $_0$0 = $n_sroa_1_4_extract_trunc >>> 
((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0);
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        $49 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0;
-        $51 = $49 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0;
-        if ($51 >>> 0 <= 30) {
-          $57 = $51 + 1 | 0;
-          $58 = 31 - $51 | 0;
-          $sr_1_ph = $57;
-          $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | 
$n_sroa_0_0_extract_trunc >>> ($57 >>> 0);
-          $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0);
-          $q_sroa_0_1_ph = 0;
-          $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58;
-          break;
-        }
-        if (($rem | 0) == 0) {
-          $_0$1 = 0;
-          $_0$0 = 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        HEAP32[$rem >> 2] = 0 | $a$0 & -1;
-        HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0;
-        $_0$1 = 0;
-        $_0$0 = 0;
-        return (tempRet0 = $_0$1, $_0$0) | 0;
-      } else {
-        if (!$17) {
-          $117 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0;
-          $119 = $117 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0;
-          if ($119 >>> 0 <= 31) {
-            $125 = $119 + 1 | 0;
-            $126 = 31 - $119 | 0;
-            $130 = $119 - 31 >> 31;
-            $sr_1_ph = $125;
-            $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 
| $n_sroa_1_4_extract_trunc << $126;
-            $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130;
-            $q_sroa_0_1_ph = 0;
-            $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126;
-            break;
-          }
-          if (($rem | 0) == 0) {
-            $_0$1 = 0;
-            $_0$0 = 0;
-            return (tempRet0 = $_0$1, $_0$0) | 0;
-          }
-          HEAP32[$rem >> 2] = 0 | $a$0 & -1;
-          HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0;
-          $_0$1 = 0;
-          $_0$0 = 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-        $66 = $d_sroa_0_0_extract_trunc - 1 | 0;
-        if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) {
-          $86 = (Math_clz32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0;
-          $88 = $86 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0;
-          $89 = 64 - $88 | 0;
-          $91 = 32 - $88 | 0;
-          $92 = $91 >> 31;
-          $95 = $88 - 32 | 0;
-          $105 = $95 >> 31;
-          $sr_1_ph = $88;
-          $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 
>>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 
>>> 0)) & $105;
-          $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0);
-          $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92;
-          $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | 
$n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << 
$91 & $88 - 33 >> 31;
-          break;
-        }
-        if (($rem | 0) != 0) {
-          HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc;
-          HEAP32[$rem + 4 >> 2] = 0;
-        }
-        if (($d_sroa_0_0_extract_trunc | 0) == 1) {
-          $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0;
-          $_0$0 = 0 | $a$0 & -1;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        } else {
-          $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0;
-          $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0);
-          $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | 
$n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0;
-          return (tempRet0 = $_0$1, $_0$0) | 0;
-        }
-      }
-    } while (0);
-    if (($sr_1_ph | 0) == 0) {
-      $q_sroa_1_1_lcssa = $q_sroa_1_1_ph;
-      $q_sroa_0_1_lcssa = $q_sroa_0_1_ph;
-      $r_sroa_1_1_lcssa = $r_sroa_1_1_ph;
-      $r_sroa_0_1_lcssa = $r_sroa_0_1_ph;
-      $carry_0_lcssa$1 = 0;
-      $carry_0_lcssa$0 = 0;
-    } else {
-      $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1;
-      $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0;
-      $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0 | 0, 
$d_sroa_0_0_insert_insert99$1 | 0, -1, -1) | 0;
-      $137$1 = tempRet0;
-      $q_sroa_1_1198 = $q_sroa_1_1_ph;
-      $q_sroa_0_1199 = $q_sroa_0_1_ph;
-      $r_sroa_1_1200 = $r_sroa_1_1_ph;
-      $r_sroa_0_1201 = $r_sroa_0_1_ph;
-      $sr_1202 = $sr_1_ph;
-      $carry_0203 = 0;
-      while (1) {
-        $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1;
-        $149 = $carry_0203 | $q_sroa_0_1199 << 1;
-        $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | 
$q_sroa_1_1198 >>> 31);
-        $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 
<< 1 | 0;
-        _i64Subtract($137$0 | 0, $137$1 | 0, $r_sroa_0_0_insert_insert42$0 | 
0, $r_sroa_0_0_insert_insert42$1 | 0) | 0;
-        $150$1 = tempRet0;
-        $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1;
-        $152 = $151$0 & 1;
-        $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0 | 0, 
$r_sroa_0_0_insert_insert42$1 | 0, $151$0 & $d_sroa_0_0_insert_insert99$0 | 0, 
((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & 
$d_sroa_0_0_insert_insert99$1 | 0) | 0;
-        $r_sroa_0_0_extract_trunc = $154$0;
-        $r_sroa_1_4_extract_trunc = tempRet0;
-        $155 = $sr_1202 - 1 | 0;
-        if (($155 | 0) == 0) {
-          break;
-        } else {
-          $q_sroa_1_1198 = $147;
-          $q_sroa_0_1199 = $149;
-          $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc;
-          $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc;
-          $sr_1202 = $155;
-          $carry_0203 = $152;
-        }
-      }
-      $q_sroa_1_1_lcssa = $147;
-      $q_sroa_0_1_lcssa = $149;
-      $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc;
-      $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc;
-      $carry_0_lcssa$1 = 0;
-      $carry_0_lcssa$0 = $152;
-    }
-    $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa;
-    $q_sroa_0_0_insert_ext75$1 = 0;
-    $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | 
$q_sroa_0_0_insert_ext75$1;
-    if (($rem | 0) != 0) {
-      HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa;
-      HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0;
-    }
-    $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | 
$q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | 
$q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1;
-    $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | 
$carry_0_lcssa$0;
-    return (tempRet0 = $_0$1, $_0$0) | 0;
-}
-function ___divdi3($a$0, $a$1, $b$0, $b$1) {
-    $a$0 = $a$0 | 0;
-    $a$1 = $a$1 | 0;
-    $b$0 = $b$0 | 0;
-    $b$1 = $b$1 | 0;
-    var $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, 
$7$0 = 0, $7$1 = 0, $8$0 = 0, $10$0 = 0;
-    $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1;
-    $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1;
-    $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1;
-    $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1;
-    $4$0 = _i64Subtract($1$0 ^ $a$0 | 0, $1$1 ^ $a$1 | 0, $1$0 | 0, $1$1 | 0) 
| 0;
-    $4$1 = tempRet0;
-    $6$0 = _i64Subtract($2$0 ^ $b$0 | 0, $2$1 ^ $b$1 | 0, $2$0 | 0, $2$1 | 0) 
| 0;
-    $7$0 = $2$0 ^ $1$0;
-    $7$1 = $2$1 ^ $1$1;
-    $8$0 = ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, 0) | 0;
-    $10$0 = _i64Subtract($8$0 ^ $7$0 | 0, tempRet0 ^ $7$1 | 0, $7$0 | 0, $7$1 
| 0) | 0;
-    return $10$0 | 0;
-}
-function ___muldsi3($a, $b) {
-    $a = $a | 0;
-    $b = $b | 0;
-    var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0;
-    $1 = $a & 65535;
-    $2 = $b & 65535;
-    $3 = Math_imul($2, $1) | 0;
-    $6 = $a >>> 16;
-    $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0;
-    $11 = $b >>> 16;
-    $12 = Math_imul($11, $1) | 0;
-    return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 
65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0;
-}
-function ___muldi3($a$0, $a$1, $b$0, $b$1) {
-    $a$0 = $a$0 | 0;
-    $a$1 = $a$1 | 0;
-    $b$0 = $b$0 | 0;
-    $b$1 = $b$1 | 0;
-    var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 
0, $1$1 = 0, $2 = 0;
-    $x_sroa_0_0_extract_trunc = $a$0;
-    $y_sroa_0_0_extract_trunc = $b$0;
-    $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 
0;
-    $1$1 = tempRet0;
-    $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0;
-    return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 
| 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0;
-}
-function ___udivdi3($a$0, $a$1, $b$0, $b$1) {
-    $a$0 = $a$0 | 0;
-    $a$1 = $a$1 | 0;
-    $b$0 = $b$0 | 0;
-    $b$1 = $b$1 | 0;
-    var $1$0 = 0;
-    $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0;
-    return $1$0 | 0;
-}
-function ___uremdi3($a$0, $a$1, $b$0, $b$1) {
-    $a$0 = $a$0 | 0;
-    $a$1 = $a$1 | 0;
-    $b$0 = $b$0 | 0;
-    $b$1 = $b$1 | 0;
-    var $rem = 0, __stackBase__ = 0;
-    __stackBase__ = STACKTOP;
-    STACKTOP = STACKTOP + 16 | 0;
-    $rem = __stackBase__ | 0;
-    ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0;
-    STACKTOP = __stackBase__;
-    return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0;
-}
-function _bitshift64Ashr(low, high, bits) {
-    low = low|0; high = high|0; bits = bits|0;
-    var ander = 0;
-    if ((bits|0) < 32) {
-      ander = ((1 << bits) - 1)|0;
-      tempRet0 = high >> bits;
-      return (low >>> bits) | ((high&ander) << (32 - bits));
-    }
-    tempRet0 = (high|0) < 0 ? -1 : 0;
-    return (high >> (bits - 32))|0;
-}
-function _bitshift64Lshr(low, high, bits) {
-    low = low|0; high = high|0; bits = bits|0;
-    var ander = 0;
-    if ((bits|0) < 32) {
-      ander = ((1 << bits) - 1)|0;
-      tempRet0 = high >>> bits;
-      return (low >>> bits) | ((high&ander) << (32 - bits));
-    }
-    tempRet0 = 0;
-    return (high >>> (bits - 32))|0;
-}
-function _bitshift64Shl(low, high, bits) {
-    low = low|0; high = high|0; bits = bits|0;
-    var ander = 0;
-    if ((bits|0) < 32) {
-      ander = ((1 << bits) - 1)|0;
-      tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - 
bits));
-      return low << bits;
-    }
-    tempRet0 = low << (bits - 32);
-    return 0;
-}
-function _llvm_bswap_i32(x) {
-    x = x|0;
-    return (((x&0xff)<<24) | (((x>>8)&0xff)<<16) | (((x>>16)&0xff)<<8) | 
(x>>>24))|0;
-}
-function _memcpy(dest, src, num) {
-    dest = dest|0; src = src|0; num = num|0;
-    var ret = 0;
-    var aligned_dest_end = 0;
-    var block_aligned_dest_end = 0;
-    var dest_end = 0;
-    // Test against a benchmarked cutoff limit for when HEAPU8.set() becomes 
faster to use.
-    if ((num|0) >=
-      8192
-    ) {
-      return _emscripten_memcpy_big(dest|0, src|0, num|0)|0;
-    }
-
-    ret = dest|0;
-    dest_end = (dest + num)|0;
-    if ((dest&3) == (src&3)) {
-      // The initial unaligned < 4-byte front.
-      while (dest & 3) {
-        if ((num|0) == 0) return ret|0;
-        HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0);
-        dest = (dest+1)|0;
-        src = (src+1)|0;
-        num = (num-1)|0;
-      }
-      aligned_dest_end = (dest_end & -4)|0;
-      block_aligned_dest_end = (aligned_dest_end - 64)|0;
-      while ((dest|0) <= (block_aligned_dest_end|0) ) {
-        HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0);
-        HEAP32[(((dest)+(4))>>2)]=((HEAP32[(((src)+(4))>>2)])|0);
-        HEAP32[(((dest)+(8))>>2)]=((HEAP32[(((src)+(8))>>2)])|0);
-        HEAP32[(((dest)+(12))>>2)]=((HEAP32[(((src)+(12))>>2)])|0);
-        HEAP32[(((dest)+(16))>>2)]=((HEAP32[(((src)+(16))>>2)])|0);
-        HEAP32[(((dest)+(20))>>2)]=((HEAP32[(((src)+(20))>>2)])|0);
-        HEAP32[(((dest)+(24))>>2)]=((HEAP32[(((src)+(24))>>2)])|0);
-        HEAP32[(((dest)+(28))>>2)]=((HEAP32[(((src)+(28))>>2)])|0);
-        HEAP32[(((dest)+(32))>>2)]=((HEAP32[(((src)+(32))>>2)])|0);
-        HEAP32[(((dest)+(36))>>2)]=((HEAP32[(((src)+(36))>>2)])|0);
-        HEAP32[(((dest)+(40))>>2)]=((HEAP32[(((src)+(40))>>2)])|0);
-        HEAP32[(((dest)+(44))>>2)]=((HEAP32[(((src)+(44))>>2)])|0);
-        HEAP32[(((dest)+(48))>>2)]=((HEAP32[(((src)+(48))>>2)])|0);
-        HEAP32[(((dest)+(52))>>2)]=((HEAP32[(((src)+(52))>>2)])|0);
-        HEAP32[(((dest)+(56))>>2)]=((HEAP32[(((src)+(56))>>2)])|0);
-        HEAP32[(((dest)+(60))>>2)]=((HEAP32[(((src)+(60))>>2)])|0);
-        dest = (dest+64)|0;
-        src = (src+64)|0;
-      }
-      while ((dest|0) < (aligned_dest_end|0) ) {
-        HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0);
-        dest = (dest+4)|0;
-        src = (src+4)|0;
-      }
-    } else {
-      // In the unaligned copy case, unroll a bit as well.
-      aligned_dest_end = (dest_end - 4)|0;
-      while ((dest|0) < (aligned_dest_end|0) ) {
-        HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0);
-        HEAP8[(((dest)+(1))>>0)]=((HEAP8[(((src)+(1))>>0)])|0);
-        HEAP8[(((dest)+(2))>>0)]=((HEAP8[(((src)+(2))>>0)])|0);
-        HEAP8[(((dest)+(3))>>0)]=((HEAP8[(((src)+(3))>>0)])|0);
-        dest = (dest+4)|0;
-        src = (src+4)|0;
-      }
-    }
-    // The remaining unaligned < 4 byte tail.
-    while ((dest|0) < (dest_end|0)) {
-      HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0);
-      dest = (dest+1)|0;
-      src = (src+1)|0;
-    }
-    return ret|0;
-}
-function _memmove(dest, src, num) {
-    dest = dest|0; src = src|0; num = num|0;
-    var ret = 0;
-    if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) {
-      // Unlikely case: Copy backwards in a safe manner
-      ret = dest;
-      src = (src + num)|0;
-      dest = (dest + num)|0;
-      while ((num|0) > 0) {
-        dest = (dest - 1)|0;
-        src = (src - 1)|0;
-        num = (num - 1)|0;
-        HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0);
-      }
-      dest = ret;
-    } else {
-      _memcpy(dest, src, num) | 0;
-    }
-    return dest | 0;
-}
-function _memset(ptr, value, num) {
-    ptr = ptr|0; value = value|0; num = num|0;
-    var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0;
-    end = (ptr + num)|0;
-
-    value = value & 0xff;
-    if ((num|0) >= 67 /* 64 bytes for an unrolled loop + 3 bytes for unaligned 
head*/) {
-      while ((ptr&3) != 0) {
-        HEAP8[((ptr)>>0)]=value;
-        ptr = (ptr+1)|0;
-      }
-
-      aligned_end = (end & -4)|0;
-      block_aligned_end = (aligned_end - 64)|0;
-      value4 = value | (value << 8) | (value << 16) | (value << 24);
-
-      while((ptr|0) <= (block_aligned_end|0)) {
-        HEAP32[((ptr)>>2)]=value4;
-        HEAP32[(((ptr)+(4))>>2)]=value4;
-        HEAP32[(((ptr)+(8))>>2)]=value4;
-        HEAP32[(((ptr)+(12))>>2)]=value4;
-        HEAP32[(((ptr)+(16))>>2)]=value4;
-        HEAP32[(((ptr)+(20))>>2)]=value4;
-        HEAP32[(((ptr)+(24))>>2)]=value4;
-        HEAP32[(((ptr)+(28))>>2)]=value4;
-        HEAP32[(((ptr)+(32))>>2)]=value4;
-        HEAP32[(((ptr)+(36))>>2)]=value4;
-        HEAP32[(((ptr)+(40))>>2)]=value4;
-        HEAP32[(((ptr)+(44))>>2)]=value4;
-        HEAP32[(((ptr)+(48))>>2)]=value4;
-        HEAP32[(((ptr)+(52))>>2)]=value4;
-        HEAP32[(((ptr)+(56))>>2)]=value4;
-        HEAP32[(((ptr)+(60))>>2)]=value4;
-        ptr = (ptr + 64)|0;
-      }
-
-      while ((ptr|0) < (aligned_end|0) ) {
-        HEAP32[((ptr)>>2)]=value4;
-        ptr = (ptr+4)|0;
-      }
-    }
-    // The remaining bytes.
-    while ((ptr|0) < (end|0)) {
-      HEAP8[((ptr)>>0)]=value;
-      ptr = (ptr+1)|0;
-    }
-    return (end-num)|0;
-}
-function _pthread_mutex_lock(x) {
-    x = x | 0;
-    return 0;
-}
-function _pthread_mutex_unlock(x) {
-    x = x | 0;
-    return 0;
-}
-function _sbrk(increment) {
-    increment = increment|0;
-    var oldDynamicTop = 0;
-    var oldDynamicTopOnChange = 0;
-    var newDynamicTop = 0;
-    var totalMemory = 0;
-    oldDynamicTop = HEAP32[DYNAMICTOP_PTR>>2]|0;
-    newDynamicTop = oldDynamicTop + increment | 0;
-
-    if (((increment|0) > 0 & (newDynamicTop|0) < (oldDynamicTop|0)) // Detect 
and fail if we would wrap around signed 32-bit int.
-      | (newDynamicTop|0) < 0) { // Also underflow, sbrk() should be able to 
be used to subtract.
-      abortOnCannotGrowMemory()|0;
-      ___setErrNo(12);
-      return -1;
-    }
-
-    HEAP32[DYNAMICTOP_PTR>>2] = newDynamicTop;
-    totalMemory = getTotalMemory()|0;
-    if ((newDynamicTop|0) > (totalMemory|0)) {
-      if ((enlargeMemory()|0) == 0) {
-        HEAP32[DYNAMICTOP_PTR>>2] = oldDynamicTop;
-        ___setErrNo(12);
-        return -1;
-      }
-    }
-    return oldDynamicTop|0;
-}
-
-  
-function dynCall_ii(index,a1) {
-  index = index|0;
-  a1=a1|0;
-  return FUNCTION_TABLE_ii[index&63](a1|0)|0;
-}
-
-
-function dynCall_iii(index,a1,a2) {
-  index = index|0;
-  a1=a1|0; a2=a2|0;
-  return FUNCTION_TABLE_iii[index&127](a1|0,a2|0)|0;
-}
-
-
-function dynCall_iiii(index,a1,a2,a3) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0;
-  return FUNCTION_TABLE_iiii[index&127](a1|0,a2|0,a3|0)|0;
-}
-
-
-function dynCall_iiiii(index,a1,a2,a3,a4) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0;
-  return FUNCTION_TABLE_iiiii[index&127](a1|0,a2|0,a3|0,a4|0)|0;
-}
-
-
-function dynCall_v(index) {
-  index = index|0;
-  
-  FUNCTION_TABLE_v[index&127]();
-}
-
-
-function dynCall_vi(index,a1) {
-  index = index|0;
-  a1=a1|0;
-  FUNCTION_TABLE_vi[index&127](a1|0);
-}
-
-
-function dynCall_vii(index,a1,a2) {
-  index = index|0;
-  a1=a1|0; a2=a2|0;
-  FUNCTION_TABLE_vii[index&63](a1|0,a2|0);
-}
-
-
-function dynCall_viii(index,a1,a2,a3) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0;
-  FUNCTION_TABLE_viii[index&127](a1|0,a2|0,a3|0);
-}
-
-
-function dynCall_viiii(index,a1,a2,a3,a4) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0;
-  FUNCTION_TABLE_viiii[index&63](a1|0,a2|0,a3|0,a4|0);
-}
-
-
-function dynCall_viiiii(index,a1,a2,a3,a4,a5) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0;
-  FUNCTION_TABLE_viiiii[index&127](a1|0,a2|0,a3|0,a4|0,a5|0);
-}
-
-
-function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) {
-  index = index|0;
-  a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0;
-  FUNCTION_TABLE_viiiiii[index&63](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0);
-}
-
-function b0(p0) {
- p0 = p0|0; nullFunc_ii(0);return 0;
-}
-function b1(p0,p1) {
- p0 = p0|0;p1 = p1|0; nullFunc_iii(1);return 0;
-}
-function b2(p0,p1,p2) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(2);return 0;
-}
-function b3(p0,p1,p2,p3) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_iiiii(3);return 0;
-}
-function b4() {
- ; nullFunc_v(4);
-}
-function b5(p0) {
- p0 = p0|0; nullFunc_vi(5);
-}
-function b6(p0,p1) {
- p0 = p0|0;p1 = p1|0; nullFunc_vii(6);
-}
-function b7(p0,p1,p2) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_viii(7);
-}
-function b8(p0,p1,p2,p3) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(8);
-}
-function b9(p0,p1,p2,p3,p4) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(9);
-}
-function b10(p0,p1,p2,p3,p4,p5) {
- p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; 
nullFunc_viiiiii(10);
-}
-
-// EMSCRIPTEN_END_FUNCS
-var FUNCTION_TABLE_ii = 
[b0,b0,b0,b0,b0,b0,b0,b0,_rmd160_read,b0,_rsa_check_secret_key,b0,b0,b0,b0,_rsa_get_nbits,b0,b0,b0,b0,_sha1_read,b0,b0,b0,_sha256_read,b0,b0,b0,b0
-,_sha512_read,b0,b0,b0,b0,b0,b0,_ecc_check_secret_key,b0,b0,b0,b0,_ecc_get_nbits,b0,b0,b0,__gcry_ecc_get_param_sexp,b0,b0,b0,___stdio_close,b0,b0,b0,b0,_w_malloc,_w_check,b0,b0,b0
-,b0,b0,b0,b0,b0];
-var FUNCTION_TABLE_iii = 
[b1,b1,b1,b1,b1,b1,b1,b1,b1,_rsa_generate,b1,b1,b1,b1,b1,b1,b1,_compute_keygrip,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1
-,b1,b1,b1,b1,b1,b1,_ecc_generate,b1,b1,b1,b1,b1,b1,b1,_compute_keygrip_1815,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,_realloc,b1,b1
-,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,_pss_verify_cmp,b1,b1,b1,b1,b1,_check_exponent,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1
-,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1
-,b1,b1,b1,b1,b1,b1,b1,b1,b1];
-var FUNCTION_TABLE_iiii = 
[b2,_rijndael_setkey,_rijndael_encrypt,_rijndael_decrypt,_run_selftests,b2,b2,b2,b2,b2,b2,_rsa_encrypt,_rsa_decrypt,_rsa_sign,_rsa_verify,b2,_run_selftests_1209,b2,b2,b2,b2,_run_selftests_1309,b2,b2,b2,_run_selftests_1332,b2,b2,b2
-,b2,_run_selftests_1355,b2,_twofish_setkey,_twofish_encrypt,_twofish_decrypt,b2,b2,_ecc_encrypt_raw,_ecc_decrypt_raw,_ecc_sign,_ecc_verify,b2,_run_selftests_1814,b2,__gcry_ecc_get_curve,b2,b2,_poly1305_blocks_ref32,b2,b2,___stdout_write,___stdio_seek,___stdio_write,_sn_write,b2,b2,b2,b2,__gcry_log_info_with_dummy_fp
-,_fprintf,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,_do_encrypt,_do_decrypt,b2,b2,_transform,b2,_transform_1319,_transform_1345,_transform_1368,b2,b2,b2,b2,b2,b2,b2,b2
-,___stdio_read,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2
-,b2,b2,b2,b2,b2,b2,b2,b2,b2];
-var FUNCTION_TABLE_iiiii = 
[b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3
-,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,_poly1305_finish_ext_ref32,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3
-,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,_ghash_internal,__gcry_rndlinux_gather_random,b3,b3,b3,b3,b3
-,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3
-,b3,b3,b3,b3,b3,b3,b3,b3,b3];
-var FUNCTION_TABLE_v = 
[b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4
-,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4
-,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,_prefetch_enc,_prefetch_dec,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,_do_deinit,b4
-,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4
-,b4,b4,b4,b4,b4,b4,b4,b4,b4];
-var FUNCTION_TABLE_vi = 
[b5,b5,b5,b5,b5,b5,b5,_rmd160_final,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,_sha1_final,b5,b5,b5,_sha256_final,b5,b5,b5,b5,_sha512_final
-,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,_free,b5
-,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,_ec_deinit,b5,b5,b5,b5,b5,b5,b5
-,b5,_do_setxid,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5
-,b5,b5,b5,b5,b5,b5,b5,b5,b5];
-var FUNCTION_TABLE_vii = 
[b6,b6,b6,b6,b6,_rmd160_init,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,_sha1_init,b6,b6,b6,_sha224_init,b6,b6,b6,_sha256_init,_sha512_init,b6
-,b6,b6,_sha384_init,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,_poly1305_init_ext_ref32,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6
-,b6,b6,b6,b6,b6];
-var FUNCTION_TABLE_viii = 
[b7,b7,b7,b7,b7,b7,__gcry_md_block_write,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7
-,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7
-,b7,b7,b7,b7,b7,b7,b7,b7,__gcry_aes_ocb_auth,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,_add_randomness,_entropy_collect_cb,_read_cb,b7,_fatal_error_handler_2503
-,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7
-,b7,b7,b7,b7,b7,b7,b7,b7,b7];
-var FUNCTION_TABLE_viiii = 
[b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8
-,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8
-,b8,_reporter,b8,b8,b8];
-var FUNCTION_TABLE_viiiii = 
[b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9
-,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9
-,b9,b9,__gcry_aes_cfb_enc,__gcry_aes_cfb_dec,b9,__gcry_aes_cbc_dec,__gcry_aes_ctr_enc,__gcry_aes_ocb_crypt,b9,__gcry_twofish_cbc_dec,__gcry_twofish_cfb_dec,__gcry_twofish_ctr_enc,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9
-,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9
-,b9,b9,b9,b9,b9,b9,b9,b9,b9];
-var FUNCTION_TABLE_viiiiii = 
[b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10
-,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10
-,b10,b10,b10,b10,__gcry_aes_cbc_enc];
-
-  return { _GNUNET_CRYPTO_ecc_ecdh: _GNUNET_CRYPTO_ecc_ecdh, 
_GNUNET_CRYPTO_ecdh_eddsa: _GNUNET_CRYPTO_ecdh_eddsa, 
_GNUNET_CRYPTO_ecdhe_key_create: _GNUNET_CRYPTO_ecdhe_key_create, 
_GNUNET_CRYPTO_ecdhe_key_get_public: _GNUNET_CRYPTO_ecdhe_key_get_public, 
_GNUNET_CRYPTO_ecdsa_key_create: _GNUNET_CRYPTO_ecdsa_key_create, 
_GNUNET_CRYPTO_eddsa_key_create: _GNUNET_CRYPTO_eddsa_key_create, 
_GNUNET_CRYPTO_eddsa_key_get_public: _GNUNET_CRYPTO_eddsa_key_get_public, 
_GNUNET_CRYPTO_eddsa_sign: _GNU [...]
-})
-// EMSCRIPTEN_END_ASM
-(Module.asmGlobalArg, Module.asmLibraryArg, buffer);
-
-var real__GNUNET_CRYPTO_ecc_ecdh = asm["_GNUNET_CRYPTO_ecc_ecdh"]; 
asm["_GNUNET_CRYPTO_ecc_ecdh"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_ecc_ecdh.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_ecdh_eddsa = asm["_GNUNET_CRYPTO_ecdh_eddsa"]; 
asm["_GNUNET_CRYPTO_ecdh_eddsa"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_ecdh_eddsa.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_ecdhe_key_create = 
asm["_GNUNET_CRYPTO_ecdhe_key_create"]; asm["_GNUNET_CRYPTO_ecdhe_key_create"] 
= function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_ecdhe_key_create.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_ecdhe_key_get_public = 
asm["_GNUNET_CRYPTO_ecdhe_key_get_public"]; 
asm["_GNUNET_CRYPTO_ecdhe_key_get_public"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_ecdhe_key_get_public.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_ecdsa_key_create = 
asm["_GNUNET_CRYPTO_ecdsa_key_create"]; asm["_GNUNET_CRYPTO_ecdsa_key_create"] 
= function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_ecdsa_key_create.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_eddsa_key_create = 
asm["_GNUNET_CRYPTO_eddsa_key_create"]; asm["_GNUNET_CRYPTO_eddsa_key_create"] 
= function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_eddsa_key_create.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_eddsa_key_get_public = 
asm["_GNUNET_CRYPTO_eddsa_key_get_public"]; 
asm["_GNUNET_CRYPTO_eddsa_key_get_public"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_eddsa_key_get_public.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_eddsa_sign = asm["_GNUNET_CRYPTO_eddsa_sign"]; 
asm["_GNUNET_CRYPTO_eddsa_sign"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_eddsa_sign.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_eddsa_verify = asm["_GNUNET_CRYPTO_eddsa_verify"]; 
asm["_GNUNET_CRYPTO_eddsa_verify"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_eddsa_verify.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_hash = asm["_GNUNET_CRYPTO_hash"]; 
asm["_GNUNET_CRYPTO_hash"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_hash_context_abort = 
asm["_GNUNET_CRYPTO_hash_context_abort"]; 
asm["_GNUNET_CRYPTO_hash_context_abort"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash_context_abort.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_hash_context_finish = 
asm["_GNUNET_CRYPTO_hash_context_finish"]; 
asm["_GNUNET_CRYPTO_hash_context_finish"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash_context_finish.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_hash_context_read = 
asm["_GNUNET_CRYPTO_hash_context_read"]; 
asm["_GNUNET_CRYPTO_hash_context_read"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash_context_read.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_hash_context_start = 
asm["_GNUNET_CRYPTO_hash_context_start"]; 
asm["_GNUNET_CRYPTO_hash_context_start"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash_context_start.apply(null, arguments);
-};
+var Module=typeof TalerEmscriptenLib!=="undefined"?TalerEmscriptenLib:{};var 
moduleOverrides={};var key;for(key in 
Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw
 toThrow});Module["preRun"]=[];Module["postRun"]=[];var 
ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var 
ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typ 
[...]
 
-var real__GNUNET_CRYPTO_hash_create_random = 
asm["_GNUNET_CRYPTO_hash_create_random"]; 
asm["_GNUNET_CRYPTO_hash_create_random"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hash_create_random.apply(null, arguments);
-};
 
-var real__GNUNET_CRYPTO_hkdf = asm["_GNUNET_CRYPTO_hkdf"]; 
asm["_GNUNET_CRYPTO_hkdf"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_hkdf.apply(null, arguments);
-};
 
-var real__GNUNET_CRYPTO_kdf = asm["_GNUNET_CRYPTO_kdf"]; 
asm["_GNUNET_CRYPTO_kdf"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_kdf.apply(null, arguments);
-};
 
-var real__GNUNET_CRYPTO_random_block = asm["_GNUNET_CRYPTO_random_block"]; 
asm["_GNUNET_CRYPTO_random_block"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_random_block.apply(null, arguments);
-};
 
-var real__GNUNET_CRYPTO_random_init = asm["_GNUNET_CRYPTO_random_init"]; 
asm["_GNUNET_CRYPTO_random_init"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_random_init.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_blind = asm["_GNUNET_CRYPTO_rsa_blind"]; 
asm["_GNUNET_CRYPTO_rsa_blind"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_blind.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_private_key_create = 
asm["_GNUNET_CRYPTO_rsa_private_key_create"]; 
asm["_GNUNET_CRYPTO_rsa_private_key_create"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_private_key_create.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_private_key_decode = 
asm["_GNUNET_CRYPTO_rsa_private_key_decode"]; 
asm["_GNUNET_CRYPTO_rsa_private_key_decode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_private_key_decode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_private_key_encode = 
asm["_GNUNET_CRYPTO_rsa_private_key_encode"]; 
asm["_GNUNET_CRYPTO_rsa_private_key_encode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_private_key_encode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_private_key_free = 
asm["_GNUNET_CRYPTO_rsa_private_key_free"]; 
asm["_GNUNET_CRYPTO_rsa_private_key_free"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_private_key_free.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_private_key_get_public = 
asm["_GNUNET_CRYPTO_rsa_private_key_get_public"]; 
asm["_GNUNET_CRYPTO_rsa_private_key_get_public"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_private_key_get_public.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_public_key_decode = 
asm["_GNUNET_CRYPTO_rsa_public_key_decode"]; 
asm["_GNUNET_CRYPTO_rsa_public_key_decode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_public_key_decode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_public_key_encode = 
asm["_GNUNET_CRYPTO_rsa_public_key_encode"]; 
asm["_GNUNET_CRYPTO_rsa_public_key_encode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_public_key_encode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_public_key_free = 
asm["_GNUNET_CRYPTO_rsa_public_key_free"]; 
asm["_GNUNET_CRYPTO_rsa_public_key_free"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_public_key_free.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_signature_decode = 
asm["_GNUNET_CRYPTO_rsa_signature_decode"]; 
asm["_GNUNET_CRYPTO_rsa_signature_decode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_signature_decode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_signature_encode = 
asm["_GNUNET_CRYPTO_rsa_signature_encode"]; 
asm["_GNUNET_CRYPTO_rsa_signature_encode"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_signature_encode.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_signature_free = 
asm["_GNUNET_CRYPTO_rsa_signature_free"]; 
asm["_GNUNET_CRYPTO_rsa_signature_free"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_signature_free.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_unblind = asm["_GNUNET_CRYPTO_rsa_unblind"]; 
asm["_GNUNET_CRYPTO_rsa_unblind"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_unblind.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_rsa_verify = asm["_GNUNET_CRYPTO_rsa_verify"]; 
asm["_GNUNET_CRYPTO_rsa_verify"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_rsa_verify.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_symmetric_decrypt = 
asm["_GNUNET_CRYPTO_symmetric_decrypt"]; 
asm["_GNUNET_CRYPTO_symmetric_decrypt"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_symmetric_decrypt.apply(null, arguments);
-};
-
-var real__GNUNET_CRYPTO_symmetric_encrypt = 
asm["_GNUNET_CRYPTO_symmetric_encrypt"]; 
asm["_GNUNET_CRYPTO_symmetric_encrypt"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_CRYPTO_symmetric_encrypt.apply(null, arguments);
-};
-
-var real__GNUNET_STRINGS_data_to_string_alloc = 
asm["_GNUNET_STRINGS_data_to_string_alloc"]; 
asm["_GNUNET_STRINGS_data_to_string_alloc"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_STRINGS_data_to_string_alloc.apply(null, arguments);
-};
-
-var real__GNUNET_STRINGS_string_to_data = 
asm["_GNUNET_STRINGS_string_to_data"]; asm["_GNUNET_STRINGS_string_to_data"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_STRINGS_string_to_data.apply(null, arguments);
-};
-
-var real__GNUNET_util_cl_init = asm["_GNUNET_util_cl_init"]; 
asm["_GNUNET_util_cl_init"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__GNUNET_util_cl_init.apply(null, arguments);
-};
-
-var real__TALER_WRALL_ecdhe_public_key_from_private = 
asm["_TALER_WRALL_ecdhe_public_key_from_private"]; 
asm["_TALER_WRALL_ecdhe_public_key_from_private"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WRALL_ecdhe_public_key_from_private.apply(null, 
arguments);
-};
-
-var real__TALER_WRALL_ecdsa_public_key_from_private = 
asm["_TALER_WRALL_ecdsa_public_key_from_private"]; 
asm["_TALER_WRALL_ecdsa_public_key_from_private"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WRALL_ecdsa_public_key_from_private.apply(null, 
arguments);
-};
-
-var real__TALER_WRALL_eddsa_public_key_from_private = 
asm["_TALER_WRALL_eddsa_public_key_from_private"]; 
asm["_TALER_WRALL_eddsa_public_key_from_private"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WRALL_eddsa_public_key_from_private.apply(null, 
arguments);
-};
-
-var real__TALER_WRALL_get_amount = asm["_TALER_WRALL_get_amount"]; 
asm["_TALER_WRALL_get_amount"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WRALL_get_amount.apply(null, arguments);
-};
-
-var real__TALER_WRALL_purpose_create = asm["_TALER_WRALL_purpose_create"]; 
asm["_TALER_WRALL_purpose_create"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WRALL_purpose_create.apply(null, arguments);
-};
-
-var real__TALER_WR_get_currency = asm["_TALER_WR_get_currency"]; 
asm["_TALER_WR_get_currency"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WR_get_currency.apply(null, arguments);
-};
-
-var real__TALER_WR_get_fraction = asm["_TALER_WR_get_fraction"]; 
asm["_TALER_WR_get_fraction"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WR_get_fraction.apply(null, arguments);
-};
-
-var real__TALER_WR_get_value = asm["_TALER_WR_get_value"]; 
asm["_TALER_WR_get_value"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_WR_get_value.apply(null, arguments);
-};
-
-var real__TALER_amount_add = asm["_TALER_amount_add"]; 
asm["_TALER_amount_add"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_add.apply(null, arguments);
-};
-
-var real__TALER_amount_cmp = asm["_TALER_amount_cmp"]; 
asm["_TALER_amount_cmp"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_cmp.apply(null, arguments);
-};
-
-var real__TALER_amount_get_zero = asm["_TALER_amount_get_zero"]; 
asm["_TALER_amount_get_zero"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_get_zero.apply(null, arguments);
-};
-
-var real__TALER_amount_hton = asm["_TALER_amount_hton"]; 
asm["_TALER_amount_hton"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_hton.apply(null, arguments);
-};
-
-var real__TALER_amount_normalize = asm["_TALER_amount_normalize"]; 
asm["_TALER_amount_normalize"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_normalize.apply(null, arguments);
-};
-
-var real__TALER_amount_ntoh = asm["_TALER_amount_ntoh"]; 
asm["_TALER_amount_ntoh"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_ntoh.apply(null, arguments);
-};
-
-var real__TALER_amount_subtract = asm["_TALER_amount_subtract"]; 
asm["_TALER_amount_subtract"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_amount_subtract.apply(null, arguments);
-};
-
-var real__TALER_gcrypt_init = asm["_TALER_gcrypt_init"]; 
asm["_TALER_gcrypt_init"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_gcrypt_init.apply(null, arguments);
-};
-
-var real__TALER_setup_fresh_coin = asm["_TALER_setup_fresh_coin"]; 
asm["_TALER_setup_fresh_coin"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__TALER_setup_fresh_coin.apply(null, arguments);
-};
-
-var real____divdi3 = asm["___divdi3"]; asm["___divdi3"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____divdi3.apply(null, arguments);
-};
-
-var real____emscripten_environ_constructor = 
asm["___emscripten_environ_constructor"]; 
asm["___emscripten_environ_constructor"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____emscripten_environ_constructor.apply(null, arguments);
-};
-
-var real____errno_location = asm["___errno_location"]; 
asm["___errno_location"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____errno_location.apply(null, arguments);
-};
-
-var real____muldi3 = asm["___muldi3"]; asm["___muldi3"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____muldi3.apply(null, arguments);
-};
-
-var real____udivdi3 = asm["___udivdi3"]; asm["___udivdi3"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____udivdi3.apply(null, arguments);
-};
-
-var real____uremdi3 = asm["___uremdi3"]; asm["___uremdi3"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real____uremdi3.apply(null, arguments);
-};
-
-var real___get_daylight = asm["__get_daylight"]; asm["__get_daylight"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real___get_daylight.apply(null, arguments);
-};
-
-var real___get_environ = asm["__get_environ"]; asm["__get_environ"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real___get_environ.apply(null, arguments);
-};
-
-var real___get_timezone = asm["__get_timezone"]; asm["__get_timezone"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real___get_timezone.apply(null, arguments);
-};
-
-var real___get_tzname = asm["__get_tzname"]; asm["__get_tzname"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real___get_tzname.apply(null, arguments);
-};
-
-var real__bitshift64Ashr = asm["_bitshift64Ashr"]; asm["_bitshift64Ashr"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__bitshift64Ashr.apply(null, arguments);
-};
-
-var real__bitshift64Lshr = asm["_bitshift64Lshr"]; asm["_bitshift64Lshr"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__bitshift64Lshr.apply(null, arguments);
-};
-
-var real__bitshift64Shl = asm["_bitshift64Shl"]; asm["_bitshift64Shl"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__bitshift64Shl.apply(null, arguments);
-};
-
-var real__fflush = asm["_fflush"]; asm["_fflush"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__fflush.apply(null, arguments);
-};
-
-var real__free = asm["_free"]; asm["_free"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__free.apply(null, arguments);
-};
-
-var real__gpg_err_init = asm["_gpg_err_init"]; asm["_gpg_err_init"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__gpg_err_init.apply(null, arguments);
-};
-
-var real__i64Add = asm["_i64Add"]; asm["_i64Add"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__i64Add.apply(null, arguments);
-};
-
-var real__i64Subtract = asm["_i64Subtract"]; asm["_i64Subtract"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__i64Subtract.apply(null, arguments);
-};
-
-var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"]; asm["_llvm_bswap_i32"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__llvm_bswap_i32.apply(null, arguments);
-};
-
-var real__llvm_cttz_i32 = asm["_llvm_cttz_i32"]; asm["_llvm_cttz_i32"] = 
function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__llvm_cttz_i32.apply(null, arguments);
-};
-
-var real__malloc = asm["_malloc"]; asm["_malloc"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__malloc.apply(null, arguments);
-};
-
-var real__memalign = asm["_memalign"]; asm["_memalign"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__memalign.apply(null, arguments);
-};
-
-var real__memmove = asm["_memmove"]; asm["_memmove"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__memmove.apply(null, arguments);
-};
-
-var real__pthread_mutex_lock = asm["_pthread_mutex_lock"]; 
asm["_pthread_mutex_lock"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__pthread_mutex_lock.apply(null, arguments);
-};
-
-var real__pthread_mutex_unlock = asm["_pthread_mutex_unlock"]; 
asm["_pthread_mutex_unlock"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__pthread_mutex_unlock.apply(null, arguments);
-};
-
-var real__sbrk = asm["_sbrk"]; asm["_sbrk"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real__sbrk.apply(null, arguments);
-};
-
-var real_establishStackSpace = asm["establishStackSpace"]; 
asm["establishStackSpace"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_establishStackSpace.apply(null, arguments);
-};
-
-var real_getTempRet0 = asm["getTempRet0"]; asm["getTempRet0"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_getTempRet0.apply(null, arguments);
-};
-
-var real_setTempRet0 = asm["setTempRet0"]; asm["setTempRet0"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_setTempRet0.apply(null, arguments);
-};
-
-var real_setThrew = asm["setThrew"]; asm["setThrew"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_setThrew.apply(null, arguments);
-};
-
-var real_stackAlloc = asm["stackAlloc"]; asm["stackAlloc"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_stackAlloc.apply(null, arguments);
-};
-
-var real_stackRestore = asm["stackRestore"]; asm["stackRestore"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_stackRestore.apply(null, arguments);
-};
-
-var real_stackSave = asm["stackSave"]; asm["stackSave"] = function() {
-  assert(runtimeInitialized, 'you need to wait for the runtime to be ready 
(e.g. wait for main() to be called)');
-  assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep 
it alive after main() exits)');
-  return real_stackSave.apply(null, arguments);
-};
-var _GNUNET_CRYPTO_ecc_ecdh = Module["_GNUNET_CRYPTO_ecc_ecdh"] = 
asm["_GNUNET_CRYPTO_ecc_ecdh"];
-var _GNUNET_CRYPTO_ecdh_eddsa = Module["_GNUNET_CRYPTO_ecdh_eddsa"] = 
asm["_GNUNET_CRYPTO_ecdh_eddsa"];
-var _GNUNET_CRYPTO_ecdhe_key_create = 
Module["_GNUNET_CRYPTO_ecdhe_key_create"] = 
asm["_GNUNET_CRYPTO_ecdhe_key_create"];
-var _GNUNET_CRYPTO_ecdhe_key_get_public = 
Module["_GNUNET_CRYPTO_ecdhe_key_get_public"] = 
asm["_GNUNET_CRYPTO_ecdhe_key_get_public"];
-var _GNUNET_CRYPTO_ecdsa_key_create = 
Module["_GNUNET_CRYPTO_ecdsa_key_create"] = 
asm["_GNUNET_CRYPTO_ecdsa_key_create"];
-var _GNUNET_CRYPTO_eddsa_key_create = 
Module["_GNUNET_CRYPTO_eddsa_key_create"] = 
asm["_GNUNET_CRYPTO_eddsa_key_create"];
-var _GNUNET_CRYPTO_eddsa_key_get_public = 
Module["_GNUNET_CRYPTO_eddsa_key_get_public"] = 
asm["_GNUNET_CRYPTO_eddsa_key_get_public"];
-var _GNUNET_CRYPTO_eddsa_sign = Module["_GNUNET_CRYPTO_eddsa_sign"] = 
asm["_GNUNET_CRYPTO_eddsa_sign"];
-var _GNUNET_CRYPTO_eddsa_verify = Module["_GNUNET_CRYPTO_eddsa_verify"] = 
asm["_GNUNET_CRYPTO_eddsa_verify"];
-var _GNUNET_CRYPTO_hash = Module["_GNUNET_CRYPTO_hash"] = 
asm["_GNUNET_CRYPTO_hash"];
-var _GNUNET_CRYPTO_hash_context_abort = 
Module["_GNUNET_CRYPTO_hash_context_abort"] = 
asm["_GNUNET_CRYPTO_hash_context_abort"];
-var _GNUNET_CRYPTO_hash_context_finish = 
Module["_GNUNET_CRYPTO_hash_context_finish"] = 
asm["_GNUNET_CRYPTO_hash_context_finish"];
-var _GNUNET_CRYPTO_hash_context_read = 
Module["_GNUNET_CRYPTO_hash_context_read"] = 
asm["_GNUNET_CRYPTO_hash_context_read"];
-var _GNUNET_CRYPTO_hash_context_start = 
Module["_GNUNET_CRYPTO_hash_context_start"] = 
asm["_GNUNET_CRYPTO_hash_context_start"];
-var _GNUNET_CRYPTO_hash_create_random = 
Module["_GNUNET_CRYPTO_hash_create_random"] = 
asm["_GNUNET_CRYPTO_hash_create_random"];
-var _GNUNET_CRYPTO_hkdf = Module["_GNUNET_CRYPTO_hkdf"] = 
asm["_GNUNET_CRYPTO_hkdf"];
-var _GNUNET_CRYPTO_kdf = Module["_GNUNET_CRYPTO_kdf"] = 
asm["_GNUNET_CRYPTO_kdf"];
-var _GNUNET_CRYPTO_random_block = Module["_GNUNET_CRYPTO_random_block"] = 
asm["_GNUNET_CRYPTO_random_block"];
-var _GNUNET_CRYPTO_random_init = Module["_GNUNET_CRYPTO_random_init"] = 
asm["_GNUNET_CRYPTO_random_init"];
-var _GNUNET_CRYPTO_rsa_blind = Module["_GNUNET_CRYPTO_rsa_blind"] = 
asm["_GNUNET_CRYPTO_rsa_blind"];
-var _GNUNET_CRYPTO_rsa_private_key_create = 
Module["_GNUNET_CRYPTO_rsa_private_key_create"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_create"];
-var _GNUNET_CRYPTO_rsa_private_key_decode = 
Module["_GNUNET_CRYPTO_rsa_private_key_decode"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_decode"];
-var _GNUNET_CRYPTO_rsa_private_key_encode = 
Module["_GNUNET_CRYPTO_rsa_private_key_encode"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_encode"];
-var _GNUNET_CRYPTO_rsa_private_key_free = 
Module["_GNUNET_CRYPTO_rsa_private_key_free"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_free"];
-var _GNUNET_CRYPTO_rsa_private_key_get_public = 
Module["_GNUNET_CRYPTO_rsa_private_key_get_public"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_get_public"];
-var _GNUNET_CRYPTO_rsa_public_key_decode = 
Module["_GNUNET_CRYPTO_rsa_public_key_decode"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_decode"];
-var _GNUNET_CRYPTO_rsa_public_key_encode = 
Module["_GNUNET_CRYPTO_rsa_public_key_encode"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_encode"];
-var _GNUNET_CRYPTO_rsa_public_key_free = 
Module["_GNUNET_CRYPTO_rsa_public_key_free"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_free"];
-var _GNUNET_CRYPTO_rsa_signature_decode = 
Module["_GNUNET_CRYPTO_rsa_signature_decode"] = 
asm["_GNUNET_CRYPTO_rsa_signature_decode"];
-var _GNUNET_CRYPTO_rsa_signature_encode = 
Module["_GNUNET_CRYPTO_rsa_signature_encode"] = 
asm["_GNUNET_CRYPTO_rsa_signature_encode"];
-var _GNUNET_CRYPTO_rsa_signature_free = 
Module["_GNUNET_CRYPTO_rsa_signature_free"] = 
asm["_GNUNET_CRYPTO_rsa_signature_free"];
-var _GNUNET_CRYPTO_rsa_unblind = Module["_GNUNET_CRYPTO_rsa_unblind"] = 
asm["_GNUNET_CRYPTO_rsa_unblind"];
-var _GNUNET_CRYPTO_rsa_verify = Module["_GNUNET_CRYPTO_rsa_verify"] = 
asm["_GNUNET_CRYPTO_rsa_verify"];
-var _GNUNET_CRYPTO_symmetric_decrypt = 
Module["_GNUNET_CRYPTO_symmetric_decrypt"] = 
asm["_GNUNET_CRYPTO_symmetric_decrypt"];
-var _GNUNET_CRYPTO_symmetric_encrypt = 
Module["_GNUNET_CRYPTO_symmetric_encrypt"] = 
asm["_GNUNET_CRYPTO_symmetric_encrypt"];
-var _GNUNET_STRINGS_data_to_string_alloc = 
Module["_GNUNET_STRINGS_data_to_string_alloc"] = 
asm["_GNUNET_STRINGS_data_to_string_alloc"];
-var _GNUNET_STRINGS_string_to_data = Module["_GNUNET_STRINGS_string_to_data"] 
= asm["_GNUNET_STRINGS_string_to_data"];
-var _GNUNET_util_cl_init = Module["_GNUNET_util_cl_init"] = 
asm["_GNUNET_util_cl_init"];
-var _TALER_WRALL_ecdhe_public_key_from_private = 
Module["_TALER_WRALL_ecdhe_public_key_from_private"] = 
asm["_TALER_WRALL_ecdhe_public_key_from_private"];
-var _TALER_WRALL_ecdsa_public_key_from_private = 
Module["_TALER_WRALL_ecdsa_public_key_from_private"] = 
asm["_TALER_WRALL_ecdsa_public_key_from_private"];
-var _TALER_WRALL_eddsa_public_key_from_private = 
Module["_TALER_WRALL_eddsa_public_key_from_private"] = 
asm["_TALER_WRALL_eddsa_public_key_from_private"];
-var _TALER_WRALL_get_amount = Module["_TALER_WRALL_get_amount"] = 
asm["_TALER_WRALL_get_amount"];
-var _TALER_WRALL_purpose_create = Module["_TALER_WRALL_purpose_create"] = 
asm["_TALER_WRALL_purpose_create"];
-var _TALER_WR_get_currency = Module["_TALER_WR_get_currency"] = 
asm["_TALER_WR_get_currency"];
-var _TALER_WR_get_fraction = Module["_TALER_WR_get_fraction"] = 
asm["_TALER_WR_get_fraction"];
-var _TALER_WR_get_value = Module["_TALER_WR_get_value"] = 
asm["_TALER_WR_get_value"];
-var _TALER_amount_add = Module["_TALER_amount_add"] = asm["_TALER_amount_add"];
-var _TALER_amount_cmp = Module["_TALER_amount_cmp"] = asm["_TALER_amount_cmp"];
-var _TALER_amount_get_zero = Module["_TALER_amount_get_zero"] = 
asm["_TALER_amount_get_zero"];
-var _TALER_amount_hton = Module["_TALER_amount_hton"] = 
asm["_TALER_amount_hton"];
-var _TALER_amount_normalize = Module["_TALER_amount_normalize"] = 
asm["_TALER_amount_normalize"];
-var _TALER_amount_ntoh = Module["_TALER_amount_ntoh"] = 
asm["_TALER_amount_ntoh"];
-var _TALER_amount_subtract = Module["_TALER_amount_subtract"] = 
asm["_TALER_amount_subtract"];
-var _TALER_gcrypt_init = Module["_TALER_gcrypt_init"] = 
asm["_TALER_gcrypt_init"];
-var _TALER_setup_fresh_coin = Module["_TALER_setup_fresh_coin"] = 
asm["_TALER_setup_fresh_coin"];
-var ___divdi3 = Module["___divdi3"] = asm["___divdi3"];
-var ___emscripten_environ_constructor = 
Module["___emscripten_environ_constructor"] = 
asm["___emscripten_environ_constructor"];
-var ___errno_location = Module["___errno_location"] = asm["___errno_location"];
-var ___muldi3 = Module["___muldi3"] = asm["___muldi3"];
-var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"];
-var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"];
-var __get_daylight = Module["__get_daylight"] = asm["__get_daylight"];
-var __get_environ = Module["__get_environ"] = asm["__get_environ"];
-var __get_timezone = Module["__get_timezone"] = asm["__get_timezone"];
-var __get_tzname = Module["__get_tzname"] = asm["__get_tzname"];
-var _bitshift64Ashr = Module["_bitshift64Ashr"] = asm["_bitshift64Ashr"];
-var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"];
-var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"];
-var _fflush = Module["_fflush"] = asm["_fflush"];
-var _free = Module["_free"] = asm["_free"];
-var _gpg_err_init = Module["_gpg_err_init"] = asm["_gpg_err_init"];
-var _i64Add = Module["_i64Add"] = asm["_i64Add"];
-var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"];
-var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"];
-var _llvm_cttz_i32 = Module["_llvm_cttz_i32"] = asm["_llvm_cttz_i32"];
-var _malloc = Module["_malloc"] = asm["_malloc"];
-var _memalign = Module["_memalign"] = asm["_memalign"];
-var _memcpy = Module["_memcpy"] = asm["_memcpy"];
-var _memmove = Module["_memmove"] = asm["_memmove"];
-var _memset = Module["_memset"] = asm["_memset"];
-var _pthread_mutex_lock = Module["_pthread_mutex_lock"] = 
asm["_pthread_mutex_lock"];
-var _pthread_mutex_unlock = Module["_pthread_mutex_unlock"] = 
asm["_pthread_mutex_unlock"];
-var _sbrk = Module["_sbrk"] = asm["_sbrk"];
-var establishStackSpace = Module["establishStackSpace"] = 
asm["establishStackSpace"];
-var getTempRet0 = Module["getTempRet0"] = asm["getTempRet0"];
-var runPostSets = Module["runPostSets"] = asm["runPostSets"];
-var setTempRet0 = Module["setTempRet0"] = asm["setTempRet0"];
-var setThrew = Module["setThrew"] = asm["setThrew"];
-var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"];
-var stackRestore = Module["stackRestore"] = asm["stackRestore"];
-var stackSave = Module["stackSave"] = asm["stackSave"];
-var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"];
-var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"];
-var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"];
-var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"];
-var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"];
-var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"];
-var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"];
-var dynCall_viii = Module["dynCall_viii"] = asm["dynCall_viii"];
-var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"];
-var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"];
-var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"];
-;
-
-
-
-// === Auto-generated postamble setup entry stuff ===
-
-Module['asm'] = asm;
-
-if (!Module["intArrayFromString"]) Module["intArrayFromString"] = function() { 
abort("'intArrayFromString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["intArrayToString"]) Module["intArrayToString"] = function() { 
abort("'intArrayToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-Module["ccall"] = ccall;
-Module["cwrap"] = cwrap;
-Module["setValue"] = setValue;
-Module["getValue"] = getValue;
-if (!Module["allocate"]) Module["allocate"] = function() { abort("'allocate' 
was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["getMemory"]) Module["getMemory"] = function() { 
abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ). Alternatively, forcing filesystem support (-s 
FORCE_FILESYSTEM=1) can export this for you") };
-Module["Pointer_stringify"] = Pointer_stringify;
-if (!Module["AsciiToString"]) Module["AsciiToString"] = function() { 
abort("'AsciiToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stringToAscii"]) Module["stringToAscii"] = function() { 
abort("'stringToAscii' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["UTF8ArrayToString"]) Module["UTF8ArrayToString"] = function() { 
abort("'UTF8ArrayToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["UTF8ToString"]) Module["UTF8ToString"] = function() { 
abort("'UTF8ToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stringToUTF8Array"]) Module["stringToUTF8Array"] = function() { 
abort("'stringToUTF8Array' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-Module["stringToUTF8"] = stringToUTF8;
-if (!Module["lengthBytesUTF8"]) Module["lengthBytesUTF8"] = function() { 
abort("'lengthBytesUTF8' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["UTF16ToString"]) Module["UTF16ToString"] = function() { 
abort("'UTF16ToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stringToUTF16"]) Module["stringToUTF16"] = function() { 
abort("'stringToUTF16' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["lengthBytesUTF16"]) Module["lengthBytesUTF16"] = function() { 
abort("'lengthBytesUTF16' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["UTF32ToString"]) Module["UTF32ToString"] = function() { 
abort("'UTF32ToString' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stringToUTF32"]) Module["stringToUTF32"] = function() { 
abort("'stringToUTF32' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["lengthBytesUTF32"]) Module["lengthBytesUTF32"] = function() { 
abort("'lengthBytesUTF32' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["allocateUTF8"]) Module["allocateUTF8"] = function() { 
abort("'allocateUTF8' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stackTrace"]) Module["stackTrace"] = function() { 
abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["addOnPreRun"]) Module["addOnPreRun"] = function() { 
abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["addOnInit"]) Module["addOnInit"] = function() { 
abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["addOnPreMain"]) Module["addOnPreMain"] = function() { 
abort("'addOnPreMain' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["addOnExit"]) Module["addOnExit"] = function() { 
abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["addOnPostRun"]) Module["addOnPostRun"] = function() { 
abort("'addOnPostRun' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["writeStringToMemory"]) Module["writeStringToMemory"] = function() 
{ abort("'writeStringToMemory' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["writeArrayToMemory"]) Module["writeArrayToMemory"] = function() { 
abort("'writeArrayToMemory' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["writeAsciiToMemory"]) Module["writeAsciiToMemory"] = function() { 
abort("'writeAsciiToMemory' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["addRunDependency"]) Module["addRunDependency"] = function() { 
abort("'addRunDependency' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["removeRunDependency"]) Module["removeRunDependency"] = function() 
{ abort("'removeRunDependency' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["ENV"]) Module["ENV"] = function() { abort("'ENV' was not 
exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["FS"]) Module["FS"] = function() { abort("'FS' was not exported. 
add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["FS_createFolder"]) Module["FS_createFolder"] = function() { 
abort("'FS_createFolder' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createPath"]) Module["FS_createPath"] = function() { 
abort("'FS_createPath' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createDataFile"]) Module["FS_createDataFile"] = function() { 
abort("'FS_createDataFile' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createPreloadedFile"]) Module["FS_createPreloadedFile"] = 
function() { abort("'FS_createPreloadedFile' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createLazyFile"]) Module["FS_createLazyFile"] = function() { 
abort("'FS_createLazyFile' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createLink"]) Module["FS_createLink"] = function() { 
abort("'FS_createLink' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_createDevice"]) Module["FS_createDevice"] = function() { 
abort("'FS_createDevice' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem 
support (-s FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["FS_unlink"]) Module["FS_unlink"] = function() { 
abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ). Alternatively, forcing filesystem support (-s 
FORCE_FILESYSTEM=1) can export this for you") };
-if (!Module["GL"]) Module["GL"] = function() { abort("'GL' was not exported. 
add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["staticAlloc"]) Module["staticAlloc"] = function() { 
abort("'staticAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["dynamicAlloc"]) Module["dynamicAlloc"] = function() { 
abort("'dynamicAlloc' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["warnOnce"]) Module["warnOnce"] = function() { abort("'warnOnce' 
was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["loadDynamicLibrary"]) Module["loadDynamicLibrary"] = function() { 
abort("'loadDynamicLibrary' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["loadWebAssemblyModule"]) Module["loadWebAssemblyModule"] = 
function() { abort("'loadWebAssemblyModule' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["getLEB"]) Module["getLEB"] = function() { abort("'getLEB' was not 
exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["getFunctionTables"]) Module["getFunctionTables"] = function() { 
abort("'getFunctionTables' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["alignFunctionTables"]) Module["alignFunctionTables"] = function() 
{ abort("'alignFunctionTables' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["registerFunctions"]) Module["registerFunctions"] = function() { 
abort("'registerFunctions' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["addFunction"]) Module["addFunction"] = function() { 
abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["removeFunction"]) Module["removeFunction"] = function() { 
abort("'removeFunction' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["getFuncWrapper"]) Module["getFuncWrapper"] = function() { 
abort("'getFuncWrapper' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["prettyPrint"]) Module["prettyPrint"] = function() { 
abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["makeBigInt"]) Module["makeBigInt"] = function() { 
abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["dynCall"]) Module["dynCall"] = function() { abort("'dynCall' was 
not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["getCompilerSetting"]) Module["getCompilerSetting"] = function() { 
abort("'getCompilerSetting' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stackSave"]) Module["stackSave"] = function() { 
abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["stackRestore"]) Module["stackRestore"] = function() { 
abort("'stackRestore' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["stackAlloc"]) Module["stackAlloc"] = function() { 
abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS 
(see the FAQ)") };
-if (!Module["establishStackSpace"]) Module["establishStackSpace"] = function() 
{ abort("'establishStackSpace' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["print"]) Module["print"] = function() { abort("'print' was not 
exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["printErr"]) Module["printErr"] = function() { abort("'printErr' 
was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["intArrayFromBase64"]) Module["intArrayFromBase64"] = function() { 
abort("'intArrayFromBase64' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };
-if (!Module["tryParseAsDataURI"]) Module["tryParseAsDataURI"] = function() { 
abort("'tryParseAsDataURI' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };if (!Module["ALLOC_NORMAL"]) 
Object.defineProperty(Module, "ALLOC_NORMAL", { get: function() { 
abort("'ALLOC_NORMAL' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } });
-if (!Module["ALLOC_STACK"]) Object.defineProperty(Module, "ALLOC_STACK", { 
get: function() { abort("'ALLOC_STACK' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } });
-if (!Module["ALLOC_STATIC"]) Object.defineProperty(Module, "ALLOC_STATIC", { 
get: function() { abort("'ALLOC_STATIC' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } });
-if (!Module["ALLOC_DYNAMIC"]) Object.defineProperty(Module, "ALLOC_DYNAMIC", { 
get: function() { abort("'ALLOC_DYNAMIC' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } });
-if (!Module["ALLOC_NONE"]) Object.defineProperty(Module, "ALLOC_NONE", { get: 
function() { abort("'ALLOC_NONE' was not exported. add it to 
EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } });
-
-if (memoryInitializer) {
-  if (!isDataURI(memoryInitializer)) {
-    memoryInitializer = locateFile(memoryInitializer);
-  }
-  if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) {
-    var data = Module['readBinary'](memoryInitializer);
-    HEAPU8.set(data, GLOBAL_BASE);
-  } else {
-    addRunDependency('memory initializer');
-    var applyMemoryInitializer = function(data) {
-      if (data.byteLength) data = new Uint8Array(data);
-      for (var i = 0; i < data.length; i++) {
-        assert(HEAPU8[GLOBAL_BASE + i] === 0, "area for memory initializer 
should not have been touched before it's loaded");
-      }
-      HEAPU8.set(data, GLOBAL_BASE);
-      // Delete the typed array that contains the large blob of the memory 
initializer request response so that
-      // we won't keep unnecessary memory lying around. However, keep the XHR 
object itself alive so that e.g.
-      // its .status field can still be accessed later.
-      if (Module['memoryInitializerRequest']) delete 
Module['memoryInitializerRequest'].response;
-      removeRunDependency('memory initializer');
-    }
-    function doBrowserLoad() {
-      Module['readAsync'](memoryInitializer, applyMemoryInitializer, 
function() {
-        throw 'could not load memory initializer ' + memoryInitializer;
-      });
-    }
-    var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer);
-    if (memoryInitializerBytes) {
-      applyMemoryInitializer(memoryInitializerBytes.buffer);
-    } else
-    if (Module['memoryInitializerRequest']) {
-      // a network request has already been created, just use that
-      function useRequest() {
-        var request = Module['memoryInitializerRequest'];
-        var response = request.response;
-        if (request.status !== 200 && request.status !== 0) {
-          var data = tryParseAsDataURI(Module['memoryInitializerRequestURL']);
-          if (data) {
-            response = data.buffer;
-          } else {
-            // If you see this warning, the issue may be that you are using 
locateFile and defining it in JS. That
-            // means that the HTML file doesn't know about it, and when it 
tries to create the mem init request early, does it to the wrong place.
-            // Look in your browser's devtools network console to see what's 
going on.
-            console.warn('a problem seems to have happened with 
Module.memoryInitializerRequest, status: ' + request.status + ', retrying ' + 
memoryInitializer);
-            doBrowserLoad();
-            return;
-          }
-        }
-        applyMemoryInitializer(response);
-      }
-      if (Module['memoryInitializerRequest'].response) {
-        setTimeout(useRequest, 0); // it's already here; but, apply it 
asynchronously
-      } else {
-        Module['memoryInitializerRequest'].addEventListener('load', 
useRequest); // wait for it
-      }
-    } else {
-      // fetch it from the network ourselves
-      doBrowserLoad();
-    }
-  }
-}
-
-
-
-/**
- * @constructor
- * @extends {Error}
- * @this {ExitStatus}
- */
-function ExitStatus(status) {
-  this.name = "ExitStatus";
-  this.message = "Program terminated with exit(" + status + ")";
-  this.status = status;
-};
-ExitStatus.prototype = new Error();
-ExitStatus.prototype.constructor = ExitStatus;
-
-var initialStackTop;
-var calledMain = false;
-
-dependenciesFulfilled = function runCaller() {
-  // If run has never been called, and we should call run (INVOKE_RUN is true, 
and Module.noInitialRun is not false)
-  if (!Module['calledRun']) run();
-  if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this 
again later, after new deps are fulfilled
-}
-
-
-
-
-
-/** @type {function(Array=)} */
-function run(args) {
-  args = args || Module['arguments'];
-
-  if (runDependencies > 0) {
-    return;
-  }
-
-  writeStackCookie();
-
-  preRun();
-
-  if (runDependencies > 0) return; // a preRun added a dependency, run will be 
called later
-  if (Module['calledRun']) return; // run may have just been called through 
dependencies being fulfilled just in this very frame
-
-  function doRun() {
-    if (Module['calledRun']) return; // run may have just been called while 
the async setStatus time below was happening
-    Module['calledRun'] = true;
-
-    if (ABORT) return;
-
-    ensureInitRuntime();
-
-    preMain();
-
-    if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized']();
-
-    assert(!Module['_main'], 'compiled without a main, but one is present. if 
you added it from JS, use Module["onRuntimeInitialized"]');
-
-    postRun();
-  }
-
-  if (Module['setStatus']) {
-    Module['setStatus']('Running...');
-    setTimeout(function() {
-      setTimeout(function() {
-        Module['setStatus']('');
-      }, 1);
-      doRun();
-    }, 1);
-  } else {
-    doRun();
-  }
-  checkStackCookie();
-}
-Module['run'] = run;
-
-function checkUnflushedContent() {
-  // Compiler settings do not allow exiting the runtime, so flushing
-  // the streams is not possible. but in ASSERTIONS mode we check
-  // if there was something to flush, and if so tell the user they
-  // should request that the runtime be exitable.
-  // Normally we would not even include flush() at all, but in ASSERTIONS
-  // builds we do so just for this check, and here we see if there is any
-  // content to flush, that is, we check if there would have been
-  // something a non-ASSERTIONS build would have not seen.
-  // How we flush the streams depends on whether we are in NO_FILESYSTEM
-  // mode (which has its own special function for this; otherwise, all
-  // the code is inside libc)
-  var print = out;
-  var printErr = err;
-  var has = false;
-  out = err = function(x) {
-    has = true;
-  }
-  try { // it doesn't matter if it fails
-    var flush = Module['_fflush'];
-    if (flush) flush(0);
-    // also flush in the JS FS layer
-    var hasFS = true;
-    if (hasFS) {
-      ['stdout', 'stderr'].forEach(function(name) {
-        var info = FS.analyzePath('/dev/' + name);
-        if (!info) return;
-        var stream = info.object;
-        var rdev = stream.rdev;
-        var tty = TTY.ttys[rdev];
-        if (tty && tty.output && tty.output.length) {
-          has = true;
-        }
-      });
-    }
-  } catch(e) {}
-  out = print;
-  err = printErr;
-  if (has) {
-    warnOnce('stdio streams had content in them that was not flushed. you 
should set NO_EXIT_RUNTIME to 0 (see the FAQ), or make sure to emit a newline 
when you printf etc.');
-  }
-}
-
-function exit(status, implicit) {
-  checkUnflushedContent();
-
-  // if this is just main exit-ing implicitly, and the status is 0, then we
-  // don't need to do anything here and can just leave. if the status is
-  // non-zero, though, then we need to report it.
-  // (we may have warned about this earlier, if a situation justifies doing so)
-  if (implicit && Module['noExitRuntime'] && status === 0) {
-    return;
-  }
-
-  if (Module['noExitRuntime']) {
-    // if exit() was called, we may warn the user if the runtime isn't 
actually being shut down
-    if (!implicit) {
-      err('exit(' + status + ') called, but NO_EXIT_RUNTIME is set, so halting 
execution but not exiting the runtime or preventing further async execution 
(build with NO_EXIT_RUNTIME=0, if you want a true shutdown)');
-    }
-  } else {
-
-    ABORT = true;
-    EXITSTATUS = status;
-    STACKTOP = initialStackTop;
-
-    exitRuntime();
-
-    if (Module['onExit']) Module['onExit'](status);
-  }
-
-  Module['quit'](status, new ExitStatus(status));
-}
-
-var abortDecorators = [];
-
-function abort(what) {
-  if (Module['onAbort']) {
-    Module['onAbort'](what);
-  }
-
-  if (what !== undefined) {
-    out(what);
-    err(what);
-    what = JSON.stringify(what)
-  } else {
-    what = '';
-  }
-
-  ABORT = true;
-  EXITSTATUS = 1;
-
-  var extra = '';
-  var output = 'abort(' + what + ') at ' + stackTrace() + extra;
-  if (abortDecorators) {
-    abortDecorators.forEach(function(decorator) {
-      output = decorator(output, what);
-    });
-  }
-  throw output;
-}
-Module['abort'] = abort;
-
-if (Module['preInit']) {
-  if (typeof Module['preInit'] == 'function') Module['preInit'] = 
[Module['preInit']];
-  while (Module['preInit'].length > 0) {
-    Module['preInit'].pop()();
-  }
+  return TalerEmscriptenLib;
 }
-
-
-Module["noExitRuntime"] = true;
-
-run();
-
-
-
-
-
-// {{MODULE_ADDITIONS}}
-
-
-
+);
+})();
+if (typeof exports === 'object' && typeof module === 'object')
+    module.exports = TalerEmscriptenLib;
+  else if (typeof define === 'function' && define['amd'])
+    define([], function() { return TalerEmscriptenLib; });
+  else if (typeof exports === 'object')
+    exports["TalerEmscriptenLib"] = TalerEmscriptenLib;
+  
\ No newline at end of file
diff --git a/emscripten/taler-emscripten-lib.wasm 
b/emscripten/taler-emscripten-lib.wasm
new file mode 100644
index 00000000..ffb1bb0b
Binary files /dev/null and b/emscripten/taler-emscripten-lib.wasm differ
diff --git a/src/crypto/emscInterface.ts b/src/crypto/emscInterface.ts
index eae8ee5c..61289fb7 100644
--- a/src/crypto/emscInterface.ts
+++ b/src/crypto/emscInterface.ts
@@ -103,7 +103,11 @@ interface EmscAllocFunctions {
   ecdsa_public_key_from_private(a1: number): number;
   eddsa_key_create(): number;
   eddsa_public_key_from_private(a1: number): number;
-  get_amount(a1: number, a2: number, a22: number, a3: string): number;
+  /**
+   * Note that value_1 and value_2 are the first 64-bit parameter,
+   * and not two separate parameters (by the emscripten calling convention).
+   */
+  get_amount(value_1: number, value_2: number, fraction: number, currency: 
string): number;
   hash_context_start(): number;
   malloc(size: number): number;
   purpose_create(a1: number, a2: number, a3: number): number;
@@ -147,7 +151,7 @@ class EmscEnvironment {
       ecdsa_public_key_from_private: getEmsc( 
"TALER_WRALL_ecdsa_public_key_from_private", "number", ["number"]),
       eddsa_key_create: getEmsc("GNUNET_CRYPTO_eddsa_key_create", "number", 
[]),
       eddsa_public_key_from_private: getEmsc( 
"TALER_WRALL_eddsa_public_key_from_private", "number", ["number"]),
-      get_amount: getEmsc("TALER_WRALL_get_amount", "number", ["number", 
"number", "string"]),
+      get_amount: getEmsc("TALER_WRALL_get_amount", "number", ["number", 
"number", "number", "string"]),
       hash_context_start: getEmsc("GNUNET_CRYPTO_hash_context_start", 
"number", []),
       malloc: (size: number) => lib._malloc(size),
       purpose_create: getEmsc("TALER_WRALL_purpose_create", "number", 
["number", "number", "number"]),
diff --git a/src/crypto/emscLoader.js b/src/crypto/emscLoader.js
index 7251a598..59437da4 100644
--- a/src/crypto/emscLoader.js
+++ b/src/crypto/emscLoader.js
@@ -71,16 +71,14 @@ export function getLib() {
       return scriptDir + "../emscripten/" + path;
     };
     console.log("instantiating TalerEmscriptenLib");
-    //const lib = self.TalerEmscriptenLib({ locateFile });
-    const lib = self.TalerEmscriptenLib;
+    const lib = self.TalerEmscriptenLib({ locateFile });
     cachedLib = lib;
-    return Promise.resolve({ lib: lib });
-    //return new Promise((resolve, reject) => {
-    //  lib.then(mod => {
-    //    console.log("emscripten module fully loaded");
-    //    resolve({ lib: mod });
-    //  });
-    //});
+    return new Promise((resolve, reject) => {
+      lib.then(mod => {
+        console.log("emscripten module fully loaded");
+        resolve({ lib: mod });
+      });
+    });
   }
 
   // Last resort, we don't have require, we're not running in a webworker.

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]